
akto v2.13.11
Sécurité proactive des API open source → Découverte d'API, Posture de sécurité API, Tests dans CI/CD, Bibliothèque de tests avec plus de 1000 tests, Ajout de tests personnalisés, Exposition de données sensibles
Sécurité des API Akto.io
Contributeurs
Qu'est-ce qu'Akto ?
Comment ça marche • Démarrage rapide • Inventaire des API • Tests d'API • Ajouter un test • Rejoindre la communauté Discord •
Akto est une plateforme open source et instantanée de sécurité des API, qui ne prend que 60 secondes pour démarrer. Akto est utilisé par les équipes de sécurité pour maintenir un inventaire continu des API, tester les API pour détecter les vulnérabilités et identifier les problèmes d'exécution. Akto offre une couverture de toutes les catégories OWASP Top 10 et HackerOne Top 10, notamment BOLA, l'authentification, les SSRF, les XSS, les configurations de sécurité, etc. Le puissant moteur de test d'Akto exécute une variété de tests de logique métier en lisant les données de trafic pour comprendre les schémas de trafic des API, ce qui réduit les faux positifs. Akto peut s'intégrer à de multiples sources de trafic - burpsuite, AWS, postman, GCP, passerelles, etc. Voici notre feuille de route publique pour ce trimestre.
Akto permet aux équipes de sécurité et d'ingénierie de sécuriser leurs API en faisant trois choses :
- Inventaire des API
- Exécuter des tests de logique métier dans le CI/CD
- Détecter les vulnérabilités au moment de l'exécution
Comment ça marche ?
Étape 1 : Créer l'inventaire
Étape 2 : Exécuter les tests
Comment démarrer ?
Utilisation de docker-compose (fonctionne sur toute machine disposant de Docker installé)
Exécutez les commandes suivantes pour installer Akto. Vous aurez besoin d'avoir curl et Docker installés pour exécuter le conteneur..
- Clonez le dépôt Akto en utilisant cette commande
git clone https://github.com/akto-api-security/akto.git - Accédez au répertoire cloné
cd akto - Exécutez
docker-compose up -d
Si vous configurez ceci dans votre propre Cloud (AWS/GCP/Heroku), lisez cette section
Pour de bonnes pratiques de sécurité, veuillez respecter les points suivants
-
Ouvrez la règle de sécurité entrante uniquement pour le port 9090. Et restreignez le CIDR source au CIDR du VPC ou à votre IP uniquement.
-
Utilisez une instance EC2 depuis un sous-réseau privé -
a. Ainsi, personne ne pourra faire de requête entrante à votre machine.
b. Assurez-vous que ce sous-réseau privé a accès à Internet pour que les appels sortants réussissent !
c. Vous devrez peut-être configurer un tunnel pour accéder à l'instance via un VPN en utilisant
ssh -i pemfile ec2-user@vpn-public-instance -L 9090:private-instance:9090d. Dans votre navigateur, visitez
http://private-instance:9090 -
Utilisez une instance EC2 depuis un sous-réseau public - ne le faites pas ! Si vous souhaitez quand même le faire, vous pouvez ignorer 2.b et 2.c. Accédez simplement à votre instance via
http://ip:9090
Akto est vraiment puissant en déploiement Cloud si vous pouvez fournir le trafic miroir de votre application (0 impact sur les performances). Vous pourrez également planifier des tests dans le CI/CD et inviter plus de membres d'équipe sur le tableau de bord. Pour cela, vous devriez installer l'édition Enterprise d'Akto disponible ici. En savoir plus ici
Tutoriels de test de sécurité des API
| Titre | Lien |
|---|---|
| Introduction | https://www.youtube.com/watch?v=oFt4OVmfE2s |
| Tutoriel 1 : SSRF Port Scanning (OWASP API7:2023) | https://www.youtube.com/watch?v=WjNNh6asAD0 |
Développer et contribuer
Configuration rapide avec les Devcontainers VSCode
Prérequis :
- Installer VSCode
- Installer l'extension Dev Containers de VSCode
- Windows : Docker Desktop 2.0+ sur Windows 10 Pro/Entreprise. Windows 10 Famille (2004+) nécessite Docker Desktop 2.3+ et le back-end WSL 2.
- macOS : Docker Desktop 2.0+.
- Linux : Docker CE/EE 18.06+ et Docker Compose 1.21+.
Remarque : Si vous utilisez Docker Desktop, pensez à modifier l'allocation mémoire à 8 Go pour de meilleures performances
Étapes :
Cloner le dépôt et l'ouvrir dans VSCode
- Ouvrez le terminal
mkdir ~/akto_codecd ~/akto_codegit clone https://github.com/akto-api-security/akto- Ouvrez dans VSCode :
code akto
Démarrer le conteneur de développement
- Allez dans View > Command Palette et tapez : Dev Containers: Reopen in Container

- Attendez que le conteneur de développement soit configuré.
- Ouvrez localhost:9090 dans votre navigateur web pour voir le tableau de bord Akto
Instructions de configuration manuelle
Prérequis
OpenJDK 8, node(v18.7.0+ lien), npm(v8.15.0+), maven (v3.6.3 lien), MongoDB (v5.0.3+ lien)
Cloner le dépôt
mkdir ~/akto_codecd akto_codegit clone https://github.com/akto-api-security/akto
Configurer la base de données
Open a new terminal tabcd ~mkdir ~/akto_mongo_data<path_to_mongo_folder>/bin/mongod --dbpath ~/akto_mongo_data
Configurer le frontend
Open a new terminal tabcd ~/akto_code/aktocd apps/dashboard/web/polaris_webnpm installnpm run hot
Configurer le tableau de bord
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
Configurer les tests
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"
Utilisation de l'outil CLI de test
Exécutez la commande suivante pour lancer l'outil CLI de test
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
Expérimenter
- Ouvrez
localhost:9090dans votre navigateur préféré - Vous devrez vous inscrire lors de la première connexion ; ensuite, vous pourrez vous connecter
Débogage
1. Pour déboguer le frontend, installez l'extension Vue.js Chrome depuis [ici](https://devtools.vuejs.org/guide/installation.html).
2. Pour déboguer le backend, exécutez ce qui suit avant de lancer le serveur web -
a. Définissez la variable MAVEN_OPTS pour activer le débogage sur votre processus Java
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. Dans Visual Studio Code, cliquez sur n'importe quel numéro de ligne pour définir un point d'arrêt.
c. Attachez le débogueur Java à partir du mode Run and Debug. Si vous faites cela pour la première fois, cliquez sur « Create launch.json file », puis sur « Add configuration ». Choisissez « Java: Attach process by ID » et enregistrez le fichier.

d. Une liste des processus Java en cours d'exécution s'affiche. Sélectionnez le processus du serveur web pour attacher le débogueur
Contribuer
Nous accueillons favorablement les contributions à ce projet. Veuillez lire notre CONTRIBUTING.md pour plus d'informations sur la façon de participer.
Licence
Ce projet est sous licence MIT License.