Web API Pentesting
Reading time: 5 minutes
tip
AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE)
GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE)
HackTricks का समर्थन करें
- सदस्यता योजनाएँ देखें!
- हमारे 💬 Discord समूह या टेलीग्राम समूह में शामिल हों या हमारे Twitter 🐦 @hacktricks_live** का पालन करें।**
- हैकिंग ट्रिक्स साझा करें और HackTricks और HackTricks Cloud गिटहब रिपोजिटरी में PRs सबमिट करें।
API Pentesting Methodology Summary
APIs का pentesting कमजोरियों को उजागर करने के लिए एक संरचित दृष्टिकोण शामिल करता है। यह गाइड एक व्यापक पद्धति को संक्षेपित करता है, व्यावहारिक तकनीकों और उपकरणों पर जोर देता है।
Understanding API Types
- SOAP/XML Web Services: दस्तावेज़ीकरण के लिए WSDL प्रारूप का उपयोग करें, जो आमतौर पर
?wsdl
पथों पर पाया जाता है। SOAPUI और WSDLer (Burp Suite Extension) जैसे उपकरण अनुरोधों को पार्स और उत्पन्न करने में सहायक होते हैं। उदाहरण दस्तावेज़ीकरण DNE Online पर उपलब्ध है। - REST APIs (JSON): दस्तावेज़ीकरण अक्सर WADL फ़ाइलों में आता है, फिर भी Swagger UI जैसे उपकरण इंटरैक्शन के लिए एक अधिक उपयोगकर्ता-अनुकूल इंटरफ़ेस प्रदान करते हैं। Postman उदाहरण अनुरोध बनाने और प्रबंधित करने के लिए एक मूल्यवान उपकरण है।
- GraphQL: APIs के लिए एक क्वेरी भाषा जो आपके API में डेटा का एक पूर्ण और समझने योग्य विवरण प्रदान करती है।
Practice Labs
- VAmPI: हाथों-हाथ अभ्यास के लिए जानबूझकर कमजोर API, OWASP शीर्ष 10 API कमजोरियों को कवर करता है।
Effective Tricks for API Pentesting
- SOAP/XML Vulnerabilities: XXE कमजोरियों का अन्वेषण करें, हालांकि DTD घोषणाएँ अक्सर प्रतिबंधित होती हैं। यदि XML मान्य रहता है तो CDATA टैग पेलोड सम्मिलन की अनुमति दे सकते हैं।
- Privilege Escalation: अनधिकृत पहुंच की संभावनाओं की पहचान के लिए विभिन्न विशेषाधिकार स्तरों के साथ एंडपॉइंट्स का परीक्षण करें।
- CORS Misconfigurations: प्रमाणित सत्रों से CSRF हमलों के माध्यम से संभावित शोषण के लिए CORS सेटिंग्स की जांच करें।
- Endpoint Discovery: छिपे हुए एंडपॉइंट्स को खोजने के लिए API पैटर्न का लाभ उठाएं। फज़र्स जैसे उपकरण इस प्रक्रिया को स्वचालित कर सकते हैं।
- Parameter Tampering: अनधिकृत डेटा या कार्यक्षमताओं तक पहुंचने के लिए अनुरोधों में पैरामीटर जोड़ने या बदलने का प्रयोग करें।
- HTTP Method Testing: अप्रत्याशित व्यवहार या जानकारी के खुलासे को उजागर करने के लिए अनुरोध विधियों (GET, POST, PUT, DELETE, PATCH) में भिन्नता लाएं।
- Content-Type Manipulation: पार्सिंग मुद्दों या कमजोरियों के परीक्षण के लिए विभिन्न सामग्री प्रकारों (x-www-form-urlencoded, application/xml, application/json) के बीच स्विच करें।
- Advanced Parameter Techniques: JSON पेलोड में अप्रत्याशित डेटा प्रकारों के साथ परीक्षण करें या XXE इंजेक्शन के लिए XML डेटा के साथ खेलें। व्यापक परीक्षण के लिए पैरामीटर प्रदूषण और वाइल्डकार्ड वर्णों का भी प्रयास करें।
- Version Testing: पुराने API संस्करण हमलों के प्रति अधिक संवेदनशील हो सकते हैं। हमेशा कई API संस्करणों के खिलाफ जांचें और परीक्षण करें।
Tools and Resources for API Pentesting
- kiterunner: API एंडपॉइंट्स खोजने के लिए उत्कृष्ट। लक्षित APIs के खिलाफ पथों और पैरामीटरों को स्कैन और ब्रूट फोर्स करने के लिए इसका उपयोग करें।
bash
kr scan https://domain.com/api/ -w routes-large.kite -x 20
kr scan https://domain.com/api/ -A=apiroutes-220828 -x 20
kr brute https://domain.com/api/ -A=raft-large-words -x 20 -d=0
kr brute https://domain.com/api/ -w /tmp/lang-english.txt -x 20 -d=0
- https://github.com/BishopFox/sj: sj एक कमांड लाइन टूल है जिसे exposed Swagger/OpenAPI definition files के ऑडिट में मदद करने के लिए डिज़ाइन किया गया है, जो संबंधित API endpoints के लिए कमजोर प्रमाणीकरण की जांच करता है। यह मैनुअल कमजोरियों के परीक्षण के लिए कमांड टेम्पलेट भी प्रदान करता है।
- अतिरिक्त टूल जैसे automatic-api-attack-tool, Astra, और restler-fuzzer API सुरक्षा परीक्षण के लिए अनुकूलित कार्यक्षमताएँ प्रदान करते हैं, जो हमले के अनुकरण से लेकर फज़िंग और कमजोरियों के स्कैनिंग तक फैली हुई हैं।
- Cherrybomb: यह एक API सुरक्षा टूल है जो आपके API का ऑडिट OAS फ़ाइल के आधार पर करता है (यह टूल रस्ट में लिखा गया है)।
सीखने और अभ्यास के संसाधन
- OWASP API Security Top 10: सामान्य API कमजोरियों को समझने के लिए आवश्यक पढ़ाई (OWASP Top 10).
- API सुरक्षा चेकलिस्ट: APIs को सुरक्षित करने के लिए एक व्यापक चेकलिस्ट (GitHub link).
- Logger++ फ़िल्टर: API कमजोरियों की खोज के लिए, Logger++ उपयोगी फ़िल्टर प्रदान करता है (GitHub link).
- API Endpoints सूची: परीक्षण उद्देश्यों के लिए संभावित API endpoints की एक क्यूरेटेड सूची (GitHub gist)।
संदर्भ
tip
AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE)
GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE)
HackTricks का समर्थन करें
- सदस्यता योजनाएँ देखें!
- हमारे 💬 Discord समूह या टेलीग्राम समूह में शामिल हों या हमारे Twitter 🐦 @hacktricks_live** का पालन करें।**
- हैकिंग ट्रिक्स साझा करें और HackTricks और HackTricks Cloud गिटहब रिपोजिटरी में PRs सबमिट करें।