AWS - Codebuild Enum

Reading time: 4 minutes

tip

AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE)
GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE) Azure हैकिंग सीखें और अभ्यास करें: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks का समर्थन करें

CodeBuild

AWS CodeBuild को पूर्ण रूप से प्रबंधित निरंतर एकीकरण सेवा के रूप में पहचाना जाता है। इस सेवा का मुख्य उद्देश्य स्रोत कोड को संकलित करने, परीक्षण करने और तैनाती के लिए सॉफ़्टवेयर पैकेज करने की प्रक्रिया को स्वचालित करना है। CodeBuild द्वारा प्रदान किया गया प्रमुख लाभ यह है कि यह उपयोगकर्ताओं को अपने निर्माण सर्वरों को प्रावधान, प्रबंधित और स्केल करने की आवश्यकता से मुक्त करता है। यह सुविधा इसलिए है क्योंकि सेवा स्वयं इन कार्यों का प्रबंधन करती है। AWS CodeBuild की आवश्यक विशेषताएँ हैं:

  1. Managed Service: CodeBuild निर्माण सर्वरों का प्रबंधन और स्केल करता है, उपयोगकर्ताओं को सर्वर रखरखाव से मुक्त करता है।
  2. Continuous Integration: यह विकास और तैनाती कार्यप्रवाह के साथ एकीकृत होता है, सॉफ़्टवेयर रिलीज़ प्रक्रिया के निर्माण और परीक्षण चरणों को स्वचालित करता है।
  3. Package Production: निर्माण और परीक्षण चरणों के बाद, यह सॉफ़्टवेयर पैकेज तैयार करता है, जिससे वे तैनाती के लिए तैयार हो जाते हैं।

AWS CodeBuild अन्य AWS सेवाओं के साथ सहजता से एकीकृत होता है, CI/CD (निरंतर एकीकरण/निरंतर तैनाती) पाइपलाइन की दक्षता और विश्वसनीयता को बढ़ाता है।

Github/Gitlab/Bitbucket Credentials

Default source credentials

यह एक विरासती विकल्प है जहाँ कुछ access (जैसे Github टोकन या ऐप) को कॉन्फ़िगर करना संभव है जो codebuild परियोजनाओं के बीच साझा किया जाएगा ताकि सभी परियोजनाएँ इस कॉन्फ़िगर किए गए क्रेडेंशियल सेट का उपयोग कर सकें।

संग्रहीत क्रेडेंशियल (टोकन, पासवर्ड...) codebuild द्वारा प्रबंधित होते हैं और इन्हें AWS APIs से पुनः प्राप्त करने का कोई सार्वजनिक तरीका नहीं है।

Custom source credential

भंडार प्लेटफ़ॉर्म (Github, Gitlab और Bitbucket) के आधार पर विभिन्न विकल्प प्रदान किए जाते हैं। लेकिन सामान्यतः, कोई भी विकल्प जो टोकन या पासवर्ड को संग्रहीत करने की आवश्यकता होती है, उसे सीक्रेट्स मैनेजर में एक सीक्रेट के रूप में संग्रहीत करेगा

यह विभिन्न codebuild परियोजनाओं को प्रदाताओं के लिए विभिन्न कॉन्फ़िगर किए गए एक्सेस का उपयोग करने की अनुमति देता है बजाय इसके कि केवल कॉन्फ़िगर किए गए डिफ़ॉल्ट का उपयोग किया जाए।

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

निम्नलिखित पृष्ठ पर, आप कोडबिल्ड अनुमतियों का दुरुपयोग करके विशेषाधिकार बढ़ाने के तरीके की जांच कर सकते हैं:

AWS - Codebuild Privesc

Post Exploitation

AWS - CodeBuild Post Exploitation

Unauthenticated Access

AWS - CodeBuild Unauthenticated Access

References

tip

AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE)
GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE) Azure हैकिंग सीखें और अभ्यास करें: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks का समर्थन करें