mirror of
https://github.com/HackTricks-wiki/hacktricks.git
synced 2025-10-10 18:36:50 +00:00
46 lines
2.5 KiB
Markdown
46 lines
2.5 KiB
Markdown
{{#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 <value>`
|
|
|
|
# É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}}
|