
Un'utilità da riga di comando per la creazione e l'iniezione di pacchetti di rete.
Il Progetto Nemesis è progettato per essere uno stack IP umano portabile basato su riga di comando per sistemi UNIX-like e Windows. La suite è suddivisa per protocollo e dovrebbe permettere l'utile scripting di pacchetti iniettati da semplici script shell.
L'ultima release è sempre disponibile su GitHub all'indirizzo
Ogni protocollo supportato utilizza il proprio "iniettore" di protocollo, accompagnato da una pagina man che ne spiega le funzionalità.
Consultare il ChangeLog per i dettagli delle release e la documentazione di ogni iniettore di protocollo per descrizioni approfondite delle funzionalità disponibili.
Inietta un redirect ICMP malformato
sudo nemesis icmp -S 10.10.10.3 -D 10.10.10.1 -G 10.10.10.3 -i 5
DHCP Discover (deve usare sudo e -d per inviare con IP sorgente 0.0.0.0):
sudo nemesis dhcp -d eth0
IGMP v2 join per il gruppo 239.186.39.5
sudo nemesis igmp -v -p 22 -S 192.168.1.20 -g 239.186.39.5 -D 239.186.39.5
IGMP v2 query, tempo max. risposta 10 sec, con opzione IP Router Alert
echo -ne '\x94\x04\x00\x00' >RA
sudo nemesis igmp -v -p 0x11 -c 100 -D 224.0.0.1 -O RA
oppure
echo -ne '\x94\x04\x00\x00' | sudo nemesis igmp -v -p 0x11 -c 100 -D 224.0.0.1 -O -
IGMP v3 query, con opzione IP Router Alert
echo -ne '\x03\x64\x00\x00' > v3
sudo nemesis igmp -p 0x11 -c 100 -i 0.0.0.0 -P v3 -D 224.0.0.1 -O RA
Pacchetto TCP casuale
sudo nemesis tcp
Test DoS e DDoS
sudo nemesis tcp -v -S 192.168.1.1 -D 192.168.2.2 -fSA -y 22 -P foo
sudo nemesis udp -v -S 10.11.12.13 -D 10.1.1.2 -x 11111 -y 53 -P bindpkt
sudo nemesis icmp redirect -S 10.10.10.3 -D 10.10.10.1 -G 10.10.10.3 -qR
sudo nemesis arp -v -d eth0 -H 0:1:2:3:4:5 -S 10.11.30.5 -D 10.10.15.1
Nemesis è basato su libnet. Le build su piattaforma Windows richiedono anche libpcap. Nemesis <= 1.4 era basato su libnet 1.0 e Nemesis >= 1.5 richiede libnet 1.1 o successivo.
curl -sS https://deb.troglobit.com/pubkey.gpg | sudo apt-key add -
echo "deb [arch=amd64] https://deb.troglobit.com/debian stable main" | sudo tee /etc/apt/sources.list.d/troglobit.list
sudo apt-get update && sudo apt-get install nemesis
Su sistemi GNU/Linux Debian e Ubuntu derivati:
sudo apt install libnet1-dev
Questo installa gli header e la libreria libnet in una posizione standard che lo script configure può trovare facilmente. Se la vostra installazione di libnet1 si trova in una posizione non standard, potete fornire i percorsi in questo modo:
configure LDFLAGS=-L/path/to/lib CPPFLAGS=-I/path/to/header
Il sistema GNU Configure & Build usa /usr/local come prefisso di installazione predefinito. Di solito questo è sufficiente, l'esempio seguente installa in /usr:
tar xf nemesis-1.7.tar.xz
cd nemesis-1.7/
./configure --prefix=/usr
make -j5
sudo make install-strip
nemesis.exe può essere installato ovunque su un sistema Windows. L'avvertenza è che LibnetNT.dll deve trovarsi nella stessa directory di nemesis.exe o in una qualsiasi delle directory elencate nella variabile %PATH%. Su Windows 2000 questa sarebbe %SystemRoot%\System32
Nota: la build Windows non è stata provata o testata da oltre un decennio. YYMV
Se volete contribuire o semplicemente provare le ultime funzionalità ancora non rilasciate, dovete sapere alcune cose sul sistema GNU Configure & Build:
configure.ac e un Makefile.am per directory sono i file chiaveconfigure e Makefile.in sono generati da autogen.sh, non sono memorizzati in GIT ma generati automaticamente per i tarball delle releaseMakefile è generato dallo script configurePer compilare da GIT dovete prima clonare il repository ed eseguire lo script autogen.sh. Questo richiede che automake e autoconf siano installati sul sistema.
git clone https://github.com/libnet/nemesis.git
cd nemesis/
./autogen.sh
./configure && make
I sorgenti GIT sono un bersaglio mobile e non sono raccomandati per sistemi di produzione, a meno che non sappiate cosa state facendo!
Il progetto è attualmente mantenuto su GitHub con l'intenzione di fungere da punto focale per nuovi sviluppi. Se avete patch e/o idee, inviatele utilizzando il tracker dei problemi o come richieste pull.