Cartographie, graphe et audit d'AWS, Azure et GCP depuis une seule CLI. Construit un graphe de topologie, exécute Prowler/Checkov/Trivy, associe les résultats à 28 référentiels de conformité et exporte des rapports HTML, des ontologies RDF, des chunks RAG et des fichiers de recréation Terraform.
cloudg (cloud graphing) cartographie l'infrastructure AWS, Azure et GCP sous forme de graphe,
exécute des scanners de sécurité sur le même inventaire et transforme les résultats en rapports réellement exploitables.
Une seule commande collecte les actifs de chaque fournisseur configuré en parallèle, les fait passer dans un graphe NetworkX pour l'analyse de joignabilité et de chemins d'attaque, les distribue à Prowler, ScoutSuite, Checkov et Trivy, puis fusionne et déduplique toutes les découvertes au regard de 28 référentiels de conformité. En sortie : un rapport HTML interactif, du GraphML, une ontologie RDF, des fragments RAG pour les pipelines LLM et des fichiers Terraform qui recréent l'infrastructure en production.
Besoin de la cartographie sans l'outillage de sécurité ? cloudg map est un mappeur d'inventaire indépendant des scanners : il collecte en profondeur tout ce qui est déployé (ou par défaut) dans un compte, jusqu'à la trame réseau, balaie chaque service pour le reste, et relie le tout dans une carte d'actifs unique que vous pourrez superposer plus tard avec les découvertes des scanners. Voir Cartographie d'inventaire.
Vous voulez qu'un agent IA travaille avec tout cela ? cloudg mcp serve transforme cloudg en serveur MCP pour Claude Desktop, Claude Code, Cursor ou tout autre client parlant le Model Context Protocol. Voir Serveur MCP.
Documentation complète : le manuel rendu est disponible sur morpheuslord.github.io/cloudg, avec le même contenu en markdown dans la référence des fonctionnalités et les notes de version dans le changelog. Le mappeur d'inventaire dispose de ses propres documents détaillés : la référence d'inventaire (chaque structure de retour et fichier de sortie, champ par champ), le catalogue d'inventaire (les 156 types d'actifs, leurs métadonnées et relations) et les rouages internes de l'inventaire (comment il fonctionne et comment l'étendre). Le serveur MCP est couvert par le guide MCP, la référence des outils et la référence de confidentialité, et la limitation de débit par limites de débit et limitation.
Rapport d'exemple : pour voir ce que cloudg produit avant de lancer quoi que ce soit, ouvrez le rapport d'exemple. Il s'agit du report.html d'un environnement synthétique AWS, Azure et GCP, donc chaque identifiant qu'il contient est fictif, et scripts/build_sample_report.py le reconstruit à partir des fixtures de test.
git clone https://github.com/morpheuslord/cloudg.git
cd cloudg
uv venv && source .venv/bin/activate
uv pip install -e ".[all,dev]"
# one provider, one region
cloudg run -p aws --regions us-east-1
# everything, everywhere
cloudg run -p all --regions all
# with Terraform recreation files
cloudg run -p aws --regions us-east-1 --terraform
Les rapports sont générés dans ./reports. Ouvrez d'abord report.html.
Vous avez déjà exécuté les scanners vous-même ? Fournissez plutôt à cloudg leurs fichiers de sortie natifs. Aucun identifiant cloud, aucun binaire de scanner :
cloudg ingest --prowler ./prowler-output/ --checkov ./results_json.json --trivy ./trivy.json
Toute combinaison de sorties Prowler, ScoutSuite, Checkov et Trivy fonctionne ; cloudg normalise, déduplique entre les scanners via les jeux de règles d'équivalence des contrôles, mappe les référentiels de conformité et génère les rapports.
En CI, cloudg gate fait échouer la tâche sur les constats dont la gravité est égale ou supérieure à un seuil et écrit du SARIF pour l'analyse de code. Sur GitHub, le dépôt fait aussi office d'action qui installe cloudg et les scanners, exécute le pipeline et le soumet au contrôle :
permissions:
contents: read
id-token: write # OIDC login to the cloud
security-events: write # SARIF upload
steps:
- uses: aws-actions/configure-aws-credentials@v6
with:
role-to-assume: arn:aws:iam::123456789012:role/cloudg-github
aws-region: us-east-1
- uses: morpheuslord/[email protected]
with:
provider: aws
fail-on: critical
min-assets: "1"
Le guide CI et automatisation contient toutes les entrées, les connexions Azure et GCP, GitLab CI et une version shell simple.
pip seul fonctionne aussi : pip install -e ".[all]". Les SDK cloud sont des extras, donc pip install cloudg[aws] ne récupère que boto3/aioboto3, [azure] et [gcp] font de même pour leurs SDK respectifs, et [all] installe l'ensemble. Le paquet de base sans extras vous fournit tout de même le moteur de graphe, l'ontologie, le normaliseur et les moteurs de rendu de rapports.
Les scanners externes (Prowler, Checkov, Trivy, ScoutSuite) sont des exécutables distincts, et non des dépendances Python. install.sh (Linux/macOS) et install.bat (Windows) configurent tout, y compris les scanners et les CLI cloud.
Docker est la voie de la facilité : l'image embarque Prowler, Checkov et Trivy (ScoutSuite n'est pas inclus, exécutez-le séparément et fournissez son rapport à cloudg ingest) :
docker build -t cloudg:latest .
docker compose run --rm cloudg run -p aws --regions us-east-1
cloudg map répond à une question différente de cloudg run : ce qui existe, et comment tout est relié. Découvrir ce qui ne va pas reste le travail des scanners, et aucun d'entre eux ne s'exécute ici ni même n'a besoin d'être installé. Ce qui rend la carte complète :