-------------------------------------------------------------[ TRAPPER (sniffer y envenenamiento ARP)]---------------------------------------------------

13-12-08 - servidor irc: irc.zonartm.org #rtm -------------------------------------------------------------------------------------- www.zonartm.org

<crypkey> Ok, pues bueno el primer tema que se dara sera de un pequeño programa llamado: "Trapper".
<crypkey> El cual ha sido un proyecto que ha ido creciendo durante este año con ideas interesantes. Pero bueno
------------- primero hay que decir que hace este programita.
<crypkey> Trapper en si es un sniffer y una herramienta de evenenamiento de APR.
<crypkey> Para aquellos que no saben que es el clasico evenenamiento sobre el protocolo ARP, vamos a dar una pequeña explicacion.
<crypkey> Y pues bueno, simplemente este protocolo funciona de la siguiente manera:
<nediam> ARP Poisoning Routing
<crypkey> Vamos a poner como ejemplo 2 maquinas y un router. 1 maquina: 192.168.1.1, 2 maquina: 192.168.1.2 router: 192.168.1.254
<crypkey> Supongamos que somos la maquina 192.168.1.1 en este caso.
<nediam> ( para los que quieran saber más de APR, luego le echan un vistazo a esta presentación de los gueyes de Cain
------------- http://www.oxid.it/downloads/apr-intro.swf )
<crypkey> Entonces al querer comunicarnos con la maquina 192.168.1.2, lo que hacemos sobre el protocolo ARP es mandar un
------------- broadcast sobre la red para ver quien demonios es 192.168.1.2, al hacer este broadcast la maquina 192.168.1.2 nos
------------- responde y nos dice que "si soy la maquina con al IP 192.168.1.2" y que tiene una MAC Address 00:11:22:33:44:55
<crypkey> Y por fin al final nosotros ya sabemos quién es la maquina y poder enviarle lo que nosotros queremos, correcto?
<crypkey> Ok, entonces al final el envenamiento sobre ARP es algo muy sencillo. En nuestras maquinas hay una tabla de ARP el cual
------------- guarda estas IP's y MAC Addresses y se guardan de manera dinamica por lo cual nos permite enviar paquetes spoofeados
------------- para poder modificar esta tabla de ARP del cliente.
<crypkey> o de la victima en este caso.
<nediam> a ver.. andan en win o en linux?
<nediam> bueno, anyway... en windows, desde línea de comando pueden ver su tabla de ARP con el comando arp -a
<nediam> igual en linux... chequen con arp -a
<crypkey> Exacto y podran ver ahi 192.168.1.254 posiblemente su gateway con su MAC Address...
<crypkey> Entonces el envenenamiento de ARP es algo muy sencillo y creo que ya lo habian dicho sobre la platica anterior asi que
------------- me ire rapido. Enviamos un paquete reply a la victima diciendole que la IP del router "192.168.1.254" esta sobre la
------------- MAC Address del atacante, entonces lo que hara practicamente el protocolo de ARP es enviar la informacion hacia nuestra
------------- maquina y lo unico que nosotros hariamos seria forwardearla hacia el gateway de manera inversa. Ya que tendriamos que
------------- engañar tanto a la victima como al router.
<crypkey> Aunque es una tecnica ya muy vieja muchas redes siguen vulnerables a este tipo de ataques.
<crypkey> Asi que en si esto es lo que hacer el programa trapper y una breve intro hacia lo que es APR.
<crypkey> Ahora pasemos un poco a lo que ya es la parte de trapper: Para poder bajarlo tienen que ir a la pagina oficial:
------------- http://nediam.com.mx el programa este hecho en perl y requiere de varias dependencias, asi que iremos primero con la
------------- parte de la instalacion.
<crypkey> Ya que lo hayan bajado, descompriman si quieren pero todavia no ejecuten el archivo llamado "install.pl"
<crypkey> Antes ejecutan como root : "cpan" Despues "install Bundle::CPAN"
<crypkey> Esto con el fin de poder actualizar su cpan y después no se ponga reyna.
<crypkey> Ya que hayan hecho eso, lo unico que tendrian que hacer seria ahora si ejecutar "perl install.pl" y listo.. se tardara
------------- un poco para poder instalarlo.. asi que no se desesperen.
<crypkey> Si les sale algun error posiblemente es que chequen que tengan instalado las librerias de libpcap.
<crypkey> Si estan en n00buntu, pues apliquen un "apt-cache search libpcap" e instalen el libpcapVERSION-dev
<nediam> A veces pinche libpcap y uno que otro módulo la hace de pedo, dependiendo de la versión que quieran instalarle...
<crypkey> Si, en caso de que algun modulo no lo puedan instalar, seria ir directamente a http://search.cpan.org

04:30:07) crypkey: Buscar el modulo e instalarlo manualmente.
(04:30:10) nediam: si les causa muchos pedos, instalen libpcap a manita con un simple ./configure;make;make install;
(04:30:24) vendetta: crypkey: artzneo pregunta que version de pcap usas?
(04:31:15) crypkey: vendetta, si no mal recuerdo para que no tengan problemas deben de usar arriba de la 7.x pero yo uso
(04:31:27) crypkey: libpcap 0.8 en ubuntu. No deben tener problemas.
(04:32:19) crypkey: Ya que hayan terminado de instalar todo.
(04:32:44) crypkey: Pueden volver checar todas las dependencias con hacer el "perl install.pl" o directamente ejectando "./trapper.pl"
(04:33:10) crypkey: El cual los aparecera algo asi: ( en mi paste aparecera version 0.4.1 en las suyas 0.4 )
(04:33:19) crypkey: ./trapper.pl(04:33:19) crypkey: --trapper ver. 0.4.1--
(04:33:19) crypkey: --Sniffer and ARP Poisoning Routing program--
(04:33:19) crypkey: Usage: ./trapper.pl -i <interface> -m <mode> [Options]
(04:33:19) crypkey: Mode: sniff || apr
(04:33:19) crypkey: Options:(04:33:22) crypkey: -v <verbose_options> - Verbose on msn, cookie or irc protocols
(04:33:24) crypkey: -f <fake_mac> - Fake mac to use or put 'random' to generate one
(04:33:26) crypkey: -d - Enable debug mode
(04:33:28) crypkey: -d <lenght> - Lenght of the packet
(04:33:29) crypkey: -p <option> - '0' to disable promisc mode ( enabled by default )
(04:33:32) crypkey: -t <time> - Time between every ARP packet ( default 2 seconds )
(04:33:34) crypkey: Example: trapper -i eth0 -m apr -f 00:02:5C:17:2B:FA -l 2048 -t 1
(04:33:35) crypkey: For more information on the usage please read the README file
(04:33:51) crypkey: Y pues bueno podemos ver que es bastante sencillo el uso de trapper
(04:34:53) crypkey: Creo que todas las opciones se explican por si mismas, si tienen alguna duda pues ya saben priv8 jeje.
(04:35:00) crypkey: Asi que hay dos modos de utilizar trapper
(04:36:12) crypkey: En modo sniff, pues bueno amh.. lo unico que hacer es hacer sniffing de manera local sobre la interfaz que asignemos.
(04:36:52) nediam: con el modo sniffing es como si prendieran el ethereal/wireshark, tcpdump o cualquier otro sniffer
(04:37:15) nediam: s?lo que con trapper pueden escoger algunos puertos espec?ficos para sniffear
(04:37:24) nediam: e ignorar el resto de los puertos
(04:37:47) crypkey: Y lo cual se enfoca tambi?n solamente en capturar usuarios/contrase?as sobre los diversos protocolos que soporta.
(04:37:54) crypkey: O informacion importante ;).
(04:38:39) crypkey: Antes de seguir tambien trapper usa un archivo de configuracion que lo hace bastante flexible, el archivo
------------------------- se llama: "trapper.conf"
(04:39:05) crypkey: Al abrirlo la mayoria de las cosas estan explicadas ahi, y donde pueden modificar los puertos de escucha de
------------------------- HTTP, FTP etc.. etc.. a su gusto.
(04:40:05) crypkey: Tambien viene la parte de poder guardar logs de lo que se vaya capturando
(04:41:20) crypkey: Y creo que tambien una de las partes que me gusta del archivo de configuracion el cual es la ultima parte la cual
------------------------- puedes especificar los valores de http lo cuales uno quiere sniffear.
(04:41:26) crypkey: Muy parecido a lo que hacer CAIN.
(04:41:43) crypkey: s/hacer/hace
(04:42:43) crypkey: Por defecto ya hay muchas valores puestos, algunos sacados de CAIN, pero ustedes pueden poner mas sin
------------------------- ningun problema.
(04:43:16) hkm: me gusta que le puedes poner modo verbose para cookies y msn y ver en "tiempo real" como capturas info
(04:43:29) crypkey: hkm, eip eip todavia no llegamos ahi ;)
(04:43:49) crypkey: Otra de las opciones dentro del archivo de configuracion es el Cookie Monster, jeje raro el nombre pero bueno.
(04:43:50) nediam: eip, eso de los valores que se especifican en el .conf es importante cuando quieren obtener informaci?n de alguna
------------------------- aplicacion web local,
(04:44:24) nediam: quiz?s en alguna empresa, en la paginita de login de un sistema el campo de login se llama login_prueba,
(04:44:25) crypkey: Lo que hace esta peque?a opcion es poder hijackear las cookies que vaya leyendo trapper en tiempo real y poder
------------------------- robar la sesion de la victima.
(04:44:44) nediam: y si ese valor no esta especificado como uno de los default, pues entonces no lo atraparan....
(04:45:38) crypkey: Asi es, asi que de alguna manera tal vez rapida de resolver esto seria prender rapido wireshark y ver el campo que
------------------------- esta pasando la pagina y agregarlo en trapper.conf y listo ;)
(04:46:35) crypkey: Esta ultima opcion Cookie Monster desgraciadamente con la version de firefox 3.0 ya no funciona, por que? ya que
------------------------- anteriormente firefox guardaba sus cookies en un archivo llamado "cookies.txt"
(04:47:23) crypkey: Ahora lo que usa sqllite para el manejo de cookies lo cual ya estara soportada para la siguiente version ;). Pero
------------------------- temporalmente hay un peque?o fix por parte de sdc el cual consistia en un peque?o codigo en javascript para poder
------------------------- introducir la cookie que genera trapper y poder robar la sesion de la victima.
(04:47:33) crypkey: Fix temporal: http://www.zonartm.org/foro/index.php?PHPSESSID=77339706963ba9d400f2cbfb090a5cf2&topic=470.0
(04:48:49) nediam: <@crypkey> .... hijackear las cookies que vaya leyendo trapper en tiempo real y poder robar la sesion de la victima.
------------------------- <--- por ejemplo cuando quieren chingarse la sesi?n de gmail de alguien
(04:50:18) crypkey: Ahora dentro de la parte de trapper tambien se puso la opcion "verbose" como anteriormente dijo hkm
(04:50:38) crypkey: Esta pequeña opcion se hizo con el fin de no generar flood en el output de trapper.
(04:50:48) crypkey: El cual se puede ejecutar de la siguiente manera:
(04:51:31) crypkey: Ah, solo soporta tres opciones de esta manera los cuales son: IRC, MSN y COOKIES
(04:52:41) crypkey: Entonces al hacer ejecutar "./trapper.pl -i ath0 -m sniff -v msn,irc,cookie" en el output de trapper podran ver las
------------------------- conversaciones de irc, msn y las cookies que vaya atrapando...
(04:52:45) crypkey: Ejemplo rapido:
(04:54:01) crypkey: 192.168.1.86:55333 --> 64.4.36.63:1863 (MSN)
(04:54:02) crypkey: Date: 2008-Dec-13
(04:54:02) crypkey: Time: 21:53
(04:54:02) crypkey: From: crypk3y@hotmail.com
(04:54:02) crypkey: To: system666x@gmail.com
(04:54:02) crypkey: Message: Probando
(04:54:26) crypkey: Aqui otra
(04:54:29) crypkey: 208.98.62.233:6667 --> 192.168.1.86:51322 (IRC)
(04:54:29) crypkey: Server: sex.sex.sex.sex.your-wife.net
(04:54:29) crypkey: Channel: #rtm
(04:54:29) crypkey: Date: 2008-Dec-13
(04:54:29) crypkey: Time: 21:54
(04:54:29) crypkey: IP:
(04:54:31) crypkey: Nick: root3d
(04:54:33) crypkey: MSG: (me la debes) :#
(04:54:59) crypkey: O las cookies:
(04:55:20) crypkey: 192.168.1.86:36442 --> 207.44.136.62:80 (Cookie Hijack)
(04:55:20) crypkey: Host: www.zonartm.org
(04:55:20) crypkey: Cookie: rtmforum=a%3A4%3A%7Bi%3A0%3Bs%3A1%3A%221%22%3Bi%3A1%3Bs%3A40%3A%22d3297b21
------------------------- 4644eb4740ed237e6747edb8d53bccf6%22%3Bi%3A2%3Bi%3A1229230508%3Bi%3A3%3Bi%3A0%3B%7D;
------------------------- PHPSESSID=cec19f11b308f96af711bff3583a0dcf
(04:55:54) crypkey: Es opcion de verbose, les permite ver en tiempo real los ejemplos que acabo de pegar.
(04:56:03) crypkey: Pero en caso de no activarlos
(04:57:00) crypkey: Pueden ir a donde tienen trapper, en cuanto a msn e irc.. tienen sus propias carpetas.
(04:57:11) crypkey: /msn e /irc
(04:57:37) crypkey: Ahi podran ver todas las convos ;) o hacer un tail -f sobre algo en especifico que quieran ver en tiempo real de
(04:59:48) crypkey: la misma manera. Otra de las cosas interesantes de trapper son:
(05:00:00) crypkey: - Puede robar archivos FTP y MAIL ( Attachments )
(05:01:09) nediam: Otra opci?n importante es la de fake mac
(05:01:47) crypkey: Esto lo pueden probar, activando el modo sniff, no es necesario el APR y mandarse un mail mediante algun cliente
------------------------- y podran ver que trapper captura tanto como el mensaje como sus attachments.
(05:01:56) crypkey: Varios videos se encuentran en la pagina:
(05:01:57) crypkey: http://nediam.com.mx/trapper/videos.html
(05:01:58) nediam: pero ojo, tengan cuidado, no vayan a creen que con s?lo utilizando fake mac ya chingaron y ya se pueden poner
------------------------- a envenenar la red y hacer mamada y media
(05:02:18) nediam: si pidieron ip por dhcp pues ya valieron
(05:02:37) nediam: o si antes de usar trapper hicieron consultas a dns o navegaron normalmente, pues igual
(05:02:53) nediam: para que tengan cuidado de d?nde y bajo que circunstancias corren trapper
(05:03:23) nitr0us: comentario extra: Tool por HD Moore - Tactical Exploitation -
------------------------ http://packetstormsecurity.org/0007-exploits/pasvagg.pl pasvagg.pl ;)
(05:03:30) nitr0us: para robo de files
(05:04:02) crypkey: Y en caso de usar dhcp y que el admin este de chismoso la otra seria cambiar su hostname cada vez que se
------------------------ conecten a la red que ataquen. Al menos les da tiempo de borrar cosas de su HD =).
(05:05:24) crypkey: Otra de las cosas lindas de trapper, su capacidad de VNC sniffing.. que en si te actua practicamente como un
------------------------- keylogger. Igualmente pueden ver el video dentro de la pagina de trapper para ver su funcionamiento.
(05:05:52) nediam: y en http://nediam.com.mx/trapper/stuff.html hay una presentaci?n y varios ejemplos de uso
(05:06:57) nediam: Y en pocos d?as (esperamos que sea antes de fin de a?o) liberaremos 0.4.1
(05:07:41) crypkey: Con varios bug fixes incluyendo un importante loop dentro del scan de APR, asi como tambien el soporte del cookie
------------------------ injection sobre firefox 3.x
(05:08:09) crypkey: Creo que lo unico que faltaria seria ver un poco el modo "APR" esto se ejecuta "./trapper.pl -i ath0 -m a
(05:08:45) crypkey: Que al ejecutarlo, es bastante bonito como les despliega las opciones y es practicamente solo seleccionar y dar "ENTER"
(05:09:04) crypkey: Y esperar a que haga el envenamiento y empiece a capturar usuarios/contrase?as.
(05:09:35) crypkey: Estas pantallas son:
(05:09:35) crypkey: [*] MODE SELECTED: ARP POISON ROUTING
(05:09:35) crypkey: [*] Select type of scan:
(05:09:35) crypkey: [*] 1) Automatic range detection
(05:09:35) crypkey: [*] 2) Specify manual range (ex. 192.168.1.0 - 192.168.4.254 )
(05:09:35) crypkey: [*] 3) Exit
(05:09:41) crypkey: El cual amh.. creo que lo dice.
(05:10:16) crypkey: La opcion numero 1, esta un poco inestable en la version 0.4 tambien otra de las cosas que tendra la siguiente version,
------------------------ el cual ya mejora su deteccion de manera perfecta ;).
(05:10:31) crypkey: Asi que pues creo que si saben su rango, seria de ponerlo manualmente. ;)
(05:10:59) crypkey: Al pasar esas opciones, pues bueno esta
(05:11:00) crypkey: [*] Select Option:
(05:11:00) crypkey: [*] 1) One-to-One: Hijack the traffic only between two particular hosts
(05:11:00) crypkey: [*] 2) One-to-All: Hijack the network faking a single host (The default gateway is a good option)
(05:11:00) crypkey: [*] 3) Hijack the entire network
(05:11:00) crypkey: [*] 4) Exit
(05:11:05) crypkey: Y creo que tambien lo dice todo ;)
(05:12:44) crypkey: Que tambi?n en la siguiente versi?n se agregara una opcion m?s la cual llamaremos: "Distributed APR" ;) bastante
------------------------- interesante, el cual consiste en ayudar a alguien con el APR dentro de una red.. jeje y tambien otra opcion de "APR DoS"
(05:12:49) crypkey: En fin, son algunas ideas.
(05:13:37) crypkey: Y pues bueno ya selecionando esa opcion, pasan a la ultima el cual les pide que puertos quieren sniffear, osease:
(05:14:33) crypkey: Argh, bueno les debo el print por que trapper me pinto dedo "Error: No more than 1 user on this network"
(05:14:51) crypkey: Ah bueno no, aqui esta:
(05:14:52) crypkey: [*] Supported protocols:
(05:14:52) crypkey: 0. ALL
(05:14:52) crypkey: 1. HTTP (Cookie supported)
(05:14:52) crypkey: 2. FTP
(05:14:53) crypkey: 3. TELNET
(05:14:55) crypkey: 4. POP3
(05:14:57) crypkey: 5. IMAP
(05:14:59) crypkey: 6. SMTP
(05:15:01) crypkey: 7. MSN
(05:15:03) crypkey: 8. IRC (Convos supported)
(05:15:05) crypkey: 9. SMB
(05:15:07) crypkey: 10. VNC
(05:15:09) crypkey: 11. TeamSpeak
(05:15:11) crypkey: 12. SIP
(05:15:13) crypkey: Select option(s) [default: 0]:
(05:15:15) crypkey: Aqui pueden seleccionar sniffear todos los protos
(05:15:19) crypkey: O poner de la siguiente manera varios puertos:
(05:15:27) crypkey: Ejemplo:
(05:15:40) crypkey: Select option(s) [default: 0]: 1 2 4 6
(05:15:40) crypkey: [*] Sniffing using Dev :ath0:
(05:15:40) crypkey: [*] Filter :port 80 or port 2082 or port 2095 or port 2096 or port 21 or port 110 or port 25:
(05:15:50) crypkey: Y listo ;) solo sobre esos sniffearan ya siendo en modo sniff o APR
(05:16:07) nediam: ojala lo puedan probar y revisar el codigo, y si tienen nuevas ideas o comentarios, m?ndenlos a crypkey@0hday.org
------------------------ o a nediam@nediam.com.mx
(05:17:41) nomac: Lo estoy instalando y me anda tirando errores de este tipo, en Debian-- ya instale libpcap0.8-de
(05:17:43) nomac: In file included from Pcap.xs:43:
(05:17:44) nomac: stubs.inc:91: error: redefinition of ?struct pcap_if?
(05:17:44) nomac: stubs.inc:113:2: warning: #warning "the function pcap_breakloop() is not available"
(05:17:44) nomac: stubs.inc:127:2: warning: #warning "the function pcap_setnonblock() is not available"
(05:17:44) nomac: stubs.inc:142:2: warning: #warning "the function pcap_getnonblock() is not available"
(05:17:44) nomac: stubs.inc:157:2: warning: #warning "the function pcap_dump_file() is not available"
(05:17:44) crypkey: Y pues creo vendetta que eso es todo, si tienen alguna duda pues diganla.. o idea tambi?n para ir agregando.
(05:18:09) crypkey: nomac, pero pudiste compilar e instalar el dev ?
(05:18:15) nomac: Simon
(05:18:31) cristian: igual me dio mucho problemas con net::arp
(05:18:38) cristian: y no pude continuar
(05:18:42) cristian: ubuntu 8.10
(05:18:58) crypkey: nomac, ajam.. y despu?s que mas seguiste con el "perl install.pl" ?
(05:19:11) nomac: perl Makefile.PL ;make
(05:19:33) crypkey: cristian, S? inclusive yo he tenido problemas con trapper sobre 8.10, no s? si fue por el upgrade, ya trataste de
------------------------- instalar Net::ARP manual?
(09:17:56) KBrown: Trapper ya sabe robarse las cookies, entonces solo necesita un proxy de web.
(09:18:27) KBrown: No necesita tener su propio proxy de web integrado; puede ser un squid que esta corriendo en el mismo host.
(09:18:50) KBrown: De todos modos Trapper puede observar las cookies que van pasando.
(09:19:45) crypkey: KBrown, eip.. pero de hecho es lo que desde un principio queria evitar era un tipo proxy para el hijack, sino
------------------------- meterlas de putazo a firefox. Como lo hacia sobre firefox 2 y prox en 3, aparte estara mas chingon por que esta
------------------------- sobre sqlite ;).
(09:21:31) KBrown: Pero el proxy lo usarias solo ara capturar las galletas.
(09:22:08) KBrown: Ya que las tienes todas eliges cuáles meter a la tabla sqlite de tu Firefox3 local.
(09:24:11) nediam: KBrown se escucha interesante
(09:24:30) KBrown: Si tenemos muchos sniffers robando galletas es posible poner un servidor de galletas central donde lleguen
------------------------- todas las galletas de todos los sniffers y sean ofrecidas como un servicio.
(09:25:12) KBrown: El cliente hace una busqueda de las galletas que le interesan, las baja y las agrega al cookies.sqlite del Firefox3
(09:25:23) crypkey: KBrown, si estoy pensando ya muy seriamente meter el proxy que me dices jeje..
(09:25:34) crypkey: nediam, como ves perrita del mal?
(09:26:41) nediam: crypkey: se ve interesante lo del servidor de galletas central
(09:27:02) nediam: igual que como lo de winhashes
(09:27:04) KBrown: O, si las mismas galletas son observadas en varias redes se pueden establecer relaciones.
(09:28:11) crypkey: Jaja andale tmb tipo cliente / server, estaria chingon
(09:28:13) KBrown: Eso me recuerda que los hashes tambienn se podrian capturar y subir a un servidor central.
(09:28:31) KBrown: Donde se podrian establecer relaciones entre los hashes y las redes donde son utilizados.
(09:29:02) crypkey: KBrown, esta mamon esa idea
(09:29:35) KBrown: la ventaja competitiva radica en la inteligencia de la herramienta con la que se hagan esas relaciones.
(09:30:41) KBrown: Si se relacionan esas relaciones con capturas de conversaciones de MSN eso nos da suficientes elementos para
------------------------- lanzar ataques de ingenieria social usando inteligencia natural.
(09:31:58) crypkey: Lo que va a tener chingon la 0.5 va hacer el msn hijack, entre otras cosas ;D
(09:32:07) KBrown: Desde luego, es facil relacionar las conversaciones con las cookies con los hashes porque sabemos en que redes
------------------------- las estamos capturando.
(09:33:01) crypkey: KBrown, mmm me late un chingo tu idea ;D
(09:34:21) KBrown: Lo que no se me ocurre es una nomenclatura para distinguir una red 192.168.1.0/24 de otra 192.168.1.0/24, pero ...
(09:35:05) KBrown: pero se pueden usar campos auxiliares como el nombre de la organizacion y la direccion IP del gateway segun whatismyip.org
<KBrown>------------ Las direcciones MAC que se encuentran en una red tambien pueden ser un campo auxiliar bastante confiable.
<KBrown>------------ Como en el resto de la mineria, no sabemos lo que podemos encontrar pero intuimos que podria ser algo valioso.

Road Technology Minds Security Group - 2008