Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
cliam — Énumérateur de permissions IAM agnostique au cloud | Kitploit
Outils/GitHubGitHub/securisec/cliam
ReconnaissanceAnalyse des VulnérabilitésCollecte d'InformationsTests d'IntrusionSécurité Cloud
GitHubsecurisec/cliam

cliam

Énumérateur de permissions IAM agnostique au cloud

Voir le dépôt
16310il y a 3 ansVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

cliam

Outil d'énumération des permissions IAM multi-cloud. Couvre actuellement :

  • AWS
  • GCP
  • Azure
  • [] Oracle

🚧 En cours

asciicast

Description

Cliam est un simple identifiant de permissions cloud. Il comporte deux composants principaux en ligne de commande. La plupart des permissions énumérées sont des permissions de type list, describe ou get.

  • enumerate qui peut être utilisé pour énumérer des permissions spécifiques (recommandé)
  • Certains fournisseurs de services disposent de groupes de services qui peuvent vérifier les permissions pour un sous-ensemble spécifique de services/ressources.

Installation

Téléchargez la dernière version. Les tags DEV sont actuels, mais pas stables.

Pour compiler le binaire localement, placez-vous dans le répertoire cli et exécutez make dev

Utilisation

Cliam fonctionne avec des identifiants obtenus à partir des variables d'environnement bien connues des services ou en passant les options couramment requises depuis la CLI.

Il est fortement recommandé de définir les complétions de commandes, car la plupart des options enumerate doivent être spécifiques. Pour générer les complétions, utilisez cliam completion [shell] et configurez selon le répertoire de complétion de votre shell.

root@kitploit:~
Usage:
  cliam [command]

Available Commands:
  aws         Enumerate AWS credentials for their permissions.
  azure       Enumerate Azure credentials for their permissions.
  completion  Generate the autocompletion script for the specified shell
  firebase    Enumerate Firebase permissions.
  gcp         Enumerate GCP service accounts for their permissions.
  help        Help about any command
  version     Show version and build info

Flags:
  -h, --help                  help for cliam
      --max-threads int       Maximum number of threads to use. (default 5)
      --request-timeout int   Timeout for each request in seconds. (default 5)
      --save-output           Save output to file on success
  -v, --verbose               Enable verbose output.

AWS

Utilise l'API REST AWS pour effectuer une requête signée à l'aide des identifiants fournis. Cela augmente considérablement la vitesse, mais rend plus difficile le suivi de l'ajout de nouvelles permissions. Le problème d'échelle est qu'AWS utilise 3 à 4 variétés de requêtes au niveau du service.

Prend en charge l'obtention d'identifiants via le profil AWS, les options, ou les variables d'environnement AWS par défaut comme AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY et éventuellement AWS_SESSION_TOKEN.

root@kitploit:~
❯❯ cliam aws                                                        
Enumerate AWS credentials for their permissions.

Usage:
  cliam aws [command]

Available Commands:
  enumerate     Enumerate permissions for specified AWS resources.
  service-group Enumerate permissions for groups of AWS resources.

Flags:
      --access-key-id string         AWS Access Key ID
  -h, --help                         help for aws
      --known-value stringToString   AWS Resource Name. When known-resource-name is set, additional permissions where a resource needs to be specified is enumerated. (default [])
      --profile string               AWS Profile. When profile is set, access-key-id, secret-access-key, and session-token are ignored.
      --region string                AWS Region (default "us-east-1")
      --secret-access-key string     AWS Secret Access Key
      --session-json string          AWS Session JSON file. This flag attempts to read session information from the specified file. Helpful with temporary credentials.
      --session-token string         AWS Session Token

Global Flags:
      --max-threads int       Maximum number of threads to use. (default 5)
      --request-timeout int   Timeout for each request in seconds. (default 5)
  -v, --verbose               Enable verbose output.

Ressources connues

Cliam pour AWS permet également d'énumérer certaines permissions nécessitant une valeur connue. Par exemple, avec awscli, on peut obtenir une fonction en utilisant aws lambda get-function --function-name <function_name>.

Cela correspond directement à cliam où nous pouvons utiliser :

root@kitploit:~
cliam aws enumerate lamda --known-value function-name=<function_name>

Cela énumérera toutes les permissions pour lambda qui accepte function-name comme argument valide. Cela fonctionnera également avec d'autres ressources AWS.

Exemples

Bruteforce de toutes les ressources serverless depuis un profil AWS

root@kitploit:~
❯❯ cliam aws service-group serverless --profile=my-profile

Utilisez les jetons de session temporaires obtenus pour vérifier toutes les permissions EC2

root@kitploit:~
❯❯ cliam aws enumerate ec2 --session-json=creds.json

Where creds.json has
{
  "Type" : "AWS-HMAC",
  "AccessKeyId" : "ASIA...",
  "SecretAccessKey" : "...",
  "Token" : "...",
}

Énumérez les permissions pour s3, iam et ec2

root@kitploit:~
❯❯ cliam aws enumerate s3 iam ec2

GCP

GCP prend en charge l'énumération à partir d'un fichier JSON de compte de service spécifique. Les identifiants issus des variables d'environnement GCP GOOGLE_APPLICATION_CREDENTIALS et CLOUDSDK_CORE_PROJECT sont également pris en charge.

Comme il existe deux modes pour l'énumération GCP, utilisez enumerate si cloudresourcemanager est activé, ou utilisez rest pour énumérer des permissions spécifiques.

root@kitploit:~
cliam gcp --help
Enumerate GCP service accounts for their permissions.

Usage:
  cliam gcp [command]

Available Commands:
  bruteforce  Enumerate all GCP permissions
  enumerate   Enumerate specified GCP permissions
  rest        GCP permissions using the REST API

Flags:
  -h, --help                     help for gcp
      --project-id string        GCP project id
      --region string            GCP Region (default "us-central1")
      --service-account string   GCP service account path
      --zone string              GCP Zone (default "us-central1-a")

Global Flags:
      --max-threads int       Maximum number of threads to use. (default 5)
      --request-timeout int   Timeout for each request in seconds. (default 10)

Use "cliam gcp [command] --help" for more information about a command.

Azure

L'énumération Azure prend en charge diverses méthodes d'authentification, notamment les principaux de service (via l'identifiant client et le secret), le certificat MSI (via le jeton MSI), ou l'authentification par défaut. Il prend également en charge toutes les variables d'environnement Azure courantes.

  • AZURE_CLIENT_ID : identifiant client ou nom d'utilisateur
  • AZURE_CLIENT_SECRET : secret client
  • AZURE_SUBSCRIPTION_ID : identifiant d'abonnement
  • AZURE_CLIENT_CERTIFICATE_PATH : chemin vers le certificat
  • AZURE_TENANT_ID : identifiant de locataire
  • CLIAM_AZURE_OAUTH_TOKEN : jeton OAuth existant
root@kitploit:~
❯❯ cliam azure
Enumerate Azure credentials for their permissions.
In most cases, a valid Azure Subscription ID is required. If one 
is not provided, the CLI will attempt to lookup available subscriptions 
and use the first one.

Usage:
  cliam azure [command]

Available Commands:
  access-token  Get access token to use with REST apis
  enumerate     Enumerate permissions for specified azure resources.
  service       Enumerate permissions for a specific group of azure services.
  subscriptions List all subscriptions

Débogage

cliam prend en charge deux variables d'environnement pour afficher les sorties de débogage

  • DEBUG=true (affiche les codes d'état des requêtes)
  • VERBOSE=true (affiche le corps des requêtes)
Télécharger l’outil