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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2026-29000-pac4j-jwt-auth-bypass — प्रमाण-अवधारणा (PoC) एक प्रमाणीकरण बायपास भेद्यता के लिए जो pac4j-jwt के साथ JWE (JSON Web Encryption) का उपयोग करने वाले अनुप्रयोगों को प्रभावित करती है। | Kitploit
उपकरण/GitHubGitHub/ptechamanja/cve-2026-29000-pac4j-jwt-auth-bypass
भेद्यता विश्लेषणशोषणवेब सुरक्षाCTFपेनिट्रेशन टेस्टिंगप्रमाणीकरण
GitHubptechamanja/cve-2026-29000-pac4j-jwt-auth-bypass

CVE-2026-29000-pac4j-jwt-auth-bypass

प्रमाण-अवधारणा (PoC) एक प्रमाणीकरण बायपास भेद्यता के लिए जो pac4j-jwt के साथ JWE (JSON Web Encryption) का उपयोग करने वाले अनुप्रयोगों को प्रभावित करती है।

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

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

सभी देखें →

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

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

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

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

HTB Principal — CVE-2026-29000 राइटअप

अस्वीकरण: यह एक्सप्लॉइट केवल सेवानिवृत्त HackTheBox मशीन "Principal" के लिए विकसित किया गया था। केवल शैक्षिक उद्देश्यों के लिए। उन सिस्टमों के विरुद्ध उपयोग न करें जिनके स्वामी आप नहीं हैं या जिनके परीक्षण की स्पष्ट अनुमति आपके पास नहीं है।

मशीन जानकारी

फ़ील्डविवरण
नामPrincipal
प्लेटफ़ॉर्मHackTheBox
कठिनाई—
स्थितिसेवानिवृत्त

भेद्यता — CVE-2026-29000

प्रभावित लाइब्रेरी: pac4j-jwt < 4.5.9 / 5.7.9 / 6.3.3
गंभीरता: क्रिटिकल
प्रकार: प्रमाणीकरण बायपास

सारांश

JwtAuthenticator में एक लॉजिक दोष एक हमलावर को एक अहस्ताक्षरित PlainJWT (alg=none) को JWE (एन्क्रिप्टेड JWT) के अंदर लपेटकर प्रमाणीकरण को बायपास करने की अनुमति देता है।

जब सर्वर JWE को डिक्रिप्ट करता है, तो यह आंतरिक टोकन को SignedJWT के रूप में पार्स करने का प्रयास करता है। क्योंकि आंतरिक टोकन एक PlainJWT है, SignedJWT ऑब्जेक्ट null होता है और हस्ताक्षर सत्यापन पूरी तरह से छोड़ दिया जाता है। सर्वर फिर असत्यापित दावों से एक उपयोगकर्ता प्रोफ़ाइल बनाता है — जिससे किसी भी उपयोगकर्ता, जिसमें एडमिन भी शामिल हैं, का पूर्ण प्रतिरूपण संभव हो जाता है।

हमले की आवश्यकताएँ

  • सर्वर की RSA सार्वजनिक कुंजी (अक्सर JWKS एंडपॉइंट के माध्यम से उजागर)
  • आंतरिक दावों के नामों का ज्ञान (जैसे roles, subject प्रारूप)

एक्सप्लॉइट प्रवाह

root@kitploit:~
दुर्भावनापूर्ण दावे बनाएं (sub=admin, role=ROLE_ADMIN)
        ↓
अहस्ताक्षरित PlainJWT बनाएं (alg=none)
        ↓
सर्वर की RSA सार्वजनिक कुंजी का उपयोग करके PlainJWT को JWE के अंदर लपेटें
        ↓
सर्वर को JWE टोकन सबमिट करें
        ↓
सर्वर JWE डिक्रिप्ट करता है → PlainJWT पाता है → हस्ताक्षर जांच छोड़ता है → पहुंच प्रदान करता है

एक्सप्लॉइट

exploit.py देखें


समाधान

pac4j-jwt को पैच किए गए संस्करण में अपग्रेड करें:

  • 4.5.9 या बाद का
  • 5.7.9 या बाद का
  • 6.3.3 या बाद का

या JWE डिक्रिप्शन के बाद PlainJWT आंतरिक टोकन को स्पष्ट रूप से अस्वीकार करें:

root@kitploit:~
if (jwt instanceof PlainJWT) {
    throw new CredentialsException("PlainJWT not allowed inside JWE");
}

⚙️ हमले का प्रवाह

  1. सार्वजनिक कुंजी प्राप्त करें:
root@kitploit:~

/api/auth/jwks

  1. दुर्भावनापूर्ण JWT बनाएं:
  • alg: none
  • एडमिन भूमिका इंजेक्ट करें
  1. सार्वजनिक कुंजी का उपयोग करके JWE के अंदर लपेटें

  2. इस रूप में भेजें:

root@kitploit:~

Authorization: Bearer <token>

  1. अनधिकृत पहुंच प्राप्त करें

🛠️ PoC उपयोग

निर्भरताएँ स्थापित करें

root@kitploit:~
pip install jwcrypto requests

एक्सप्लॉइट चलाएं

root@kitploit:~
python3 poc.py \
--jwks-url http://target/api/auth/jwks \
--target http://target/api/dashboard

📤 उदाहरण आउटपुट

root@kitploit:~
[+] Forged Token:
eyJhbGciOiJSU0EtT0FFUC0yNTYi...

[+] Browser Injection:
sessionStorage.setItem("auth_token", "eyJhbGciOiJSU0EtT0FFUC0yNTYi...")

[+] Status: 200
{"user":{"username":"admin","role":"ROLE_ADMIN"}}

🌐 ब्राउज़र एक्सप्लॉइटेशन

DevTools → Console खोलें:

root@kitploit:~
sessionStorage.setItem("auth_token", "<PASTE_TOKEN_HERE>")

फिर नेविगेट करें:

root@kitploit:~
/dashboard

🔥 प्रभाव

  • पूर्ण प्रमाणीकरण बायपास
  • एडमिन तक विशेषाधिकार वृद्धि
  • अनधिकृत API पहुंच
  • संभावित पार्श्व गति

🛡️ शमन

  • डिक्रिप्शन के बाद हमेशा JWT हस्ताक्षर (JWS) सत्यापित करें
  • alg: none वाले टोकन अस्वीकार करें
  • सख्त टोकन सत्यापन नीतियाँ लागू करें
  • विश्वास के लिए केवल एन्क्रिप्शन पर निर्भर न रहें

👤 लेखक

  • Doomsknight

संदर्भ

  • pac4j सुरक्षा सलाह
  • HackTheBox
टूल डाउनलोड करें