Un ransomware para Linux usando GPG

Hoy vamos a ver cómo crear un ransomware programado para Linux (será un shell script) utilizando GPG y el cifrado asimétrico; será más que nada un ejercicio didáctico pero claro que se puede llevar a la práctica (cosa que no recomiendo, en serio), Si no sabes qué es un ransomware veamos lo que dice la wikipedia: Un ransomware (del inglés ransom, «rescate», y ware, acortamiento de software) o “secuestro de datos” en español, es un tipo de programa dañino que restringe el acceso a determinadas partes o archivos del sistema operativo infectado, y pide un rescate a cambio de quitar esta restricción. El ransomware que vamos a programar va a cifrar archivos con nuestra clave pública (que se va a descarga en la PC de la víctima), los cuales solo vamos a descifrar con nuestra clave privada (la cual solo posee el atacante). Será un script de bash muy sencillo pero poderoso, con la única dependencia de GPG. ...

junio 13, 2019 · 8 min · 1564 palabras · Parzibyte

PostgreSQL: describe table, mostrar información de tabla

En Postgres no existe tal cosa como DESCRIBE nombre_tabla (válida totalmente en MySQL), pero tenemos el equivalente; de hecho hay 2 maneras de hacerlo, la primera es según el estándar de SQL y el segundo con un comando de la shell de Postgres. ...

junio 11, 2019 · 1 min · 212 palabras · Parzibyte

Unit testing con Python: realizar tests o pruebas de código Python

Las pruebas en el software son un aspecto importante; pues permiten verificar que nuestro código se ejecuta en la manera que debería y que con cada cambio que hacemos no rompemos otras cosas. Python provee el framework unittest que realiza pruebas unitarias de nuestro código y tiene varios métodos para realizar pruebas de código. Hoy veremos cómo realizar nuestros primeros tests con el framework unittest de Python, que ya viene instalado por defecto. ...

junio 11, 2019 · 4 min · 750 palabras · Parzibyte

JSON y Python: codificar y decodificar

JSON se ha convertido en un estándar para el intercambio de datos, sobre todo en la web, pero también funciona en otras plataformas. Debido a su flexibilidad y simplicidad está presente en la mayoría de lenguajes de programación. Python 3 no podría ser la excepción, por ello es que hoy veremos cómo: Codificar diccionarios, listas, enteros, flotantes, etcétera con Python 3 y JSON Imprimir el JSON codificado o escribirlo en un archivo Decodificar una cadena de JSON Leer un archivo JSON y decodificarlo Todo ello únicamente usando el módulo de json en Python 3, el cual ya viene incluido por defecto. ...

junio 10, 2019 · 5 min · 957 palabras · Parzibyte

Instalar C# (Mono Project) en Linux Ubuntu

C# y todas las utilidades del framework .NET ya pueden ser usadas por los usuarios de Linux que ejecutan Ubuntu, Debian, Raspbian, etcétera. Para tener el compilador de C# en Linux Ubuntu hay que instalar el paquete Mono, y eso es justamente lo que hoy veremos. También vamos a compilar nuestro primer programa de C# en Linux usando csc, y vamos a ejecutar el archivo exe con mono. Este tutorial de instalación de Mono Project funciona en Ubuntu 14, 16 y 18. A lo largo de este post veremos cómo se instala en Ubuntu 16.04 pero proporcionaré guías para instalarlo en las otras versiones. ¿Quieres compilar C# en Windows sin instalar Visual Studio? este es tu post. ...

junio 8, 2019 · 4 min · 652 palabras · Parzibyte

Instalar PIP 3 (gestor de paquetes de Python) en Linux Ubuntu

En este post vamos a ver cómo instalar PIP para Python 3 en Ubuntu; ya que por defecto no viene instalado. PIP es un gestor de paquetes y librerías para Python, permite gestionar dependencias de una manera muy sencilla. Veamos cómo instalar y renombrar PIP 3 en Linux Ubuntu. ¿Usas Windows? mira este tutorial. ...

junio 8, 2019 · 2 min · 284 palabras · Parzibyte

Obtener IP de un usuario a través de un correo electrónico

En este post vamos a ver cómo disfrazar un correo electrónico para obtener la IP de un usuario con el simple hecho de que lo abra y vea su contenido, o mejor dicho, una imagen. Lo que haremos, en pasos sencillos, será enviar una imagen de un perro (no es broma) la cual será servida a través de PHP con readfile. La IP se registrará con el código que vimos aquí. Este método funciona correctamente en correos de dominio personal (es decir, .com, .me, .io, etcétera) y en hotmail; pero no en gmail, ya veremos por qué. Recuerda que esto se hace con fines didácticos y que no me hago responsable de lo que se pueda hacer con esto. ...

junio 7, 2019 · 4 min · 667 palabras · Parzibyte

Renombrar comando python3 a python en Linux Ubuntu

En las versiones de Linux Ubuntu más recientes Python 3 ya viene preinstalado en la versión 2 y 3 (pues la versión 2, aunque es antigua, es usada por múltiples paquetes). El problema se ve cuando queremos ejecutar un simple script de Python usando: python script.py (ya sé que también se puede con el Shebang pero eso es otra historia) Si lo ejecutamos así se tomará a Python 2, y nosotros queremos Python 3; si lo queremos escribimos: python3 script.py Solo que es engorroso estar escribiendo “python3” cuando deberíamos escribir simplemente “python”. Por ello es que hoy veremos cómo renombrar el ejecutable “python3” a “python” usando un alias; evitando así conflictos. ...

junio 7, 2019 · 2 min · 295 palabras · Parzibyte

Tutorial de Postman

Postman es una aplicación de escritorio (en mis tiempos era una extensión para navegadores, pero las cosas cambian) que permite probar nuestras APIs y aplicaciones web. Con Postman se pueden enviar peticiones HTTP con distintos métodos: POST, PUT, GET, DELETE, etcétera. También se pueden enviar formularios o datos codificados como JSON. Así que con Postman podemos probar todas nuestras aplicaciones web sin tener que programar el lado del cliente; personalmente lo uso para probar el back-end antes de comenzar con el front-end. En este post veremos cómo descargar, instalar y usar Postman. ...

junio 7, 2019 · 4 min · 754 palabras · Parzibyte

Cifrado asimétrico con GPG en Linux - Tutorial con ejemplos

En un post anterior vimos cómo usar gpg en Linux para cifrar datos, pero utilizamos un cifrado simétrico. Hoy, en cambio, vamos a cifrar de manera asimétrica usando GPG. Veremos cómo: Generar un par de claves públicas y privadas Exportar la clave pública para que otras personas puedan cifrar archivos con nuestra clave y solo nosotros podamos descifrarlos Importar clave pública de otra persona y cifrar datos con la misma Desencriptar un archivo con nuestra clave privada Nota: voy a usar la palabra encriptar y cifrar como sinónimos, así como desencriptar y descifrar. ...

junio 6, 2019 · 5 min · 1052 palabras · Parzibyte