No creas todo lo que ves
Título del proyecto: HAWS: sistema de advertencia de ataques homógrafos
Si perteneces al siglo XXI, es posible que hayas visto muchas de esas cosas que nuestros viejos antepasados no vieron. ¿Sabían el gran padre de la informática «Charles Babbage» o la madre de la programación «Lady Eda» que su invento influirá y superará al próximo siglo? ¿Quizás el próximo de los próximos y todos los demás siglos? Bueno, ya sabes, las computadoras están en todas partes. Desde sus teléfonos inteligentes hasta automóviles, desde computadoras de escritorio hasta computadoras portátiles, refrigeradores, hornos y en todas partes. Fueron construidos para hacer el trabajo fácil e interesante. Lo principal que han revolucionado es nuestra forma de comunicación que veníamos siguiendo desde hace mucho tiempo. Ahora vivimos en la era de las aplicaciones de redes sociales, desde Facebook hasta WhatsApp están presentes en todas partes. Estas aplicaciones están siendo utilizadas por todos, desde el agricultor hasta el director general de las empresas.
Whatsapp tiene más de 1500 millones de usuarios activos en el mundo, 200 millones de usuarios solo en India. Aunque esto puede parecer una muy buena señal para los indios de que se están moviendo hacia la nueva era de «LA INDIA DIGITAL», puede tener algunas consecuencias como la difusión de noticias falsas, la violación de información personal como tarjetas de crédito, contraseñas o billeteras digitales. etc. Los usuarios creen cada mensaje compartido en las redes sociales y creen que todo está «BIEN».
Una encuesta muestra que alrededor de 155 millones de intentos de phishing en los usuarios de la empresa y entre los cuales el 52 por ciento podría haberse detenido si se hubiera tenido cuidado y ¿Cuál es la mejor defensa contra el phishing o el ataque homógrafo? Generalmente, revisando la barra de direcciones, la conexión https o cualquier palabra mal escrita en el nombre de dominio. Derecha ? pero los ataques de ingeniería social se han alejado mucho de esto como el ataque HOMOGRAPH en el que dependemos totalmente de nuestro navegador para que nos avise. Esta situación puede preocupar a algunos usuarios de ordenadores, pero generalmente no pensamos mucho en cuándo realizamos alguna acción en nuestros teléfonos móviles. Pero todos estos llamados pasos para hacer no son la forma correcta de lidiar con esta situación.
Por lo tanto, para mantener seguros a nuestros amantes de Internet y a los usuarios, se nos ocurrió esta idea de proyecto que brinda al usuario la capacidad de detectar ataques de homógrafos y enlaces maliciosos que les advierten antes de que puedan acceder al sitio.
El problema del mundo real puede verse así
Nota: Esta es solo la prueba de concepto del ataque, el escenario puede diferir.
En la imagen de arriba, el usuario le pide a su amigo que le envíe el enlace del sitio web de Apple, pero el amigo lo engañó y compartió el dominio Unicode que se ve idéntico al sitio web original de Apple. Si esto se pone en el camino de un atacante, entonces el resultado podría haber sido diferente, tal vez sea posible que ingrese sus Credenciales en el sitio web asumiendo que todo está bien.
Introducción: el proyecto será una aplicación basada en Android para cualquier persona que utilice aplicaciones de redes sociales como WhatsApp o cualquier aplicación popular. Esto ayudará al usuario a navegar de forma segura en su dispositivo móvil a cualquier enlace que se comparta con ellos. El sistema le avisará al usuario cada vez que visite un enlace malicioso, no solo se ocupará de un enlace malicioso simple y bien conocido que puede ser detectado fácilmente por cualquier persona que tenga algunos conocimientos básicos sobre la computadora, sino que también bloqueará cualquier enlace que incluso puede engañar a un aficionado a la tecnología.
El principal beneficio de este proyecto será que eliminará por completo la ayuda del navegador para detectar tales ataques o cualquier interacción del usuario para verificar el dominio y detectará cualquier ataque que incluso pueda eludir la protección del navegador.
Diseño: El diseño del proyecto se puede dividir en tres fases que son las siguientes:
1. Diseño de la Interfaz de Usuario: En esta fase se desarrolla la Interfaz de Usuario del proyecto. Es decir, el diseño de nuestra aplicación a través de la cual el usuario interactuará para el aviso emitido según los casos.
2. Base de datos: la base de datos es el conjunto de información para cada aplicación. En nuestra aplicación, la base de datos se utiliza para almacenar los enlaces falsificados de sitios web más populares y los enlaces de sitios maliciosos que se parecen a los 10k dominios principales de Alexa. La base de datos también almacenará todos los sitios que detectará como «No seguros» y, por lo tanto, acelerará nuestro proceso para detectar el mismo problema en el próximo evento futuro. Los siguientes diagramas muestran la representación entre diferentes entidades de nuestro proyecto.
3. Diseño del Sistema: En esta fase se diseña un diagrama de flujo completo del sistema de trabajo. El diagrama de flujo muestra el funcionamiento paso a paso de cada entidad de nuestro proyecto.
De acuerdo con las siguientes tres etapas, ahora comenzaremos nuestra implementación del proyecto.
Implementación
Diagramas: Los siguientes diagramas muestran la implementación y el funcionamiento del proyecto.
Diagrama de bloques
Diagrama de flujo de datos
Diagrama de flujo de datos
El proyecto está actualmente en desarrollo, así que aquí están los detalles de algunos de los módulos principales de nuestro proyecto.
Verificador 1: el primer módulo que entrará en acción cuando el usuario haga clic en el enlace compartido en la aplicación de redes sociales (es decir, WhatsApp o cualquier otra aplicación de mensajería). Obtendrá el enlace de la aplicación y buscará el siguiente enlace en nuestra base de datos, si el enlace se encuentra en la base de datos, aparecerá una advertencia para el usuario como «No seguro». Si la búsqueda no tiene éxito, lo hará. pasar al siguiente módulo, es decir, Convertidor.
Convertidor: este módulo convertirá el enlace de codificación compatible con ASCII a Unicode. Si hay un error en la conversión a Unicode (p. ej., contiene caracteres no permitidos, comienza con una marca de combinación o viola las reglas de BiDi), se genera Punycode y se muestra una advertencia. Y si no hay ningún error en la conversión, se dirige hacia el siguiente módulo, es decir, Checker 2.
Verificador 2: este módulo verificará las siguientes condiciones:
- Si hay un carácter en una etiqueta que no pertenece a Caracteres permitidos en los identificadores según el estándar técnico Unicode 39 (UTS 39)
- Si algún carácter de una etiqueta pertenece a la lista negra
- Si se mezclan dos o más sistemas de numeración
- Si hay algún personaje invisible
- Pruebe la etiqueta para escritura mixta confundible por UTS 39
- Si un nombre de host pertenece a un TLD sin IDN
Si alguna de estas condiciones se cumple, se muestra una advertencia.
(Estas condiciones pueden aumentar en el desarrollo posterior del proyecto para hacerlo más efectivo)
Sistema de advertencia: este módulo entrará en acción tan pronto como obtenga el Punycode o el enlace extraído se encuentre en la base de datos y mostrará la advertencia «El enlace no es seguro para visitar». Y proporcionará las siguientes operaciones a realizar por el usuario :
1- Abrir en navegador: Esto permitirá al usuario visitar el enlace en el navegador.
2- Volver a la aplicación: Esto redirigirá al usuario a la aplicación de origen (es decir, WhatsApp o cualquier otra aplicación).
Herramientas utilizadas: Node.js, Apache HTTP Server, base de datos MySQL, PHP para manejar el backend de la interfaz, Basic4android, AppInventor, Google Firebase
Aplicación: Este proyecto se propone para hacernos más seguros frente a delitos cibernéticos como ataques homógrafos de IDN o estafas de phishing, etc. en las redes sociales. A medida que India avanza hacia la «Digitalización», los delitos cibernéticos también aumentan, lo que en algún momento puede incluso afectar la vida cotidiana de un hombre común, por lo que nuestro proyecto tiene como objetivo ayudarlos a minimizar el riesgo mientras visitan los enlaces web compartidos en las redes sociales.
Referencias
- Costello, A. (2003, marzo). «RFC3492- Punycode: una codificación de string de arranque de Unicode para nombres de dominio internacionalizados en aplicaciones (IDNA)». de http://www.ietf.org/rfc/rfc3492.txt
- Krammer, V. (2006). Defensa de phishing contra ataques de suplantación de direcciones de IDN, ACM
- Mark Davis ,Michel Suignard (2018) «Mecanismos de seguridad Unicode» de http://www.unicode.org/reports/tr39/
- Alfarero, B. (2005). URL peligrosas: Unicode e IDN. [doi: DOI: 10.1016/S1353-4858(05)00210-2]. Seguridad de red, 2005 (3), 5-6
- Weber, C. (2008a). The Lookout: ataques de seguridad Unicode y casos de prueba Visual Spoofing, ataques homógrafos de IDN y Mixed Script Confusables. de https://www.lookout.net/2008/12/unicode-attacks-and-test-cases-visual_11.html
Miembros del equipo
1. Muhammad Uwais
2. Akhil Bhardwaj
3. Lakshya Singh
Nota: esta idea de proyecto se contribuye para ProGeek Cup 2.0: una competencia de proyectos de GeeksforGeeks.