Sesion 06. Software malicioso para ataques ocultos: Backdoor, rootkits. Sniffers Ing. Jorge Eddy Otazu Luque Backdoor o Puerta Trasera Backdoor significa puerta trasera y hace referencia a un software que proporciona acceso a un ordenador de forma remota. El usuario que accede al ordenador de forma remota tomará el control total del equipo, pudiendo hacer las mismas acciones que el usuario presencial del mismo. Este tipo de programas puede ser de dos tipos: ● Backdoor preinstalados. Se trata de backdoors que vienen preinstalados con el sistema operativo o con algunas aplicaciones y que se utilizan para dar acceso remoto a técnicos de soporte, otros usuarios y fines similares. Muchas veces estos backdoors permanecen instalados en el sistema creando una vulnerabilidad que puede ser aprovechada por terceros malintencionados para acceder al equipo de forma remota. ● Backdoor virus o malware. Se trata de programas maliciosos que se instalan en un ordenador y que tienen por objetivo el dar acceso a ciberdelincuentes para que tomen control remoto del mismo. Usos indeseados de los backdoor El uso de backdoor por parte de terceros no autorizados implica que se realizarán acciones desde ese equipo que tendrán consecuencias negativas para la empresa. Los principales usos ilegales para los que se utilizan los backdoor son: Robo de información El principal uso de este tipo de accesos remotos utilizando puertas traseras es el de robo de información de la empresa. Datos bancarios, contraseñas de accesos y datos personales son el tipo de información más buscada por los ciberdelincuentes. Dañar la información y los sistemas El usuario que accede a un equipo remoto con un backdoor tiene un control total sobre el mismo, por lo que muchas veces es utilizado para eliminar o dañar la información de la empresa o interrumpir sus sistemas. El atacante puede borrar archivos, renombrar y mover carpetas, cambiar configuraciones del sistema operativo, e incluso apagar el ordenador de forma remota. Usos maliciosos También es posible que el atacante tenga otros fines maliciosos cuando controla un equipo de la empresa de forma remota como utilizarlo como parte de una red zombi de PC para actos delictivos, aprovechar la capacidad del hardware para minar criptomonedas, encriptación de los archivos del sistema (ransomware) o instalar un servidor FTP escondido para realizar actividades ilegales (como la distribución de software pirata). Cómo identificar si tengo backdoor en mis sistemas Los backdoors son programas que se esconden muy bien en el sistema y son difíciles de rastrear. Muchas veces los usuarios no se enteran de que su equipo está siendo controlado de forma remota hasta pasar mucho tiempo (incluso años). Una pista que puede hacer sospechar sobre si un equipo está siendo controlado es la disminución de su rendimiento o de su velocidad de internet de forma repentina. También es posible que se abran ventanas de forma automática o que aparezcan cuadros de diálogo pidiendo datos de acceso a sitios web, como correos o cuentas bancarias, por ejemplo. ¿El backdoor es lo mismo que un troyano? ¡No necesariamente! Los troyanos son un tipo de malware que incluye funciones de backdoor. No son sinónimos porque las puertas traseras pueden venir instaladas en un programa en el que los desarrolladores las dejaron para hacer actualizaciones y mejoras o porque olvidaron cerrarlas. El backdoor es una entrada secreta que casi nadie conoce y el troyano es un malware que se “disfraza” de otro programa para entrar en tu computadora. Las puertas traseras no siempre son peligrosas Es importante que sepas que un backdoor no siempre es malo; de hecho, los “accesos secretos” tienen usos completamente legales como: ● Actualizar programas para que el usuario no tenga que hacerlo. ● Dar mantenimiento a un software o al sistema. ● Resolver incidencias y dar asistencia técnica para resolver problemas de manera remota. ● Prevenir delitos ayudando a las autoridades a monitorear y evitar, por ejemplo, ataques terroristas. Cómo protegernos de los backdoor La mejor protección ante este tipo de ataques es contar con un sistema de protección en tiempo real formado por un antivirus (que debe estar siempre actualizado) y un cortafuego que impida accesos externos. El uso de buenas prácticas y el sentido común también será necesario para evitar instalar de forma accidental cualquier tipo de backdoor oculto. Un backdoor en informática es una puerta trasera que da acceso a controlar un ordenador de forma remota. A pesar de que no siempre se trata de un malware este tipo de vulnerabilidades son muy peligrosas, ya que pueden ser utilizadas por ciberdelincuentes y ocasionar graves daños a la empresa. ¿Cuáles son los ejemplos más famosos de backdoors? FinSpy es un backdoor que permite al atacante descargar y ejecutar archivos arbitrarios desde Internet. El parásito disminuye la seguridad global del sistema cambiando la configuración predeterminada del firewall de Windows e iniciando otros cambios en el sistema. FinSpy usa archivos que tienen nombres aleatorios, por lo que es complicado detectar este backdoor y eliminarlo del sistema. El backdoor se ejecuta automáticamente en cada inicio de Windows y puede eliminarse sólo con la ayuda de un anti-spyware actualizado. Tixanbot es un backdoor extremadamente peligroso que proporciona al atacante un acceso completo no autorizado del ordenador comprometido. El intruso puede administrar el sistema y sus archivos al completo, descargar e instalar aplicaciones arbitrarias, actualizar el backdoor, cambiar la página de inicio predeterminada de Internet Explorer, atacar servidores remotos y obtener información del sistema. Titanbox acaba con servicios del sistema esenciales y con procesos relacionados con la seguridad, cierra los eliminadores de spyware activos y registros de entrada relacionados con firewalls, antivirus y programas anti-spyware con el fin de prevenir que se ejecuten con el inicio de Windows. El parásito también bloquea el acceso a sitios web de seguridad legítimos. Titanbox puede difundirse enviando mensajes con ciertos links a través de contactos de MSN. Al hacer click en esos links, el backdoor se descarga y se instala. Briba es un backdoor que proporciona al hacker el acceso remoto y no autorizado del sistema del ordenador infectado. Este parásito se ejecuta en un servidor FTP escondido que puede ser usado para descargar, subir y ejecutar softwares maliciosos. La actividad de Briba puede resultar en la inestabilidad del sistema así como en violación de la privacidad del usuario y fallos en el rendimiento. Rootkit Un rootkit es un paquete de software malicioso que está diseñado para permanecer oculto en un ordenador mientras proporciona acceso y control remotos. Los ciberdelincuentes los utilizan para manipular el equipo sin el conocimiento o consentimiento del usuario. El rootkit puede contener una secuencia de herramientas que permiten robar contraseñas, información de tarjetas de crédito o banca online e información personal. Dado que son difíciles de detectar, es probable que este tipo de malware pueda estar en el ordenador durante mucho tiempo, ocasionando daños importantes. Y es que según afirman desde Kaspersky, son, además, difíciles de eliminar. Incluso en algunos casos se debe reinstalar el sistema operativo si el ordenador está seriamente dañado. Es decir, formatearlo. ¿Cómo se puede infectar un ordenador y qué tipos de ‘rootkit’ hay? Los rootkits se instalan a través de una infinidad de métodos, pero el más común es a través del uso de una vulnerabilidad en el sistema operativo o de una aplicación que se ejecuta en el ordenador. Los ciberdelincuentes se centran en las vulnerabilidades del sistema operativo y utilizan el código de explotación para obtener una posición privilegiada. Otras formas de infección son a través de unidades USB, correos electrónicos, archivos de descarga y aplicaciones móviles infectadas. En cuanto a sus tipos, hay multitud de ellos, y cada uno se dirige hacia una parte distinta del ordenador. Las clases de rootkits más habituales son los siguientes: ● Rootkit de kernel: Son los que actúan a nivel de kernel o núcleo. Con este ataque se obtienen todos los privilegios del sistema operativo y todo está potencialmente contaminado. ● Rootkit de aplicación: Funciona a nivel de aplicación. Pueden reemplazar o modificar módulos, archivos o código de aplicaciones. Consiguen hacerse pasar por un software legítimo. ● Rootkit de memoria: Funcionan en la RAM y de esta forma evitan dejar huella en el disco duro del dispositivo. ● Rootkit de firmware: Van dirigidos al firmware del ordenador, pudiendo infectar el disco duro, router o BIOS. ● Bootkit: Actúan sobre el sistema de arranque y se inician antes de que lo haga el sistema operativo. Son muy difíciles de eliminar, pero actualmente se encuentran obsoletos gracias a la función de arranque seguro. Las medidas de protección se centran en mantener actualizados los programas de protección (antivirus y firewall), así como en mantener el sistema actualizado para evitar vulnerabilidades. Es recomendable, asimismo, evitar la descarga de archivos (aún proviniendo de un usuario conocido) y la utilización de contraseñas robustas, cambiándolas de manera frecuente. Sniffer Un Sniffer es una aplicación especial para redes informáticas (un software) que se encarga de capturar y analizar paquetes en tránsito (entrada y/o salida) en una red de comunicaciones entre dispositivos. Sniffer, del inglés sniff: olfatear, rastrear, puede entenderse como un programa con la capacidad de observar el flujo de datos en tránsito por una red, y obtener información de éste; está diseñado para analizar los paquetes de datos que pasan por la red y no están destinados para él, lo que bajo ciertas circunstancias es muy útil, y bajo otras, a la vez, muy peligroso. De forma general, están disponibles para varias plataformas, tanto en las versiones comerciales como en las libres. Algunos de los paquetes más simples son muy fáciles de implementar, utilizando una línea de comandos y descargando los datos capturados a la pantalla; los proyectos más complejos, utilizan una interfaz gráfica del usuario, y muestran estadísticas del tráfico en gráficos, realizan un seguimiento de varias sesiones y ofrecen varias opciones de configuración. Los sniffers de red pueden ser empleados, además, como “motores” para otros programas como los IDS (Sistemas de Detección de Intrusos), que suelen utilizarlos para localizar los paquetes que coinciden con las reglas designadas para definir el tráfico como malicioso o extraño. Un sniffer, además, puede ser empleado por administradores de red para realizar determinadas mediciones del tráfico, de manera que se obtengan análisis e informes del origen de la información, el destinatario de la misma, el servidor que se ocupa del proceso, y el tipo de paquete de datos que se está transmitiendo, entre otros aspectos. Los datos recolectados por un sniffer pueden ser más valiosos de lo que aparentan a primera vista, pues con la aplicación adecuada, es posible obtener información muy detallada; de ahí que su uso, si bien no tienen por qué ser un factor de preocupación, sí lo puede acabar siendo dependiendo de cómo se acceda a los paquetes de datos y quién accede a ellos. Funcionamiento: Una aplicación sniffer configura la tarjeta de red (NIC) de un dispositivo (frecuentemente de una PC o laptop), para que deje de ignorar a todo el tráfico dirigido a otros equipos y preste atención a ello. En otras palabras, coloca a la tarjeta de red en un estado conocido como “modo promiscuo”, el cual no descarta los paquetes que no son para su dirección MAC, sino que los almacena y lee. Una vez que esto sucede, una máquina puede ver todos los datos transmitidos en ese segmento de red. El programa entonces comienza una lectura constante de toda la información que entra en el dispositivo a través de la tarjeta de red. Los datos que viajan por la red se presentan como paquetes o ráfagas de bits con formato para protocolos específicos, debido a lo cual un sniffer puede filtrar las capas de encapsulado y decodificar la información relacionada con el equipo de origen, el equipo de destino, número previsto de puerto, capacidad de carga, y otras informaciones que se intercambian entre dos dispositivos en la red. Un sniffer no busca infectar el sistema con otras amenazas. Tampoco puede causar ningún problema en el rendimiento o estabilidad; no obstante, puede fácilmente causar problemas relacionados con la privacidad. Este tipo de aplicación no necesita muchos recursos del sistema y puede no tener una interfaz gráfica de usuario, por lo que es muy complicado detectarlo. Los sniffers no son virus y por ello, no pueden propagarse a sí mismos y deben ser “controlados“ por ciertas personas. Un sniffer puede ser manualmente instalado por el administrador del sistema o cualquier usuario que alcance suficientes privilegios para instalar el programa. En cualquier caso, la amenaza de la privacidad puede ser instala sin que el usuario afectado tenga conocimiento, ni mucho menos brinde su consentimiento. Esta forma de operar puede considerarse como un “ataque pasivo”, ya que no altera el funcionamiento de la red. ¿Para qué usar un sniffer? Los sniffers tienen la “mala fama” de ser utilizados de forma habitual por hackers que no tienen buenas intenciones con el objetivo de acceder a los datos que consiguen estas aplicaciones; sin embargo, no suelen ser el único tipo de personas que los aprovechan. Existen personas (generalmente administradores de red) en empresas o a título personal, que los emplean de una manera totalmente legal y ética, para llevar a cabo acciones que pueden ser muy beneficiosas en su trabajo. Una de las tareas que se pueden realizar con sniffers es la administración de todo lo que ocurre dentro de la red LAN de una entidad, de forma tal que el administrador tendrá el control total de forma máxima, y no habrá nada que se le escape; también será posible realizar auditorías completas de las redes, comprobar el tráfico que entra y sale de una entidad, y monitorizar en base a ello su comportamiento. Otro punto positivo se encuentra en sacar partido a los sniffers como forma de realizar hacking ético, a fin de comprobar cuáles son las vulnerabilidades que existen en las redes de una entidad, y poder pasar a la fase de protegerlas para que nada de lo detectado pueda ocurrir, a fin de evitar cualquier tipo de amenaza de espionaje, el ataque de ciberdelincuentes y reforzars niveles de seguridad. Al realizar la identificación de los paquetes que circulan a través de la red que se administra, el profesional a cargo de la supervisión de la seguridad informática puede estar al tanto de todo lo que ocurre y saber cómo actuar en cada caso. Por otro lado, los sniffers también pueden ser empleados de mala fe (lo que ocurre con relativa frecuencia), para intervenir en una red y robar información como accesos y claves mal encriptadas, por ejemplo. Como protección, continuamente se crean y refuerzan los sistemas de seguridad, así como los métodos de cifrado que cada vez son más avanzados y difíciles de descifrar, lo que dificulta la intervención de terceros malintencionados. Algunos sniffers “populares”: Los sniffers son considerados aplicaciones bastante raras que están repletas con prácticamente la misma funcionalidad. Los siguientes ejemplos ilustran la típica actividad de algunos de los más utilizados: ● ● ● ● ● Wireshark (antiguamente llamado Ethereal): utilizado para realizar análisis y solucionar problemas en las redes de comunicaciones para desarrollo de software y protocolos y en algunos casos, como una “herramienta didáctica” para la educación. Ofrece una interfaz gráfica de usuario, muestra filtros y herramientas integradas de edición de paquetes, soporta una amplia lista de protocolos diferentes y trabaja en casi cualquier red y sistema operativo. Ettercap: es un interceptor/registrador para LANs con switch. Soporta direcciones activas y pasivas de varios protocolos (incluso aquellos cifrados, como SSH y HTTPS). También hace posible la inyección de datos y el filtrado en una conexión establecida. BUTTSniffer: es un programa diseñado por completo con propósitos maliciosos, que soporta múltiples protocolos de red, permite filtrar los datos obtenidos y guardar esa información en un archivo. Puede trabajar como aplicación solitaria o como plugin para otras aplicaciones. Kismet: es un husmeador de paquetes, y un sistema de detección de intrusiones para redes inalámbricas 802.11 (WiFi). Funciona con cualquier tarjeta inalámbrica que soporte el modo de monitorización raw, y puede rastrear tráfico de los protocolos 802.11b, 802.11a y 802.11g. TCPDUMP: es una herramienta en línea de comandos cuya utilidad principal es analizar el tráfico que circula por la red. Permite al usuario capturar y mostrar en tiempo real los paquetes transmitidos y recibidos en la red a la cual el ordenador está conectado. Topología de redes y sniffers La cantidad de tramas que puede obtener un sniffer depende de la topología de la red, del modo donde esté instalado y del medio de transmisión. Para redes antiguas con topologías en estrella, un sniffer se podría instalar en cualquier nodo, ya que lo que hace el nodo central es retrasmitir todo lo que recibe a todos los nodos. Sin embargo, en las redes modernas, en las que solo lo retrasmite al nodo destino, el único lugar donde se podría poner el sniffer para que capture todas las tramas de datos sería el nodo central. Para topologías en anillo, doble anillo y en bus, el sniffer se puede instalar en cualquier nodo, ya que todos tienen acceso al medio de transmisión compartido. Para las topologías en árbol, el nodo con acceso a más tramas sería el nodo raíz, aunque con los switches más modernos, las tramas entre niveles inferiores de un nodo viajan directamente y no se propagan al nodo raíz. El uso de switches y routers incrementa la seguridad de la red, ya que limita el uso de sniffers al dirigirse las tramas únicamente a sus correspondientes destinatarios. Protección contra los sniffers: Los sniffers son difíciles de detectar, ya que, al ser atacantes pasivos, dejan pocos rastros de su intromisión. Una forma de identificarlos es ver si existe alguna tarjeta de red en modo promiscuo. Uno de los métodos más eficaces para la protección contra sniffers es el uso de criptografía de los datos, que consiste en cifrar los datos bajo una serie de códigos que solo pueden ser interpretados con el conocimiento de los mismos. Este método es usado en la mayoría de las páginas WEB donde se requieren datos o contraseñas, ya que estas son de suma importancia y nadie ajeno debe conocerlas. También es posible defenderse utilizando propiamente un sniffer, ya que con su uso se puede determinar qué datos salen del dispositivo, y a donde van a parar; en otras palabras, un sniffer puede combatirse con otro sniffer, que logra detectar al primero, y obtener su dirección IP y MAC, para posteriormente bloquearlo. Además, existen programas conocidos como anti-spyware y anti-sniffing, para detectar este tipo de intrusos en la red y bloquearlos. También existen otras dos defensas importantes a tener en cuenta para proteger la privacidad contra los sniffers: la segmentación de la red y el cifrado. Los sniffers generalmente sólo pueden capturar los datos en el mismo segmento de red, lo que significa que mientras más segmentada se encuentre esta, menos información podrá recopilar. El empleo de switches y routers ayuda en este sentido. Las sesiones cifradas proporcionan una solución diferente. En lugar de temer a la captura de los datos, simplemente se cifra y se dificulta su comprensión. Navegar siempre por sitios web cifrados (https) y enviar archivos importantes igualmente encriptados. Una medida mucho más efectiva con un nivel de complejidad técnico superior, es utilizar una VPN (red privada virtual), que cifra todo el tráfico y oculta los sitios WEB, los servicios y las aplicaciones que se utilizan. El empleo generalizado de esta estrategia pudiera dificultar, y quizás imposibilitar, en los próximos años, la tarea del atacante empleando sniffers. De forma general, la lucha contra los sniffers es un tema de permanente actualidad: cada vez se desarrollan técnicas más sofisticadas para su detección, casi al instante, se crean nuevos modelos de sniffers que las burlan. No obstante, es fundamental que cualquier administrador de seguridad conozca todos los programas que pueden ayudar a detectar sniffers en sus redes, junto a las técnicas de evasión que un atacante puede utilizar para luchar contra ellos, para así comprender cuál es el valor exacto de los resultados que puede esperar de sus herramientas. Una buena estrategia de seguridad, para la inmensa mayoría de los casos, sigue siendo implantar un programa de inspección periódica de la infraestructura de red, capaz de detectar sniffers, desactivar tarjetas “promiscuas” y disparar alarmas. La compañía Infotecs es pionera en el desarrollo de VPN. La tecnología de protección de las redes de trasmisión de datos conocida en el mercado con la marca comercial ViPNet, garantiza el cifrado robusto punto a punto y garantiza la segmentación de la red con los Gateways ViPNet Coordinators.