Actualización: por algun extraño motivo se vuelve paranoico con los paquetes cuando se suspende el ordenador y se vuelve a iniciar (¿?), estoy trabajando para resolver eso.

Hoy traigo la segunda versión del SniperlCat [SniperlCat_0.2], los cambios no son muchos, pero creo que pueden resultar interesantes:

  • Detecta los paquetes SYN de sockets raw (típicos de un SYN scan), aunque para esto necesita permisos de root para levantar un sniffer, básicamente se aprovecha esta [http://danielmiessler.com/study/synpackets/] idea, aunque con scanners modernos se puede hacer que no exista diferencia, unicamente avisa de paquetes con un tamaño menor de 60 bytes (suelen ser de 58) y sin el flag DF de IP activado.

  • Permite llevar un log aparte de las notificaciones... no es gran cosa pero puede ser útil.

  • Las alertas se reunieron en una función llamada "show_alert" para poder modificar el sistema más facilmente.

Las dependencias quedarían en "libgtk2-notify-perl" para las notificaciones, y "libnet-pcap-perl" y "libnetpacket-perl" para buscar paquetes sospechosos.

Y la sintaxis del comando sería:

===============================================================================

Sniperlcat 0.2

sniperlcat [-h]|[-d | -v ] [-nf] [-c] [-n ] [-f ] [-p|- np] [-dv ][-l ][-s ] -h  (--help): Muestra este mensaje -d  (--daemonize): Se ejecuta de fondo -nf (--no-fill): No llena la tabla de hosts (con nmap) antes de leerla -c  (--cansino): Repite los avisos, aún los ya emitidos, en cada iteración -v  (--verbose): Muestra más información por pantalla -n  (--network): Especifica la red donde se ejecuta, por defecto 192.168.1.0/24 -dv (--device): Especifica la interfaz de red que se monitoreará -p  (--privileged): Se asumirán que es un usuario con privilegios -np (--no-privileged): Se asumirán que es un usuario sin privilegios -l  (--log): Se guardarán los avisos en un archivo -s  (--sleep): Especifica el tiempo en segundos de "descanso" entre iteraciones (por defecto 60)

===============================================================================

Eso es todo, otro día... más.

[Referencias] http://seclists.org/pen-test/2007/Oct/44 http://www.perlmonks.org/index.pl?node_id=170648 http://search.cpan.org/~saper/Net-Pcap-0.16/Pcap.pm