
akto v2.15.5
Proattiva, sicurezza API open source → scoperta API, postura di sicurezza API, test in CI/CD, libreria di test con oltre 1000 test, aggiungi test personalizzati, esposizione di dati sensibili
Akto.io Sicurezza API
Contributori
Cos'è Akto?
Come funziona • Per iniziare • Inventario API • Test delle API • Aggiungi test • Unisciti alla community Discord •
Akto è una piattaforma open source e immediata per la sicurezza delle API che richiede solo 60 secondi per essere avviata. Akto è utilizzato dai team di sicurezza per mantenere un inventario continuo delle API, testare le API per individuare vulnerabilità e trovare problemi in fase di runtime. Akto offre copertura per tutte le categorie OWASP Top 10 e HackerOne Top 10, tra cui BOLA, autenticazione, SSRF, XSS, configurazioni di sicurezza, ecc. Il potente motore di test di Akto esegue una varietà di test di logica di business leggendo i dati del traffico per comprendere i pattern del traffico API, riducendo i falsi positivi. Akto può integrarsi con molteplici fonti di traffico: burpsuite, AWS, postman, GCP, gateway, ecc. Ecco la nostra roadmap pubblica per questo trimestre.
Akto consente ai team di sicurezza e ingegneria di proteggere le loro API facendo tre cose:
Come funziona?
Passo 1: Crea inventario
Passo 2: Esegui i test
Come iniziare?
Usando docker-compose (funziona su qualsiasi macchina con Docker installato)
Esegui i seguenti comandi per installare Akto. Avrai bisogno di avere curl e Docker installati per eseguire il container..
- Clona il repository Akto usando questo comando
git clone https://github.com/akto-api-security/akto.git - Vai nella directory clonata
cd akto - Esegui
docker-compose up -d
Se lo stai configurando nel tuo Cloud (AWS/GCP/Heroku), leggi questa sezione
Assicurati di seguire le seguenti buone pratiche di sicurezza
-
Apri la regola di sicurezza in ingresso solo per la porta 9090. E limita il CIDR di origine al CIDR della VPC o al tuo IP.
-
Usa un'EC2 da una subnet privata -
a. In questo modo, nessuno potrà effettuare una richiesta in ingresso verso la tua macchina.
b. Assicurati che questa subnet privata abbia accesso a Internet così che le chiamate in uscita possano riuscire!
c. Potresti dover configurare un tunnel per accedere all'istanza tramite VPN usando
ssh -i pemfile ec2-user@vpn-public-instance -L 9090:private-instance:9090d. Nel tuo browser, visita
http://private-instance:9090 -
Usa un'EC2 da una subnet pubblica - per favore non farlo! Se vuoi comunque farlo, puoi saltare 2.b e 2.c. Accedi semplicemente alla tua istanza tramite
http://ip:9090
Akto è davvero potente nel deployment su Cloud se puoi fornire il traffico mirrorato della tua applicazione (0 impatto sulle prestazioni). Potrai anche pianificare test in CI/CD e invitare più membri del team nella dashboard. Per questo, dovresti installare la versione Akto Enterprise disponibile qui. Leggi di più qui
Tutorial sui test di sicurezza API
| Titolo | Link |
|---|---|
| Introduzione | https://www.youtube.com/watch?v=oFt4OVmfE2s |
| Tutorial 1: SSRF Port Scanning (OWASP API7:2023) | https://www.youtube.com/watch?v=WjNNh6asAD0 |
Sviluppa e contribuisci
Configurazione rapida con VSCode Devcontainers
Prerequisiti:
- Installa VSCode
- Installa l'estensione Dev Containers di VSCode
- Windows: Docker Desktop 2.0+ su Windows 10 Pro/Enterprise. Windows 10 Home (2004+) richiede Docker Desktop 2.3+ e il backend WSL 2.
- macOS: Docker Desktop 2.0+.
- Linux: Docker CE/EE 18.06+ e Docker Compose 1.21+.
Nota: Se usi Docker Desktop, considera di cambiare l'allocazione di memoria a 8 GB per prestazioni migliori
Passaggi:
Clona il repository e aprilo in VSCode
- Apri il terminale
mkdir ~/akto_codecd ~/akto_codegit clone https://github.com/akto-api-security/akto- Aprilo in VSCode:
code akto
Avvia il Dev Container
- Vai su Visualizza > Riquadro comandi e digita: Dev Containers: Riapri nel Container

- Attendi che il Dev Container venga configurato.
- Apri localhost:9090 nel tuo browser web per vedere la dashboard di Akto
Istruzioni di Configurazione Manuale
Prerequisiti
OpenJDK 8, node(v18.7.0+ link), npm(v8.15.0+), maven (v3.6.3 link), MongoDB (v5.0.3+ link)
Clona il repository
mkdir ~/akto_codecd akto_codegit clone https://github.com/akto-api-security/akto
Configura il database
Apri una nuova scheda del terminalecd ~mkdir ~/akto_mongo_data<path_to_mongo_folder>/bin/mongod --dbpath ~/akto_mongo_data
Configura il frontend
Apri una nuova scheda del terminalecd ~/akto_code/aktocd apps/dashboard/web/polaris_webnpm installnpm run hot
Configura la dashboard
Apri una nuova scheda del terminalecd ~/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
Configura i test
Apri una nuova scheda del terminalecd ~/akto_code/aktocd apps/testingexport AKTO_MONGO_CONN="mongodb://localhost:27017"mvn compile; mvn exec:java -Dexec.mainClass="com.akto.testing.Main"
Uso del tool CLI di Testing
Esegui il seguente comando per eseguire il tool CLI di testing
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
Sperimenta
- Apri
localhost:9090nel tuo browser preferito - Dovrai registrarti al primo accesso, dalle volte successive in poi potrai accedere
Debug
1. Per eseguire il debug del frontend, installa l'estensione Vue.js per Chrome da [qui](https://devtools.vuejs.org/guide/installation.html).
2. Per eseguire il debug del backend, esegui quanto segue prima di avviare il web server -
a. Imposta la variabile MAVEN_OPTS per abilitare il debug sul processo 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. In Visual Studio Code, fai clic su qualsiasi numero di riga per impostare un punto di interruzione.
c. Collega il debugger Java dalla modalità Run and Debug. Se è la prima volta, fai clic su “Create launch.json file” e poi su “Add configuration”. Scegli “Java: Attach process by ID” e salva il file.

d. Apparirà un elenco dei processi Java in esecuzione. Seleziona il processo del web server per collegare il debugger
Come contribuire
Accogliamo con piacere i contributi a questo progetto. Leggi il nostro CONTRIBUTING.md per maggiori informazioni su come partecipare.
Licenza
Questo progetto è concesso in licenza sotto la Licenza MIT.