
Técnica de exploração Segmentation Fault-Oriented Programming
Este é o repositório de artefatos da técnica de exploração Programação Orientada a Falhas de Segmentação.
Aqui descrevemos brevemente os artefatos deste repositório. No total, são oito artefatos diferentes, compostos por seis exploits de PoC e dois exploits em programas do mundo real (Nginx e Ladybird):
PoCs:
bSFOP_ek: Exploit bSFOP completo usando uma cadeia para registrar o sinal e o Early Kill para lançar o ataque.bSFOP_fixed: bSFOP mais simples de depurar, com sinal registrado manualmente e gadget defeituoso manual para lançar o ataque.bSFOP_multistage: Igual ao bSFOP_fixed, mas o payload inteiro não é transmitido no início; ele é lido em várias partes.chain: Exemplo isolado de uso de uma cadeia para registrar sigaction.fSFOP_ek: Exploit fSFOP completo usando uma cadeia para registrar o sinal e o Early Kill para lançar o ataque.fSFOP_fixed: fSFOP mais simples de depurar, com sinal registrado manualmente e gadget defeituoso manual para lançar o ataque.vulnerable-nginx: uma versão modificada do Nginx com a vulnerabilidade CVE-2013-2028. Demonstra o fSFOP com uma cadeia personalizada de registro de sinal e usando o Early Kill.
vulnerable-ladybird: uma versão modificada do SerenityOS com a vulnerabilidade CVE-2021-4327. Demonstra o fSFOP com uma cadeia personalizada de registro de sinal e usando o Early Kill.
Cada arquivo acompanha seu próprio README.
Cada PoC é dockerizado. Docker é o único requisito de software.
Executar os PoCs exige aplicação ativa da CET.
Para isso:
Nossos experimentos foram testados em diversas máquinas, incluindo: