
Платформа безопасности API с открытым исходным кодом для непрерывного обнаружения API, тестирования уязвимостей и обнаружения угроз во время выполнения. Интегрируется с конвейерами CI/CD и охватывает OWASP Top 10 с более чем 1000 встроенными тестами.
Как это работает • Начало работы • Инвентаризация API • Тестирование API • Добавить тест • Присоединиться к Discord-сообществу •
Akto — это мгновенная платформа безопасности API с открытым исходным кодом, для запуска которой требуется всего 60 секунд. Команды безопасности используют Akto для ведения непрерывной инвентаризации API, тестирования API на уязвимости и поиска проблем во время выполнения. Akto обеспечивает покрытие всех категорий OWASP Top 10 и HackerOne Top 10, включая BOLA, аутентификацию, SSRF, XSS, конфигурации безопасности и др. Мощный движок тестирования Akto выполняет разнообразные тесты бизнес-логики, читая данные трафика, чтобы понять паттерны API-трафика, что снижает количество ложных срабатываний. Akto интегрируется с различными источниками трафика — burpsuite, AWS, postman, GCP, шлюзами и др. Вот наш публичный план развития на этот квартал.
Akto позволяет командам безопасности и разработки защищать свои API, делая три вещи:
Шаг 1: Создание инвентаризации
Шаг 2: Запуск тестов
Выполните следующие команды, чтобы установить Akto. Вам понадобится установленный curl и Docker для запуска контейнера..
git clone https://github.com/akto-api-security/akto.gitcd aktodocker-compose up -dПожалуйста, соблюдайте следующие правила для обеспечения безопасности:
Откройте только входящее правило безопасности для порта 9090. И ограничьте исходный CIDR диапазоном CIDR вашей VPC или только вашим IP-адресом.
Используйте EC2 в частной подсети —
a. Таким образом, никто не сможет отправлять входящие запросы к вашей машине.
b. Убедитесь, что эта частная подсеть имеет доступ к Интернету, чтобы исходящие вызовы могли выполняться!
c. Возможно, вам придётся настроить туннелирование для доступа к инстансу через VPN с помощью ssh -i pemfile ec2-user@vpn-public-instance -L 9090:private-instance:9090
d. В браузере откройте http://private-instance:9090
Используйте EC2 в публичной подсети — пожалуйста, не делайте этого! Если вы всё же хотите это сделать, можете пропустить пункты 2.b и 2.c. Просто получите доступ к инстансу через http://ip:9090
Akto очень эффективен при облачном развёртывании, если вы можете предоставить зеркальный трафик вашего приложения (0 влияния на производительность). Вы также сможете планировать тесты в CI/CD и приглашать больше участников команды в дашборд. Для этого вам следует установить Enterprise-версию Akto, доступную здесь. Узнайте больше здесь.
| Название | Ссылка |
|---|---|
| Введение | https://www.youtube.com/watch?v=oFt4OVmfE2s |
| Учебное пособие 1: Сканирование портов SSRF (OWASP API7:2023) | https://www.youtube.com/watch?v=WjNNh6asAD0 |
Примечание: при использовании Docker Desktop рассмотрите возможность увеличения объёма выделяемой памяти до 8 ГБ для повышения производительности
mkdir ~/akto_codecd ~/akto_codegit clone https://github.com/akto-api-security/aktocode akto
OpenJDK 8, node(v18.7.0+ link), npm(v8.15.0+), maven (v3.6.3 link), MongoDB (v5.0.3+ link)
mkdir ~/akto_codecd akto_codegit clone https://github.com/akto-api-security/aktoOpen a new terminal tabcd ~mkdir ~/akto_mongo_data<path_to_mongo_folder>/bin/mongod --dbpath ~/akto_mongo_dataOpen a new terminal tabcd ~/akto_code/aktocd apps/dashboard/web/polaris_webnpm installnpm run hotOpen 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=9090Open 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"Выполните следующую команду, чтобы запустить 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 в вашем любимом браузере 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. Подключите отладчик Java из режима Run and Debug. Если вы делаете это впервые, нажмите «Create launch.json file», затем «Add configuration». Выберите «Java: Attach process by ID» и сохраните файл.

d. Появится список запущенных Java-процессов. Выберите процесс веб-сервера, чтобы подключить отладчик
Мы приветствуем вклад в этот проект. Пожалуйста, прочитайте наш файл CONTRIBUTING.md, чтобы узнать больше о том, как принять участие.
Этот проект распространяется под лицензией MIT License.