
akto v2.20.1
ओपन-सोर्स API सुरक्षा प्लेटफ़ॉर्म जो निरंतर API खोज, भेद्यता परीक्षण और रनटाइम खतरे का पता लगाने हेतु है। यह CI/CD पाइपलाइनों के साथ एकीकृत होता है और 1000+ अंतर्निहित परीक्षणों के साथ OWASP Top 10 को कवर करता है।
Akto.io एपीआई सुरक्षा
योगदानकर्ता
Akto क्या है?
यह कैसे काम करता है • शुरुआत कैसे करें • एपीआई इन्वेंट्री • एपीआई परीक्षण • टेस्ट जोड़ें • Discord समुदाय से जुड़ें •
Akto एक त्वरित, ओपन सोर्स API सुरक्षा प्लेटफ़ॉर्म है जिसे शुरू करने में केवल 60 सेकंड लगते हैं। Akto का उपयोग सुरक्षा टीमों द्वारा APIs की निरंतर इन्वेंट्री बनाए रखने, कमजोरियों के लिए APIs का परीक्षण करने और रनटाइम समस्याओं का पता लगाने के लिए किया जाता है। Akto सभी OWASP Top 10 और HackerOne Top 10 श्रेणियों जैसे BOLA, प्रमाणीकरण, SSRF, XSS, सुरक्षा कॉन्फ़िगरेशन आदि के लिए कवरेज प्रदान करता है। Akto का शक्तिशाली परीक्षण इंजन API ट्रैफ़िक पैटर्न को समझने के लिए ट्रैफ़िक डेटा पढ़कर विभिन्न प्रकार के बिजनेस लॉजिक परीक्षण चलाता है, जिससे गलत सकारात्मक परिणाम (false positives) कम होते हैं। Akto कई ट्रैफ़िक स्रोतों - burpsuite, AWS, postman, GCP, गेटवे आदि के साथ एकीकृत हो सकता है। इस तिमाही के लिए हमारा सार्वजनिक रोडमैप यहाँ है।
Akto सुरक्षा और इंजीनियरिंग टीमों को तीन काम करके उनके APIs को सुरक्षित करने में सक्षम बनाता है:
यह कैसे काम करता है?
चरण 1: इन्वेंट्री बनाएँ
चरण 2: परीक्षण चलाएँ
शुरुआत कैसे करें?
docker-compose का उपयोग करके (किसी भी मशीन पर काम करता है जिसमें Docker स्थापित है)
Akto स्थापित करने के लिए निम्नलिखित कमांड चलाएँ। कंटेनर चलाने के लिए आपके पास curl और Docker स्थापित होना आवश्यक है..
- इस कमांड का उपयोग करके Akto रेपो को क्लोन करें
git clone https://github.com/akto-api-security/akto.git - क्लोन की गई डायरेक्टरी में जाएँ
cd akto docker-compose up -dचलाएँ
यदि आप इसे अपने स्वयं के क्लाउड (AWS/GCP/Heroku) में सेट कर रहे हैं, तो यह अनुभाग पढ़ें
कृपया अच्छी सुरक्षा प्रथाओं के लिए निम्नलिखित सुनिश्चित करें
-
केवल पोर्ट 9090 के लिए इनबाउंड सुरक्षा नियम खोलें। और स्रोत CIDR को केवल VPC CIDR या अपने IP तक सीमित करें।
-
प्राइवेट सबनेट से EC2 का उपयोग करें -
a. इस तरह, कोई भी आपकी मशीन पर इनबाउंड अनुरोध नहीं कर पाएगा।
b. सुनिश्चित करें कि इस प्राइवेट सबनेट के पास इंटरनेट की पहुँच है ताकि आउटबाउंड कॉल सफल हो सकें!
c. VPN के माध्यम से इंस्टेंस तक पहुँचने के लिए आपको टनलिंग सेट अप करनी पड़ सकती है
ssh -i pemfile ec2-user@vpn-public-instance -L 9090:private-instance:9090d. अपने ब्राउज़र में
http://private-instance:9090पर जाएँ -
पब्लिक सबनेट से EC2 का उपयोग करें - कृपया न करें! यदि आप फिर भी ऐसा करना चाहते हैं, तो आप 2.b और 2.c को छोड़ सकते हैं। बस अपने इंस्टेंस को
http://ip:9090के माध्यम से एक्सेस करें
Akto क्लाउड डिप्लॉयमेंट में वास्तव में शक्तिशाली है यदि आप अपने एप्लिकेशन का मिरर किया हुआ ट्रैफ़िक प्रदान कर सकते हैं (0 प्रदर्शन प्रभाव)। आप CI/CD में परीक्षण शेड्यूल करने और डैशबोर्ड पर अधिक टीम सदस्यों को आमंत्रित करने में भी सक्षम होंगे। उसके लिए, आपको यहाँ उपलब्ध Akto Enterprise संस्करण स्थापित करना चाहिए। इसके बारे में यहाँ और पढ़ें।
एपीआई सुरक्षा परीक्षण ट्यूटोरियल
| शीर्षक | लिंक |
|---|---|
| परिचय | https://www.youtube.com/watch?v=oFt4OVmfE2s |
| ट्यूटोरियल 1: SSRF पोर्ट स्कैनिंग (OWASP API7:2023) | https://www.youtube.com/watch?v=WjNNh6asAD0 |
विकास करें और योगदान दें
VSCode Devcontainers का उपयोग करके त्वरित सेटअप
पूर्वापेक्षाएँ:
- VSCode स्थापित करें
- VSCode Dev Containers एक्सटेंशन स्थापित करें
- Windows: Windows 10 Pro/Enterprise पर Docker Desktop 2.0+। Windows 10 Home (2004+) के लिए Docker Desktop 2.3+ और WSL 2 बैक-एंड आवश्यक है।
- macOS: Docker Desktop 2.0+।
- Linux: Docker CE/EE 18.06+ और Docker Compose 1.21+।
नोट: यदि Docker Desktop का उपयोग कर रहे हैं, तो बेहतर प्रदर्शन के लिए मेमोरी आवंटन को 8 GB में बदलने पर विचार करें
चरण:
रेपो क्लोन करें और vscode में खोलें
- टर्मिनल खोलें
mkdir ~/akto_codecd ~/akto_codegit clone https://github.com/akto-api-security/akto- VScode में खोलें:
code akto
Dev Container प्रारंभ करें
- View > Command Palette पर जाएँ और टाइप करें: Dev Containers: Reopen in Container

- Dev Container के सेट होने की प्रतीक्षा करें।
- Akto डैशबोर्ड देखने के लिए अपने वेब ब्राउज़र में localhost:9090 खोलें
मैन्युअल सेटअप निर्देश
पूर्वापेक्षाएँ
OpenJDK 8, node(v18.7.0+ लिंक), npm(v8.15.0+), maven (v3.6.3 लिंक), MongoDB (v5.0.3+ लिंक)
रेपो क्लोन करें
mkdir ~/akto_codecd akto_codegit clone https://github.com/akto-api-security/akto
डेटाबेस सेटअप करें
Open a new terminal tabcd ~mkdir ~/akto_mongo_data<path_to_mongo_folder>/bin/mongod --dbpath ~/akto_mongo_data
फ्रंटएंड सेटअप करें
Open a new terminal tabcd ~/akto_code/aktocd apps/dashboard/web/polaris_webnpm installnpm run hot
डैशबोर्ड सेटअप करें
Open a new terminal tabcd ~/akto_code/aktoexport AKTO_MONGO_CONN="mongodb://localhost:27017"export DASHBOARD_MODE="local_deploy"mvn clean installmvn --projects :dashboard --also-make jetty:run -Djetty.port=9090
परीक्षण सेटअप करें
Open a new terminal tabcd ~/akto_code/aktocd apps/testingexport AKTO_MONGO_CONN="mongodb://localhost:27017"mvn compile; mvn exec:java -Dexec.mainClass="com.akto.testing.Main"
Testing CLI टूल का उपयोग करना
Testing CLI टूल चलाने के लिए निम्न कमांड चलाएँ
docker run -v ./:/out \ # needed to generate test report on host machine
-e TEST_IDS='JWT_NONE_ALGO REMOVE_TOKENS' \ # space separated test ids
-e AKTO_DASHBOARD_URL='<AKTO_DASHBOARD_URL>' \
-e AKTO_API_KEY='<AKTO_API_KEY>' \
-e API_COLLECTION_ID='123' \ # api collection id on which you want to run tests
-e TEST_APIS='https://demo.com/api/books https://demo.com/api/cars' \ # space separated apis from the api collection on which you want to run tests. If not present, all apis in the collection will be tested. [optional]
-e OVERRIDE_APP_URL='https://dummy.com' \ # If you want to test on a separate host. [optional]
aktosecurity/akto-api-testing-cli
कुछ आज़माएँ
- अपने पसंदीदा ब्राउज़र में
localhost:9090खोलें - पहली बार लॉग इन करते समय आपको साइन अप करना होगा, उसके बाद अगली बार से आप लॉग इन कर सकते हैं
डीबग
1. फ्रंट एंड को डीबग करने के लिए, [यहाँ](https://devtools.vuejs.org/guide/installation.html) से Vue.js Chrome एक्सटेंशन स्थापित करें।
2. बैकएंड को डीबग करने के लिए, वेब सर्वर चलाने से पहले निम्नलिखित चलाएँ -
a. अपने Java प्रोसेस पर डीबगिंग सक्षम करने के लिए MAVEN_OPTS वेरिएबल सेट करें
export MAVEN_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8081, -Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.port=9010 -Dcom.sun.management.jmxremote.rmi.port=9010 -Dcom.sun.management.jmxremote.local.only=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false"
b. Visual Studio code में, ब्रेकपॉइंट सेट करने के लिए किसी भी लाइन नंबर पर क्लिक करें।
c. Run और Debug मोड से Java डिबगर अटैच करें। यदि आप पहली बार ऐसा कर रहे हैं, तो “Create launch.json file” पर क्लिक करें और फिर “Add configuration” चुनें। “Java: Attach process by ID” चुनें और फ़ाइल सहेजें।

d. चल रहे Java प्रोसेस की एक सूची दिखाई देगी। डिबगर अटैच करने के लिए वेब सर्वर प्रोसेस चुनें
योगदान देना
हम इस प्रोजेक्ट में योगदान का स्वागत करते हैं। कृपया कैसे शामिल हों, इसके बारे में अधिक जानकारी के लिए हमारा CONTRIBUTING.md पढ़ें।
लाइसेंस
यह प्रोजेक्ट MIT लाइसेंस के अंतर्गत लाइसेंस प्राप्त है।