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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2026-29000-PoC — CVE-2026-29000 - pac4j-jwt (< 4.5.9 / < 5.7.9 / < 6.3.3) JwtAuthenticator प्रमाणीकरण बाइपास PoC | Kitploit
उपकरण/GitHubGitHub/dua2z3rr/cve-2026-29000-poc
पेलोड जनरेशनभेद्यता विश्लेषणशोषणवेब एप्लिकेशन शोषणCTFपेनिट्रेशन टेस्टिंगप्रमाणीकरणलर्निंग और शिक्षा
GitHubdua2z3rr/cve-2026-29000-poc

CVE-2026-29000-PoC

CVE-2026-29000 - pac4j-jwt (< 4.5.9 / < 5.7.9 / < 6.3.3) JwtAuthenticator प्रमाणीकरण बाइपास PoC

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

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

सभी देखें →

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

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

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

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

CVE-2026-29000 — pac4j-jwt JwtAuthenticator प्रमाणीकरण बाइपास PoC

CVE-2026-29000 के लिए एक प्रूफ-ऑफ-कॉन्सेप्ट, जो pac4j-jwt JwtAuthenticator घटक में एक प्रमाणीकरण बाइपास है (CVSS 10.0, गंभीर)।

यह स्क्रिप्ट एक ऐसा टोकन बनाती है जो किसी भी उपयोगकर्ता और किसी भी भूमिका का प्रतिरूपण करता है — बिना किसी रहस्य को जाने — जब तक लक्ष्य अपनी RSA सार्वजनिक कुंजी को उजागर करता है।

[!WARNING] यह उपकरण केवल शैक्षिक उद्देश्यों और अधिकृत सुरक्षा परीक्षण के लिए प्रदान किया गया है। इसे हैक द बॉक्स मशीन "Principal" को हल करने के लिए लिखा गया था, और डिफ़ॉल्ट (iss, role, kid) उस बॉक्स के लिए अनुकूलित हैं। इसका उपयोग केवल उन सिस्टम के खिलाफ करें जिनके आप मालिक हैं या जिनका परीक्षण करने के लिए आप स्पष्ट रूप से अधिकृत हैं।


भेद्यता

pac4j-jwt संस्करण < 4.5.9, < 5.7.9, और < 6.3.3 में JwtAuthenticator में एक तर्क दोष है जब यह एन्क्रिप्टेड JWT (JWE) को संसाधित करता है।

जब JwtAuthenticator एक JWE को डिक्रिप्ट करता है, तो यह आंतरिक टोकन को SignedJWT के रूप में पार्स करने का प्रयास करता है। यदि आंतरिक टोकन एक अहस्ताक्षरित PlainJWT (alg: none) है, तो SignedJWT ऑब्जेक्ट null वापस आता है और, तर्क त्रुटि के कारण, हस्ताक्षर-सत्यापन पथ पूरी तरह से छोड़ दिया जाता है। प्रमाणक तब अप्रमाणित दावों से सीधे एक उपयोगकर्ता प्रोफ़ाइल बनाता है।

दूसरे शब्दों में, बाहरी JWE एन्क्रिप्शन — जिसके लिए केवल सर्वर की सार्वजनिक कुंजी की आवश्यकता होती है — प्रामाणिकता के प्रमाण के लिए गलत समझा जाता है, इसलिए कोई भी हमलावर जो सार्वजनिक कुंजी पढ़ सकता है, वह पूरी तरह से विश्वसनीय टोकन बना सकता है।

आक्रमण श्रृंखला

  1. लक्ष्य की RSA सार्वजनिक कुंजी को इसके JWKS एंडपॉइंट (जैसे /api/auth/jwks) से प्राप्त करें।
  2. हमलावर द्वारा चुने गए दावों (sub, role, iss, …) के साथ एक अहस्ताक्षरित PlainJWT (alg: none) बनाएं।
  3. उस PlainJWT को लक्ष्य की सार्वजनिक कुंजी पर एन्क्रिप्टेड JWE लिफाफे में लपेटें।
  4. परिणामी कॉम्पैक्ट JWE को Bearer टोकन के रूप में भेजें। कमजोर JwtAuthenticator इसे डिक्रिप्ट करता है, हस्ताक्षर सत्यापन छोड़ता है, और नकली दावों पर भरोसा करता है।

आवश्यकताएँ

  • Python 3.8+
  • Dependencies from requirements.txt:
root@kitploit:~
pip install -r requirements.txt

(requests, jwcrypto, cryptography)


उपयोग

root@kitploit:~
python3 exploit.py -u <username> [options]

विकल्प

आपको या तो --target (नेटवर्क पर JWKS प्राप्त करने के लिए) या --jwks-file (इसे स्थानीय रूप से प्रदान करने के लिए) प्रदान करना होगा।

उदाहरण

लक्ष्य से सार्वजनिक कुंजी प्राप्त करके एक व्यवस्थापक टोकन बनाएं और इसे stdout पर प्रिंट करें:

root@kitploit:~
python3 exploit.py -t http://target:8080 -u admin

एक टोकन बनाएं, फिर स्वचालित रूप से एक संरक्षित एंडपॉइंट के खिलाफ इसका परीक्षण करें:

root@kitploit:~
python3 exploit.py -t http://target:8080 -u admin \
    --verify-endpoint /api/settings -v

स्थानीय रूप से सहेजे गए JWKS का उपयोग करें और टोकन को एक फ़ाइल में सहेजें:

root@kitploit:~
python3 exploit.py --jwks-file jwks.json -u admin -o token.jwe

उपचार

org.pac4j:pac4j-jwt को पैच किए गए रिलीज़ में अपग्रेड करें:

  • 4.x लाइन → 4.5.9 या नया
  • 5.x लाइन → 5.7.9 या नया
  • 6.x लाइन → 6.3.3 या नया

लाइसेंस

MIT License के तहत जारी किया गया।

टूल डाउनलोड करें
फ़्लैगविवरणडिफ़ॉल्ट
-t, --targetलक्ष्य का आधार URL (जैसे http://host:8080)—
--jwks-urlJWKS एंडपॉइंट पथ/api/auth/jwks
--jwks-file--target से लाने के बजाय स्थानीय फ़ाइल से JWKS लोड करें—
-u, --usernamesub दावे के लिए मान (आवश्यक)—
--rolerole दावे के लिए मानROLE_ADMIN
--ississ दावे के लिए मानprincipal-platform
--expसेकंड में टोकन वैधता3600
--verify-endpointनकली टोकन का परीक्षण करने के लिए संरक्षित एंडपॉइंट (जैसे /api/settings)—
-k, --insecureTLS प्रमाणपत्र सत्यापन अक्षम करेंoff
-o, --outputनकली JWE को stdout के बजाय फ़ाइल में लिखेंstdout
-v, --verboseनकली JWT पेलोड को stderr पर प्रिंट करेंoff