Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
cloudmapper — CloudMapper hilft Ihnen, Ihre Amazon Web Services (AWS)-Umgebungen zu analysieren. | Kitploit
Tools/GitHubGitHub/duo-labs/cloudmapper
Cloud-Infrastruktur-SicherheitSchwachstellenscannerNetzwerkkartierungKonfigurationsprüfungInformationsbeschaffungCloud-SicherheitFehlkonfiguration
GitHubduo-labs/cloudmapper

cloudmapper

CloudMapper hilft Ihnen, Ihre Amazon Web Services (AWS)-Umgebungen zu analysieren.

Repository anzeigen
6.3k832vor 2 JahrenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

CloudMapper

Hinweis Die Netzwerkvisualisierungsfunktion (Befehl prepare) wird nicht mehr weiterentwickelt.

CloudMapper hilft Ihnen bei der Analyse Ihrer Amazon Web Services (AWS)-Umgebungen. Der ursprüngliche Zweck war die Erstellung von Netzwerkdiagrammen und deren Anzeige in Ihrem Browser (Funktion nicht mehr gepflegt). Es enthält jetzt viel mehr Funktionen, einschließlich der Überprüfung auf Sicherheitsprobleme.

  • Netzwerk-Kartierungsdemo
  • Berichts-Demo
  • Einführungsbeitrag
  • Beitrag zum Erkennen von Fehlkonfigurationen in Netzwerken
  • Beitrag zur Durchführung kontinuierlicher Audits

Commands

  • audit: Überprüfung auf potenzielle Fehlkonfigurationen.
  • collect: Sammelt Metadaten über ein Konto. Weitere Details hier.
  • find_admins: Untersucht IAM-Richtlinien, um Administratoren und Rollen oder Prinzipalen mit bestimmten Berechtigungen zu identifizieren. Weitere Details hier.
  • find_unused: Sucht nach ungenutzten Ressourcen im Konto. Findet ungenutzte Sicherheitsgruppen, elastische IPs, Netzwerkschnittstellen, Volumes und elastische Load Balancer.
  • prepare/webserver: Siehe Netzwerkvisualisierungen
  • public: Findet öffentliche Hosts und Portbereiche. Weitere Details hier.
  • sg_ips: Ruft GeoIP-Informationen über in Sicherheitsgruppen vertrauenswürdige CIDRs ab. Weitere Details hier.
  • stats: Zeigt Ressourcenzahlen für Konten an. Weitere Details hier.
  • weboftrust: Zeigt Web of Trust an. Weitere Details hier.
  • report: Erstellt HTML-Bericht. Enthält Zusammenfassung der Konten und Audit-Ergebnisse. Weitere Details hier.
  • iam_report: Erstellt HTML-Bericht für die IAM-Informationen eines Kontos. Weitere Details hier.

Wenn Sie eigene private Befehle hinzufügen möchten, können Sie ein private_commands-Verzeichnis erstellen und diese dort hinzufügen.

Bildschirmfotos

Ideales Layout
Berichts-Screenshot

Installation

Requirements:

  • python 3 (3.7.0rc1 ist bekanntermaßen kompatibel), pip und virtualenv
  • Sie benötigen außerdem jq (https://stedolan.github.io/jq/) und die Bibliothek pyjq (https://github.com/doloopwhile/pyjq), die einige zusätzliche zu installierende Werkzeuge erfordern, die angezeigt werden.

On macOS:

root@kitploit:~
# clone the repo
git clone https://github.com/duo-labs/cloudmapper.git
# Install pre-reqs for pyjq
brew install autoconf automake awscli freetype jq libtool python3
cd cloudmapper/
python3 -m venv ./venv && source venv/bin/activate
pip install --prefer-binary -r requirements.txt

On Linux:

root@kitploit:~
# clone the repo
git clone https://github.com/duo-labs/cloudmapper.git
# (AWS Linux, Centos, Fedora, RedHat etc.):
# sudo yum install autoconf automake libtool python3-devel.x86_64 python3-tkinter python-pip jq awscli
# (Debian, Ubuntu etc.):
# You may additionally need "build-essential"
sudo apt-get install autoconf automake libtool python3.7-dev python3-tk jq awscli
cd cloudmapper/
python3 -m venv ./venv && source venv/bin/activate
pip install -r requirements.txt

Ausführen mit Beispieldaten

Es wird ein kleiner Satz von Beispieldaten bereitgestellt. Dadurch wird dieselbe Umgebung wie auf der Demo-Seite https://duo-labs.github.io/cloudmapper/ angezeigt.

root@kitploit:~
# Generate the data for the network map
python cloudmapper.py prepare --config config.json.demo --account demo
# Generate a report
python cloudmapper.py report --config config.json.demo --account demo
python cloudmapper.py webserver

Dadurch wird ein lokaler Webserver unter http://127.0.0.1:8000/ gestartet. Zeigen Sie die Netzwerkkarte über diesen Link an oder den Bericht unter http://127.0.0.1:8000/account-data/report.html

Einrichtung

  1. Informationen über Ihr Konto konfigurieren.
  2. Informationen über ein AWS-Konto sammeln.

1. Konto konfigurieren

Kopieren Sie config.json.demo nach config.json und bearbeiten Sie es, um Ihre Konto-ID und den Kontonamen (z. B. "prod") sowie externe CIDR-Namen aufzunehmen. Ein CIDR ist ein IP-Bereich wie 1.2.3.4/32, was bedeutet, dass nur die IP 1.2.3.4 zulässig ist.

2. Daten über das Konto sammeln

Dieser Schritt verwendet die CLI, um describe- und list-Aufrufe durchzuführen und zeichnet das JSON im durch den Kontonamen angegebenen Ordner unter account-data auf.

Erforderliche AWS-Berechtigungen

Sie müssen AWS-Anmeldeinformationen konfiguriert haben, die von der CLI mit Leseberechtigungen für die zu sammelnden Metadaten verwendet werden können. Ich empfehle die Verwendung von aws-vault. CloudMapper sammelt IAM-Informationen, was bedeutet, dass Sie MFA verwenden MÜSSEN. Nur der Schritt collect erfordert AWS-Zugriff.

Sie müssen über die folgenden Berechtigungen verfügen (diese gewähren diversen Lesezugriff auf Metadaten):

  • arn:aws:iam::aws:policy/SecurityAudit
  • arn:aws:iam::aws:policy/job-function/ViewOnlyAccess

Daten sammeln

Das Sammeln der Daten erfolgt wie folgt:

root@kitploit:~
python cloudmapper.py collect --account my_account

Analysieren der Daten

Führen Sie von hier aus die verschiedenen Befehle aus, z. B.:

root@kitploit:~
python cloudmapper.py report --account my_account
python cloudmapper.py webserver

Zeigen Sie dann den Bericht in Ihrem Browser unter 127.0.0.1:8000/account-data/report.html an

Weitere Konfiguration

Erstellen einer Konfigurationsdatei

Anstatt config.json direkt zu ändern, gibt es einen Befehl, um die Daten dort zu konfigurieren, falls dies erforderlich ist:

root@kitploit:~
python cloudmapper.py configure {add-account|remove-account} --config-file CONFIG_FILE --name NAME --id ID [--default DEFAULT]
python cloudmapper.py configure {add-cidr|remove-cidr} --config-file CONFIG_FILE --cidr CIDR --name NAME

Dadurch können Sie die verschiedenen AWS-Konten definieren, die Sie in Ihrer Umgebung verwenden, sowie die bekannten CIDR-IPs.

Wenn Sie AWS Organizations verwenden, können Sie auch automatisch Organisations-Mitgliedskonten zu config.json hinzufügen mit:

root@kitploit:~
python cloudmapper.py configure discover-organization-accounts

Sie müssen bei der AWS CLI authentifiziert sein und die Berechtigung organization:ListAccounts besitzen, bevor Sie diesen Befehl ausführen.

Verwenden von Audit-Konfigurationsüberschreibungen

Möglicherweise stellen Sie fest, dass Sie sich für einige der Audit-Elemente nicht interessieren. Möglicherweise möchten Sie die Prüfung vollständig ignorieren oder nur bestimmte Ressourcen. Kopieren Sie config/audit_config_override.yaml.example nach config/audit_config_override.yaml und bearbeiten Sie die Datei basierend auf den dortigen Kommentaren.

Verwenden eines Docker-Containers

Der erstellte Docker-Container ist für die interaktive Nutzung gedacht.

root@kitploit:~
docker build -t cloudmapper .

Cloudmapper muss IAM-Aufrufe tätigen und kann für die Sammlung keine Sitzungsanmeldeinformationen verwenden. Daher können Sie den aws-vault-Server nicht verwenden, wenn Sie Daten sammeln möchten, und müssen Rollenanmeldeinformationen direkt übergeben oder AWS-Anmeldeinformationen manuell im Container konfigurieren. Der folgende Code gibt Ihre rohen Anmeldeinformationen innerhalb des Containers preis.

root@kitploit:~
(                                                              
    export $(aws-vault exec YOUR_PROFILE --no-session -- env | grep ^AWS | xargs) && \ 
    docker run -ti \
        -e AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID \
        -e AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY \
        -p 8000:8000 \
        cloudmapper /bin/bash
)

Dadurch gelangen Sie in den Container. Führen Sie aws sts get-caller-identity aus, um zu bestätigen, dass dies korrekt eingerichtet wurde. Die Cloudmapper-Demodaten werden nicht in den Docker-Container kopiert, daher müssen Sie Live-Daten von Ihrem System sammeln. Beachten Sie, dass die Docker-Standardeinstellungen den für Ihren Container verfügbaren Speicher begrenzen können. Auf Mac OS beträgt der Standardwert beispielsweise 2 GB, was möglicherweise nicht ausreicht, um den Bericht für ein mittelgroßes Konto zu generieren.

root@kitploit:~
python cloudmapper.py configure add-account --config-file config.json --name YOUR_ACCOUNT --id YOUR_ACCOUNT_NUMBER
python cloudmapper.py collect --account YOUR_ACCOUNT
python cloudmapper.py report --account YOUR_ACCOUNT
python cloudmapper.py prepare --account YOUR_ACCOUNT
python cloudmapper.py webserver --public

Sie sollten dann den Bericht unter http://127.0.0.1:8000/account-data/report.html anzeigen können.

Regelmäßiges Ausführen von CloudMapper zur Überprüfung Ihrer Umgebung

Eine CDK-App zur Bereitstellung von CloudMapper über Fargate, sodass es nachts ausgeführt wird, Audit-Ergebnisse als Alarme an einen Slack-Kanal sendet und einen Bericht erstellt, der auf S3 gespeichert wird, wird hier beschrieben.

Alternativen

Für Netzwerkdiagramme können Sie https://github.com/lyft/cartography oder https://github.com/anaynayak/aws-security-viz ausprobieren.

Für Auditing und andere AWS-Sicherheitstools siehe https://github.com/toniblyx/my-arsenal-of-aws-security-tools

Lizenzen

  • cytoscape.js: MIT https://github.com/cytoscape/cytoscape.js/blob/master/LICENSE
  • cytoscape.js-qtip: MIT https://github.com/cytoscape/cytoscape.js-qtip/blob/master/LICENSE
  • cytoscape.js-grid-guide: MIT https://github.com/iVis-at-Bilkent/cytoscape.js-grid-guide
  • cytoscape.js-panzoom: MIT https://github.com/cytoscape/cytoscape.js-panzoom/blob/master/LICENSE
  • jquery: JS Foundation https://github.com/jquery/jquery/blob/master/LICENSE.txt
  • jquery.qtip: MIT https://github.com/qTip2/qTip2/blob/master/LICENSE
  • cytoscape-navigator: MIT https://github.com/cytoscape/cytoscape.js-navigator/blob/c249bd1551c8948613573b470b30a471def401c5/bower.json#L24
  • cytoscape.js-autopan-on-drag: MIT https://github.com/iVis-at-Bilkent/cytoscape.js-autopan-on-drag
  • font-awesome: MIT http://fontawesome.io/
  • FileSave.js: MIT https://github.com/eligrey/FileSaver.js/blob/master/LICENSE.md
  • circular-json: MIT https://github.com/WebReflection/circular-json/blob/master/LICENSE.txt
  • rstacruz/nprogress: MIT https://github.com/rstacruz/nprogress/blob/master/License.md
  • mousetrap: Apache https://github.com/ccampbell/mousetrap/blob/master/LICENSE
  • akkordion MIT https://github.com/TrySound/akkordion/blob/master/LICENSE
Tool herunterladen
Zusammenfassung der Ergebnisse
Ergebnisse IAM-Bericht
Befehlszeilen-Audit Befehl 'public' in der Befehlszeile