Está en la página 1de 12

Tomahawk

Tomahawk es una herramienta de lnea de comandos para los sistemas de prevencin de


intrusiones basados en red de pruebas (PNA). Hasta la fecha, las herramientas para probar
NIPS han sido caro y limitado en funcionalidad. Estn diseados tpicamente para probar
otros productos, tales como interruptores (por ejemplo, SmartBits / LVT), infraestructura de
servidores (por ejemplo, WebAvalanche), o firewalls y sistemas de deteccin de intrusos
(IDS o Firewall Informador Informador). Ninguna de estas herramientas simulan el duro
entorno de las redes reales bajo ataques.
Tomahawk est diseado para llenar este vaco. Puede ser utilizado para probar el
rendimiento y bloqueo de las capacidades de los sistemas de prevencin de intrusiones de
red (NIP).
pruebas de rendimiento
El rendimiento de muchos NIPSS es altamente dependiente de la mezcla de protocolo. A
NIPS debe volver a montar e inspeccionar los datos a nivel de aplicacin encapsulados en
el trfico de red. Se debe decodificar los protocolos de red y nivel de aplicacin. Debido a
que algunos protocolos son ms computacionalmente intensivas para decodificar que otros,
el efecto de un NIPS tiene sobre el rendimiento de la red puede ser altamente dependiente
de la mezcla de protocolo que debe fluir a travs de los PNI.
Tomahawk puede probar el rendimiento de un NIPS utilizando la combinacin ms realista
de los posibles protocolos: uno obtenido tomando una muestra del trfico de la red y
repetirlo. Un nico servidor Tomahawk puede generar 200-450 Mbps de trfico. Mediante
el uso de varios servidores y la agregacin del trfico a travs de un interruptor, 1 Gbps o
ms del trfico se pueden reproducir a travs de los NIPS.
Tomahawk tambin puede probar la conexin / segunda calificacin de un NIPS. Al
capturar una traza de paquetes que contiene una configuracin de la conexin simple y
desmontaje (6 paquetes: SYN, SINC_CONF, ACK, FIN_ACK, FIN_ACK, ACK) y
reproducir el trfico utilizando Tomahawk, un solo PC puede generar 25-50000
conexiones / segundo de la red trfico. Con 3 PCs de bajo costo, a unos 90K conexiones /
seg se pueden generar, lo suficiente para poner a prueba los lmites de cualquier NIPS.
Las pruebas de seguridad
Adems de las pruebas de throughput, Tomahawk puede probar las capacidades de bloqueo
de un NIPS mediante la reproduccin de ataques embebidos en trazas de paquetes.
Tomahawk informa en caso de ataque se completa o se bloquea, lo que permite una
verificacin independiente del ataque bloqueando capacidades en un NIPS.
Mediante la reproduccin de los mismos ataque cientos de veces, Tomahawk tambin
puede poner a prueba la fiabilidad con un bloques NIPS un ataque. A NIPS que bloquea un
ataque slo 9 de cada 10 veces no vale mucho en un brote de gusano.
Requisitos del sistema
Tomahawk compila bajo RedHat 7 * y despus. Recomendamos un 1.4 GHz + Pentium con

al menos 512 MB y 3 tarjetas de red, 2 de las cuales contienen NIC Gigabit.


Licencias
Tomahawk est licenciado bajo la Licencia Pblica Recproca
Descargar
Para compilar Tomahawk, necesitars obtener Libnet 1.02a y Libpcap 0.8.1, as como la
fuente de Tomahawk:
1.02a Libnet en paquete de fbrica
Libpcap en SourceForge
Versin 1.1
tomahawk1.1.tgz - Versin 1.1 de Tomahawk
Cambios 1,0-1,1
Release 1.0
tomahawk1.0.tar.gz - Versin 1.0 de Tomahawk
Para su comodidad, los siguientes binarios estn disponibles:
Tomahawk 1.0 para RedHat 7 o posterior
Tomahawk 1.1 para RedHat 7 o posterior
Documentacin
Tomahawk tutorial
Pgina de manual Tomahawk
Listas de correo
tomahawk-users@lists.sourceforge.net - Lista general de discusin para los usuarios de
Tomahawk. nete a esta lista de correo
tomahawk-devs@lists.sourceforge.net - Preguntas, informes de errores para los
desarrolladores de Tomahawk. nete a esta lista de correo
Contribuir
Damos la bienvenida a las mejoras a Tomahawk. Si bien es bastante manejable, voy a
coordinar las mejoras manualmente. Por favor, Escrbame parches y otras mejoras. Si esto
se convierte en inmanejable, empezaremos usando CVS para gestionar el proyecto.

Introduccin
Tomahawk es una herramienta para probar el rendimiento y capacidades de
bloqueo en lnea de dispositivos IPS. Tomahawk se ejecuta en una mquina con
tres tarjetas de red, una para la gestin y dos para las pruebas. Las dos
tarjetas de red de prueba (eth0 y eth1, por defecto) se conectan normalmente
a travs de un interruptor, cable cruzado, o red de IPS basados.
NOTA: La red que conecta las dos tarjetas de red de prueba debe ser una red
de capa 2.
Brevemente, Tomahawk divide un rastreo de paquete en dos partes: los
generados por el cliente y los generados por el servidor. Tomahawk analiza el
rastreo de paquete (llamado el PCAP) un paquete a la vez. La primera vez que
una direccin IP se ve en un archivo, la direccin IP es "asignado" al cliente si
est en el campo de la direccin IP de origen del paquete, o asignado al
servidor si est en el campo de destino. Por ejemplo, considere un pcap que
consiste en un apretn de manos TCP de tres vas estndar que contiene 3
paquetes:
Paquete 1 (SYN): ip.src = 172.16.5.5 ip.dest = 172.16.5.4
Paquete 2 (SYN-ACK): ip.src = 172.16.5.4 ip.dest = 172.16.5.5
Paquete 3 (ACK): ip.src = 172.16.5.5 ip.dest = 172.16.5.4
Cuando Tomahawk lee el primer paquete, la direccin 172.16.5.5 se encontr
por primera vez en el campo de la fuente, y la direccin 172.16.5.4 se encontr
por primera vez en el campo de destino. Por consiguiente, la direccin
172.16.5.5 est asociado con el cliente, mientras que la direccin 172.16.5.4 se
asocia con el servidor.
Cuando el sistema reproduce el ataque, los paquetes de servidor se transmiten
en eth1, y los paquetes de cliente se transmiten en eth0. Para reproducir la
secuencia anterior, Tomahawk comienza enviando el paquete 1 (un paquete de
cliente) sobre eth0. Cuando este paquete llega en eth1, enva paquetes 2 eth1
y espera a que el paquete 3 para llegar en eth0. Cuando llega el paquete,
Tomahawk enva paquete 3 en eth0. Cuando el ltimo paquete llega en eth1,
Tomahawk emite un mensaje que ha completado el PCAP.
Si se pierde un paquete, los reintentos de remitente despus de un perodo de
tiempo de espera (el valor por defecto es 0.2 segundos). El remitente infiere
que el paquete se pierde si no recibe el siguiente paquete en secuencia dentro
del tiempo de espera. Por ejemplo, si Tomahawk enva el paquete 2 en eth1 y

no lo recibe en eth0 dentro del tiempo de espera, vuelve a enviar paquetes 2.


Si el progreso no es despus de un determinado nmero de retransmisiones, la
sesin es abortado y Tomahawk muestra un mensaje que indica que el perodo
de sesiones ha agotado el tiempo.
Para asegurarse de que el paquete se encamina correctamente a travs de los
interruptores, las direcciones MAC Ethernet se vuelven a escribir cuando se
enva el paquete. Adems, las direcciones IP tambin se reescriben y sumas de
comprobacin del paquete actualizado en consecuencia. As, en el ejemplo
anterior, cuando Tomahawk enva el paquete 1, la direccin IP de origen del
paquete que aparece en el cable es 10.0.0.1 y la direccin de destino IP es
10.0.0.2. Tomahawk escribe el paquete modificado directamente al controlador
Ethernet utilizando un conector directo.
En el contexto de un IPS, si Tomahawk informa que el pcap que contiene el
ataque ha agotado el tiempo, el IPS ha bloqueado el PCAP. Este
comportamiento puede ser correcta, si el pcap contiene un ataque y el IPS se
ha configurado para bloquear. Si Tomahawk informa que el pcap ha
completado, entonces IPS perdi el ataque, sin importar lo que el registro
indica.
Comandos y ejemplos
Las siguientes secciones detallan algunos de los comandos con ejemplos para
Tomahawk.
Reproducir un archivo
La siguiente reproduce el archivo outlook.pcap una vez:
tomahawk-l 1-f outlook.pcap
La salida se muestra a continuacin:
A partir de pruebas
Completado 1 bucle de outlook.pcap rastro
Terminado 1 bucles de outlook.pcap rastro completadas: 1, Tiempo de
espera agotado: 0 Retrans: 0 Enviados: 843 Recv: 843
La primera lnea se imprime cuando Tomahawk termina de cargar el pcap y
comienza a transmitir.
La segunda lnea:

Completado 1 bucle de outlook.pcap rastro


imprime cuando Tomahawk completa la grabacin de la pcap. Si la repeticin
pcap no termin (quizs porque estaba bloqueado por un IPS), la palabra
"Completado" se sustituye por la palabra "tiempo de espera".
El ltimo grupo de lneas:
Terminado 1 bucles de outlook.pcap rastro completadas: 1, Tiempo de
espera agotado: 0 Retrans: 0 Enviados: 843 Recv: 843
dar estadsticas agregadas para todas las repeticiones de outlook.pcap Esto
incluye el nmero de paquetes enviados, nmero recibido, y el nmero de
retransmisiones.
Jugar un archivo varias veces
Para reproducir este pcap cinco veces seguidas, deber utilizar la siguiente:
tomahawk -l 5 -f outlook.pcap
El parmetro "-l" controla el nmero de bucles. Esto genera el siguiente
resultado:
A partir de pruebas
Completado 1 bucle de outlook.pcap rastro
Completado 1 bucle de outlook.pcap rastro
Completado 1 bucle de outlook.pcap rastro
Completado 1 bucle de outlook.pcap rastro
Completado 1 bucle de outlook.pcap rastro
Terminado 5 bucles de outlook.pcap rastro completadas: 5, Tiempo de
espera agotado: 0 Retrans: 0 Enviados: 4215 Recv: 4215
NOTA: Las estadsticas de resumen indican que las 5 repeticiones de
outlook.pcap terminaron sin ser bloqueado.
Si un ataque se reproduce a travs de un IPS, el IPS debe bloquear el ataque.
Debido a que un IPS menudo bloquea una corriente (identificado por un host /
puerto cudruple), Tomahawk da a cada repeticin del ataque su propio
cudruple host / puerto nico. Suponiendo que el PCAP contiene 2 direcciones,
Tomahawk reescribe los paquetes de modo que la primera repeticin del
ataque es de 10.0.0.1 a 10.0.0.2, la segunda repeticin es de 10.0.0.3 a
10.0.0.4, y as sucesivamente.
Control de inicio Direccin

Usted puede controlar la direccin de inicio con la bandera "-a". Por ejemplo:
tomahawk -l 5 -f outlook.pcap -a 11.0.0.1
inicia ataques de repeticin en 11.0.0.1. Este indicador es til si est utilizando
varias mquinas para generar carga. Un uso tpico se plasma en el siguiente
fragmento de una secuencia de comandos:
DIR = $ (ifconfig eth0 | grep "inet addr" | sed 's /\./ / g' | awk '{print $ 5}'):
un tomahawk 10. $ ADDR.0.1 ...
La primera lnea extrae el ltimo octeto de la direccin IP asignada a eth0. La
segunda invoca Tomahawk, dando a la mquina de su propio bloque de 16
millones de direcciones IP.
Replay paquetes en paralelo
El ejemplo anterior juega 5 copias de forma secuencial outlook.pcap.
Tomahawk espera a la primera repeticin para completar antes de enviar el
segundo. Puede usar la bandera "-n" para decirle Tomahawk para enviar los
paquetes de repeticin en paralelo. Por ejemplo:
tomahawk -N3 -l 5 -f outlook.pcap
Este comando repeticiones outlook.pcap 5 veces, con hasta 3 versiones que se
ejecutan simultneamente. Esta funcin es til para tomar una muestra del
trfico de red capturado a velocidades relativamente bajas y "ampliar" la red
que representa. Por ejemplo, suponga que tiene un rastro de trfico de una red
de 100 Mbps con 500 hosts. Mediante el uso de la "N 10" bandera a Tomahawk,
puede simular una red con 5.000 hosts de una red troncal gigabit.
Tambin puede usar Tomahawk para reproducir varios ataques
simultneamente. Por ejemplo:
tomahawk -n 3-l 5 -f outlook.pcap -f slammer.pcap -f codered.pcap
Este comando reproduce hasta 3 copias de Perspectivas, 3 copias de Slammer,
y 3 copias de CodeRed simultneamente. En trminos de la herramienta, juega
9 repeticiones simultneas en total, 6 de los cuales (Slammer y CodeRed) son
ataques. El nmero de pcaps que se pueden cargar slo est limitado por la
memoria.
Banderas globales y Handler
Tomahawk tiene dos tipos de indicadores: Indicadores globales y banderas del

manejador. Indicadores globales afectan a todos los pcaps, banderas


manejador afectan pcaps subsiguientes hasta anulado. Por ejemplo, considere
lo siguiente:
tomahawk -n 3-l 5 -f outlook.pcap -n 2-l 4 -f slammer.pcap -f codered.pcap
Esta lnea de comandos proporciona la siguiente informacin para Tomahawk:
jugar Perspectivas 5 veces, con un mximo de 3 copias se ejecutan
simultneamente
jugar Slammer 4 veces, con un mximo de 2 copias se ejecutan
simultneamente
jugar CodeRed 4 veces, con un mximo de 2 copias se ejecutan
simultneamente
Hasta 7 pcaps y 4 ataques se ejecutan simultneamente, y un total de 8
ataques se ejecutan.
Retransmitir paquetes perdidos
Como se mencion anteriormente, Tomahawk retransmite los paquetes
perdidos. Los parmetros para la retransmisin se controlan con las banderas
de controlador -ry -t. Por ejemplo:
tomahawk-l 1 r 5-t 1000-f outlook.pcap
Este comando le dice Tomahawk esperar (al menos) 1000 milisegundos antes
de declarar un paquete perdido ("t 1000") y para retransmitir el paquete 5
veces ("r 5") antes de abandonar y se imprime un mensaje de tiempo de
espera.
Conserve direcciones IP sin modificaciones
De vez en cuando, la direccin IP en el paquete es una parte importante del
ataque. Por ejemplo, algunos mensajes stacheldraht establecer la direccin IP
de origen a "3.3.3.3". En este caso, usted no querra Tomahawk para modificar
la direccin de origen del paquete. Los "controles", una bandera si las
direcciones se modifican:
tomahawk -l A1-0-f stacheldraht.pcap
Use "0-A" para evitar Tomahawk desde el cambio de direcciones IP para pcaps
posteriores y "-A1" para permitir Tomahawk para cambiar las direcciones IP
para pcaps posteriores. Por ejemplo:
tomahawk -l A1-0-f stacheldraht.pcap -A1 -f outlook.pcap

En este ejemplo, Tomahawk sale de las direcciones IP en stacheldraht.pcap sin


cambios; mientras que, modifica las direcciones IP en outlook.pcap.
Generar Trfico Limpio
Debido a que slo reproduce pcaps Tomahawk, que puede ser utilizado para
generar trfico limpio y probar el lmite de rendimiento cero prdida de un
dispositivo de red. Por ejemplo, supongamos que el archivo contiene http.pcap
trfico HTTP limpio. El siguiente comando genera una gran cantidad de trfico
limpio:
tomahawk-n 50-l 10000 -f http.pcap
NOTA: En la prctica, Tomahawk puede generar 70 a 500 Mbps en una
mquina, dependiendo de la plataforma y pcaps utilizado. Para mayor
rendimiento, TippingPoint recomienda dos Intel PRO / LAN 1000 NIC en un
procesador de la familia Pentium 2.0 + GHz con una configuracin de servidor.
La plataforma Dell 1750 tambin se desempea bien para estas necesidades.
Lmite de Velocidad de datos
Para limitar la velocidad de datos generada por Tomahawk, use la bandera "R".
Por ejemplo, para generar 100 Mbps de trfico limpio, utilice lo siguiente:
tomahawk-n 50-l 10000 -f http.pcap R 100
El valor de "R" es un nmero de punto flotante. Para generar 100 Kbps de
trfico, se utilizara la siguiente:
tomahawk -n 50-l 10000 -f http.pcap R 0,1
NOTA: En este ejemplo de comando puede tomar un tiempo para funcionar.
Limite flujos simultneos
Puede cargar un gran nmero de archivos y limitar el nmero total de flujos
simultneos como una prueba. Por ejemplo, es posible que desee crear una
tasa media de ataque de unos 10 ataques por segundo utilizando cada uno de
los ataques mil en su aljaba. Supongamos que fijamos el timeout paquete a 1
segundo y permitimos 5 retransmisiones. Cada ataque vira 5 segundos para el
tiempo de espera. Para alcanzar la tasa de ataque deseado, hay que jugar 50
ataques simultneamente. Los "-N" controles bandera esta variable:
tomahawk N 50-l 1-f attack1.pcap -f attack2.pcap ... -f attack1000.pcap
La bandera N difiere de -n en que -n es una bandera manejador y N es un

indicador global. Esto significa que N limita el nmero total de casos pcaps que
se pueden reproducir de forma simultnea; mientras que, -n limita el nmero
de instancias de cada pcap que se puede jugar de forma simultnea. Por
ejemplo:
tomahawk N 50 N 5-l 10 f attack1.pcap -f attack2.pcap ... -f
attack1000.pcap
Este comando establece Tomahawk jueguen 5 copias de cada uno de Attack1
... attack1000 simultneamente (5000 en total). Los -N 50 conjuntos bandera
Tomahawk pagar slo 50 simultneamente, no 5000.
Banderas adicionales
La siguiente es una lista de opciones adicionales:
Imprimir ayuda y sale -h
q Ejecutar en modo "silencioso" para reducir la produccin. Esto es bueno
para la generacin de trfico de fondo
-m Especifica el nmero de paquetes a enviar antes de leer. Esto es algo as
como el tamao de ventana en el TCP, pero se mide en paquetes en lugar de
bytes. Usted puede jugar con este parmetro para afectar al rendimiento. Los
valores pequeos conducen a los malos resultados, los valores grandes
conducen a un mejor desempeo, sino mayores posibilidades de prdida. Los
valores ms altos todava conducen a altas tasas de prdida, dao rendimiento.
Un intervalo de aproximadamente 20-30 parece funcionar bien.
-n Limita el nmero de instancias de cada pcap que se puede jugar de
forma simultnea
-i Especifica la interfaz para enviar paquetes de clientes (por defecto es
eth0)
j Especifica la interfaz para enviar paquetes de servidor (por defecto es
eth1)
Para obtener una lista completa de los indicadores, consulte la pgina de
manual Tomahawk.

..
Instalacin de la herramienta de prueba Tomahawk IPS en Debian 7
Publicado el 22 de septiembre de 2013, por Jasper Bongertz - 2 Comentarios
Para un proyecto actual IPS / IDS que estaba buscando un sistema de prueba
para varios IDS / IPS motores de referencia. La idea era grabar capturas de red

que llevan muestras de malware en HTTP, SMTP u otros protocolos, y que se


repiten en contra de los varios motores de deteccin. Algn problema con
esto es que herramientas como tcpreplay, bittwist o Ostinato toda repeticin
de la traza en una sola tarjeta de red, lo que significa que tanto el "cliente" y el
lado "servidor" de la comunicacin se inyectan en la misma NIC del motor de
deteccin.
Lo que quiero es un motor de reproduccin de paquetes que utiliza dos tarjetas
de red para volver a reproducir la captura de paquetes en el motor de
deteccin de ambos lados, simulando un motor conversation.That "real" existe,
y se llama Test Tool Tomahawk creado por TippingPoint. Por desgracia, no
parece ser actualizado ya, con el ltimo cambio es de 2006, y, para hacer las
cosas un poco ms complicado, no compila fcilmente en sistemas Debian
actuales (en mi caso, se trata de Debian 7, o "Wheezy") debido a que las
bibliotecas que utiliza se han cambiado en el nterin. Supongo que ser lo
mismo con versiones posteriores.
As que aqu est mi tutorial de cmo configurar Tomahawk en Wheezy desde
cero:
Instalacin del sistema base de Debian, sin paquetes opcionales en todos
(tal vez el servicio SSH, pero no de escritorio, servidor DNS, etc). Yo suelo
seleccionar Todos ellos, incluyendo SSH.
Despus de que se est haciendo, aadir un par de paquetes que son
necesarios para la elaboracin de Tomahawk:
apt-get instalar gcc ssh bison flex hacen
Vaya a / usr / src y obtener la fuente de Tomahawk:
cd / usr / src
wget http://prdownloads.sourceforge.net/tomahawk/tomahawk1.1.tar.gz
Obtener viejo Libpcap y bibliotecas libnet. Desde estaban desactualizados
los puse en mi propio servidor para un acceso ms fcil, pero se puede buscar
usted mismo en otros lugares si se prefiere eso, por supuesto.
wget http://www.packet-foo.com/tomahawk/libnet-1.0.2a.tar.gz
wget http://www.packet-foo.com/tomahawk/libpcap-0.8.1.tar.gz
Descomprimir todo:
tar xzf tomahawk1.1.tar.gz
tar xzf libnet-1.0.2a.tar.gz

tar xzf libpcap-0.8.1.tar.gz


rm * .gz
Compilar Libpcap:
cd /usr/src/tomahawk/libpcap-0.8.1
./configure
hacer
make install
compilar LibNet
cd /usr/src/tomahawk/Libnet-1.0.2a
./configure
hacer
make install
Compilar Tomahawk:
/usr/src/tomahawk/tomahawk1.1 cd
hacer
make install
Prueba:
./tomahawk -l 1 -f test.pcap
En el cuadro que he instalado Tomahawk tengo 3 interfaces. Yo uso eth0 como
interfaz de gestin, mientras que eth1 y eth2 son mis interfaces de
reproduccin. Un comando tpico replay se vera as:
tomahawk-l 1-f ipstest1.pcap i eth1 -j eth2
Puedo recomendar el siguiente Whitepaper publicado por los laboratorios ICSA
sobre el funcionamiento interno de Tomahawk.
Divertirse.

..