Ret2vDSO
Informações Básicas
Pode haver gadgets na região vDSO, que é usada para mudar do modo de usuário para o modo kernel. Nestes tipos de desafios, geralmente é fornecida uma imagem do kernel para fazer dump da região vDSO.
Seguindo o exemplo de https://7rocky.github.io/en/ctf/other/htb-cyber-apocalypse/maze-of-mist/ é possível ver como foi possível fazer dump da seção vdso e movê-la para o host com:
Gadgets ROP encontrados:
Note que pode ser possível burlar o ASLR abusando do vdso se o kernel for compilado com CONFIG_COMPAT_VDSO, pois o endereço vdso não será randomizado: https://vigilance.fr/vulnerability/Linux-kernel-bypassing-ASLR-via-VDSO-11639
ARM64
Após despejar e verificar a seção vdso de um binário no kali 2023.2 arm64, não consegui encontrar nenhum gadget interessante lá (nenhuma maneira de controlar registradores a partir de valores na pilha ou controlar x30 para um ret) exceto uma maneira de chamar um SROP. Confira mais informações no exemplo da página:
pageSROP - ARM64Last updated