AWS - CodeBuild Unauthenticated Access

Soutenez HackTricks

CodeBuild

Pour plus d'informations, consultez cette page :

AWS - Codebuild Enum

buildspec.yml

Si vous compromettez l'accès en écriture à un dépôt contenant un fichier nommé buildspec.yml, vous pourriez installer une porte dérobée dans ce fichier, qui spécifie les commandes qui vont être exécutées à l'intérieur d'un projet CodeBuild et exfiltrer les secrets, compromettre ce qui est fait et aussi compromettre les identifiants de rôle IAM de CodeBuild.

Notez que même s'il n'y a pas de fichier buildspec.yml mais que vous savez que CodeBuild est utilisé (ou un autre CI/CD), modifier du code légitime qui va être exécuté peut également vous permettre d'obtenir un reverse shell par exemple.

Pour des informations connexes, vous pouvez consulter la page sur la façon d'attaquer Github Actions (similaire à ceci) :

Abusing Github Actions

Runners auto-hébergés de GitHub Actions dans AWS CodeBuild

Comme indiqué dans la documentation, il est possible de configurer CodeBuild pour exécuter des actions Github auto-hébergées lorsqu'un workflow est déclenché dans un dépôt Github configuré. Cela peut être détecté en vérifiant la configuration du projet CodeBuild car le Event type doit contenir : WORKFLOW_JOB_QUEUED et dans un workflow Github car il sélectionnera un runner auto-hébergé comme ceci :

runs-on: codebuild-<project-name>-${{ github.run_id }}-${{ github.run_attempt }}

Cette nouvelle relation entre Github Actions et AWS crée une autre manière de compromettre AWS depuis Github, car le code dans Github sera exécuté dans un projet CodeBuild avec un rôle IAM attaché.

Soutenez HackTricks

Last updated