
Scanner di sicurezza multi-cloud che controlla AWS, Azure, GCP e OCI per configurazioni errate, violazioni di conformità (HIPAA, PCI, CIS) e rischi di sicurezza tramite controlli automatizzati basati su plugin.
$ git clone https://github.com/aquasecurity/cloudsploit.git
$ cd cloudsploit
$ npm install
$ ./index.js -h
$ git clone https://github.com/aquasecurity/cloudsploit.git
$ cd cloudsploit
$ docker build . -t cloudsploit:0.0.1
$ docker run cloudsploit:0.0.1 -h
$ docker run -e AWS_ACCESS_KEY_ID=XX -e AWS_SECRET_ACCESS_KEY=YY cloudsploit:0.0.1 --compliance=pci
CloudSploit di Aqua è un progetto open-source progettato per rilevare i rischi di sicurezza negli account dell'infrastruttura cloud, tra cui: Amazon Web Services (AWS), Microsoft Azure, Google Cloud Platform (GCP), Oracle Cloud Infrastructure (OCI) e GitHub. Questi script sono progettati per restituire una serie di potenziali configurazioni errate e rischi di sicurezza.
CloudSploit è disponibile in due opzioni di distribuzione:
Segui le istruzioni qui sotto per distribuire la versione open-source di CloudSploit sulla tua macchina in pochi semplici passaggi.
Una versione commerciale di CloudSploit ospitata su Aqua Wave. Prova Aqua Wave oggi!
Assicurati che NodeJS sia installato. In caso contrario, installalo da qui.
$ git clone [email protected]:cloudsploit/scans.git
$ npm install
CloudSploit richiede l'accesso in sola lettura al tuo account cloud. Segui le guide seguenti per fornire questo accesso:
Per AWS, puoi eseguire CloudSploit direttamente e rileverà le credenziali utilizzando la catena di credenziali AWS predefinita.
Il file di configurazione CloudSploit ti permette di passare le credenziali del cloud provider tramite:
Inizia copiando il file di configurazione di esempio:
$ cp config_example.js config.js
Modifica il file di configurazione decommentando le sezioni pertinenti per il cloud provider che stai testando. Ogni cloud ha sia un'opzione credential_file che opzioni inline. Ad esempio:
azure: {
// OPTION 1: If using a credential JSON file, enter the path below
// credential_file: '/path/to/file.json',
// OPTION 2: If using hard-coded credentials, enter them below
// application_id: process.env.AZURE_APPLICATION_ID || '',
// key_value: process.env.AZURE_KEY_VALUE || '',
// directory_id: process.env.AZURE_DIRECTORY_ID || '',
// subscription_id: process.env.AZURE_SUBSCRIPTION_ID || ''
}
Se utilizzi l'opzione credential_file, punta a un file nel tuo file system che segua il formato corretto per il cloud che stai utilizzando.
{
"accessKeyId": "YOURACCESSKEY",
"secretAccessKey": "YOURSECRETKEY"
}
{
"ApplicationID": "YOURAZUREAPPLICATIONID",
"KeyValue": "YOURAZUREKEYVALUE",
"DirectoryID": "YOURAZUREDIRECTORYID",
"SubscriptionID": "YOURAZURESUBSCRIPTIONID"
}
Nota: Per GCP, generi un file JSON direttamente dalla console GCP, che non dovresti modificare.
{
"type": "service_account",
"project": "GCPPROJECTNAME",
"client_email": "GCPCLIENTEMAIL",
"private_key": "GCPPRIVATEKEY"
}
{
"tenancyId": "YOURORACLETENANCYID",
"compartmentId": "YOURORACLECOMPARTMENTID",
"userId": "YOURORACLEUSERID",
"keyFingerprint": "YOURORACLEKEYFINGERPRINT",
"keyValue": "YOURORACLEKEYVALUE",
}
CloudSploit supporta il passaggio di variabili d'ambiente, ma devi prima decommentare la sezione del tuo file config.js relativa al cloud provider da scansionare.
Puoi quindi passare le variabili elencate in ciascuna sezione. Ad esempio, per AWS:
{
access_key: process.env.AWS_ACCESS_KEY_ID || '',
secret_access_key: process.env.AWS_SECRET_ACCESS_KEY || '',
session_token: process.env.AWS_SESSION_TOKEN || '',
}
Per eseguire una scansione standard, mostrando tutti gli output e i risultati, basta eseguire:
$ ./index.js
CloudSploit supporta molte opzioni per personalizzare l'esecuzione. Alcune opzioni popolari includono:
--govcloud--china--collection=file.json--ignore-ok--exit-code
--console=textVedi Formati di Output qui sotto per ulteriori opzioni di output.
$ ./index.js -h