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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
VAmPI — सुरक्षा परीक्षण के लिए OWASP शीर्ष 10 कमजोरियों वाला असुरक्षित REST API | Kitploit
उपकरण/GitHubGitHub/erev0s/vampi
वेब भेद्यता स्कैनरभेद्यता विश्लेषणएपीआई सुरक्षा परीक्षणलर्निंग और शिक्षालैब और अभ्यास
GitHuberev0s/vampi

VAmPI

सुरक्षा परीक्षण के लिए OWASP शीर्ष 10 कमजोरियों वाला असुरक्षित REST API

रिपॉजिटरी देखें
1.3k58045 महीने पहलेKitploit द्वारा समीक्षित

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
साझा करें

VAmPI

कमजोर API (OpenAPI 3 पर आधारित) vampi

Docker Image CI Docker Pulls

VAmPI Flask में बनाया गया एक कमजोर API है और इसमें APIs के लिए OWASP शीर्ष 10 कमजोरियाँ शामिल हैं। इसे इसलिए बनाया गया था क्योंकि मुझे APIs में सुरक्षा समस्याओं का पता लगाने के लिए उपयोग किए जाने वाले उपकरणों की दक्षता का मूल्यांकन करने हेतु एक कमजोर API चाहिए था। इसमें परीक्षण के दौरान API को कमजोर या सुरक्षित बनाने के लिए चालू/बंद करने का स्विच शामिल है। यह गलत सकारात्मक/नकारात्मक परिणामों के मामलों को बेहतर ढंग से कवर करता है। VAmPI का उपयोग सीखने/पढ़ाने के उद्देश्यों के लिए भी किया जा सकता है। आप कमजोरियों के बारे में अधिक जानकारी erev0s.com पर पा सकते हैं।

विशेषताएँ

  • APIs के लिए OWASP शीर्ष 10 कमजोरियों पर आधारित।
  • OpenAPI3 विनिर्देश और Postman संग्रह शामिल।
  • कमजोर वातावरण या नहीं के लिए वैश्विक चालू/बंद स्विच।
  • टोकन-आधारित प्रमाणीकरण (app.py से जीवनकाल समायोजित करें)।
  • API से सीधे इंटरैक्ट करने के लिए उपलब्ध Swagger UI

VAmPI की कार्रवाई प्रवाह इस प्रकार है: एक अपंजीकृत उपयोगकर्ता API में शामिल डमी उपयोगकर्ताओं के बारे में न्यूनतम जानकारी देख सकता है। एक उपयोगकर्ता पंजीकरण कर सकता है और फिर लॉगिन कर सकता है ताकि वह लॉगिन के दौरान प्राप्त टोकन का उपयोग करके एक पुस्तक पोस्ट कर सके। पोस्ट की गई पुस्तक के लिए स्वीकार्य डेटा शीर्षक और उस पुस्तक के बारे में एक रहस्य है। प्रत्येक पुस्तक प्रत्येक उपयोगकर्ता के लिए अद्वितीय है और केवल पुस्तक के स्वामी को ही रहस्य देखने की अनुमति होनी चाहिए।

कार्रवाइयों का एक त्वरित विवरण निम्नलिखित तालिका में देखा जा सकता है:

कार्रवाईपथविवरण
GET/createdbडेटाबेस बनाता है और डमी डेटा से भरता है
GET/VAmPI होम
GET/meलॉग इन उपयोगकर्ता को प्रदर्शित करता है
GET/users/v1सभी उपयोगकर्ताओं को बुनियादी जानकारी के साथ प्रदर्शित करता है
GET/users/v1/_debugसभी उपयोगकर्ताओं के सभी विवरण प्रदर्शित करता है
POST/users/v1/registerनया उपयोगकर्ता पंजीकृत करें
POST/users/v1/loginVAmPI में लॉगिन करें
GET/users/v1/{username}उपयोगकर्ता नाम के अनुसार प्रदर्शित करता है
DELETE/users/v1/{username}उपयोगकर्ता नाम के अनुसार हटाता है (केवल व्यवस्थापक)
PUT/users/v1/{username}/emailएकल उपयोगकर्ता का ईमेल अपडेट करें
PUT/users/v1/{username}/passwordउपयोगकर्ता का पासवर्ड अपडेट करें
GET/books/v1सभी पुस्तकों को पुनर्प्राप्त करता है
POST/books/v1नई पुस्तक जोड़ें
GET/books/v1/{book}शीर्षक के साथ रहस्य सहित पुस्तक पुनर्प्राप्त करता है

अधिक जानकारी के लिए आप या तो VAmPI चलाएँ और http://127.0.0.1:5000/ui/ पर जाएँ, या swagger editor जैसी सेवा का उपयोग करके OpenAPI विनिर्देश प्रदान करें, जो openapi_specs निर्देशिका में पाया जा सकता है।

कमजोरियों की सूची

  • SQLi इंजेक्शन
  • अनधिकृत पासवर्ड परिवर्तन
  • टूटा हुआ ऑब्जेक्ट स्तर प्राधिकरण
  • मास असाइनमेंट
  • डीबग एंडपॉइंट के माध्यम से अत्यधिक डेटा एक्सपोज़र
  • उपयोगकर्ता और पासवर्ड गणना
  • RegexDOS (सेवा अस्वीकार)
  • संसाधन और दर सीमित करने की कमी
  • कमजोर साइनिंग कुंजी के माध्यम से JWT प्रमाणीकरण बाईपास

इसे चलाएँ

यह एक Flask एप्लिकेशन है, इसलिए इसे चलाने के लिए आप सभी आवश्यकताएँ स्थापित कर सकते हैं और फिर app.py चला सकते हैं। सभी आवश्यकताएँ स्थापित करने के लिए बस pip3 install -r requirements.txt चलाएँ और फिर python3 app.py चलाएँ।

या यदि आप पसंद करते हैं, तो आप इसे डॉकर या डॉकर कम्पोज़ के माध्यम से भी चला सकते हैं।

डॉकर के माध्यम से चलाएँ

  • Dockerhub पर उपलब्ध
root@kitploit:~
docker run -p 5000:5000 erev0s/vampi:latest

[नोट: यदि आप MacOS के नए संस्करणों पर डॉकर चलाते हैं, तो AirPlay Receiver सेवा के साथ विरोध से बचने के लिए -p 5001:5000 का उपयोग करें। वैकल्पिक रूप से, आप अपने सिस्टम प्राथमिकताएँ -> साझाकरण सेटिंग्स में AirPlay Receiver सेवा को अक्षम कर सकते हैं।]

डॉकर कम्पोज़ के माध्यम से चलाएँ

docker-compose में दो इंस्टेंस शामिल हैं, एक सुरक्षित कॉन्फ़िगरेशन के साथ पोर्ट 5001 पर और दूसरा असुरक्षित कॉन्फ़िगरेशन के साथ पोर्ट 5002 पर:

root@kitploit:~
docker-compose up -d

उपलब्ध Swagger UI 🚀

उस पथ /ui पर जाएँ जहाँ आप API चला रहे हैं और एक Swagger UI उपलब्ध होगा जो आपको आरंभ करने में मदद करेगा!

root@kitploit:~
http://127.0.0.1:5000/ui/

टोकन टाइमआउट और कमजोर वातावरण को अनुकूलित करना

यदि आप लॉगिन के बाद बनाए गए टोकन के टाइमआउट को बदलना चाहते हैं या यदि आप वातावरण को कमजोर नहीं बनाना चाहते हैं, तो आप एप्लिकेशन चलाने के तरीके के आधार पर कुछ तरीकों का उपयोग कर सकते हैं।

  • यदि आप इसे सामान्य रूप से python3 app.py के साथ चलाते हैं, तो आपको बस app.py में परिभाषित alive और vuln वेरिएबल्स को संपादित करना होगा। alive वेरिएबल सेकंड में मापा जाता है, इसलिए यदि आप 100 डालते हैं, तो टोकन 100 सेकंड के बाद समाप्त हो जाता है। vuln वेरिएबल बूलियन की तरह है, यदि आप इसे 1 पर सेट करते हैं तो एप्लिकेशन कमजोर है, और यदि आप इसे 0 पर सेट करते हैं तो एप्लिकेशन कमजोर नहीं है।
  • यदि आप इसे डॉकर के माध्यम से चलाते हैं, तो आपको या तो docker run कमांड में पर्यावरण चर पास करने होंगे या Dockerfile को संपादित करके पुनर्निर्माण करना होगा।
    • डॉकर रन उदाहरण: docker run -d -e vulnerable=0 -e tokentimetolive=300 -p 5000:5000 erev0s/vampi:latest

      • इस तरह से इसे चलाने की एक अच्छी विशेषता यह है कि आप vulnerable=1 के साथ एक दूसरा कंटेनर एक अलग पोर्ट पर शुरू कर सकते हैं और दोनों के बीच आसानी से स्विच कर सकते हैं।
    • Dockerfile में आपको दो पर्यावरण चर सेट मिलेंगे, ENV vulnerable=1 और ENV tokentimetolive=60। डॉकर बिल्ड कमांड चलाने से पहले इसे बदलने के लिए स्वतंत्र महसूस करें।

अक्सर पूछे जाने वाले प्रश्न

  • एंडपॉइंट तक पहुँचने पर डेटाबेस त्रुटि आती है!
    • डेटाबेस को आबाद करने के लिए /createdb एंडपॉइंट की ओर अनुरोध करना सुनिश्चित करें।

चित्र freepik - www.freepik.com से

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