GCP - Compute Enum
Last updated
Last updated
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)
Apprenez comment cela fonctionne dans :
GCP - VPC & NetworkingVous pouvez facilement trouver des instances de calcul avec des règles de pare-feu ouvertes avec https://gitlab.com/gitlab-com/gl-security/security-operations/gl-redteam/gcp_firewall_enum
C'est ainsi que vous pouvez exécuter des machines virtuelles à l'intérieur de GCP. Consultez cette page pour plus d'informations :
GCP - Compute InstancesPour plus d'informations sur la façon de SSH ou de modifier les métadonnées d'une instance pour escalader les privilèges, consultez cette page :
GCP - local privilege escalation ssh pivotingDans la page suivante, vous pouvez vérifier comment abuser des permissions de calcul pour escalader les privilèges :
GCP - Compute PrivescLes journaux de console série de Compute Engine sont une fonctionnalité qui vous permet de visualiser et de diagnostiquer les journaux de démarrage et du système d'exploitation de vos instances de machine virtuelle.
Les journaux de console série fournissent une vue de bas niveau du processus de démarrage de l'instance, y compris les messages du noyau, les scripts d'initialisation et d'autres événements système qui se produisent lors du démarrage. Cela peut être utile pour déboguer des problèmes de démarrage, identifier des erreurs de configuration ou des erreurs logicielles, ou résoudre des problèmes de connectivité réseau.
Ces journaux peuvent exposer des informations sensibles provenant des journaux système que les utilisateurs à faible privilège ne voient généralement pas, mais avec les permissions IAM appropriées, vous pourriez être en mesure de les lire.
Vous pouvez utiliser la commande gcloud suivante pour interroger les journaux du port série (la permission requise est compute.instances.getSerialPortOutput
) :
Il est possible de voir la sortie des scripts de démarrage depuis la VM exécutant :
Vous pouvez utiliser le service de gestion de configuration OS pour déployer, interroger et maintenir des configurations cohérentes (état souhaité et logiciel) pour votre instance VM (VM). Sur Compute Engine, vous devez utiliser les politiques d'invité pour maintenir des configurations logicielles cohérentes sur une VM.
La fonctionnalité de gestion de configuration OS vous permet de définir des politiques de configuration qui spécifient quels paquets logiciels doivent être installés, quels services doivent être activés et quels fichiers ou configurations doivent être présents sur vos VMs. Vous pouvez utiliser une approche déclarative pour gérer la configuration logicielle de vos VMs, ce qui vous permet d'automatiser et d'évoluer plus facilement votre processus de gestion de configuration.
Cela permet également de se connecter aux instances via les autorisations IAM, donc c'est très utile pour privesc et pivoting.
Pour activer os-config dans un projet entier ou dans une instance, vous devez simplement définir la clé metadata enable-oslogin
sur true
au niveau souhaité.
De plus, vous pouvez définir la métadonnée enable-oslogin-2fa
sur true
pour activer la 2fa.
Lorsque vous l'activez lors de la création d'une instance, les clés de métadonnées seront automatiquement définies.
Plus d'informations sur 2fa dans OS-config, cela ne s'applique que si l'utilisateur est un utilisateur, si c'est un SA (comme le SA de calcul), cela ne nécessitera rien de plus.
Les images de calcul personnalisées peuvent contenir des détails sensibles ou d'autres configurations vulnérables que vous pouvez exploiter.
Lorsqu'une image est créée, vous pouvez choisir 3 types de chiffrement : Utiliser une clé gérée par Google (par défaut), une clé de KMS, ou une clé brute fournie par le client.
Vous pouvez interroger la liste des images non standard dans un projet avec la commande suivante :
Vous pouvez ensuite exporter les disques virtuels à partir de n'importe quelle image dans plusieurs formats. La commande suivante exporterait l'image test-image
au format qcow2, vous permettant de télécharger le fichier et de créer une VM localement pour une enquête plus approfondie :
Vérifiez la section sur l'escalade de privilèges des Instances de Calcul.
Un modèle d'instance définit les propriétés de l'instance pour aider à déployer des configurations cohérentes. Ceux-ci peuvent contenir les mêmes types de données sensibles que les métadonnées personnalisées d'une instance en cours d'exécution. Vous pouvez utiliser les commandes suivantes pour enquêter :
Il pourrait être intéressant de savoir quel disque est utilisé par les nouvelles images, mais ces modèles n'auront généralement pas d'informations sensibles.
Les snapshots sont des sauvegardes de disques. Notez que ce n'est pas la même chose que de cloner un disque (une autre fonctionnalité disponible). Le snapshot utilisera la même cryptographie que le disque dont il est issu.
Vérifiez la section sur l'escalade de privilèges des Instances de Calcul.
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)