
पायथन डिपेंडेंसी कंफ्यूजन हमले, sudo विशेषाधिकार वृद्धि (CVE-2025-32463), और रूटकिट-आधारित स्थिरता का एंड-टू-एंड सिमुलेशन - पूर्ण मेमोरी और नेटवर्क फोरेंसिक विश्लेषण के साथ।
यह परियोजना Technische Hochschule Deggendorf में डिजिटल फॉरेंसिक पाठ्यक्रम के भाग के रूप में विकसित की गई थी।
यह निम्नलिखित से जुड़ी एक पूर्ण फोरेंसिक जांच और हमले का अनुकरण प्रदर्शित करता है:
एक दुर्भावनापूर्ण PyPI पैकेज का उपयोग करके Python निर्भरता भ्रम हमला
sudo के एक संवेदनशील संस्करण (CVE-2025-32463) के माध्यम से विशेषाधिकार वृद्धि
Sliver C2 बीकन की तैनाती
कर्नेल मॉड्यूल लोडिंग, syscall हुकिंग और udev-आधारित दृढ़ता के साथ एक कस्टम रूटकिट
Volatility, NetworkMiner और मैनुअल रिवर्सिंग जैसे टूल का उपयोग करके मेमोरी और नेटवर्क आर्टिफैक्ट का पूर्ण विश्लेषण
रिपॉजिटरी में स्क्रिप्ट, सेटअप निर्देश, आर्टिफैक्ट और हमले और फोरेंसिक जांच दोनों को दोहराने के लिए विस्तृत विश्लेषण चरण शामिल हैं।
shell)
shell binary का रिवर्सिंग
CVE-2025-32463
NVD विवरण
POC Github
[!NOTE]
आपको एक संवेदनशील Sudo संस्करण स्थापित करना होगा (chroot समर्थन के साथ—privesc/setup.shदेखें)
sequenceDiagram autonumber participant Attacker participant PyPI participant IntDep as Internal Dep Server participant Dev as Developer participant C2 as C2 Server
Attacker->>PyPI: Publish package with version v1.0.3
Dev->>IntDep: pip install
IntDep-->>Dev: Returns v1.0.1
Dev->>PyPI: Fallback pip install package==v1.0.3
PyPI-->>Dev: Returns malicious v1.0.3 (stager)
Dev->>Dev: Executes stager (package_evil)
Dev->>C2: Beacon/Sliver implant calls home
Note right of C2: Attacker now has RCE
Attacker->>Dev: Enumerates sudo version (1.9.16p2)
Attacker->>Dev: Runs CVE-2025-32463 exploit
Note right of Dev: PE to root
Dev->>Dev: Downloads & runs rootkit loader binary
Dev->>Dev: Loader installs kernel module & configures udev rule
Dev->>Dev: Schedules reboot
Note right of Dev: Attacker established persistence
Dev->>Dev: System reboots
Dev->>Dev: Udev loads kernel module on boot
Dev->>C2: Kernel-stage beacon calls C2
# आर्टिफैक्ट जनरेशन
सभी आर्टिफैक्ट मैन्युअल रूप से उत्पन्न किए जाते हैं। आप दो मशीनों का उपयोग करेंगे:
- **अटैकर मशीन** (Kali Linux)
- **डेवलपर मशीन** (Ubuntu)
हम तीन आर्टिफैक्ट तैयार करेंगे:
- **PCAP** (रीबूट से पहले)
- **मेमोरी डंप** (रीबूट के बाद)
## मेमोरी डंप बनाएं
[VirtualBox मेमोरी कैसे डंप करें](https://www.ired.team/miscellaneous-reversing-forensics/dump-virtual-box-memory)
होस्ट सिस्टम पर:```shell
vboxmanage list vms
"linux-root-kit_default_1752261916398_20346" {c2d4b5bc-d87f-4dcb-af01-85b78c163fef}
virtualboxvm --startvm "linux-root-kit_default_1752261916398_20346" --dbg
इंटरफ़ेस पर जाएं --> Debug डीबग कंसोल (VMMR0> प्रॉम्प्ट) में:```shell .pgmphystofile 'dumpmem_linux_root_kit'
## उबंटू पर नेटवर्क डंप तैयार करें
डेवलपर का अनुकरण करने से पहले प्रारंभ करें। `! port 22` वैग्रांट ssh कनेक्शन को लॉग न करने के लिए उपयोगी है।```shell
sudo tcpdump -w output.pcap ! port 22
shell)vagrant up
इसमें कुछ समय लग सकता है --> एक पूरी VM डाउनलोड होती है जो Bento के साथ बनाई गई थी।
## 2. एक बार VM चालू हो जाने पर, SSH से लॉगिन करें: ```shell
vagrant ssh
sudo bash /vagrant/privesc/setup.sh sudo apt install python3.12-venv
## 4. उपयोगकर्ता लैंड लोडर बाइनरी (shell) बनाएँ:
आप `make` फ़ाइल को चलाकर userland बाइनरी `shell` बना सकते हैं। यह सबसे आसान तरीका है - अन्यथा आपको पहले सही हेडर्स इंस्टॉल करने की आवश्यकता होगी :P.
## 5. `shell` को Kali पर भेजें ताकि बाद में वहाँ से serve किया जा सके।
# Kali सेटअप (192.168.56.101)