GCP - KMS Enum
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Le Cloud Key Management Service sert de stockage sécurisé pour les clés cryptographiques, qui sont essentielles pour des opérations telles que le chiffrement et le déchiffrement de données sensibles. Ces clés sont organisées au sein de bagues de clés, permettant une gestion structurée. De plus, le contrôle d'accès peut être méticuleusement configuré, soit au niveau de chaque clé, soit pour l'ensemble de la bague de clés, garantissant que les autorisations sont précisément alignées avec les exigences de sécurité.
Les bagues de clés KMS sont par défaut créées comme globales, ce qui signifie que les clés à l'intérieur de cette bague de clés sont accessibles depuis n'importe quelle région. Cependant, il est possible de créer des bagues de clés spécifiques dans des régions spécifiques.
Clés logicielles : Les clés logicielles sont créées et gérées par KMS entièrement en logiciel. Ces clés ne sont pas protégées par un module de sécurité matériel (HSM) et peuvent être utilisées à des fins de test et de développement. Les clés logicielles ne sont pas recommandées pour une utilisation en production car elles offrent une faible sécurité et sont susceptibles aux attaques.
Clés hébergées dans le cloud : Les clés hébergées dans le cloud sont créées et gérées par KMS dans le cloud en utilisant une infrastructure hautement disponible et fiable. Ces clés sont protégées par des HSM, mais les HSM ne sont pas dédiés à un client spécifique. Les clés hébergées dans le cloud conviennent à la plupart des cas d'utilisation en production.
Clés externes : Les clés externes sont créées et gérées en dehors de KMS, et sont importées dans KMS pour être utilisées dans des opérations cryptographiques. Les clés externes peuvent être stockées dans un module de sécurité matériel (HSM) ou une bibliothèque logicielle, selon la préférence du client.
Chiffrement/déchiffrement symétrique : Utilisé pour chiffrer et déchiffrer des données en utilisant une seule clé pour les deux opérations. Les clés symétriques sont rapides et efficaces pour chiffrer et déchiffrer de grands volumes de données.
Supporté : cryptoKeys.encrypt, cryptoKeys.decrypt
Signature asymétrique : Utilisé pour une communication sécurisée entre deux parties sans partager la clé. Les clés asymétriques se présentent sous forme de paire, composée d'une clé publique et d'une clé privée. La clé publique est partagée avec d'autres, tandis que la clé privée est gardée secrète.
Déchiffrement asymétrique : Utilisé pour vérifier l'authenticité d'un message ou de données. Une signature numérique est créée à l'aide d'une clé privée et peut être vérifiée à l'aide de la clé publique correspondante.
Signature MAC : Utilisé pour garantir l'intégrité et l'authenticité des données en créant un code d'authentification de message (MAC) à l'aide d'une clé secrète. HMAC est couramment utilisé pour l'authentification des messages dans les protocoles réseau et les applications logicielles.
Supporté : cryptoKeyVersions.macSign, cryptoKeyVersions.macVerify
Par défaut, chaque 90 jours mais cela peut être facilement et complètement personnalisé.
La période "programmée pour destruction" est le temps depuis que l'utilisateur demande la suppression de la clé jusqu'à ce que la clé soit supprimée. Elle ne peut pas être modifiée après la création de la clé (par défaut 1 jour).
Chaque clé KMS peut avoir plusieurs versions, l'une d'elles doit être la version par défaut, celle-ci sera utilisée lorsqu'une version n'est pas spécifiée lors de l'interaction avec la clé KMS.
Ayant les autorisations pour lister les clés, voici comment vous pouvez y accéder :
Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE) Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE)