{{#include ../../banners/hacktricks-training.md}} # **Manipulation de TTL** Envoyez des paquets avec un TTL suffisant pour arriver à l'IDS/IPS mais pas assez pour atteindre le système final. Ensuite, envoyez d'autres paquets avec les mêmes séquences que les précédents afin que l'IPS/IDS pense qu'il s'agit de répétitions et ne les vérifie pas, mais en réalité, ils transportent le contenu malveillant. **Option Nmap :** `--ttlvalue ` # Éviter les signatures Ajoutez simplement des données inutiles aux paquets afin d'éviter la signature de l'IPS/IDS. **Option Nmap :** `--data-length 25` # **Paquets fragmentés** Il suffit de fragmenter les paquets et de les envoyer. Si l'IDS/IPS n'a pas la capacité de les réassembler, ils arriveront à l'hôte final. **Option Nmap :** `-f` # **Checksum** _**invalide**_ Les capteurs ne calculent généralement pas le checksum pour des raisons de performance. Ainsi, un attaquant peut 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 un checksum invalide, alors l'IPS/IDS peut penser que ce paquet va fermer la connexion, mais l'hôte final rejettera le paquet car le checksum est invalide. # **Options IP et TCP peu communes** Un capteur peut ignorer les paquets avec certains drapeaux et options définis dans les en-têtes IP et TCP, tandis que l'hôte de destination accepte le paquet à la réception. # **Chevauchement** Il est possible que lorsque vous fragmentez un paquet, un certain type de chevauchement existe entre les paquets (peut-être que les 8 premiers octets du paquet 2 chevauchent les 8 derniers octets du paquet 1, et les 8 derniers octets du paquet 2 chevauchent les 8 premiers octets du paquet 3). Ensuite, si l'IDS/IPS les réassemble d'une manière différente de celle de l'hôte final, un paquet différent sera interprété.\ Ou peut-être, 2 paquets avec le même décalage arrivent et l'hôte doit décider lequel il prend. - **BSD** : Il a une préférence pour les paquets avec un _décalage_ plus petit. Pour les paquets avec le même décalage, il choisira le premier. - **Linux** : Comme BSD, mais il préfère le dernier paquet avec le même décalage. - **Premier** (Windows) : Première valeur qui arrive, valeur qui reste. - **Dernier** (cisco) : Dernière valeur qui arrive, valeur qui reste. # Outils - [https://github.com/vecna/sniffjoke](https://github.com/vecna/sniffjoke) {{#include ../../banners/hacktricks-training.md}}