
ओपन-सोर्स वेब सुरक्षा परीक्षण प्लेटफ़ॉर्म: एक ही CLI में प्रॉक्सी, स्कैनर और फ़ज़र। Pennacle Security द्वारा।
वेब सुरक्षा परीक्षण के लिए एक स्क्रिप्टेबल CLI: स्कैनर, प्रॉक्सी, फ़ज़र, प्राधिकरण परीक्षण, WAF विश्लेषण, लिंक-हाइजैक डिटेक्शन और रेकॉन।
जहाँ समकक्ष सशुल्क हैं, वहाँ मुफ़्त - Pennacle Security द्वारा।
हम हर दिन Burp और ZAP का उपयोग करते हैं। हमें लगातार तीन चीज़ें चाहिए थीं जो वे नहीं हैं: एक स्कैनर जिसके विरुद्ध हम CI में स्क्रिप्ट लिख सकें, ऐसे निष्कर्ष जो बताएं कि वे कितने निश्चित हैं, और एक कोडबेस जो इतना छोटा हो कि एक बैठक में पढ़ा जा सके। Summit वही टूल है - v0.5, MIT, एक निर्भरता (requests), खुले में बनाया गया।
पूर्ण दस्तावेज़ीकरण: pennacle-security.github.io/summit
वे क्षमताएँ जो आमतौर पर सशुल्क टूलिंग के पीछे होती हैं, साथ ही स्कैनिंग कोर:
| क्षमता | Summit | सामान्य रास्ता |
|---|---|---|
| टूटे एक्सेस नियंत्रण का परीक्षण (BOLA/IDOR) | summit authorize | Autorize-शैली ऐड-ऑन / सशुल्क वर्कफ़्लो |
| छिपे पैरामीटर की खोज | summit mine | Param Miner-शैली ऐड-ऑन |
| OpenAPI-संचालित स्कैनिंग | summit scan --openapi | ऐड-ऑन |
| WAF फ़िंगरप्रिंटिंग + बायपास प्रोबिंग | अंतर्निहित | आंशिक / ऐड-ऑन |
| टूटे-लिंक हाइजैक डिटेक्शन | अंतर्निहित | सशुल्क एक्सटेंशन |
| SQLi, XSS, रीडायरेक्ट, ट्रैवर्सल, टेकओवर, होस्ट हेडर, CORS | अंतर्निहित | कोर स्कैनर (मुफ़्त) |
| रेकॉन चेन: subfinder -> httpx -> nmap | summit recon | मैन्युअल जोड़-तोड़ |
| रेट लिमिटिंग, रिट्राई, JWT/एनकोडर टूलकिट | अंतर्निहित | ऐड-ऑन / सशुल्क |
| CI-तैयार, कॉन्फ़िडेंस-लेबल वाले निष्कर्ष | पूरा उद्देश्य | सशुल्क ऑटोमेशन |
प्रत्येक निष्कर्ष में एक कॉन्फ़िडेंस लेबल होता है: confirmed (एक देखा गया तथ्य) या potential (एक अनुमानी विधि)। यह अंतर पूरे टूल में व्याप्त है।
git clone https://github.com/pennacle-security/summit.git
cd summit
pip install -e .
Python 3.10+। फिर इसे जानबूझकर कमजोर बनाए गए स्थानीय लक्ष्य के विरुद्ध काम करते हुए देखें:
python examples/vuln_app.py # terminal 1 - the target (127.0.0.1 only)
summit scan http://127.0.0.1:8765 # terminal 2 - the scan
किसी वास्तविक एंगेजमेंट पर अधिक विस्तृत पास इस तरह दिखता है:
summit recon target.com --json recon.json # subdomains -> hosts -> ports
summit scan https://target.com --depth 2 --rate 10 # crawl + all checks
summit scan --openapi api-spec.json # API: scan what the spec admits to
summit authorize https://target.com/admin?user=1 \
--role 'admin=Cookie: session=abc' \
--role 'user=Cookie: session=xyz' # BOLA/IDOR testing
इस पृष्ठ पर प्रत्येक दावा examples/evidence.py द्वारा पुनरुत्पादित किया जाता है - यह डेमो लक्ष्य को लाइव चलाता है, प्रत्येक सुविधा को मापता है, और वास्तविक संख्याओं के साथ PASS/FAIL प्रिंट करता है। CI इसे प्रत्येक पुश पर निष्पादित करता है; जो दावा अब मान्य नहीं रहता, वह बिल्ड को विफल कर देता है।
python examples/evidence.py)[PASS] full scan: 16 seeded check families detected, zero false positives
53 findings in 22.9s (344 requests), missing=none, control link flagged=no, 19 finding(s) carry confidence=confirmed
[PASS] resource takeover fingerprint detected on the target's own 404
Possible AWS S3 resource takeover | AWS S3: 'nosuchbucket'
[PASS] host header injection: marker domain echoed back by the app
Host: summit-host-probe.example -> reflected (reset-link poisoning surface)
[PASS] CORS reflects an arbitrary origin with credentials allowed
ACAO: https://summit-cors-probe.example; ACAC: true
[PASS] WAF bypass: naive filter blocks, tampered payload lands decoded
raw payload -> HTTP 403 (blocked); URL-encoded once -> HTTP 200, payload reflected decoded: True
[PASS] CAPTCHA challenge detected (reported, not solved)
/login -> reCAPTCHA via marker 'recaptcha/api.js'
[PASS] rate limiting: --rate 5 paces 12 requests to ~2.2s; unlimited runs free
12 requests at rate 5 -> 2.20s (theoretical floor: 2.2s); 12 requests unlimited -> 0.02s
[PASS] concurrency on a latency-bearing target: 8 workers vs serial
40 requests x 25ms latency: serial 1.33s -> parallel 0.18s (7.3x speedup)
[PASS] smart prioritizer ranks known-injectable parameters first
probing starts with: [('query', 'search?query=laptop'), ('id', 'user?id=1'), ('url', 'example.com')]
[PASS] toolkit decodes JWT header/payload and states the signature is unverified
signature NOT verified - decoding only
[PASS] update check compares versions numerically (0.3 < 0.10)
is_outdated('0.3.0', '0.10.0') -> True; is_outdated('1.0.0', '0.9.9') -> False
[PASS] broken access control: admin panel served identically to a low-privilege role
verdict=broken; finding=Broken access control (BOLA/IDOR candidate)
[PASS] hidden parameter mining finds the undocumented debug parameter, zero noise
1 finding(s): ['debug'] (all confirmed reflections)
[PASS] openapi-driven scan: spec alone leads the engine to seeded SQLi and XSS
2 spec target(s) scanned -> 10 findings, sqli-error=yes, xss-reflection=yes
[PASS] OS command injection: marker executed and echoed by the server
semicolon: exec marker x2, control marker x1 | CWE-78
[PASS] server-side template injection: {{7*7}} came back as 49
Jinja2/Twig: {{7*7}} -> 49 | CWE-1336
[PASS] CRLF injection: X-Summit-CRLF header materialized in the response
X-Summit-CRLF: injected | CWE-113
[PASS] sensitive file exposure: /.env confirmed by content signature
content signature: 'APP_KEY=' | CWE-538
[PASS] CVE detection: Apache/2.4.49 banner maps to known CVEs
detect_cves('Apache/2.4.49') -> ['CVE-2021-41773', 'CVE-2021-42013']
evidence summary: 19/19 claims verified
डेमो लक्ष्य के विरुद्ध एक वास्तविक स्कैन का दृश्य: