IDS/IPS Evasion Techniques
Tip
Apprenez et pratiquez le hacking AWS :
HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP :HackTricks Training GCP Red Team Expert (GRTE)
Apprenez et pratiquez le hacking Azure :
HackTricks Training Azure Red Team Expert (AzRTE)
Soutenir HackTricks
- Vérifiez les plans d’abonnement !
- Rejoignez le 💬 groupe Discord ou le groupe telegram ou suivez-nous sur Twitter 🐦 @hacktricks_live.
- Partagez des astuces de hacking en soumettant des PR au HackTricks et HackTricks Cloud dépôts github.
TTL Manipulation
Envoyez des paquets avec un TTL suffisant pour atteindre l’IDS/IPS mais pas assez pour atteindre le système final. Puis envoyez d’autres paquets avec les mêmes numéros de séquence que les précédents afin que l’IPS/IDS les considère comme des répétitions et ne les analyse pas, alors qu’ils contiennent en réalité du contenu malveillant.
Nmap option: --ttlvalue <value>
Avoiding signatures
Ajoutez simplement des données inutiles aux paquets afin d’éviter la détection par signature de l’IPS/IDS.
Nmap option: --data-length 25
Fragmented Packets
Fragmenter simplement les paquets et les envoyer. Si l’IDS/IPS n’a pas la capacité de les réassembler, ils arriveront à l’hôte final.
Nmap option: -f
Invalid checksum
Les capteurs ne recalculent généralement pas la checksum pour des raisons de performance. Un attaquant peut donc envoyer un paquet qui sera interprété par le capteur mais rejeté par l’hôte final. Exemple :
Envoyez un paquet avec le drapeau RST et une checksum invalide ; l’IPS/IDS peut alors penser que ce paquet va fermer la connexion, mais l’hôte final rejettera le paquet car la checksum est invalide.
Uncommon IP and TCP options
Un capteur peut ignorer des paquets contenant certains flags ou options dans les en-têtes IP/TCP, alors que l’hôte destinataire accepte le paquet à la réception.
Overlapping
Il est possible que lors de la fragmentation d’un paquet, des chevauchements se produisent entre les fragments (par exemple les 8 premiers octets du fragment 2 chevauchent les 8 derniers octets du fragment 1, et les 8 derniers octets du fragment 2 chevauchent les 8 premiers octets du fragment 3). Si l’IDS/IPS les réassemble différemment de l’hôte final, un paquet différent sera interprété.
Ou bien, deux paquets avec le même offset arrivent et l’hôte doit décider lequel retenir.
- BSD : Il privilégie les paquets avec un offset plus petit. Pour des paquets avec le même offset, il choisira le premier.
- Linux : Comme BSD, mais il préfère le dernier paquet ayant le même offset.
- First (Windows) : La première valeur qui arrive est conservée.
- Last (cisco) : La dernière valeur qui arrive est conservée.
TCP Stream Overlap / Reassembly Mismatch
Comme pour les fragments IP, les segments TCP qui se chevauchent peuvent être réassemblés différemment par l’IDS/IPS et par l’hôte destinataire. Si le capteur et l’hôte ne sont pas d’accord sur quels octets prévalent dans le chevauchement, vous pouvez placer des octets bénins là où l’IDS/IDS regarde et des octets malveillants là où l’hôte les réassemble finalement.
- Envoyez d’abord un segment bénin puis un segment malveillant chevauchant ensuite (ou inversez l’ordre) en fonction de la politique de réassemblage de l’OS cible.
- Utilisez des chevauchements minimes pour garder le flux valide pour l’hôte tout en maximisant l’ambiguïté pour le capteur.
IPv6 Extension Headers & Fragment Tricks
IPv6 permet des chaînes d’en-têtes arbitraires, et l’en-tête de couche supérieure (TCP/UDP/ICMPv6) apparaît après tous les en-têtes d’extension. Si un dispositif ne parse pas la chaîne complète, il peut être contourné en insérant des en-têtes d’extension ou en fragmentant de sorte que l’en-tête de couche supérieure ne soit pas visible là où le dispositif s’y attend. Le RFC 7112 exige que l’ensemble de la chaîne d’en-têtes IPv6 soit présent dans le premier fragment ; les dispositifs qui acceptent de petits fragments non conformes peuvent être contournés en repoussant l’en-tête L4 dans des fragments ultérieurs.
Practical patterns:
- Long extension-header chains pour repousser l’en-tête de couche supérieure plus profondément dans le paquet.
- Small first fragments qui contiennent uniquement IPv6 + Fragment + options, laissant l’en-tête L4 pour des fragments ultérieurs.
- Combiner extension headers + fragmentation pour masquer le véritable protocole de couche supérieure aux dispositifs qui n’inspectent que le premier fragment.
Tools
References
Tip
Apprenez et pratiquez le hacking AWS :
HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP :HackTricks Training GCP Red Team Expert (GRTE)
Apprenez et pratiquez le hacking Azure :
HackTricks Training Azure Red Team Expert (AzRTE)
Soutenir HackTricks
- Vérifiez les plans d’abonnement !
- Rejoignez le 💬 groupe Discord ou le groupe telegram ou suivez-nous sur Twitter 🐦 @hacktricks_live.
- Partagez des astuces de hacking en soumettant des PR au HackTricks et HackTricks Cloud dépôts github.


