
Docker-आधारित असुरक्षित लैब और CVE-2023-25157/25158 (GeoServer और GeoTools में SQL इंजेक्शन) के लिए विस्तृत PoC रिपोर्ट, जिसमें 4 सत्यापित हमले वेक्टर और विश्लेषण शामिल हैं।
अभ्यास वातावरण (भेद्य प्रयोगशाला) और GeoServer (CVE-2023-25157) और GeoTools (CVE-2023-25158) लाइब्रेरी पर SQL इंजेक्शन (Error-based) भेद्यता का विस्तृत शोषण विश्लेषण रिपोर्ट।
कृपया आधिकारिक रिपोर्ट में प्रत्येक स्तर को दर्शाने वाले PoC छवियों के साथ पूर्ण विश्लेषण दस्तावेज़ देखें:
(रिपोर्ट में शामिल: CQL पार्सर और SQL अनुवादक स्तर पर दोष का सिद्धांत, OGC XML फिल्टर प्रारूप की व्याख्या, 4 हमले वैक्टर का विस्तृत विश्लेषण, पेलोड, डेटाबेस के तहत वास्तविक SQL क्वेरी और सुधार अनुशंसाएं।)
| गुण | विवरण |
|---|---|
| CVE ID | CVE-2023-25157 (GeoServer) & CVE-2023-25158 (GeoTools) |
| भेद्यता प्रकार | Error-based SQL Injection |
| गंभीरता स्तर | गंभीर — CVSS v3.1: 9.8 |
| प्रभावित उत्पाद | GeoServer < 2.23.1, < 2.22.3, < 2.21.4 / GeoTools < 29.2, < 28.4, < 27.5 |
| शोषण प्रोटोकॉल | OGC Web Feature Service (WFS) v1.0.0 / v2.0.0 |
| प्रमाणीकरण आवश्यकता | कोई आवश्यकता नहीं (जब WFS सेवा AccessConstraints: NONE कॉन्फ़िगर की गई हो) |
इस प्रयोगशाला में, 4 वास्तविक हमले वैक्टर सत्यापित किए गए हैं और REPORT.md में विस्तार से विश्लेषण किया गया है:
strStartsWith): CQL_FILTER (HTTP GET) में स्ट्रिंग उपसर्ग जांच फ़ंक्शन के माध्यम से शोषण।strEndsWith): CQL_FILTER (HTTP GET) में स्ट्रिंग प्रत्यय जांच फ़ंक्शन के माध्यम से शोषण।PropertyIsLike): मानक OGC XML फिल्टर टैग के माध्यम से शोषण जो escape एस्केप वर्ण में हेरफेर करता है (HTTP POST) — सबसे खतरनाक वेक्टर जो सभी डिफ़ॉल्ट सेटिंग्स पर काम करता है।FeatureId): जब preparedStatements = false होता है तो स्ट्रिंग प्रकार प्राथमिक कुंजी के अनुसार फ़िल्टरिंग पैरामीटर के माध्यम से शोषण।प्रोजेक्ट की मूल निर्देशिका में, टर्मिनल खोलें और निम्न कमांड चलाएँ:
docker compose up -d
सिस्टम 2 कंटेनर प्रारंभ करेगा:
vulhub डेटाबेस पहले से मौजूद है जिसमें example और example_str तालिकाएँ हैं)।सेवा के पूरी तरह से प्रारंभ होने को सुनिश्चित करने के लिए GeoServer के लॉग की जाँच करें:
docker compose logs -f geoserver
जब CONFIGURATION COMPLETE संदेश दिखाई देता है, तो GeoServer तक पहुँचा जा सकता है:
http://localhost:8080/geoserver/web/admin / geoserverकंटेनर बंद करने और संसाधन मुक्त करने के लिए:
# Tắt lab (giữ lại dữ liệu database)
docker compose down
# Tắt lab và xóa sạch toàn bộ dữ liệu volume
docker compose down -v
├── REPORT.md # Báo cáo phân tích kỹ thuật & PoC chi tiết
├── docker-compose.yml # Cấu hình khởi tạo môi trường lab GeoServer + PostgreSQL
├── init.sql # Script khởi tạo database và dữ liệu mẫu cho lab
├── startup.sh # Script cấu hình tự động GeoServer khi khởi chạy container
└── img/ # Thư mục chứa hình ảnh minh chứng PoC