
برهان مفاهيم (POC) لثغرة CVE-2021-22205 في Gitlab (RCE) مكتوب بلغة Golang
إثبات مفهوم (POC) بسيط لـ CVE-2021-22205 Gitlab RCE مكتوب بلغة Golang، ويؤثر على Gitlab CE/EE < 13.10.3 و Gitlab CE/EE < 13.9.6 و Gitlab CE/EE < 13.8.8.
كنت أرغب في تعلم Golang منذ فترة. قررت كتابة إثبات مفهوم لـ CVE-2021-22205 بلغة Golang للمساعدة في التعرف على اللغة. يُرجى تجاهل ما أفترض أنه كود مكتوب بشكل سيء.
الاستخدام: go run CVE-2021-22205.go -t http://127.0.0.1:8080 -c "echo pizza > /tmp/pizza.txt"
حيث تشير العلامة t إلى مثيل Gitlab الهدف، والعلامة c هي الأمر الذي تريد تشغيله.
تم إعداد السكريبت لاستخدام http://localhost:9090 كبروكسي. ستحتاج إلى حذف ذلك إذا كنت لا ترغب في استخدام بروكسي.
يمكن العثور على إعداد Docker القابل للاستغلال هنا: https://github.com/vulhub/vulhub/tree/master/gitlab/CVE-2021-22205
شرح CVE Finder: https://devcraft.io/2021/05/04/exiftool-arbitrary-code-execution-cve-2021-22204.html