Tecniche di evasione IDS/IPS

Tip

Impara e pratica AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Impara e pratica GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Impara e pratica Az Hacking: HackTricks Training Azure Red Team Expert (AzRTE) Sfoglia il catalogo completo di HackTricks Training per i percorsi di assessment (ARTA/GRTA/AzRTA) e Linux Hacking Expert (LHE).

Supporta HackTricks

TTL Manipulation

Invia alcuni pacchetti con un TTL sufficiente per arrivare all’IDS/IPS ma non abbastanza per raggiungere il sistema finale. Poi invia altri pacchetti con le stesse sequenze dei precedenti in modo che l’IPS/IDS li consideri ripetizioni e non li controlli, mentre in realtà contengono contenuto malevolo.

Opzione Nmap: --ttlvalue <value>

Avoiding signatures

Aggiungi semplicemente garbage data ai pacchetti in modo da evitare la signature dell’IPS/IDS.

Opzione Nmap: --data-length 25

Fragmented Packets

Frammenta semplicemente i pacchetti e inviali. Se l’IDS/IPS non è in grado di riassemblarli, arriveranno all’host finale.

Opzione Nmap: -f

Invalid checksum

I sensor di solito non calcolano la checksum per motivi di performance. Quindi un attacker può inviare un pacchetto che sarà interpretato dal sensor ma rifiutato dall’host finale. Esempio:

Invia un pacchetto con il flag RST e una checksum non valida, così l’IPS/IDS può pensare che il pacchetto chiuda la connessione, mentre l’host finale scarterà il pacchetto perché la checksum è invalida.

Uncommon IP and TCP options

Un sensor potrebbe ignorare pacchetti con certi flag e opzioni impostate negli header IP e TCP, mentre l’host di destinazione accetta il pacchetto alla ricezione.

Overlapping

È possibile che, quando frammenti un pacchetto, si verifichi un overlapping tra pacchetti (ad esempio i primi 8 byte del pacchetto 2 si sovrappongono con gli ultimi 8 byte del pacchetto 1, e gli ultimi 8 byte del pacchetto 2 si sovrappongono con i primi 8 byte del pacchetto 3). Se l’IDS/IPS li riassembla in modo diverso rispetto all’host finale, verrà interpretato un pacchetto differente.
Oppure possono arrivare 2 pacchetti con lo stesso offset e l’host deve decidere quale prendere.

  • BSD: Ha preferenza per pacchetti con offset più piccolo. Per pacchetti con lo stesso offset, sceglie il primo.
  • Linux: Come BSD, ma preferisce l’ultimo pacchetto con lo stesso offset.
  • First (Windows): il primo valore che arriva rimane.
  • Last (cisco): l’ultimo valore che arriva rimane.

TCP Stream Overlap / Reassembly Mismatch

Come per i frammenti IP, gli overlapping TCP segments possono essere riassemblati in modo differente dall’IDS/IPS e dall’host di destinazione. Se il sensor e l’host non concordano su quali byte prevalgono nell’overlap, puoi mettere byte benigni dove guarda l’IDS/IPS e byte malevoli dove l’host li riassemblerà alla fine.

  • Invia prima un segmento benigno e poi un malicious overlapping segment (o inverti l’ordine) a seconda della policy di riassemblaggio del sistema target.
  • Usa tiny overlaps per mantenere lo stream valido per l’host massimizzando l’ambiguità per il sensor.

IPv6 Extension Headers & Fragment Tricks

IPv6 permette catene arbitrarie di header, e l’header di livello superiore (TCP/UDP/ICMPv6) appare dopo tutti gli extension headers. Se un dispositivo non analizza l’intera catena, può essere bypassato inserendo extension headers o frammentando in modo che l’header di livello superiore non sia visibile dove il dispositivo se lo aspetta. RFC 7112 richiede che l’intera catena di header IPv6 sia presente nel primo frammento; dispositivi che accettano tiny fragments non conformi possono essere evasi spostando l’L4 header in frammenti successivi.

Pattern pratici:

  • Long extension-header chains per spingere l’upper-layer header più in profondità nel pacchetto.
  • Small first fragments che contengono solo IPv6 + Fragment + options, lasciando l’L4 header per frammenti successivi.
  • Combinare extension headers + fragmentation per nascondere il reale protocollo di upper-layer a dispositivi che ispezionano solo il primo frammento.

Tools

References

Tip

Impara e pratica AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Impara e pratica GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Impara e pratica Az Hacking: HackTricks Training Azure Red Team Expert (AzRTE) Sfoglia il catalogo completo di HackTricks Training per i percorsi di assessment (ARTA/GRTA/AzRTA) e Linux Hacking Expert (LHE).

Supporta HackTricks