IDS/IPS Técnicas de Evasão

Tip

Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Aprenda e pratique Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE) Aprenda e pratique Hacking Azure: HackTricks Training Azure Red Team Expert (AzRTE)

Supporte o HackTricks

Manipulação de TTL

Envie alguns pacotes com um TTL suficiente para chegar ao IDS/IPS, mas não o bastante para atingir o sistema final. Em seguida, envie outros pacotes com as mesmas sequências dos anteriores para que o IPS/IDS os considere repetições e não os inspecione, mas na verdade eles carregam o conteúdo malicioso.

Nmap option: --ttlvalue <value>

Evitando assinaturas

Basta adicionar dados lixo aos pacotes para evitar a assinatura do IPS/IDS.

Nmap option: --data-length 25

Pacotes Fragmentados

Basta fragmentar os pacotes e enviá-los. Se o IDS/IPS não conseguir reconstruí-los, eles chegarão ao host final.

Nmap option: -f

Inválido checksum

Os sensores normalmente não calculam checksum por razões de desempenho. Assim, um atacante pode enviar um pacote que será interpretado pelo sensor mas rejeitado pelo host final. Exemplo:

Envie um pacote com a flag RST e um checksum inválido; então o IPS/IDS pode pensar que esse pacote vai fechar a conexão, mas o host final descartará o pacote porque o checksum é inválido.

Opções IP e TCP incomuns

Um sensor pode desconsiderar pacotes com certas flags e opções definidas nos cabeçalhos IP e TCP, enquanto o host de destino aceita o pacote ao recebê-lo.

Sobreposição

É possível que, ao fragmentar um pacote, ocorra algum tipo de sobreposição entre os fragmentos (por exemplo, os primeiros 8 bytes do pacote 2 sobrepõem os últimos 8 bytes do pacote 1, e os últimos 8 bytes do pacote 2 sobrepõem os primeiros 8 bytes do pacote 3). Então, se o IDS/IPS os reassemblar de maneira diferente do host final, será interpretado um pacote diferente.
Ou talvez cheguem 2 pacotes com o mesmo offset e o host tenha que decidir qual aceita.

  • BSD: Dá preferência a pacotes com offset menor. Para pacotes com o mesmo offset, escolherá o primeiro.
  • Linux: Semelhante ao BSD, mas prefere o último pacote com o mesmo offset.
  • First (Windows): O primeiro valor que chega é o que fica.
  • Last (cisco): O último valor que chega é o que fica.

Sobreposição de fluxo TCP / Incompatibilidade na reconstrução

Assim como nos fragments IP, segmentos TCP sobrepostos podem ser reconstruídos de forma diferente pelo IDS/IPS e pelo host de destino. Se o sensor e o host discordarem sobre quais bytes prevalecem na sobreposição, você pode colocar bytes benignos onde o IDS/IPS inspeciona e bytes maliciosos onde o host os reconstrói no final.

  • Envie primeiro um segmento benigno e depois um segmento sobreposto malicioso (ou inverta a ordem) dependendo da política de reconstrução do OS alvo.
  • Use sobreposições pequenas para manter o fluxo válido para o host enquanto maximiza a ambiguidade para o sensor.

IPv6 Cabeçalhos de Extensão & Truques de Fragmentação

O IPv6 permite cadeias arbitrárias de cabeçalhos, e o cabeçalho da camada superior (TCP/UDP/ICMPv6) aparece após todos os cabeçalhos de extensão. Se um dispositivo não analisa a cadeia completa, pode ser contornado inserindo cabeçalhos de extensão ou fragmentando de modo que o cabeçalho da camada superior não seja visível onde o dispositivo espera. RFC 7112 exige que toda a cadeia de cabeçalhos IPv6 esteja presente no primeiro fragmento; dispositivos que aceitam fragmentos minúsculos não conformes podem ser evadidos ao empurrar o cabeçalho L4 para fragmentos posteriores.

Padrões práticos:

  • Cadeias longas de cabeçalhos de extensão para empurrar o cabeçalho da camada superior mais profundamente no pacote.
  • Primeiros fragmentos pequenos que contenham apenas IPv6 + Fragment + opções, deixando o cabeçalho L4 para fragmentos posteriores.
  • Combinando cabeçalhos de extensão + fragmentação para ocultar o protocolo real da camada superior de dispositivos que inspecionam apenas o primeiro fragmento.

Ferramentas

Referências

Tip

Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Aprenda e pratique Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE) Aprenda e pratique Hacking Azure: HackTricks Training Azure Red Team Expert (AzRTE)

Supporte o HackTricks