Genera códigos QR fácilmente en Python

Los códigos QR se han convertido en una parte esencial de nuestra vida digital, ofreciendo una forma rápida y conveniente de acceder a información, realizar pagos, y mucho más, simplemente escaneando un código con nuestro dispositivo móvil. Originados en la industria automotriz japonesa, estos códigos de barras bidimensionales han revolucionado la forma en que interactuamos con el mundo digital y físico.

Viendo lo útiles que pueden llegar a ser, seguro que alguna vez has querido generar un código QR para incluirlo en una tarjeta de visita o en un cartel o en una web… Lo que todo solemos hacer siempre es ir a lo más y buscar una pagina web que nos lo genere indicando una URL o algo del estilo.

Hoy os traigo otra opcion para generar estas matrices de datos desde código Python: qrcode.

Qrcode nos ayuda a generar de forma sencilla y con pocas líneas de código una imagen PNG con el código QR que queramos. Un ejemplo es el siguiente

import qrcode
qr = qrcode.QRCode(
  version=1,
  error_correction=qrcode.constants.ERROR_CORRECT_L,
  box_size=10,
  border=4,
)
qr.add_data('Some data')
qr.make(fit=True)

img = qr.make_image(fill_color="black", back_color="white")

Se puede escoger tamaño indicando un número del 1 al 40 en el parametro «version» (El 1 es una matriz de 21×21). También se puede cambiar el color de fondo y de QR. El parámetro error_correction controla la corrección de errores utilizada para el código QR.  El parámetro box_size controla cuántos píxeles tiene cada “caja” del código QR. El parámetro de borde controla el grosor de los cuadros que debe tener el borde (el valor predeterminado es 4, que es el mínimo según las especificaciones).

Hay más opciones que puedes consultar en la web de la librería: https://pypi.org/project/qrcode/

Os dejo algunos ejemplos:

¡No Caigas en la Trampa! Todo lo que Necesitas Saber sobre el Phishing y Cómo Protegerte

¡Hola a todos! Hoy quiero hablaros sobre un tema muy importante en el ámbito de la ciberseguridad: el phishing. Este término, aunque suena como «fishing» en inglés, no tiene nada que ver con la pesca, aunque la analogía de «pescar» usuarios desprevenidos es bastante acertada.

¿Qué es el Phishing?

El phishing es una técnica utilizada por ciberdelincuentes para engañar a las personas y obtener información confidencial, como contraseñas, números de tarjetas de crédito o datos personales. Los atacantes se hacen pasar por entidades confiables, como bancos, empresas de servicios o incluso amigos y familiares, para lograr que las víctimas les proporcionen esta información voluntariamente.

¿Cómo reconocer el phishing?

  • Email sospechosos: ten precaución con correos electrónicos inesperados o mensajes que solicitan información confidencial. Verifica siempre la autenticidad del remitente antes de responder o hacer clic en enlaces.
  • Enlaces sospechosos: evita hacer clic en enlaces incrustados en correos electrónicos no solicitados. Antes de hacer clic, pasa el cursor sobre el enlace para ver la dirección web real.
  • Errores de ortografía y gramática: los correos electrónicos de phishing a menudo contienen errores gramaticales o de ortografía. Muéstrate escéptico ante mensajes que parezcan poco profesionales.

¿Cómo Funciona el Phishing?

  • Correo Electrónico Fraudulento: Uno de los métodos más comunes es el envío de correos electrónicos que parecen proceder de una fuente legítima. Estos correos suelen contener enlaces a sitios web falsos.
  • Sitios Web Falsos: Los enlaces en los correos fraudulentos redirigen a sitios web que se ven casi idénticos a los sitios web oficiales de las organizaciones que los atacantes están imitando.
  • Mensajes de Texto y Llamadas Telefónicas: Además del correo electrónico, los atacantes también utilizan mensajes de texto (SMS) y llamadas telefónicas para intentar engañar a las víctimas.
  • Redes Sociales y Mensajería Instantánea: También pueden usar plataformas de redes sociales y aplicaciones de mensajería instantánea para enviar mensajes engañosos.

Ejemplos Comunes de Phishing

  • Correos Electrónicos de Bancos: Un correo que parece ser de tu banco pidiendo que verifiques tu cuenta o actualices tu contraseña.
  • Notificaciones de Pago: Un mensaje diciendo que hay un problema con un pago que realizaste y que debes ingresar a un enlace para corregirlo.
  • Ofertas y Promociones Falsas: Promociones demasiado buenas para ser verdad, como ganar un iPhone gratis si haces clic en un enlace y proporcionas tu información.

¿Cómo protegerse del phishing?

  • Verificación del remitente: antes de responder a un correo electrónico, comprueba la dirección del remitente para asegurarte de que sea legítima.
  • No compartas información confidencial: nunca proporciones información confidencial, como contraseñas o números de tarjetas de crédito, a través de correos electrónicos no solicitados.
  • Actualiza contraseñas regularmente: cambia tus contraseñas con regularidad y utiliza combinaciones fuertes de letras, números y caracteres especiales.
  • Uso de Autenticación de Dos Factores (2FA): Activar 2FA en tus cuentas añade una capa extra de seguridad.
  • Educación y Conciencia: Mantente informado sobre las últimas tácticas de phishing y comparte esta información con amigos y familiares.
  • Software de Seguridad: Utiliza programas de seguridad y antiphishing que te ayuden a identificar y bloquear intentos de phishing.
  • (Si te llega al correo de la empresa) Informa a IT: si sospechas que has recibido un correo electrónico de phishing, repórtalo de inmediato al equipo de IT.
  • Adicionalmente, en cualquier mensaje sospechoso que recibas a través de Outlook, GMail o cualquier otro proveedor de correo, deberías marcar con el botón derecho la opción Reportar como Correo no Deseado / Marcar como phishing.

 

 

El phishing es una amenaza seria y constante en el mundo digital. Los ciberdelincuentes están siempre buscando nuevas maneras de engañar a las personas, por lo que es crucial mantenerse alerta y bien informado. Recuerda, si algo parece sospechoso, es mejor ser cauteloso y verificar antes de actuar.

¡Mantente seguro en línea y comparte esta información para que otros también puedan protegerse!

Cómo enviar Mensajes de forma Anónima

Hoy os traigo Anon-SMS, un script de Python que permite enviar mensajes de forma anónima. Es una herramienta que en ciertos momentos puede resultar muy útil.

Información de la herramienta:

  • Esta es una versión gratuita.
  • Envío de mensajes súper rápido.
  • Envío Internacional de Mensajes disponible.
  • Sólo puedes enviar un mensaje al día.
  • Mensajería anónima.
  • Fácil de usar e incrustar en el código.

Enlace: https://github.com/HACK3RY2J/Anon-SMS

¿No te Han Pagado? Os traigo una Solución

¿Eres desarrollador y un cliente no te ha pagado por tu trabajo?

Os traigo un script que va bajando la opacidad de la web cada día hasta que desaparece del  todo. Puedes escoger el número de días que tardará en desaparecer del todo. Su uso es muy sencillo, ya que solo basta con incluir el JS en el «Head» del sitio.

También se han desarrollado funcionalidades similares para otros entornos y herramientas:

  • Plugin para WordPress.
  • Versión para Android.
  • Versión para Windows Forms.
  • Versión Flutter.
  • Versión iOS (SwiftUI).
  • Versión Angular.

Enlace: https://github.com/kleampa/not-paid

Aprendiendo LINUX como si Fuera un Juego

Si eres programador, seguro que alguna vez te has topado con la necesidad de usar linux para dar vida a tus proyectos. Hoy os traigo unas web que te ayudarán a conocer o mejorar en el uso de estos sistemas para que seas más eficiente en tus desarrollos.

VIM Adventures

Aprende con acertijos.

Enlace: https://vim-adventures.com/

Bandit

Para empezar desde 0 e ir avanzando nivel a nivel hasta convertirse en un experto.

Enlace: https://overthewire.org/wargames/bandit/

Terminus

Creado por MIT es un juego interactivo para ayudarte con el aprendizaje en el uso de un Terminal

Enlace: https://web.mit.edu/mprat/Public/web/Terminus/Web/main.html

Linux Survival

Se plantea en forma de retos que te enseñarán todo lo que necesitas saber de la forma más sencilla posible.

Enlace: https://linuxsurvival.com/

The Command Line Murders

¿Te gustan los misterios? Utiliza comandos para resolver este.

Enlace: https://github.com/veltman/clmystery

Buscar cuentas y correos electrónicos de cualquier persona

Hoy vamos a hablar de Profil3r, una herramienta OSINT que te permite encontrar perfiles potenciales de cualquier persona en las redes sociales, así como sus direcciones de correo electrónico.

Tiene una función que alerta alerta de la presencia de una fuga de datos de los correos electrónicos encontrados.

Entre las redes disponibles se encuentran las siguientes:

  • Instagram
  • Facebook
  • Twitter
  • Tiktok
  • Onlyfans

Funciona con Python y te permite buscar por nombre como en el siguiente ejemplo:

Comandos Linux más Utilizados

Aquí os dejo el listado de los comandos de Linux que más se utilizan en la actualidad:

  1. ls: Lista el contenido de un directorio
  2. cd: Cambia el directorio actual
  3. pwd: Muestra el directorio de trabajo actual
  4. cp: Copia archivos y directorios
  5. mv: Mueve o renombra archivos y directorios
  6. rm: Elimina archivos y directorios
  7. mkdir: Crea nuevos directorios
  8. rmdir: Elimina directorios vacíos
  9. touch: Cambia los tiempos de acceso y modificación de un archivo o crea archivos vacíos
  10. chmod: Cambia los permisos de archivos y directorios
  11. chown: Cambia el propietario de archivos y directorios
  12. chgrp: Cambia el grupo de archivos y directorios
  13. cat: Concatenar y mostrar el contenido de archivos
  14. echo: Muestra un mensaje o el valor de una variable
  15. more: Muestra el contenido de archivos pantalla por pantalla
  16. less: Similar a `more`, pero con capacidades de navegación adicionales
  17. head: Muestra las primeras líneas de un archivo
  18. tail: Muestra las últimas líneas de un archivo
  19. grep: Busca patrones en archivos
  20. find: Busca archivos y directorios en una jerarquía
  21. locate: Encuentra archivos por nombre rápidamente
  22. df: Muestra el uso del espacio en disco
  23. du: Muestra el uso del espacio de un archivo o directorio
  24. ps: Muestra información sobre los procesos activos
  25. top: Muestra los procesos en ejecución y su uso de recursos
  26. kill: Envía una señal a un proceso para finalizarlo
  27. killall: Mata todos los procesos que coinciden con un nombre dado
  28. xargs: Construye y ejecuta comandos desde la entrada estándar
  29. man: Muestra el manual de un comando
  30. apropos: Busca en las páginas del manual por palabra clave
  31. whoami: Muestra el nombre del usuario actual
  32. hostname: Muestra o establece el nombre del host del sistema
  33. uname: Muestra información del sistema
  34. uptime: Muestra el tiempo de actividad del sistema
  35. dmesg: Muestra mensajes del buffer del anillo del kernel
  36. free: Muestra la cantidad de memoria libre y utilizada en el sistema
  37. vmstat: Muestra estadísticas del sistema
  38. iostat: Muestra estadísticas de entrada/salida del sistema
  39. mount: Monta un sistema de archivos
  40. umount: Desmonta un sistema de archivos
  41. fsck: Verifica y repara un sistema de archivos
  42. mkfs: Crea un sistema de archivos en un dispositivo
  43. dd: Copia y convierte archivos
  44. tar: Archiva archivos en tarballs
  45. gzip: Comprime archivos con el algoritmo gzip
  46. gunzip: Descomprime archivos comprimidos con gzip
  47. zip: Comprime archivos en un archivo zip
  48. unzip: Extrae archivos de un archivo zip
  49. ping: Envía paquetes ICMP ECHO_REQUEST a una red
  50. ssh: Inicia una sesión de terminal segura en una máquina remota
  51. scp: Copia archivos entre hosts de forma segura
  52. rsync: Sincroniza archivos y directorios entre dos ubicaciones
  53. wget: Descarga archivos de la web
  54. curl: Transfiere datos desde o hacia un servidor
  55. ftp: Interactúa con servidores FTP
  56. nc: Lee y escribe datos en conexiones de red
  57. ip: Muestra y manipula configuraciones de red
  58. ifconfig: Configura interfaces de red
  59. netstat: Muestra conexiones de red, tablas de enrutamiento, y más
  60. traceroute: Rastrea la ruta de un paquete en la red
  61. route: Muestra y manipula tablas de enrutamiento IP
  62. iptables: Configura reglas del cortafuegos de IP
  63. ufw: Interfaz simplificada para `iptables`
  64. systemctl: Controla el sistema y el administrador de servicios
  65. service: Inicia, detiene y reinicia servicios
  66. journalctl: Muestra mensajes del journal del sistema
  67. cron: Programa tareas para su ejecución periódica
  68. at: Programa tareas para su ejecución única
  69. crontab: Edita la tabla de tareas programadas del cron
  70. alias: Crea alias para comandos
  71. unalias: Elimina alias
  72. history: Muestra el historial de comandos
  73. source: Ejecuta comandos desde un archivo en el contexto del shell actual
  74. export: Define variables de entorno
  75. env: Muestra y modifica el entorno
  76. set: Configura opciones de shell y muestra variables
  77. unset: Elimina variables o funciones
  78. bg: Envía un proceso al fondo
  79. fg: Trae un proceso del fondo al frente
  80. jobs: Muestra trabajos en segundo plano
  81. nohup: Ejecuta un comando que persiste después de cerrar la sesión
  82. nice: Ejecuta un comando con una prioridad modificada
  83. renice: Cambia la prioridad de un proceso en ejecución
  84. ncdu: Una herramienta de análisis de uso de disco con una interfaz de usuario basada en ncurses
  85. htop: Una herramienta interactiva para monitorear los procesos del sistema, similar a top, pero con una interfaz más amigable y opciones adicionales
  86. lsof: Lista archivos abiertos por procesos
  87. strace: Rastrea llamadas al sistema y señales
  88. lscpu: Muestra información sobre la CPU
  89. lsblk: Muestra información sobre dispositivos de bloques
  90. blkid: Muestra atributos de dispositivos de bloques
  91. hdparm: Configura dispositivos ATA/IDE
  92. smartctl: Controla y monitorea dispositivos SMART
  93. tune2fs: Ajusta parámetros de sistemas de archivos ext2/ext3/ext4
  94. uuidgen: Genera UUIDs
  95. basename: Elimina directorios y su fija de un nombre de ruta
  96. dirname: Elimina componentes de la ruta y deja solo el directorio
  97. readlink: Muestra el destino de un enlace simbólico
  98. ln: Crea enlaces (hard y simbólicos)
  99. diff: Compara archivos línea por línea
  100. patch: Aplica un parche a un archivo

Fuente: MoureDev

Secretos de los Buscadores que no Conocías

En todos los buscadores tenemos herramientas y palabras reservadas que nos ayudan a la hora de consultar información. Estas palabras clave se utilizan para especificar más la búsqueda y dependiendo de cada buscador pueden ser diferentes. En este caso se explicarán para los dos más importantes, Google y Bing.

Google

  • site:ucm.es. Solo muestra resultados del dominio web indicado. Si se especifica alguna palabra más, solo la buscará en ese dominio.
  • «tarta de manzana». Busca solo la frase exacta, sin quitar palabras.
  • tienda –online. El símbolo ‘-’ hace que no busque la palabra que le sigue, por lo que en este caso buscará la palabra tienda pero que no incluya online.
  • los * años. Los asteriscos sirven como comodines en las búsquedas.
  • link:marca.com. Muestra todas las páginas que poseen enlaces a la página indicada.
  • info:www.elhacker.es. Muestra información de la página web, como sitios similares, la caché de Google, páginas con enlaces al sitio…
  • inurl:uah. Muestra las páginas que contengan la palabra indicada en su URL.
  • intitle:Windows. Muestra las páginas que tengan la palabra indicada en su título.
  • cache:www.dropbox.com. Muestra la caché que tenga Google almacenada del sitio web.
  • filetype:pdf hacking. Muestra resultados de la búsqueda que tengan la extensión específica. Pueden ser pdf, doc, docx, pptx, xlsx, rdp (escritorio remoto)…

Bing

Tiene funciones muy parecidas a las de Google: site, filetype, intitle, url… Pero cabe destacar una función, ip. Con esta palabra se pueden buscar los sitios hospedados en una misma ip, dominios compartidos.

Siempre se recomienda realizar las búsquedas en diferentes buscadores, ya que utilizan métodos de indexación distintos y los resultados pueden variar de uno a otro.

Para encontrar búsquedas más avanzadas (los llamados Dorks de Google) es recomendable visitar el repositorio de la Google Hacking Database (GHDB), que se encuentra en la página: https://blog.miguelandrescaballero.es/dorks

En esa web se pueden encontrar diferentes búsquedas realizadas para encontrar vulnerabilidades, usuarios, archivos… hasta contraseñas. Muchas de las búsquedas están desactualizadas, pero a día de hoy aún siguen apareciendo nuevos resultados útiles.

Generar Correos Infinitos en Gmail

Seguro que alguna vez has necesitado un correo para entrar en alguna página, jugar a algún juego, hacer alguna maldad… Pues hoy os traigo un script escrito en Python que permite hacerlo.

No se si lo sabéis, pero en GMail hay una limitación a la hora de crear correos. Necesitas indicar tu número de teléfono y solo puedes meter el mismo en 5 ocasiones (aunque es posible que en ciertas condiciones te permita alguna más). Con este script podrás crear infinidad de correos saltandote esa validación.

Tal y como indican en GitHub, puedes hablar con el desarrollador para obtener algunas mejoras que no deberían ser publicadas. «He desarrollado webdriver sigilo que evitar la detección durante la creación de la cuenta.», explica.

Es un script con el que además puedes aprender mucho sobre automatización en Python.

Os dejo el enlace a continuación: Auto-Gmail-Creator