¿Como puedo saber si un sistema Linux ha sido comprometido? (TEXTO)

<< < (2/6) > >>

zhyzura:
como tu ya sabras los IDS (sistemas de detección de intrusos), alertan a los administradores de ataques hechos con exito en un sistema o incluso de los que se estan llevando a cabo.
los IDS se dividen a su vez en dos clases: NIDS (Network Intrusion Detection Systems, basados en la observación de la red) y HIDS (Host Intrusion Detection Systems, basados en agentes instalados en los host a vigilar).

los NIDS observan todo el trasiego de paquetes, buscando anomalias en ellos las cuales pueden alertarnos de una intrusion. este sistema tiene muy buenas ventajas ya que se despliega rapidamente en la red y alerta de una manera asombrosa (en tiempo real para ser excatos xDD), sin importar la plataforma en la que nos encontremos, la manera en que detecta las anomalias es por medio de los paquetes y la ip de la maquina que los esta realizando.
una de las debilidades que le veo a los NIDS, es que tiene una mayor dificultad para revisar los paquetes cifrados(algo que dije mas arriba), ademas de que al aumentar la velocidad de envio de los paquetes (que muchas veces alcanza  los Gbps, si hay mucho trafico es mas dificil la tarea).

en el caso de los HIDS, estan formados por un conjunto de agentes que se instalan en los host a vigilar y un gestor o servidor con el que éstos se comunican. Cada agente monitoriza los logs y eventos de seguridad en la máquina que lo acoge.(suena mejor no lo creen  ::) ). tiene mejores ventajas ya que puede revisar todo el trafico difrado que pasa por la red, y ademas alerta de ataques desde adentro de esta. pero...como todo siempre hay algun incombeniente, y en este caso es la lentitud con que responde y ademas su dificil implantacion(por lo mismo de que se utiliza en varis maquinas, son diferentes las plataformas).


por cierto si no me equivoco hay una manera de evadir el snort y esta es utilizando el "fragroute". deja me informo bien para poder poner el procedimiento a seguir (tenia ese texto por alguna parte pero ahora no lo encuentro, mejor mañana lo busco en mi casa, aqui en el trabajo no lo tengo xDDD)

zhyzura:
pues me he encontrado el texto en cual se demuestra como "fragroute" evade la deteccion por snort  :o.


¿Cómo Fragroute evade la detección de NIDS? 
Michael Holstein

Los sistemas basados red de la detección de la intrusión (NIDS) se configuran típicamente supervisan pasivo tráfico de la red en el segmento por un golpecito del hardware o la otra táctica tal como uso del comando del switchport-monitor (IOS del Cisco) que permite que el NIDS supervise, y en algunos casos, inyectan el tráfico para todos los anfitriones y destinaciones que pasan con el segmento.

La mayoría de los sistemas de NIDS son patrón basado, requiriendo firmas grandes de un sistema (típicamente ~1500+) alertar basado en una combinación específica de las banderas del TCP en el jefe, o un patrón del sistema en la carga útil. La exactitud de este acercamiento depende, por supuesto, en la habilidad del administrador que escribe la firma, pero en la mayoría de los casos ésta preve la detección muy exacta de un ataque específico, y no cogerá nuevos o modificados ataques.

¿Los sistemas estadístico basados de NIDS, que se utilizan generalmente conjuntamente con la concordancia con el modelo, intentan establecer una línea de fondo de la actividad y alertar cuando los paquetes son?statistically significativos? ¿en su desviación de la norma? una manera matemática de decir el paquete del?weird?. Desemejante de la concordancia con el modelo, esta táctica puede coger nuevos (y solamente de vez en cuando, más creativos) ataques en el coste de ser algo ruidosa y de requerir el análisis humano de todas las alarmas.

Porque la mayoría de los sistemas de NIDS funcionan en la capa 2 (OSI), alimentan simplemente tráfico crudo en un motor de la detección y confían en la concordancia con el modelo y/o el análisis estadístico para determinarse cuál es malévolo. ¿Los paquetes no son procesados por el apilado de los host?s TCP/IP? permitiendo que el NIDS analice tráfico el anfitrión desecharía de otra manera. Este acercamiento también tiene la desventaja que los paquetes se pueden hacer a mano intencionalmente de tal manera en cuanto a confunden sistemas de NIDS patro'n-que emparejan, mientras que todavía correctamente siendo montado por el apilado del anfitrión TCP/IP para rendir la carga útil del ataque.

Inserción, evasión, y negación del servicio: La detección de la intrusión de la red que elude , escrita por Ptacek y Newsham (1998), detalla un número de estos métodos del ataque, que se resumen abajo. Las técnicas descritas en Ptacek y Newsham fueron utilizadas por la canción cavada programador para crear Fragroute .

Fragroute , por su propia página de la aserción [ man(8) ], los??intercepts, modifica, y reescribe el tráfico de la salida destinado para el anfitrión especificado, poniendo la mayoría de los ataques descritos en el?Insertion seguro de las redes, la evasión, y la negación en ejecucio'n del?Insertion del servicio, de la evasión, y de la negación del servicio: ¿Detección De la Intrusión De la Red Que elude? ¿papel de enero 1998?

Términos y convenciones usadas en este documento
Software:
Snort: Detección De la Intrusión De la Red (NIDS).
www.snort.org/dl/snort-1.8.6.tar.gz

Tcpdump: Utilidad de la captura del paquete.
www.tcpdump.org/release/tcpdump-3.7.1.tar.gz

Etéreo: Utilidad del análisis del paquete.
www.ethereal.com/distribution/ethereal-0.9.3.tar.gz

Fragroute: Talladora del paquete. www.monkey.org/~dugsong/fragroute/fragroute-1.2.tar.gz
Ofuscación: la fuente y la destinación hosts/networks son aliased como sigue:
Attack.source: anfitrión que inicia el ataque
Attach.target: anfitrión que funciona al demonio bajo ataque.
Registros de la sesión: los operandos matemáticos se utilizan para indicar la dirección de la comunicación:
¿? >? los comandos publicaron del attack.source
¿? Cómo Trabaja
Para determinar la eficacia de Fragroute en obscurecer un ataque potencial, utilizaron a tres anfitriones: un fragroute corriente como la fuente, un segundo wu-ftpd corriente como la blanco, y un tercer Tcpdump, Snort, y etéreo corrientes para la captura y el análisis. Los tres anfitriones fueron conectados con un segmento aislado de la red.

¿Porque el propósito de este análisis era la técnica y no el ataque sí mismo de la evasión, elegí una hazaña común del ftp? ¿el procurar al ~root del?cd? mientras que está authenticado como usuario no privilegiado. Esta hazaña se documenta bien [ Cve-1999-0082 ] y es detectada confiablemente por la mayoría de los sistemas de NIDS.

Implica los comandos siguientes (los comentarios indican donde registración del paquete comenzada y parada por todos los ejemplos que siguen):

Attack.source > ftp attack.target
de < FTP SERVER 220 attack.target listo
> usuario no privilegiado
< contraseña 331 requerida para no privilegiado
> mypassword del paso
< el usuario 230 no privilegiado entró
> el rastro "copia más oscura"del ~root # de la red comienza
de < el comando 250 CWD acertado # rastro de la red termina

Para una línea de fondo, la secuencia antedicha (registrada donde indicado) fue ejecutada sin el uso de Fragroute usando Tcpdump para la captura y etéreo para el análisis:

 

Snort se quejó inmediatamente:

 

El ataque entonces fue repetido usando Fragroute para obscurecer la tentativa. El ruleset estándar (proporcionado cuando se compila Fragroute) fue utilizado para probar. La función de cada regla se explica como comentarios:

 

La sesión fue registrada con Tcpdump y analizada otra vez con etéreo:

 

Un request/response que ahora requeriría típicamente solamente 3 paquetes utiliza 38. ¿Nuestra petición original del ~root del?cd? se envía de orden en los paquetes 7, 11, 18, 19 y 22 con 1 o 2 cargas útiles del octeto. ¿Los paquetes 1, 2, 3, 4, 5, 6, 7 son?chaf duplicado? los paquetes publicaron como parte de la sesión del ftp.

¿Los paquetes restantes del are?chaf de attack.source? los paquetes con una variedad de problemas, incluyendo jefes cortos, de sumas de comprobación inválidas, o son duplicados. Los paquetes del attack.target vuelto son ACKs para los paquetes del chaf que checksumed correctamente por el apilado alejado del IP.

 

¿La corriente hecha fragmentos fue vuelta a montar correctamente por el apilado del IP de los target?s, dando por resultado el?250? comando del éxito en el paquete 35. Fragroute no manipula tráfico reverso.

Snort?1.8.6 no pudo detectar ningunos elementos de la tentativa.

Naturaleza de la amenaza
El pensamiento de un atacante potencial que puede descargar un 83k del software y hacerse invisibles a una red bien-puesta y meticulously mantenida del hardware y del software de la seguridad agitaría incluso el la mayoría calmantes del personal de la seguridad. Los sistemas de la detección de la intrusión proporcionan la advertencia valiosa mientras que las amenazas potenciales prueban su red, y (generalmente) proporcione la evidencia a la figura fuera de qué sucedió si él le batió en encontrar algo de interés.

¿Según Marty Roesch??deals del snort 1,9 (actualmente bajo desarrollo) con algunos de los ataques más interesantes del fragroute?? (Roesch, 1). ¿Probando esta compilación implicada teoría snort-actual de CVS y jugar de nuevo el mismo archivo del tcpdump usado previamente con él el usar snortrules-actual, también de CVS. Snort detectó algo del?chaf? ¿fragmentos como un portscan, y las respuestas de los paquetes de la basura como RST?Evasive? ¿? ni unos ni otros de las cuales identifica el ataque original. Siguiendo voluntad snort-actual trate la edición eventual, pero aparece actualmente que los sistemas de NIDS todavía no pueden hacer frente a un ataque envuelto por Fragroute.

[ * * ] [ 100:1:1 ] spp_portscan: PORTSCAN DETECTADO al puerto 22646 de attack.source (STEALTH) [ * * ] 05/06-11:30:43.912934

[ * * ] [ 111:2:1 ] spp_stream4: detección EVASIVA posible de RST [ * * ]
05/02-20:58:16.589253 attack.target:12139 - > attack.source:21862
TCP TTL:59 TCOcS:0x10 ID:47366 IPCLen:20 DGMCLen:42 DF
** Del *** A*R Seq: 0x55626D41 Ack: triunfo 0x726E5455: 0x4733 TcpLen: 20

[ * * ] [ 111:2:1 ] spp_stream4: detección EVASIVA posible de RST [ * * ]
05/02-20:58:16.599253 attack.target:13398 - > attack.source:26951
TCP TTL:59 TCOcS:0x10 ID:49947 IPCLen:20 DGMCLen:40 DF
** Del *** A*R Seq: 0x5447766C Ack: triunfo 0x68534F74: 0x36Ê TcpLen: 20

Soluciones Posibles A la Vulnerabilidad
Utilice un sistema host-based de las identificaciones en sistemas expuestos. Los sistemas basados anfitrión de las identificaciones pueden detectar actividad malévola supervisando en la capa de uso, y pueden divulgar sobre las entradas creadas en el sistema o tener acceso a registros. Logsnorter es un tal ejemplo [ www.snort.org/dl/contrib./logsnorter-0.2.tar.gz ].
Aumente su software de NIDS. Los vendedores están revolviendo para tratar las ediciones creadas por Fragroute y lo calcularán actualmente hacia fuera eventual. <
Referencias
Lemos, Roberto. La herramienta nueva camufla programas del hacker. ZdNet Australia. el 22 de abril de 2002. http://www.zdnet.com.au/newstech/security/story/0,2000024985,20264745,00.htm

Inglete. Vulnerabilidades y exposiciones comunes. el 27 de agosto de 1999. http://cve.mitre.org/cgi-bin/cvename.cgi?name=1999-0082

Ptacek, Thomas Y Newsham, Timothy. evasión, y negación del servicio: Detección De la Intrusión De la Red Que elude?. Asegure Las Redes, Enero De 1998. http://www.insecure.org/stf/secnet_ids/secnet_ids.html

Roesch, Marty. Noticias. el 7 de mayo de 2002. www.snort.org/index.html

¿Canción, Cavada?Fragroute(8)? http://www.monkey.org/~dugsong/fragroute/fragroute.8.txt

Timm, técnicas de la evasión de Kevin.IDS y táctica. SecurityFocus (Infocus). el 7 de mayo, 2002 http://online.securityfocus.com/infocus/1577
 

!|@"·#$%~¬&/()=?¿:
Esa técnica ya no funciona, es detectada (por lo menos con el Snort), ese texto como se puede ver es de hacer 2 años, y  los IDS han evolucionado muchísimo desde entonces.

Decir también que el tripwire es una *****, que pasa si troyanizamos el binario del tripwire en sí para que no chequee cierto archivo que hemos modificado para nuestro uso y disfrute? La solución sería tener el binario en un disket o algo así que no se pueda acceder a él.

Y por último los rootkits a nivel de kernel que existen hoy en día se detectan muy fácilmente porque las técnicas que usan son ampliamente conocidas, vease como ejemplo el detector Prosum (http://prosum.sf.net), el proyecto parece abandonado pero detecta cualuiqera de las técnicas actuales.

Aún con todo ésto anterior es muy posible que si el intruso tiene los conocimientos necesarios como para modificar las cosas adecuadas en el sistema no sea detectado después de la intrusión, otra cosa son los logs que dejas en la intrusión que esos si son dificiles de borrar ya que como dice Rojodos pueden ir a un host remoto o incluso sacarlos directamente por una impresora (parece increible pero yo lo he visto hacer y no era una red pequeña), con lo cual eso sería imposible de borrar y tendrán una evidencia de que el sistema ha sido comprometido, si la empresa es seria tendrán un backup del sistema de hace no demasiado tiempo (quizás horas) y si la política de la empresa es correcta reinstalarían el sistema completo con el backup de antes de estar comprometido el sistema, con lo cual te comerías una *****.

Como veis garantizar el acceso futuro a un sistema comprometido si las políticas de seguridad son las correctas es imposible.

Rojodos:
Bueno, no estoy del todo de acuerdo (aunque solo un poco xD)

Si un sistema esta bien "seguro" como tu dices, el problema seria "entrar", no "permanecer". Es decir, obviamente, es mucho mas dificil entrar en un sistema (y mas aun hacerse root) que, ya siendo root, troyanizar o instalar backdoors.

Lo de Tripwire es verdad, es tonteria que tanto el binario como las tablas de MD5 estuvieran en el HD, eso deberian estar en otros HDs (extraibles), USB sticks, CDs regrabables, host remotos, etc....

Con el sistema de logs pasa lo mismo, si los logs son locales (se decir, no se envian a host remotos, no se imprimen, no se graban en CDs) es posible tanto modificarlos como impedir que se usen (hablando de distros Linux "normales", no me meto en SELinux o cosas como Bastille).

Hay zappers que eliminan al 100% cualquier evidencia en los logs, y por supuesto, rootkits que los eliminan y desactivan.

Si un sistema no usa programas como Tripwire (o cualquiera parecido) ni detectores de rootkits (rkhunter por ejemplo), es muy facil troyanizar cualquier cosa (aunque solo sean lineas de codigo, en vez de rootkits mas avanzados).

No entiendo bien lo de "rootkits a nivel de kernel". Te refieres a LKMs? Esos, teniendo modprobe o ismod desactivados, no funcionan (creo). Yo creo que lo mejor es, o troyanizar algunas lineas de codigo, o meter troyanos a nivel de librerias.

Obviamente, eso es detectado por Tripwire o anti rootkits, pero.... es lo que hay :D

Salu2

EL_ZoRRo:
Otro buen texto para detectactar y destripar ataques que haya sufrido nuestro sistema

http://es.tldp.org/Presentaciones/200103hispalinux/monserrat/pdf/texto.pdf

Salu2

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

[*] Página Anterior