Le mie regole di Snort sono corrette?

1

Sto provando a fare una demo di Snort e anche se sarebbe bello rilevare una vera minaccia. Ho scelto il worm sasser e gli attacchi dos jolt / teardrop per la demo; nessun motivo particolare Su tre solo uno, l'attacco a goccia, viene rilevato.

Ho provato lo snort con "regole di test" (avvisa ogni pacchetto tcp, cerca una stringa nel payload, ...) e sembrano funzionare in modo impeccabile. Ho controllato l'output di Snort e non ci sono avvisi o errori per i file contenenti le regole per sasser / jolt.

Non ho molta esperienza nella scrittura delle regole di Snort, quindi li ho scelti da siti di sicurezza riconosciuti e github.

Il traffico più sassoso è generato dal worm sasser, che ho trovato online e compilato. Il traffico di scosse e lacrime viene generato con lo strumento targa2.

Ho controllato il traffico con tcpdump e sembra essere OK. Sasser genera il traffico diretto alla porta di aggiornamento di Windows e sia i jolt che i lacrimogeni generano pacchetti ICMP.

Dopo aver provato tutto il precedente, credo che il problema siano le mie regole di Snort. Ho iniziato a cercare su Google, ma non ho trovato nulla di nuovo, quindi sarebbe bello se qualcuno potesse verificare se queste regole fanno ciò che intendevano.

Ecco le mie regole di sasser:

alert tcp $EXTERNAL_NET any -> $HOME_NET 445 (msg:"NETBIOS SMB-DS DCERPC LSASS DsRolerUpgradeDownlevelServer exploit attempt" ; flow:to_server,established; flowbits:isset,netbios.lsass.bind.attempt; content:"|FF|SMB"; depth:4; offset:4; nocase:; content:"|05|"; distance:59; content:"|00|"; within:1; distance:1; content:"|09 00|"; within:2; distance:19; reference:cve,CAN-2003-0533; reference:url,www.microsoft.com/technet/security/bulletin/MS04-011.mspx; classtype:attempted-admin; sid:2514; rev:5;)

alert tcp $EXTERNAL_NET any -> $HOME_NET 445 ( sid: 1000041; rev: 1; msg: "LSLass MS-0411 exploit"; flow: established,to_server; content:"|eb10 5a4a 33c9 66b9 7d01 8034 0a99 e2fa eb05 e8eb ffff|"; reference:url,www.secuser.com/alertes/2004/sasser.htm; classtype: shellcode-detect;)

alert tcp $HOME_NET any -> $EXTERNAL_NET 9996 ( sid: 1000042; rev: 3; msg:"Sasser ftp script to transfer up.exe"; content:"|5F75702E657865|"; depth:250; flags:A+; reference:url,www.secuser.com/alertes/2004/sasser.htm; classtype: misc-activity;)

alert tcp $EXTERNAL_NET any -> $HOME_NET 5554 ( sid: 1000043; rev: 1; msg:"Sasser binary transfer get up.exe"; content:"|5F75702E657865|"; depth:250; flags:A+; reference:url,www.secuser.com/alertes/2004/sasser.htm; classtype: misc-activity;)

Ecco la mia regola Jolt:

alert ip $EXTERNAL_NET any -> $HOME_NET any (msg:"DOS Jolt attack"; dsize:408; fragbits:M; reference:cve,1999-0345; classtype:attempted-dos; sid:268; rev:4;)

E infine la regola Teardrop, l'unica che funziona:

alert udp $EXTERNAL_NET any -> $HOME_NET any (msg:"DOS Teardrop attack"; fragbits:M; id:242; reference:bugtraq,124; reference:cve,1999-0015; reference:nessus,10279; reference:url,www.cert.org/advisories/CA-1997-28.html; classtype:attempted-dos; sid:270; rev:6;)

Grazie in anticipo.

    
posta Fernando Domínguez 16.05.2014 - 22:37
fonte

1 risposta

1

Non vedo nulla di chiaramente sbagliato nelle regole.

Ti è capitato di catturare i tuoi pcaps sul sistema di attacco o di destinazione? Se è così, il checksum potrebbe essere errato. Come test rapido, esegui snort con il flag "-k none" per ignorare i checksum ma il modo corretto per farlo sarebbe usare tcprewrite per correggere i checksum tcp (o qualche altra utilità per raggiungere lo stesso obiettivo).

Grazie,

~ Patrick

    
risposta data 13.06.2014 - 03:05
fonte

Leggi altre domande sui tag