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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
hello-ReGrade-security — उस भेद्यता को खोजें जिसे पकड़ने के लिए आपके टेस्ट कभी लिखे ही नहीं गए थे। ReGrade का एक डेमो जो CVE-2023-5968 को मॉडल करता है: किसी ऐप की उसी से तुलना करके पासवर्ड-हैश लीक को पकड़ें। | Kitploit
उपकरण/GitHubGitHub/curtail-inc/hello-regrade-security
गतिशील विश्लेषण (सैंडबॉक्सिंग)पासवर्ड हमलेभेद्यता विश्लेषणएपीआई सुरक्षा परीक्षणवेब सुरक्षाक्रिप्टोग्राफीपेनिट्रेशन टेस्टिंगलर्निंग और शिक्षालैब और अभ्यास

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
GitHubcurtail-inc/hello-regrade-security

hello-ReGrade-security

उस भेद्यता को खोजें जिसे पकड़ने के लिए आपके टेस्ट कभी लिखे ही नहीं गए थे। ReGrade का एक डेमो जो CVE-2023-5968 को मॉडल करता है: किसी ऐप की उसी से तुलना करके पासवर्ड-हैश लीक को पकड़ें।

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

hello-ReGrade-security

ReGrade के साथ ज़ीरो-डे खोज का एक व्यावहारिक डेमो। आप एक साधारण टेस्ट सूट को ReGrade पर इंगित करेंगे, उसे एक छोटी सेवा के विरुद्ध रिकॉर्ड करेंगे, उसे उसी सेवा की दूसरी कॉपी के विरुद्ध रीप्ले करेंगे, और Claude Code + ReGrade MCP टूल्स का उपयोग करके पासवर्ड-हैश लीक सतह पर लाएँगे — एक ऐसी भेद्यता जिसे खोजने के लिए कोई टेस्ट नहीं लिखा गया था।

यह एक वास्तविक बग का मॉडल है: CVE-2023-5968, जहाँ एक सहयोग प्लेटफ़ॉर्म का यूज़रनेम-अपडेट एंडपॉइंट पूरा यूज़र ऑब्जेक्ट bcrypt पासवर्ड हैश सहित लौटाता था। यह 2017 में शिप हुआ और 7 वर्षों के टेस्ट, समीक्षाओं और ऑडिट से बच गया। (Curtail का लेख.)

ट्विस्ट यह है: कोई v2 नहीं है। आप ऐप की तुलना उसी से करते हैं। एक नया इंस्टेंस अपने पासवर्ड को अलग-अलग bcrypt सॉल्ट के साथ हैश करता है, इसलिए लीक हुए हैश के मान दोनों कॉपियों के बीच भिन्न होते हैं — और ReGrade उसी एंट्रॉपी को फ़्लैग करता है। भेद्यता उस कोड में निष्क्रिय है जिसे आप पहले ही शिप कर चुके हैं; इसे खोजने के लिए किसी वर्जन परिवर्तन की आवश्यकता नहीं है।

आपको क्या चाहिए

  • Docker (डेमो सेवा के लिए) और Python (ट्रैफ़िक टेस्ट सूट चलाने के लिए)।
  • एक ReGrade खाता + API कुंजी — https://app.regrade.curtail.com पर साइन अप करें, regrade सेंसर को से इंस्टॉल करें, और (या ) सेट करें।
https://app.regrade.curtail.com/downloads
REGRADE_API_KEY
~/.regrade/key
  • Claude Code ReGrade प्लगइन के साथ: claude plugin marketplace add https://app.regrade.curtail.com/downloads/latest/marketplace.json फिर claude plugin install regrade@regrade --scope user, और इसे एक बार कनेक्ट करें (/mcp, अपनी कुंजी के समान खाते में साइन इन करके)।
  • डेमो सेवा

    यूज़र और चैनल वाला एक छोटा "टीम-चैट" API (app/store.py)। Docker Compose दो समान कॉपियाँ चलाता है — समान इमेज, समान कोड, कोई वर्जन फ़्लैग नहीं:

    • instance-a http://localhost:8001 पर — आप इसके विरुद्ध रिकॉर्ड करते हैं।
    • instance-b http://localhost:8002 पर — आप इसके विरुद्ध रीप्ले करते हैं।

    एक एंडपॉइंट में एक छुपाई गई खामी है:

    EndpointBehavior
    GET /users/<id>Sanitized — पासवर्ड कभी नहीं लौटाता। साफ़ बेसलाइन।
    PATCH /users/<id> (rename)बग — पूरा यूज़र ऑब्जेक्ट bcrypt password हैश सहित लौटाता है। एक गायब sanitize() कॉल, बिल्कुल CVE-2023-5968 की तरह।

    पासवर्ड बूट के समय bcrypt-हैश होते हैं, इसलिए instance-a और instance-b एक ही यूज़र के लिए अलग-अलग हैश रखते हैं।

    root@kitploit:~
    git clone https://github.com/Curtail-Inc/hello-ReGrade-security
    cd hello-ReGrade-security
    docker compose up -d --build
    

    1. रिकॉर्ड करें — अपने मौजूदा टेस्ट को ReGrade पर इंगित करें

    traffic/test_api.py एक सामान्य फ़ंक्शनल टेस्ट सूट है: लॉगिन, यूज़र पढ़ना, यूज़र का नाम बदलना, चैनल सूचीबद्ध करना। यह CRUD व्यवहार को सत्यापित करता है और कोई सुरक्षा अभिकथन नहीं बनाता — यह कभी जाँच नहीं करता कि password लीक होता है या नहीं। (ऐसा क्यों करे? किसी को नहीं पता था कि बग मौजूद है।)

    instance-a के सामने सेंसर प्रॉक्सी शुरू करें:

    root@kitploit:~
    regrade proxy --target http://localhost:8001 --port 19870
    

    दूसरे टर्मिनल में, वही टेस्ट सूट चलाएँ — बस BASE_URL को प्रॉक्सी पर इंगित करें। यही एकमात्र बदलाव है:

    root@kitploit:~
    BASE_URL=http://localhost:19870 python -m pytest traffic/test_api.py
    

    सभी टेस्ट बिना किसी बदलाव के पास हो जाते हैं। प्रॉक्सी रोकें (Ctrl-C); रिकॉर्डिंग अपलोड होकर एक Recording ID: <uuid> प्रिंट करती है — इसे नोट कर लें।

    2. instance-b के विरुद्ध रीप्ले करें

    root@kitploit:~
    regrade replay --rec-id <RECORDING_ID> --target http://localhost:8002
    

    दोनों ओर समान कोड — एकमात्र अंतर वे मान हैं जो एक नया इंस्टेंस उत्पन्न करता है।

    3. Claude Code में लीक खोजें

    इस रिपो को Claude Code में खोलें और उसे रीप्ले के माध्यम से आपका मार्गदर्शन करने के लिए कहें। इस रिपो की CLAUDE.md द्वारा निर्देशित होकर, यह:

    • summarize_deltas चलाएगा → कई डेल्टा: लॉगिन token, चैनल created_at टाइमस्टैम्प, और — चुपचाप उनके बीच — $.password।
    • प्रोफ़ाइल नियमों के साथ शोर कम करेगा (पुन: प्रयोज्य, सही मार्ग):
      • सत्र $.token के लिए create_id_mapping (एक गतिशील ID, हटाने योग्य शोर नहीं),
      • $.channels[*].created_at के लिए create_filter_rule DROP (एक प्रति-बूट टाइमस्टैम्प),
      • apply_profile_to_replay, फिर query_deltas(unlabeled_only=true) — तब तक दोहराएँ जब तक केवल एक डेल्टा शेष न रह जाए।
    • खुलासा: बचा हुआ डेल्टा $.password है — एक रिस्पॉन्स बॉडी में bcrypt हैश। एक CVE-श्रेणी का लीक, जो शून्य पूर्व ज्ञान और शून्य सुरक्षा अभिकथनों के साथ पाया गया।

    4. यह अलग क्यों है

    सत्र टोकन और पासवर्ड हैश दोनों दोनों रनों के बीच भिन्न होते हैं — दोनों उच्च-एंट्रॉपी स्ट्रिंग हैं जो हर बार बदलती हैं। एक वैध शोर है जिसे आप मैप करते हैं; दूसरा उल्लंघन (breach) है। आप उन्हें "यह बदल गया" कहकर अलग नहीं बता सकते — आपको देखना होगा कि क्या बदला। हर उच्च-एंट्रॉपी फ़ील्ड को शोर के रूप में फ़िल्टर कर देते, तो आपने भेद्यता छिपा दी होती।

    यही सबक है: ReGrade अपेक्षाओं को मान्य नहीं करता, यह व्यवहार की तुलना करता है — इसलिए यह उन बगों को सतह पर ला सकता है जिनके लिए किसी ने टेस्ट लिखने के बारे में नहीं सोचा।

    लीक कैसे काम करता है

    app/store.py एक फ़ाइल है। GET पथ sanitize() को कॉल करते हैं; PATCH पथ ऐसा करना भूल जाता है। इसे ReGrade के साथ खोजने के बाद देखें — मुद्दा यह है कि ReGrade ने इसे अकेले ट्रैफ़िक से, ऐप की उसकी स्वयं से तुलना करके पकड़ा।

    लाइसेंस

    Apache-2.0.

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