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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
auth-header-trust-rules — Semgrep नियम जो हेडर-ट्रस्ट प्रमाणीकरण बाईपास पैटर्न (CVE-2025-29927 वर्ग) को फ्लैग करते हैं। bk-security.github.io का साथी। | Kitploit
उपकरण/GitHubGitHub/bk-security/auth-header-trust-rules
प्रमाणीकरण और प्राधिकरणस्थैतिक कोड विश्लेषण (SAST)भेद्यता विश्लेषणकोड विश्लेषणवेब सुरक्षालर्निंग और शिक्षा
GitHubbk-security/auth-header-trust-rules

auth-header-trust-rules

Semgrep नियम जो हेडर-ट्रस्ट प्रमाणीकरण बाईपास पैटर्न (CVE-2025-29927 वर्ग) को फ्लैग करते हैं। bk-security.github.io का साथी।

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
साझा करें
रिपॉजिटरी देखें
54 महीने पहलेअभी तक समीक्षित नहीं

auth-header-trust-rules

एक छोटा Semgrep नियम पैक जो उस कोड को फ़्लैग करता है जो प्रमाणीकरण, प्राधिकरण, या विश्वास के निर्णय उन HTTP अनुरोध हेडर के आधार पर लेता है जिन्हें एक हमलावर नियंत्रित कर सकता है।

भेद्यता वर्ग का प्रामाणिक उदाहरण CVE-2025-29927 है: Next.js ने x-middleware-subrequest हेडर पर भरोसा करके यह तय किया कि मिडलवेयर चला या नहीं, और कोई भी इनबाउंड अनुरोध जो एक निर्मित मान प्रदान करता है, मिडलवेयर को पूरी तरह से छोड़ सकता है। यही पैटर्न विभिन्न फ्रेमवर्क और इकोसिस्टम में दोहराया जाता है।

यह पैक दो भाषा परिवारों और बग के तीन उप-वर्गों के लिए नियम प्रदान करता है। यह एक कोड-समीक्षा सहायता के रूप में अभिप्रेत है, न कि पूरी तरह से ट्यून किए गए CI गेट के रूप में। नियम सटीकता की तुलना में रिकॉल को प्राथमिकता देते हैं और सबसे अच्छा इंटरैक्टिव रूप से चलाए जाते हैं, जिसमें एक मानव प्रत्येक निष्कर्ष पर निर्णय लेता है।

भेद्यता वर्ग और इस पैक के पीछे डिज़ाइन विकल्पों के बारे में अधिक विस्तृत लेख के लिए, देखें bk-security.github.io।

नियम सूची

नियमभाषागंभीरताक्या पकड़ता है
nodejs-header-flag-auth-bypassJS / TSचेतावनीहेडर के पढ़ने को फ़्लैग करता है जिसका नाम आंतरिक-प्रोटोकॉल या प्रमाणीकरण-बाईपास उपयोग (x-internal, x-bypass-auth, x-middleware-subrequest, x-admin-override, x-impersonate, आदि) का सुझाव देता है
nodejs-header-as-identityJS / TSचेतावनीपारंपरिक रूप से उपयोगकर्ता पहचान (x-forwarded-user, x-authenticated-user, x-remote-user, आदि) ले जाने के लिए उपयोग किए जाने वाले हेडर के पढ़ने को फ़्लैग करता है
nodejs-forwarded-for-trustJS / TSसूचनाx-forwarded-for, x-real-ip, और समान स्रोत-IP हेडर के पढ़ने को फ़्लैग करता है जो सुरक्षा निर्णयों के लिए आमतौर पर भरोसेमंद होते हैं
python-header-flag-auth-bypassPythonचेतावनीNode.js संस्करण के समान, जिसमें Django-शैली request.META["HTTP_X_*"] एक्सेस शामिल है
python-header-as-identityPythonचेतावनीNode.js संस्करण के समान, Python-शैली
python-forwarded-for-trustPythonसूचनाNode.js संस्करण के समान, Python-शैली

त्वरित आरंभ

Semgrep स्थापित करें:

root@kitploit:~
pip install semgrep

लक्ष्य के विरुद्ध पैक चलाएँ:

root@kitploit:~
semgrep --config /path/to/auth-header-trust-rules/rules /path/to/target

या एक एकल नियम चलाएँ:

root@kitploit:~
semgrep --config /path/to/auth-header-trust-rules/rules/nodejs/header-flag-auth-bypass.yaml /path/to/target

बंडल किए गए फिक्स्चर के विरुद्ध नियमों को मान्य करें:

root@kitploit:~
semgrep --test --config rules/ tests/

अपेक्षित आउटपुट:

root@kitploit:~
6/6: ✓ All tests passed

नियम क्या पकड़ेंगे और क्या नहीं

नियम हेडर नामों की एक क्यूरेटेड सूची पर मेल खाते हैं जो भरोसा करने पर खतरनाक माने जाते हैं। वे सामान्य मामलों को पकड़ लेंगे। वे नहीं पकड़ेंगे:

  • वे फ्रेमवर्क जहाँ हेडर रीड एक सहायक फ़ंक्शन के अंदर छिपा हुआ है जिसके नाम में हेडर स्ट्रिंग नहीं है। एक कस्टम सहायक जिसका नाम getInternalFlag(req) है और जो x-some-novel-name पढ़ता है, नियमों से बच जाएगा।
  • हेडर नाम जो क्यूरेटेड सूची में नहीं हैं। CVE-2025-29927 वर्ग सिद्धांत रूप में किसी भी हेडर नाम का उपयोग कर सकता है; हम x-internal-*, x-trust-*, और x-bypass-* जैसे पैटर्न शामिल करके रिकॉल की दिशा में गलती करते हैं, लेकिन नए नाम फिसल जाएंगे।
  • कुकीज़, क्वेरी पैरामीटर, या अनुरोध निकाय फ़ील्ड पर आधारित प्रमाणीकरण निर्णय। वे समान भेद्यता वर्ग हैं लेकिन अपने स्वयं के नियमों की आवश्यकता है।
  • हेडर की अनुपस्थिति पर आधारित प्रमाणीकरण निर्णय। कुछ एप्लिकेशन प्रमाणीकरण जांच को तब छोड़ देते हैं जब एक हेडर मौजूद नहीं होता है (एक गलत कॉन्फ़िगर किया गया अनुमति सूची पैटर्न)। वर्तमान नियम पढ़ें-और-उपयोग करें, अनुपस्थिति-आधारित नहीं हैं।

किसी विशिष्ट कोडबेस के लिए पैक का विस्तार करते समय, सबसे उच्च-मूल्य वाले परिवर्धन आमतौर पर फ्रेमवर्क-विशिष्ट सहायक-फ़ंक्शन पैटर्न होते हैं। यदि किसी कोडबेस में isInternalRequest(req) सहायक है, तो इसे पकड़ने वाला नियम YAML की एक पंक्ति है।

एक नियम जोड़ना

  1. rules/<lang>/<name>.yaml के अंतर्गत नियम बनाएँ।
  2. tests/<lang>/<name>.<ext> के अंतर्गत एक परीक्षण फिक्स्चर बनाएँ जिसमें सकारात्मक उदाहरण # ruleid: <rule-id> से एनोटेट हों और नकारात्मक उदाहरण # ok: <rule-id> से एनोटेट हों।
  3. semgrep --test --config rules/ tests/ चलाएँ। नया नियम और फिक्स्चर स्वचालित रूप से उठा लिए जाएंगे; परिवर्तन सबमिट करने से पहले परीक्षण पास होने चाहिए।

लाइसेंस

MIT.

लेखक

ब्रूस कांग। सहयोगी ब्लॉग पोस्ट का स्रोत यहाँ स्थित है bk-security.github.io।

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