Docker सॉकेट का दुरुपयोग करके विशेषाधिकार वृद्धि
Reading time: 4 minutes
tip
AWS हैकिंग सीखें और अभ्यास करें:
HackTricks Training AWS Red Team Expert (ARTE)
GCP हैकिंग सीखें और अभ्यास करें:
HackTricks Training GCP Red Team Expert (GRTE)
Azure हैकिंग सीखें और अभ्यास करें:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks का समर्थन करें
- सदस्यता योजनाओं की जांच करें!
- हमारे 💬 Discord समूह या टेलीग्राम समूह में शामिल हों या हमें Twitter 🐦 @hacktricks_live** पर फॉलो करें।**
- हैकिंग ट्रिक्स साझा करें और HackTricks और HackTricks Cloud गिटहब रिपोजिटरी में PRs सबमिट करें।
कुछ अवसर होते हैं जब आपके पास docker सॉकेट तक पहुंच होती है और आप इसका उपयोग विशेषाधिकार बढ़ाने के लिए करना चाहते हैं। कुछ क्रियाएँ बहुत संदिग्ध हो सकती हैं और आप उनसे बचना चाह सकते हैं, इसलिए यहाँ विभिन्न फ्लैग्स हैं जो विशेषाधिकार बढ़ाने में सहायक हो सकते हैं:
माउंट के माध्यम से
आप रूट के रूप में चल रहे कंटेनर में फाइल सिस्टम के विभिन्न भागों को माउंट कर सकते हैं और उन्हें एक्सेस कर सकते हैं।
आप कंटेनर के अंदर विशेषाधिकार बढ़ाने के लिए माउंट का दुरुपयोग भी कर सकते हैं।
-v /:/host-> कंटेनर में होस्ट फाइल सिस्टम को माउंट करें ताकि आप होस्ट फाइल सिस्टम पढ़ सकें।- यदि आप महसूस करना चाहते हैं कि आप होस्ट में हैं लेकिन कंटेनर में हैं, तो आप फ्लैग्स का उपयोग करके अन्य सुरक्षा तंत्रों को निष्क्रिय कर सकते हैं जैसे:
--privileged--cap-add=ALL--security-opt apparmor=unconfined--security-opt seccomp=unconfined-security-opt label:disable--pid=host--userns=host--uts=host--cgroupns=host--device=/dev/sda1 --cap-add=SYS_ADMIN --security-opt apparmor=unconfined-> यह पिछले तरीके के समान है, लेकिन यहाँ हम डिवाइस डिस्क को माउंट कर रहे हैं। फिर, कंटेनर के अंदरmount /dev/sda1 /mntचलाएँ और आप /mnt में होस्ट फाइल सिस्टम को एक्सेस कर सकते हैं।- होस्ट में
fdisk -lचलाएँ ताकि</dev/sda1>डिवाइस को माउंट किया जा सके। -v /tmp:/host-> यदि किसी कारणवश आप केवल कुछ निर्देशिका को होस्ट से माउंट कर सकते हैं और आपके पास होस्ट के अंदर पहुंच है। इसे माउंट करें और माउंट की गई निर्देशिका में suid के साथ/bin/bashबनाएं ताकि आप इसे होस्ट से निष्पादित कर सकें और रूट तक बढ़ा सकें।
note
ध्यान दें कि शायद आप /tmp फ़ोल्डर को माउंट नहीं कर सकते लेकिन आप एक विभिन्न लिखने योग्य फ़ोल्डर को माउंट कर सकते हैं। आप लिखने योग्य निर्देशिकाएँ खोजने के लिए: find / -writable -type d 2>/dev/null का उपयोग कर सकते हैं।
ध्यान दें कि लिनक्स मशीन में सभी निर्देशिकाएँ suid बिट का समर्थन नहीं करेंगी! यह जांचने के लिए कि कौन सी निर्देशिकाएँ suid बिट का समर्थन करती हैं, mount | grep -v "nosuid" चलाएँ। उदाहरण के लिए आमतौर पर /dev/shm, /run, /proc, /sys/fs/cgroup और /var/lib/lxcfs suid बिट का समर्थन नहीं करते हैं।
यह भी ध्यान दें कि यदि आप /etc या किसी अन्य फ़ोल्डर को कॉन्फ़िगरेशन फ़ाइलों के साथ माउंट कर सकते हैं, तो आप उन्हें कंटेनर से रूट के रूप में बदल सकते हैं ताकि आप होस्ट में उनका दुरुपयोग कर सकें और विशेषाधिकार बढ़ा सकें (शायद /etc/shadow को संशोधित करके)।
कंटेनर से बाहर निकलना
--privileged-> इस फ्लैग के साथ आप कंटेनर से सभी अलगाव हटा देते हैं। रूट के रूप में विशेषाधिकार प्राप्त कंटेनरों से बाहर निकलने की तकनीकों की जांच करें।--cap-add=<CAPABILITY/ALL> [--security-opt apparmor=unconfined] [--security-opt seccomp=unconfined] [-security-opt label:disable]-> क्षमताओं का दुरुपयोग करके विशेषाधिकार बढ़ाने के लिए, उस क्षमता को कंटेनर को दें और अन्य सुरक्षा विधियों को निष्क्रिय करें जो शोषण को काम करने से रोक सकती हैं।
कर्ल
इस पृष्ठ पर हमने docker फ्लैग्स का उपयोग करके विशेषाधिकार बढ़ाने के तरीकों पर चर्चा की है, आप पृष्ठ में कर्ल कमांड का उपयोग करके इन तरीकों का दुरुपयोग करने के तरीके पा सकते हैं:
tip
AWS हैकिंग सीखें और अभ्यास करें:
HackTricks Training AWS Red Team Expert (ARTE)
GCP हैकिंग सीखें और अभ्यास करें:
HackTricks Training GCP Red Team Expert (GRTE)
Azure हैकिंग सीखें और अभ्यास करें:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks का समर्थन करें
- सदस्यता योजनाओं की जांच करें!
- हमारे 💬 Discord समूह या टेलीग्राम समूह में शामिल हों या हमें Twitter 🐦 @hacktricks_live** पर फॉलो करें।**
- हैकिंग ट्रिक्स साझा करें और HackTricks और HackTricks Cloud गिटहब रिपोजिटरी में PRs सबमिट करें।
HackTricks