Jenkins Arbitrary File Read to RCE via "Remember Me"
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
इस ब्लॉग पोस्ट में एक शानदार तरीका है कि कैसे Jenkins में Local File Inclusion भेद्यता को RCE में परिवर्तित किया जा सकता है: https://blog.securelayer7.net/spring-cloud-skipper-vulnerability/
यह एक AI द्वारा बनाई गई संक्षेप है उस भाग की जिसमें एक मनमाना कुकी का निर्माण RCE प्राप्त करने के लिए किया जाता है, जब तक कि मेरे पास अपने स्वयं के संक्षेप को बनाने का समय नहीं है:
विशेषता आवश्यकता: "Remember me" सक्षम होना चाहिए (डिफ़ॉल्ट सेटिंग)।
एक्सेस स्तर: हमलावर को Overall/Read अनुमतियाँ चाहिए।
गुप्त पहुँच: प्रमुख फ़ाइलों से बाइनरी और पाठ्य सामग्री पढ़ने की क्षमता।
उपयोगकर्ता जानकारी पुनर्प्राप्ति
प्रत्येक उपयोगकर्ता के लिए $JENKINS_HOME/users/*.xml
से उपयोगकर्ता कॉन्फ़िगरेशन और रहस्यों तक पहुँच प्राप्त करें:
उपयोगकर्ता नाम
उपयोगकर्ता बीज
टाइमस्टैम्प
पासवर्ड हैश
गुप्त कुंजी निष्कर्षण
कुकी पर हस्ताक्षर करने के लिए उपयोग की जाने वाली क्रिप्टोग्राफिक कुंजियों को निकालें:
गुप्त कुंजी: $JENKINS_HOME/secret.key
मास्टर कुंजी: $JENKINS_HOME/secrets/master.key
MAC कुंजी फ़ाइल: $JENKINS_HOME/secrets/org.springframework.security.web.authentication.rememberme.TokenBasedRememberMeServices.mac
टोकन तैयारी
टोकन समाप्ति समय की गणना करें:
टोकन के लिए डेटा को संयोजित करें:
MAC कुंजी डिक्रिप्शन
MAC कुंजी फ़ाइल को डिक्रिप्ट करें:
हस्ताक्षर गणना
HMAC SHA256 की गणना करें:
कुकी एन्कोडिंग
अंतिम कुकी उत्पन्न करें:
सत्र प्रमाणीकरण
CSRF और सत्र टोकन प्राप्त करें:
/crumbIssuer/api/json
पर एक अनुरोध करें ताकि Jenkins-Crumb
प्राप्त किया जा सके।
प्रतिक्रिया से JSESSIONID
को कैप्चर करें, जिसका उपयोग याद रखने वाली कुकी के साथ किया जाएगा।
कमांड निष्पादन अनुरोध
Groovy स्क्रिप्ट के साथ POST अनुरोध भेजें:
Groovy स्क्रिप्ट का उपयोग सिस्टम-स्तरीय कमांड या Jenkins वातावरण के भीतर अन्य संचालन को निष्पादित करने के लिए किया जा सकता है।
उदाहरण curl कमांड यह प्रदर्शित करता है कि कैसे आवश्यक हेडर और कुकी के साथ Jenkins को अनुरोध भेजा जाए ताकि मनमाना कोड सुरक्षित रूप से निष्पादित किया जा सके।
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)