Categorías
Hacking Networking Services - Software

Cómo reconocer y evitar ataques de Phishing

Los ataques de Phishing representan una seria amenaza y, desafortunadamente, muchas personas no son plenamente conscientes de ello. En primer lugar, hay que entender que cuando se habla de «phishing», nos referimos a intentos de obtener información sensible, como contraseñas y otros detalles relevantes. En ocasiones, estos ataques tienen éxito, puesto que el ciberdelincuente se hace pasar por una entidad confiable.

No obstante, hay algunas señales de alerta que nos permiten detectar que somos el objetivo de una campaña de phishing y, por supuesto, tomar medidas. Las cosas en las que deberías fijarte son las siguientes:

• Correos electrónicos no solicitados
• Errores gramaticales u ortográficos
• Enlaces a ofertas, productos, servicios cuya fuente no ha sido verificada
• URLs sospechas o que utilicen acortadores
• Documentos adjuntos en correos cuyo origen no se puede determinar o es desconocido

Algunos ejemplos comunes de Phishing son los siguientes
• Phishing por correo electrónico y suplantación de identidad
• Phishing por SMS (Smishing)
• Phishing por teléfono (Vishing)
• Sitios web falsos
• Phishing de empleados (CEO Fraud)
• Ofertas o promociones «irresistibles»
• Alertas de seguridad falsas
• Encuestas fraudulentas

Para protegerte, deberías tener en cuenta las siguientes consideraciones

Verifica el remitente
• Inspecciona los enlaces antes de pinchar sobre ellos
• Nunca compartas información sensible
• Utiliza software que filtre estas amenazas. El uso de un Antivirus es recomendable.
• Reporta los ataques de phishing que consigas detectar a tu proveedor y/o a las entidades afectadas.

Para evitar los ataques de Phishing es fundamental ser consciente de que cualquier persona puede ser víctima. Partiendo de esta premisa, puedes protegerte usando el sentido común y prestando atención a todas las comunicaciones que realizas con el exterior, especialmente aquellas en las que desconoces quién está «al otro lado».
En otras palabras, si no puedes verificar la fuente de un mensaje, desconfía.

 


 

Recuerda que tienes todas las formaciones y packs de The Hacker Way.

Las mejores formaciones en castellano que podrás encontrar y al mejor precio.
No lo digo yo, puedes ver las reseñas en el sitio web.

Más de 500 alumnos han aprovechado los cursos online en THW y tú también podrías ser uno de ellos: https://thehackerway.es/cursos

Además de los cursos y la comunidad THW, tenemos el Plan Starter en Ciberseguridad (PSC) con el que no solo aprenderás Hacking ético, además adquirirás las habilidades necesarias para trabajar en el sector de la ciberseguridad.
Ya sea que seas un trabajador en activo o busques una primera experiencia, en THW podemos ayudarte mediante el plan PSC. Tienes más información en este enlace

¡Un saludo y Happy Hack!
Adastra.

Categorías
Hacking

Crea tu proxy para Telegram con MTProxy

Este artículo lo ha escrito uno de los miembros de nuestro grupo de Telegram

Autor: L1Cafe
Blog: https://www.l1cafe.blog/2024/03/24/set-up-your-own-telegram-proxy.html


Configura un proxy Telegram MTProto en una Raspberry Pi con Alpine Linux y Docker en unos pocos minutos y comunícate libremente.

Si quieres evadir las restricciones impuestas a Telegram en España usando MTProxy, puedes usar este mismo procedimiento que se describe a continuación, pero debes hacerlo en un servidor que no se encuentre en España. Es recomendable que uses un VPS en algún proveedor en Internet, Digital Ocean suele ser una buena opción.

Al lío.

Vas a necesitar:

  • Una Raspberry Pi, yo estoy usando un modelo 3B+, pero puedes elegir la versión que sea adecuada para tu hardware
  • Una tarjeta microSD de al menos 2GB
  • Un lector de tarjetas microSD
  • Teclado USB
  • Cable HDMI para conectar tu RPi a tu monitor
  • Una fuente de alimentación adecuada
  • Cable ethernet para conectar tu RPi a tu router (utilizar WiFi no es recomendable)

Antes de empezar, algunas cosas a tener en cuenta:

  • Si tu país bloquea Telegram, configurar un proxy MTProto utilizando tu conexión a Internet con una Raspberry Pi no va a permitirte acceder Telegram. Esta guía está pensada para ser seguida por personas viviendo en países donde Telegram no está restringido. Aunque es posible utilizar una Raspberry Pi a través de una conexión VPN, no voy a entrar en detalles sobre cómo hacerlo en esta guía.
  • La Raspberry Pi no es un dispositivo potente, y es relativamente sencillo atacarla con un ataque de denegación de servicio. Especialmente si publicas tu IP y puerto en Internet. Es mejor sólo compartir los detalles del proxy con amigos y familiares cercanos.
  • Estoy utilizando una Raspberry Pi 3 Model B+, pero las instrucciones son parecidas con otros dispositivos ARM como Banana Pi u Orange Pi, o nuevas versiones de Raspberry Pi. Para un pequeño proxy que utilicen 5 o 10 personas, no necesitas demasiados recursos. Cualquier dispositivo fabricado en los últimos 10 años con al menos 1 GB de RAM debería bastar, incluyendo ordenadores de oficina antiguos o portátiles con pantallas dañadas (puntos extra de reciclaje).
  • Estas instrucciones son para Alpine Linux. Creo que es mucho más simple y rápido de instalar, y más eficiente utilizar Alpine Linux para este propósito. Con otras distribuciones como Ubuntu o Debian, la configuración de red y Docker es ligeramente diferente. Consulta el manual de tu distribución si decides utilizar otra.
  • Necesitas saber cómo abrir puertos. Las instrucciones varían, pero generalmente puedes buscar algo como «abrir puertos en …».  En otros casos, las instrucciones varían según tu modelo de router. Además, esta guía asume que no tienes CGNAT, en cuyo caso abrir puertos podría ser más difícil o imposible, según tu proveedor de Internet.
  • Además de abrir puertos, muchos proveedores de Internet utilizan asignación de IP dinámica, lo que puede producir que tu IP cambie cuando reinicias tu router o a lo largo de los días. El enlace generado más adelante en esta guía no va a funcionar si tu dirección IP cambia. Una forma de resolver esto es utilizar servicios de dynamic DNS o DNS dinámico. Esto creará un nombre de host que no cambia, y puedes apuntar a tu dirección IP aunque sea dinámica. Entonces, será tu responsabilidad actualizar la dirección IP cada vez que cambie, y necesitarás consultar la documentación de tu proveedor de DNS dinámico para configurarlo.

Preparación

Descarga la imagen de Alpine Linux para Raspberry Pi de https://www.alpinelinux.org/downloads/. Yo he seleccionado aarch64 en formato img.gz para mi Raspberry Pi 3B+.

Inserta una tarjeta microSD en tu lector de tarjetas microSD. El método más sencillo para grabar la imagen en la tarjeta es utilizar Raspberry Pi Imager: https://www.raspberrypi.com/software/. Hay versiones para macOS, Windows, y Ubuntu. En muchos sistemas operativos basados en Linux que soportan Flatpak, como Fedora, puedes encontrarlo en tu centro de software simplemente buscando «Raspberry».

  1. Selecciona tu modelo, la imagen que has descargado (importante: esta aplicación no proporciona Alpine Linux para descargar directamente, pero puedes elegir tu archivo .img.gz de todas formas), y la tarjeta microSD donde quieres grabar la imagen.
  2. Cuando pregunta si deseas personalizar la imagen, debes saltar este paso, porque Alpine Linux no se puede personalizar con esta herramienta.

Inserta la tarjeta microSD preparada en tu Raspberry Pi, y conéctala a tu monitor con un cable HDMI. Conecta también un teclado USB (no necesitas ratón), y por último, conecta la fuente de alimentación microUSB, o lo que corresponda en su lugar. Tu Raspberry Pi debería arrancar automáticamente en la pantalla de inicio de sesión de Alpine Linux.

Inicia sesión con root, no necesitas escribir una contraseña. Escribe setup-alpine para comenzar el proceso de instalación, y responde a las preguntas según aparecen. La distribución de teclado española se llama es, que es una de las primeras preguntas.

Para el nombre de host, puedes introducir lo que prefieras, no tiene por qué ser idéntico al nombre de dominio que le vas a dar para compartir tu proxy.

Para la configuración de red (se recomienda ethernet), tu router proveerá un servicio DHCP, pero es mala idea utilizarlo a largo plazo, porque si la dirección IP de tu LAN cambia, cosa que puede suceder cada pocas horas o días, el redireccionamiento de puertos dejaría de funcionar. Se recomienda configurar una IP estática fuera del rango DHCP, para evitar colisiones.

Una alternativa es que algunos routers ofrecen emparejamiento de dirección MAC y dirección IP. De esta manera, el servidor DHCP de tu router recordará tu MAC y siempre asignará la dirección IP que tú configures. En cuyo caso, deberías seleccionar DHCP en el instalador. En cualquier caso, anota tu dirección IP porque la vas a necesitar más adelante.

  1. Para abrir una terminal sin cancelar el proceso de instalación, pulsa Ctrl + Alt + F2.
  2. Ejecuta ip a show eth0 para obtener la dirección MAC de tu Raspberry Pi. Puedes utilizar esta MAC para asignarle la dirección IP que prefieras en los ajustes de tu router. Esto se suele llamar «IP estática» o «DHCP static IP».
  3. Puedes volver al instalador pulsando Ctrl + Alt + F1.

Para la zona horaria yo he elegido Europe/Amsterdam.

El cliente NTP por defecto es suficiente, pulsa intro para aceptar esta elección por defecto.

Para los espejos (mirrors), puedes usar f para seleccionar el más rápido, cercano a ti.

No necesitas configurar un usuario. Aunque no se recomienda utilizar root para actividades rutinarias, esta Raspberry Pi va a funcionar exclusivamente como una máquina proxy que configurarás una vez y te puedes olvidar de ella.

Si quieres acceder a esta Raspberry Pi remotamente sin necesidad de cable HDMI o USB, configurar SSH es buena idea. De otro modo, desactivar SSH es una mejor elección por seguridad, especialmente considerando que esta máquina va a estar expuesta a Internet.

Si quieres activar SSH, lo más sencillo es establecer una contraseña larga y compleja que puedas recordar, pero es buena práctica utilizar claves SSH. No explicar cómo funcionan las claves SSH porque hay cientos de artículos que lo explican al máximo detalle, pero incluso en este caso, seguramente quieras establecer una contraseña al menos temporalmente, y luego puedes configurar acceso con claves SSH y prohibir contraseñas. Para ello, cuando el instalador pregunta si quieres habilitar acceso root, tienes que introducir yes. De lo contrario, prohibit-password sólo permitirá acceso si has configurado claves SSH.

Como la Raspberry Pi sólo tiene una tarjeta microSD y no tiene almacenamiento interno, tendrás que sobreescribir esta tarjeta microSD. No hay ningún problema. Te sugerirá probar el medio de arranque (boot media). De otro modo, si reinicias la RPi o pierdes electricidad durante unos segundos, todos tus ajustes se borrarán y RPi arrancará de nuevo con el instalador.

Tendrá un aspecto como /media/mmcblk0. Indica yes para utilizar esta tarjeta microSD, y luego escribe mmcblk0 cuando el instalador pregunta qué disco utilizar.

Con respecto a modos de instalación, sys es lo más sencillo. Para instalaciones cifradas o configuraciones más avanzadas, por favor consulta el manual de instalación de Alpine Linux.

Por último, configura tu proxy

Reinicia, e introduce root como usuario, y tu contraseña.

Instala las herramientas básicas:

apk add vim nano

Puedes elegir otro editor de texto. Únicamente vi está disponible por defecto, pero nano es el más recomendable para principiantes.

Para instalar Docker, necesitamos activar los repositorios community. Edita /etc/apk/repositories. A mí me gusta Vim. Simplemente mueve el cursor al carácter # en frente del repositorio community, y pulsa x para borrarlo. Para guardar, pulsa :wq.

Mi lista de repositorios tiene este aspecto tras los cambios:

/media/mmcblk0/apks
http://alpine.mirror.wearetriple.com/v3.19/main
http://alpine.mirror.wearetriple.com/v3.19/community

Instala Docker:

apk update && apk add docker

Configuramos el servicio Docker:

rc-update add docker && rc-service docker start

Generamos un secreto:

docker run --rm nineseconds/mtg:2 generate-secret tgproxy.0x7.io > config.toml

Puedes elegir otro nombre de dominio, hay más detalles en la documentación: https://github.com/9seconds/mtg. Has escrito un secreto a config.toml. Ahora, puedes editar este archivo para que tenga el siguiente aspecto:

secret = "Y0uRS3cr37"

bind-to = "0.0.0.0:7104"

El secreto ya está en el archivo. Simplemente rodéalo con " dobles comillas, y puedes elegir otro puerto si prefieres. Es recomendable configurar el mismo puerto para configuración, contenedor, host, y redireccionamiento en tu router por razones de simplicidad.

Finalmente, arranca tu contenedor Docker:

docker run -d -v $PWD/config.toml:/config.toml -p 7104:7104 --name mtg-proxy --restart=unless-stopped nineseconds/mtg:2

Nótese aquí el «unless-stopped». Esto indica a Docker que este contenedor debe iniciarse a menos que se detenga manualmente. Así que tu proxy debería arrancar automáticamente siempre y cuando hayas configurado el servicio de Docker para que arranque con el sistema.

Si todo ha ido bien, puedes conectar con tu proxy utilizando cualquier cliente de Telegram. Puedes mostrar la configuración con el siguiente comando:

docker exec mtg-proxy /mtg access /config.toml

Si estás conectado a través de SSH, ahora puedes copiar esta configuración y mantenerla segura para dársela a amigos y familiares. Finalmente, reenvía el puerto 7104 en la configuración de su router al puerto 7104 en su IP Raspberry Pi (consulte la parte superior del artículo sobre cómo configurar una IP estática o configurar DHCP).

Si deseas verificar que todo funciona correctamente, reinicia tu Raspberry Pi escribiendo reboot y, si agregaste tu proxy a Telegram, debería conectarse correctamente después de unos segundos.

Si has configurado un servicio DNS dinámico, puedes reemplazar su dirección IP desde los enlaces generados con tu nombre de host DNS dinámico.

Si necesitas un proxy para Telegram, tengo uno aquí. Puede que no dure para siempre, pero siempre que esté disponible, siéntete libre de utilizarlo. Simplemente haz click en ese enlace o agrégalo a Telegram con los siguientes detalles:

  • Protocol: MTPROTO
  • Hostname: tgproxy.0x7.io
  • Port: 6122
  • Secret: 7kc85dSVjrX5aMh2gKI4VKBnb29nbGUuY29t

 

Autor: L1Cafe

Categorías
devsecops Hacking Services - Software Web Applications

Resumen de la guía OWASP Top 10

Si te dedicas al Hacking web o pretendes hacerlo, sin duda tendrás que pasarte por la comunidad OWASP y, muy especialmente, aprender la guía OWASP Top 10.

Se trata de un proyecto que enseña la evolución de las tecnologías web en los últimos años, ya que viendo los cambios que se van introduciendo en cada versión, ves cómo algunas vulnerabilidades que antes se consideraban críticas y comunes, con el paso del tiempo dejan de ser tan frecuentes.

La guía refleja las vulnerabilidades que, según la opinión de múltiples comunidades y empresas del sector, son las más peligrosas en el mundo de las aplicaciones web.

Se trata de una lista que se genera tras un proceso de votación, donde se valoran factores tan importantes como la facilidad de detectar y explotar el defecto, su impacto y el riesgo.

Si bien es cierto que se suele hablar mucho de esta guía, he notado que en ocasiones algunas personas no tienen del todo claro algunas de las categorías descritas, por ese motivo en esta infografía, explicaré de una forma clara y concisa cada una.

Ahora mismo, la última guía publicada es del 2021, pero, toma nota: En septiembre del 2024 se publicará una nueva versión.

Las categorías son:

A1-2021: Broken Access Control

Se produce cuando la aplicación web no controla adecuadamente el acceso a funcionalidades o secciones de la aplicación web. Puede conducir a la elevación de privilegios o suplantación de la identidad de un usuario. Es un problema muy habitual en las aplicaciones web y se puede solucionar implementando controles RBAC (Role-Based Access Control) y probando que están correctamente implantados.

A2-2021: Cryptographic Failures

Antes era conocida como «Sensitive Data Exposure», pero se ha renombrado, ya que la exposición de datos sensibles es el resultado de malas prácticas, no el problema en sí. En esta categoría se expone el hecho de que la información sensible se debe cifrar para evitar fugas y problemas sobre la confidencialidad de la información.

A3-2021: Injection

Es la vulnerabilidad clásica que vemos desde los orígenes de la guía, sin embargo, en esta última versión, se ha fusionado con la categoría de «Cross-Site Scripting (XSS)». Ahora hace referencia a cualquier problema de inyección, tanto en el servidor como en el cliente

A4-2021: Insecure Design

Esta categoría es nueva y trata de centrar la atención en el problema de seguridad real que sufren prácticamente todas las aplicaciones web: Diseño inseguro.
Tal como se describe en la guía, se recomienda aplicar esquemas de modelos de amenazas y el DevSecOps en los proyectos.

A5-2021: Security Misconfiguration

Hace referencia a configuraciones inseguras en lenguajes de programación, frameworks, librerías, servidores y cualquier componente que haga parte de la aplicación.

A6-2021: Vulnerable and Outdated Components

Refleja el hecho de que, en muchas ocasiones, las aplicaciones web desplegadas utilizan componentes con vulnerabilidades conocidas.

A7-2021: Identification and Authentication Failures

Hace referencia a todos los problemas que se pueden presentar en la autenticación de los usuarios. No solamente en los formularios de login, en esta categoría también se incluyen otras funcionalidades que de forma indirecta afectan al mecanismo de autenticación, como la forma en la que un usuario recupera su contraseña olvidada.

A8-2021: Software and Data Integrity Failures

Se trata de una categoría nueva que describe los problemas de asumir datos críticos, actualizaciones de software y parámetros en procesos de CI/CD sin verificar la integridad.

A9-2021: Security Logging and Monitoring Failures

Se relaciona con la falta de vigilancia y control sobre los eventos que se producen en la aplicación. La ausencia de herramientas de monitorización o no revisar continuamente los eventos generados, hace que tenga sentido esta categoría.

A10-2021: Server-Side Request Forgery

Gracias al auge de las arquitecturas basadas en microservicios y APIs Rest, es habitual que una aplicación reciba datos de otra para realizar algún tipo de procesamiento. El problema está en que si esos datos inicialmente provienen de una fuente no confiable y no se validan correctamente, puede afectar a la seguridad de ambas aplicaciones.

Algunas no son nuevas y vienen de versiones anteriores, mientras que otras se han renombrado para dar una connotación más clara del problema en cuestión.

Es una guía que, en mi opinión, es de obligado conocimiento por parte de cualquiera que se dedique al mundo de la ciberseguridad, es por ello que te recomiendo los cursos de Hacking web con ZAP y el pack que incluye, además, la formación de Hacking contra APIs Rest, todos ellos disponibles en la plataforma THW.


 

Recuerda que tienes todas las formaciones y packs de The Hacker Way.

Las mejores formaciones en castellano que podrás encontrar y al mejor precio.
No lo digo yo, puedes ver las reseñas en el sitio web.

Más de 500 alumnos han aprovechado los cursos online en THW y tú también podrías ser uno de ellos: https://thehackerway.es/cursos

Además de los cursos y la comunidad THW, tenemos el Plan Starter en Ciberseguridad (PSC) con el que no solo aprenderás Hacking ético, además adquirirás las habilidades necesarias para trabajar en el sector de la ciberseguridad.
Ya sea que seas un trabajador en activo o busques una primera experiencia, en THW podemos ayudarte mediante el plan PSC. Tienes más información en este enlace

¡Un saludo y Happy Hack!
Adastra.