
Introdução à exploração de binários ELF.
Rainfall é um desafio ISO ligeiramente mais complexo que o Snow Crash. Você terá que mergulhar fundo em engenharia reversa, aprender a reconstruir um código e entendê-lo para detectar falhas. Você conseguirá chegar ao último nível?
Rainfall é um projeto do ramo de cibersegurança da 42, que segue o Snow Crash, mas cujo objetivo é explorar arquivos no formato ELF como executáveis em C.
Diferentes técnicas devem ser usadas para obter as senhas de cada nível:
Um bom conhecimento da linguagem Assembly (x86 e x86-64) e do GDB é necessário para entender os executáveis C desmontados.
Validamos este projeto em março de 2025, com uma pontuação de 125/100.
Para iniciar este projeto, você precisa primeiro baixar e instalar a ISO fornecida pela 42.
Em seguida, você precisa usar uma máquina virtual com a ISO. Se estiver usando o VirtualBox, você deve definir a configuração Attached to na aba Network para Host-only Adapter.
Você pode se conectar ao primeiro nível usando ssh. O endereço IP é exibido na tela inicial da VM e a porta é 4242. As credenciais para o primeiro nível são level0, tanto para o nome de usuário quanto para a senha.
ssh [email protected] -p 4242
Uma vez logado, você terá que encontrar uma maneira de ler o arquivo .pass da conta de usuário do próximo nível. Ele está localizado no diretório home de cada usuário.
level0@RainFall:~$ ./level0 $(exploit)
$ cat /home/user/level1/.pass
?????????????????????
$ exit
level0@RainFall:~$ su level1
Password:
level1@RainFall:~$ _