AWS - Codebuild Enum

Reading time: 4 minutes

tip

Jifunze na fanya mazoezi ya AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Jifunze na fanya mazoezi ya GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Jifunze na fanya mazoezi ya Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Support HackTricks

CodeBuild

AWS CodeBuild inatambulika kama huduma ya ushirikiano wa kuendelea inayosimamiwa kikamilifu. Kusudi kuu la huduma hii ni kuharakisha mchakato wa kukusanya msimbo wa chanzo, kutekeleza majaribio, na kufunga programu kwa ajili ya matumizi ya kutekeleza. Faida kuu inayotolewa na CodeBuild ni uwezo wake wa kupunguza hitaji la watumiaji kuandaa, kusimamia, na kupanua seva zao za kujenga. Urahisi huu unatokana na ukweli kwamba huduma yenyewe inasimamia kazi hizi. Vipengele muhimu vya AWS CodeBuild ni pamoja na:

  1. Huduma Inayosimamiwa: CodeBuild inasimamia na kupanua seva za kujenga, ikiwatoa watumiaji kwenye matengenezo ya seva.
  2. Ushirikiano wa Kuendelea: Inashirikiana na mchakato wa maendeleo na utekelezaji, ikiharakisha hatua za kujenga na majaribio ya mchakato wa kutolewa kwa programu.
  3. Uzalishaji wa Kifurushi: Baada ya hatua za kujenga na majaribio, inatayarisha vifurushi vya programu, ikifanya kuwa tayari kwa utekelezaji.

AWS CodeBuild inashirikiana kwa urahisi na huduma nyingine za AWS, ikiongeza ufanisi na uaminifu wa mchakato wa CI/CD (Ushirikiano wa Kuendelea/Utekelezaji wa Kuendelea).

Github/Gitlab/Bitbucket Credentials

Default source credentials

Hii ni chaguo la zamani ambapo inawezekana kuunda ufikiaji (kama token ya Github au programu) ambayo itakuwa inasambazwa kati ya miradi ya codebuild ili miradi yote iweze kutumia seti hii ya akreditivu iliyowekwa.

Akreditivu zilizohifadhiwa (tokens, nywila...) zinazosimamiwa na codebuild na hakuna njia ya umma ya kuzirejesha kutoka kwa AWS APIs.

Custom source credential

Kulingana na jukwaa la hifadhi (Github, Gitlab na Bitbucket) chaguzi tofauti zinatolewa. Lakini kwa ujumla, chaguo lolote linalohitaji kuhifadhi token au nywila litahifadhiwa kama siri katika meneja wa siri.

Hii inaruhusu miradi tofauti ya codebuild kutumia ufikiaji tofauti ulioandaliwa kwa watoa huduma badala ya kutumia tu ile iliyowekwa kama chaguo la kawaida.

Enumeration

bash
# List external repo creds (such as github tokens)
## It doesn't return the token but just the ARN where it's located
aws codebuild list-source-credentials

# Projects
aws codebuild list-shared-projects
aws codebuild list-projects
aws codebuild batch-get-projects --names <project_name> # Check for creds in env vars

# Builds
aws codebuild list-builds
aws codebuild list-builds-for-project --project-name <p_name>
aws codebuild list-build-batches
aws codebuild list-build-batches-for-project --project-name <p_name>

# Reports
aws codebuild list-reports
aws codebuild describe-test-cases --report-arn <ARN>

Privesc

Katika ukurasa ufuatao, unaweza kuangalia jinsi ya kudhulumu ruhusa za codebuild ili kupandisha hadhi:

AWS - Codebuild Privesc

Post Exploitation

AWS - CodeBuild Post Exploitation

Unauthenticated Access

AWS - CodeBuild Unauthenticated Access

References

tip

Jifunze na fanya mazoezi ya AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Jifunze na fanya mazoezi ya GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Jifunze na fanya mazoezi ya Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Support HackTricks