
Multi-Cloud-Sicherheitsposture-Scanner, der AWS, Azure, GCP und OCI auf Fehlkonfigurationen, Compliance-Verstöße (HIPAA, PCI, CIS) und Sicherheitsrisiken durch automatisierte plugin-basierte Prüfungen überprüft.
$ 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 von Aqua ist ein Open-Source-Projekt, das die Erkennung von Sicherheitsrisiken in Cloud-Infrastrukturkonten ermöglicht, einschließlich: Amazon Web Services (AWS), Microsoft Azure, Google Cloud Platform (GCP), Oracle Cloud Infrastructure (OCI) und GitHub. Diese Skripte sollen eine Reihe potenzieller Fehlkonfigurationen und Sicherheitsrisiken zurückgeben.
CloudSploit ist in zwei Bereitstellungsoptionen verfügbar:
Befolgen Sie die nachstehenden Anweisungen, um die Open-Source-Version von CloudSploit in nur wenigen einfachen Schritten auf Ihrem Rechner zu installieren.
Eine kommerzielle Version von CloudSploit, gehostet bei Aqua Wave. Probieren Sie noch heute Aqua Wave aus!
Stellen Sie sicher, dass NodeJS installiert ist. Wenn nicht, installieren Sie es von hier.
$ git clone [email protected]:cloudsploit/scans.git
$ npm install
CloudSploit benötigt schreibgeschützten Zugriff auf Ihr Cloud-Konto. Folgen Sie den nachstehenden Anleitungen, um diesen Zugriff bereitzustellen:
Für AWS können Sie CloudSploit direkt ausführen, und es erkennt die Anmeldeinformationen mithilfe der standardmäßigen AWS-Anmeldeinformationskette.
Die CloudSploit-Konfigurationsdatei ermöglicht Ihnen die Übergabe von Cloud-Provider-Anmeldeinformationen durch:
Kopieren Sie zunächst die Beispielkonfigurationsdatei:
$ cp config_example.js config.js
Bearbeiten Sie die Konfigurationsdatei, indem Sie die relevanten Abschnitte für den von Ihnen getesteten Cloud-Provider auskommentieren. Jede Cloud hat sowohl eine credential_file-Option als auch Inline-Optionen. Zum Beispiel:
azure: {
// OPTION 1: Wenn Sie eine Anmelde-JSON-Datei verwenden, geben Sie den Pfad unten ein
// credential_file: '/path/to/file.json',
// OPTION 2: Wenn Sie hartcodierte Anmeldeinformationen verwenden, geben Sie diese unten ein
// 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 || ''
}
Wenn Sie die Option credential_file verwenden, verweisen Sie auf eine Datei in Ihrem Dateisystem, die dem korrekten Format für die von Ihnen verwendete Cloud entspricht.
{
"accessKeyId": "YOURACCESSKEY",
"secretAccessKey": "YOURSECRETKEY"
}
{
"ApplicationID": "YOURAZUREAPPLICATIONID",
"KeyValue": "YOURAZUREKEYVALUE",
"DirectoryID": "YOURAZUREDIRECTORYID",
"SubscriptionID": "YOURAZURESUBSCRIPTIONID"
}
Hinweis: Für GCP generieren Sie eine JSON-Datei direkt aus der GCP-Konsole, die Sie nicht bearbeiten sollten.
{
"type": "service_account",
"project": "GCPPROJECTNAME",
"client_email": "GCPCLIENTEMAIL",
"private_key": "GCPPRIVATEKEY"
}
{
"tenancyId": "YOURORACLETENANCYID",
"compartmentId": "YOURORACLECOMPARTMENTID",
"userId": "YOURORACLEUSERID",
"keyFingerprint": "YOURORACLEKEYFINGERPRINT",
"keyValue": "YOURORACLEKEYVALUE",
}
CloudSploit unterstützt die Übergabe von Umgebungsvariablen, aber Sie müssen zuerst den Abschnitt Ihrer config.js-Datei auskommentieren, der für den zu scannenden Cloud-Provider relevant ist.
Anschließend können Sie die in jedem Abschnitt aufgeführten Variablen übergeben. Zum Beispiel für 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 || '',
}
Führen Sie zum Ausführen eines Standards cans, der alle Ausgaben und Ergebnisse anzeigt, einfach Folgendes aus:
$ ./index.js
CloudSploit unterstützt viele Optionen zur Anpassung der Laufzeit. Einige beliebte Optionen sind:
--govcloud--china--collection=file.json--ignore-ok--exit-code
--console=textWeitere Ausgabeoptionen finden Sie unter Ausgabeformate unten.
$ ./index.js -h