OWASP वेब सुरक्षा परीक्षण गाइड RAG सिस्टम ChromaDB, Claude Code के लिए MCP के साथ
एक रिट्रीवल-ऑगमेंटेड जनरेशन (RAG) प्रणाली जो OWASP वेब सुरक्षा परीक्षण मार्गदर्शिका (WSTG) को एक वेक्टर डेटाबेस में अनुक्रमित करती है, और REST API तथा MCP (मॉडल कॉन्टेक्स्ट प्रोटोकॉल) के माध्यम से Claude Code एकीकरण हेतु सुरक्षा परीक्षण विधियों तक तुरंत पहुँच प्रदान करती है।
WSTG-INPV-05) द्वारा पूर्ण परीक्षण मामले प्राप्त करें| श्रेणी | WSTG ID | विवरण |
|---|
| Information Gathering | WSTG-INFO | फिंगरप्रिंटिंग, गणना, मैपिंग |
| Configuration | WSTG-CONF | सर्वर/प्लेटफॉर्म विन्यास परीक्षण |
| Identity Management | WSTG-IDNT | उपयोगकर्ता पंजीकरण, खाता प्रावधान |
| Authentication | WSTG-ATHN | लॉगिन, पासवर्ड नीति, MFA परीक्षण |
| Authorization | WSTG-ATHZ | विशेषाधिकार वृद्धि, IDOR, पहुँच नियंत्रण |
| Session Management | WSTG-SESS | सत्र टोकन्स, कुकीज़, फिक्सेशन |
| Input Validation | WSTG-INPV | SQLi, XSS, कमांड इंजेक्शन, SSTI |
| Error Handling | WSTG-ERRH | त्रुटि संदेश, स्टैक ट्रेसेज़ |
| Cryptography | WSTG-CRYP | TLS, एन्क्रिप्शन, हैशिंग |
| Business Logic | WSTG-BUSL | वर्कफ़्लो बायपास, फ़ाइल अपलोड |
| Client-Side | WSTG-CLNT | DOM XSS, क्लिकजैकिंग, WebSockets |
| API Testing | WSTG-APIT | REST, GraphQL, API सुरक्षा |
cd RAG_runner
pip install -r requirements.txt
python3 build_database.py
यह निम्नलिखित कार्य करेगा:
python3 -m server.http_server
सर्वर http://localhost:5004 पर चलता है
# Health check
curl http://localhost:5004/health
# Search for SQL injection testing
curl -X POST http://localhost:5004/search \
-H "Content-Type: application/json" \
-d '{"query": "SQL injection testing methodology"}'
# Get specific WSTG test case
curl http://localhost:5004/wstg/WSTG-INPV-05
| एंडपॉइंट | विधि | विवरण |
|---|---|---|
/health | GET | स्वास्थ्य जाँच |
/info | GET | डेटाबेस सांख्यिकी |
/list | GET | सभी दस्तावेज़ सूचीबद्ध करें |
/categories | GET | श्रेणियाँ और WSTG ID सूचीबद्ध करें |
/doc/{id} | GET | ID द्वारा दस्तावेज़ प्राप्त करें |
/wstg/{id} | GET | WSTG ID के लिए सभी चंक प्राप्त करें |
/search | POST | सिमैंटिक खोज |
{
"query": "SQL injection testing",
"n_results": 5,
"category": "input_validation",
"wstg_id": "WSTG-INPV-05"
}
~/.claude.json में जोड़ें:
{
"mcpServers": {
"owasp-wstg-rag": {
"command": "python3",
"args": ["/path/to/OWASP_WSTG_Rag/RAG_runner/server/mcp_client.py"],
"env": {
"WSTG_RAG_URL": "http://localhost:5004"
}
}
}
}
| उपकरण | विवरण |
|---|---|
search_wstg | परीक्षण विधियों के लिए WSTG खोजें |
search_test_methodology | कैसे-करें परीक्षण मार्गदर्शिकाएँ खोजें |
search_test_objectives | परीक्षण उद्देश्य खोजें |
get_wstg_test_case | WSTG ID द्वारा पूर्ण परीक्षण मामला प्राप्त करें |
get_wstg_document | ID द्वारा दस्तावेज़ प्राप्त करें |
list_wstg_categories | सभी श्रेणियाँ और WSTG ID सूचीबद्ध करें |
wstg_health | स्वास्थ्य जाँच |
wstg_info | डेटाबेस सांख्यिकी |
# Search for SQL injection testing methodology
search_wstg("SQL injection testing methodology")
# Get specific test case
get_wstg_test_case("WSTG-INPV-05")
# Search within a category
search_wstg("authentication bypass", category_filter="authentication")
# Get test objectives for IDOR
search_test_objectives("IDOR insecure direct object reference")
OWASP_WSTG_Rag/
├── README.md
├── CLAUDE.md # Claude Code प्रोजेक्ट गाइड
├── raw_data/ # OWASP WSTG HTML स्रोत फ़ाइलें
│ ├── 01-Information_Gathering/
│ ├── 02-Configuration_and_Deployment_Management_Testing/
│ ├── 03-Identity_Management_Testing/
│ ├── 04-Authentication_Testing/
│ ├── 05-Authorization_Testing/
│ ├── 06-Session_Management_Testing/
│ ├── 07-Input_Validation_Testing/
│ ├── 08-Testing_for_Error_Handling/
│ ├── 09-Testing_for_Weak_Cryptography/
│ ├── 10-Business_Logic_Testing/
│ ├── 11-Client-side_Testing/
│ └── 12-API_Testing/
└── RAG_runner/
├── build_database.py # मुख्य निर्माण पाइपलाइन
├── requirements.txt
├── parsers/
│ └── wstg_parser.py # WSTG के लिए HTML पार्सर
├── chunking/
│ └── chunker.py # सिमैंटिक चंकिंग
├── server/
│ ├── vector_store.py # ChromaDB रैपर
│ ├── http_server.py # REST API सर्वर
│ └── mcp_client.py # Claude Code के लिए MCP उपकरण
└── data/
├── processed/ # मध्यवर्ती JSON फ़ाइलें
└── chroma_db/ # वेक्टर डेटाबेस
┌─────────────────────────────────────────────────────────────────┐
│ OWASP WSTG HTML Files │
│ (raw_data/*.html) │
└────────────────────────────┬────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────┐
│ wstg_parser.py │
│ Parse HTML → Structured JSON │
└────────────────────────────┬────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────┐
│ chunker.py │
│ Create Semantic Chunks for RAG │
└────────────────────────────┬────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────┐
│ ChromaDB Vector Store │
│ (data/chroma_db/) │
└────────────────────────────┬────────────────────────────────────┘
│
┌──────────────┴──────────────┐
▼ ▼
┌──────────────────────────┐ ┌──────────────────────────┐
│ http_server.py │ │ mcp_client.py │
│ REST API :5004 │ │ MCP for Claude Code │
│ │ │ │
│ GET /health │ │ search_wstg() │
│ GET /info │ │ get_wstg_test_case() │
│ GET /wstg/{id} │ │ search_test_methodology │
│ POST /search │ │ list_wstg_categories() │
└──────────────────────────┘ └──────────────────────────┘
सुरक्षा मूल्यांकन के दौरान OWASP परीक्षण विधियों तक तत्काल पहुँच के लिए Claude Code के साथ एकीकृत करें:
User: "How do I test for SQL injection?"
Claude: [Queries WSTG RAG]
→ Returns WSTG-INPV-05 methodology with:
- Test objectives
- Step-by-step testing procedures
- Example payloads
- Tools to use
स्वचालित सुरक्षा पाइपलाइनों में WSTG विधियों को एकीकृत करने के लिए REST API का उपयोग करें:
import requests
# Get testing methodology for current test
response = requests.post('http://localhost:5004/search', json={
'query': 'session fixation testing',
'n_results': 3
})
methodology = response.json()['results']
प्रशिक्षण या CTF चुनौतियों के दौरान सुरक्षा परीक्षण विधियों के लिए त्वरित संदर्भ।
यह प्रोजेक्ट OWASP वेब सुरक्षा परीक्षण मार्गदर्शिका की सामग्री का उपयोग करता है, जो Creative Commons Attribution-ShareAlike 4.0 के अंतर्गत लाइसेंस प्राप्त है।