Translated ['src/pentesting-ci-cd/cloudflare-security/cloudflare-domains

This commit is contained in:
Translator
2025-01-11 18:51:48 +00:00
parent 608a48718c
commit 5645f346ff
44 changed files with 2044 additions and 469 deletions

View File

@@ -6,7 +6,7 @@
**Voordat jy begin pentesting** 'n **AWS** omgewing, is daar 'n paar **basiese dinge wat jy moet weet** oor hoe AWS werk om jou te help verstaan wat jy moet doen, hoe om miskonfigurasies te vind en hoe om dit te benut.
Konsepte soos organisasie hiërargie, IAM en ander basiese konsepte word verduidelik in:
Konsepte soos organisasiehiërargie, IAM en ander basiese konsepte word verduidelik in:
{{#ref}}
aws-basic-information/
@@ -31,19 +31,19 @@ Gereedskap om aanvalle te simuleer:
Om 'n AWS omgewing te oudit, is dit baie belangrik om te weet: watter **dienste gebruik word**, wat is **blootgestel**, wie het **toegang** tot wat, en hoe is interne AWS dienste en **eksterne dienste** gekoppel.
Vanuit 'n Red Team perspektief, is die **eerste stap om 'n AWS omgewing te kompromitteer** om daarin te slaag om 'n paar **akkrediteerbare** te verkry. Hier is 'n paar idees oor hoe om dit te doen:
Vanuit 'n Red Team perspektief, is die **eerste stap om 'n AWS omgewing te kompromitteer** om daarin te slaag om 'n paar **akkrediteerbare inligting** te verkry. Hier is 'n paar idees oor hoe om dit te doen:
- **Leaks** in github (of soortgelyk) - OSINT
- **Sosiale** Ingenieurswese
- **Wagwoord** hergebruik (wagwoordlekke)
- Kw vulnerabilities in AWS-gehoste toepassings
- [**Server Side Request Forgery**](https://book.hacktricks.xyz/pentesting-web/ssrf-server-side-request-forgery/cloud-ssrf) met toegang tot metadata eindpunt
- Kwesbaarhede in AWS-gehoste toepassings
- [**Server Side Request Forgery**](https://book.hacktricks.wiki/en/pentesting-web/ssrf-server-side-request-forgery/cloud-ssrf.html) met toegang tot metadata-eindpunt
- **Plaaslike Lêer Lees**
- `/home/USERNAME/.aws/credentials`
- `C:\Users\USERNAME\.aws\credentials`
- 3de partye **gekompromitteer**
- **Interne** Werknemer
- [**Cognito** ](aws-services/aws-cognito-enum/#cognito)akkrediteerbare
- [**Cognito** ](aws-services/aws-cognito-enum/index.html#cognito)akkrediteerbare inligting
Of deur **'n nie-geauthentiseerde diens** wat blootgestel is te kompromitteer:
@@ -51,14 +51,14 @@ Of deur **'n nie-geauthentiseerde diens** wat blootgestel is te kompromitteer:
aws-unauthenticated-enum-access/
{{#endref}}
Of as jy 'n **hersiening** doen, kan jy net **vraag vir akkrediteerbare** met hierdie rolle:
Of as jy 'n **hersiening** doen, kan jy net **vraag vir akkrediteerbare inligting** met hierdie rolle:
{{#ref}}
aws-permissions-for-a-pentest.md
{{#endref}}
> [!NOTE]
> Nadat jy daarin geslaag het om akkrediteerbare te verkry, moet jy weet **aan wie behoort daardie akkrediteerbare**, en **waartoe hulle toegang het**, so jy moet 'n paar basiese enumerasie uitvoer:
> Nadat jy daarin geslaag het om akkrediteerbare inligting te verkry, moet jy weet **aan wie behoort daardie akkrediteerbare inligting**, en **waartoe hulle toegang het**, so jy moet 'n paar basiese enumerasie uitvoer:
## Basiese Enumerasie
@@ -67,7 +67,7 @@ aws-permissions-for-a-pentest.md
As jy 'n SSRF in 'n masjien binne AWS gevind het, kyk na hierdie bladsy vir truuks:
{{#ref}}
https://book.hacktricks.xyz/pentesting-web/ssrf-server-side-request-forgery/cloud-ssrf
https://book.hacktricks.wiki/en/pentesting-web/ssrf-server-side-request-forgery/cloud-ssrf.html
{{#endref}}
### Whoami
@@ -89,7 +89,7 @@ TOKEN=`curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metad
curl -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/dynamic/instance-identity/document
```
> [!CAUTION]
> Let daarop dat maatskappye dalk **canary tokens** gebruik om te identifiseer wanneer **tokens gesteel en gebruik word**. Dit word aanbeveel om te kontroleer of 'n token 'n canary token is of nie voordat jy dit gebruik.\
> Let daarop dat maatskappye **kanarie tokens** mag gebruik om te identifiseer wanneer **tokens gesteel en gebruik word**. Dit word aanbeveel om te kontroleer of 'n token 'n kanarie token is of nie voordat jy dit gebruik.\
> Vir meer inligting [**kyk na hierdie bladsy**](aws-services/aws-security-and-detection-services/aws-cloudtrail-enum.md#honeytokens-bypass).
### Organisasie Enumerasie
@@ -102,7 +102,7 @@ aws-services/aws-organizations-enum.md
As jy genoeg regte het, sal **die privileges van elke entiteit binne die AWS-rekening nagaan** jou help om te verstaan wat jy en ander identiteite kan doen en hoe om **privileges te verhoog**.
As jy nie genoeg regte het om IAM te enumerate nie, kan jy dit **steal bruteforce** om dit uit te figure.\
As jy nie genoeg regte het om IAM te evalueer nie, kan jy dit **steal bruteforce** om dit uit te vind.\
Kyk **hoe om die numerasie en bruteforcing te doen** in:
{{#ref}}
@@ -110,8 +110,8 @@ aws-services/aws-iam-enum.md
{{#endref}}
> [!NOTE]
> Nou dat jy **'n paar inligting oor jou akrediteer** (en as jy 'n rooi span is hoop ek jy **is nie opgespoor nie**). Dit is tyd om uit te vind watter dienste in die omgewing gebruik word.\
> In die volgende afdeling kan jy 'n paar maniere kyk om **'n paar algemene dienste te enumerate.**
> Nou dat jy **'n bietjie inligting oor jou akrediteer** (en as jy 'n rooi span is hoop ek jy **is nie opgespoor nie**). Dit is tyd om uit te vind watter dienste in die omgewing gebruik word.\
> In die volgende afdeling kan jy 'n paar maniere kyk om **'n paar algemene dienste te evalueer.**
## Dienste Enumerasie, Post-Exploitation & Persistensie
@@ -121,7 +121,7 @@ AWS het 'n verbasende hoeveelheid dienste, in die volgende bladsy sal jy **basie
aws-services/
{{#endref}}
Let daarop dat jy **nie** al die werk **handmatig** hoef te doen nie, hieronder in hierdie pos kan jy 'n **afdeling oor** [**outomatiese gereedskap**](./#automated-tools) vind.
Let daarop dat jy **nie** al die werk **handmatig** hoef te doen nie, hieronder in hierdie pos kan jy 'n **afdeling oor** [**outomatiese gereedskap**](#automated-tools) vind.
Boonop, in hierdie fase mag jy **meer dienste ontdek wat aan nie-geverifieerde gebruikers blootgestel is,** jy mag in staat wees om dit te benut:
@@ -131,7 +131,7 @@ aws-unauthenticated-enum-access/
## Privilege Verhoging
As jy **ten minste jou eie regte** oor verskillende hulpbronne kan **nagaan**, kan jy **kyk of jy verdere regte kan verkry**. Jy moet ten minste fokus op die regte wat in:
As jy **ten minste jou eie regte** oor verskillende hulpbronne kan nagaan, kan jy **kyk of jy in staat is om verdere regte te verkry**. Jy moet ten minste fokus op die regte wat in:
{{#ref}}
aws-privilege-escalation/
@@ -139,13 +139,13 @@ aws-privilege-escalation/
## Publiek Blootgestelde Dienste
Terwyl jy AWS-dienste enumerate, mag jy sommige van hulle gevind het wat **elemente aan die Internet blootstel** (VM/Containers poorte, databasisse of wagdiens, snapshots of emmers...).\
As pentester/red teamer moet jy altyd kyk of jy **sensitiewe inligting / kwesbaarhede** op hulle kan vind aangesien dit jou **verdere toegang tot die AWS-rekening** mag bied.
Terwyl jy AWS-dienste evalueer, mag jy sommige van hulle gevind het wat **elemente aan die Internet blootstel** (VM/Containers poorte, databasisse of wagdiens, snappings of emmers...).\
As pentester/rooi spanlid moet jy altyd kyk of jy **sensitiewe inligting / kwesbaarhede** op hulle kan vind, aangesien dit jou mag voorsien van **verdere toegang tot die AWS-rekening**.
In hierdie boek behoort jy **inligting** te vind oor hoe om **blootgestelde AWS-dienste te vind en hoe om dit te kontroleer**. Oor hoe om **kwesbaarhede in blootgestelde netwerkdienste** te vind, sou ek jou aanbeveel om **te soek** na die spesifieke **diens** in:
In hierdie boek moet jy **inligting** vind oor hoe om **blootgestelde AWS-dienste te vind en hoe om dit te kontroleer**. Oor hoe om **kwesbaarhede in blootgestelde netwerkdienste te vind**, sou ek jou aanbeveel om te **soek** na die spesifieke **diens** in:
{{#ref}}
https://book.hacktricks.xyz/
https://book.hacktricks.wiki/
{{#endref}}
## Kompromitering van die Organisasie
@@ -156,12 +156,12 @@ Wanneer die bestuurrekening nuwe rekeninge in die organisasie skep, word 'n **nu
<figure><img src="../../images/image (171).png" alt=""><figcaption></figcaption></figure>
So, om as administrateur toegang tot 'n kindrekening te verkry, moet jy:
So, om as administrateur toegang te verkry tot 'n kindrekening, moet jy:
- **Kompromiteer** die **bestuur** rekening en vind die **ID** van die **kindrekening** en die **name** van die **rol** (OrganizationAccountAccessRole standaard) wat die bestuurrekening toelaat om as admin toegang te verkry.
- Om kindrekening te vind, gaan na die organisasieseksie in die aws-konsol of voer `aws organizations list-accounts` uit.
- Jy kan nie die name van die rolle direk vind nie, so kyk na al die persoonlike IAM-beleide en soek enige wat **`sts:AssumeRole` oor die voorheen ontdekte kindrekening** toelaat.
- **Kompromiteer** 'n **hoof** in die bestuurrekening met **`sts:AssumeRole` toestemming oor die rol in die kindrekening** (selfs as die rekening enige iemand van die bestuurrekening toelaat om te verpersoonlik, aangesien dit 'n eksterne rekening is, is spesifieke `sts:AssumeRole` toestemmings nodig).
- Om kindrekeninge te vind, gaan na die organisasieseksie in die aws-konsol of hardloop `aws organizations list-accounts`
- Jy kan nie die name van die rolle direk vind nie, so kyk na al die pasgemaakte IAM-beleide en soek enige wat **`sts:AssumeRole` oor die voorheen ontdekte kindrekeninge** toelaat.
- **Kompromiteer** 'n **hoof** in die bestuurrekening met **`sts:AssumeRole` toestemming oor die rol in die kindrekeninge** (selfs as die rekening enige iemand van die bestuurrekening toelaat om te verpersoonlik, aangesien dit 'n eksterne rekening is, is spesifieke `sts:AssumeRole` toestemmings nodig).
## Outomatiese Gereedskap
@@ -178,7 +178,7 @@ AWS_PROFILE=<profile> aws_recon \
--regions global,us-east-1,us-east-2 \
--verbose
```
- [**cloudlist**](https://github.com/projectdiscovery/cloudlist): Cloudlist is 'n **multi-cloud hulpmiddel om Bate** (Gasname, IP Adresse) van Cloud Verskaffers te verkry.
- [**cloudlist**](https://github.com/projectdiscovery/cloudlist): Cloudlist is 'n **multi-cloud hulpmiddel om Bate** (Gasname, IP Adresse) van Wolk Verskaffers te verkry.
- [**cloudmapper**](https://github.com/duo-labs/cloudmapper): CloudMapper help jou om jou Amazon Web Services (AWS) omgewings te analiseer. Dit bevat nou baie meer funksionaliteit, insluitend ouditering vir sekuriteitskwessies.
```bash
# Installation steps in github
@@ -235,13 +235,13 @@ AWS_PROFILE=dev cartography --neo4j-uri bolt://127.0.0.1:7687 --neo4j-password-p
```
- [**starbase**](https://github.com/JupiterOne/starbase): Starbase versamel bates en verhoudings van dienste en stelsels, insluitend wolkinfrastruktuur, SaaS-toepassings, sekuriteitsbeheer, en meer in 'n intuïtiewe grafiekweergave wat deur die Neo4j-databasis ondersteun word.
- [**aws-inventory**](https://github.com/nccgroup/aws-inventory): (Gebruik python2) Dit is 'n hulpmiddel wat probeer om **alle** [**AWS hulpbronne**](https://docs.aws.amazon.com/general/latest/gr/glos-chap.html#resource) wat in 'n rekening geskep is, te **ontdek**.
- [**aws_public_ips**](https://github.com/arkadiyt/aws_public_ips): Dit is 'n hulpmiddel om **alle publieke IP-adresse** (beide IPv4/IPv6) wat met 'n AWS-rekening geassosieer is, te **haal**.
- [**aws_public_ips**](https://github.com/arkadiyt/aws_public_ips): Dit is 'n hulpmiddel om **alle publieke IP-adresse** (both IPv4/IPv6) wat met 'n AWS-rekening geassosieer is, te **haal**.
### Privesc & Exploiting
- [**SkyArk**](https://github.com/cyberark/SkyArk)**:** Ontdek die mees bevoorregte gebruikers in die gescande AWS-omgewing, insluitend die AWS Shadow Admins. Dit gebruik powershell. Jy kan die **definisie van bevoorregte beleide** in die funksie **`Check-PrivilegedPolicy`** vind in [https://github.com/cyberark/SkyArk/blob/master/AWStealth/AWStealth.ps1](https://github.com/cyberark/SkyArk/blob/master/AWStealth/AWStealth.ps1).
- [**pacu**](https://github.com/RhinoSecurityLabs/pacu): Pacu is 'n oopbron **AWS eksploitasiestelsel**, ontwerp vir offensiewe sekuriteitstoetsing teen wolkomgewings. Dit kan **opnoem**, **mis-konfigurasies** vind en dit **eksploiteer**. Jy kan die **definisie van bevoorregte toestemmings** vind in [https://github.com/RhinoSecurityLabs/pacu/blob/866376cd711666c775bbfcde0524c817f2c5b181/pacu/modules/iam\_\_privesc_scan/main.py#L134](https://github.com/RhinoSecurityLabs/pacu/blob/866376cd711666c775bbfcde0524c817f2c5b181/pacu/modules/iam__privesc_scan/main.py#L134) binne die **`user_escalation_methods`** dict.
- Let daarop dat pacu **slegs jou eie privesc-paaie nagaan** (nie rekeningwyd).
- Let daarop dat pacu **slegs jou eie privesc-paaie nagaan** (nie rekeningwyd nie).
```bash
# Install
## Feel free to use venvs
@@ -303,7 +303,7 @@ cloudsplaining scan --input-file /private/tmp/cloudsplaining/dev.json --output /
# Compiance options: --compliance {hipaa,cis,cis1,cis2,pci}
## use "cis" for cis level 1 and 2
```
- [**Prowler**](https://github.com/prowler-cloud/prowler): Prowler is 'n Open Source sekuriteitstoepassing om AWS sekuriteit beste praktyke assesserings, ouditte, insidentreaksie, deurlopende monitering, verharding en forensiese gereedheid uit te voer.
- [**Prowler**](https://github.com/prowler-cloud/prowler): Prowler is 'n Open Source sekuriteitstoepassing om AWS sekuriteit beste praktyke assesserings, ouditte, insidentrespons, deurlopende monitering, verharding en forensiese gereedheid uit te voer.
```bash
# Install python3, jq and git
# Install
@@ -314,11 +314,11 @@ prowler -v
prowler <provider>
prowler aws --profile custom-profile [-M csv json json-asff html]
```
- [**CloudFox**](https://github.com/BishopFox/cloudfox): CloudFox help jou om situasionele bewustheid te verkry in onbekende wolkomgewings. Dit is 'n oopbron-opdraglyn hulpmiddel geskep om penetrasietoetsers en ander offensiewe sekuriteitsprofessionals te help om ontginbare aanvalspaaie in wolkinfrastruktuur te vind.
- [**CloudFox**](https://github.com/BishopFox/cloudfox): CloudFox help jou om situasionele bewustheid te verkry in onbekende wolkomgewings. Dit is 'n oopbron-opdraglyn hulpmiddel wat geskep is om penetrasietoetsers en ander offensiewe sekuriteitsprofessionals te help om ontginbare aanvalspaaie in wolkinfrastruktuur te vind.
```bash
cloudfox aws --profile [profile-name] all-checks
```
- [**ScoutSuite**](https://github.com/nccgroup/ScoutSuite): Scout Suite is 'n oopbron multi-cloud sekuriteitsouditinstrument, wat sekuriteitsposisie-evaluering van wolkomgewings moontlik maak.
- [**ScoutSuite**](https://github.com/nccgroup/ScoutSuite): Scout Suite is 'n oopbron multi-cloud sekuriteitsouditeringstoel, wat sekuriteitsposisie-evaluering van wolkomgewings moontlik maak.
```bash
# Install
virtualenv -p python3 venv
@@ -330,13 +330,13 @@ scout --help
scout aws -p dev
```
- [**cs-suite**](https://github.com/SecurityFTW/cs-suite): Cloud Security Suite (gebruik python2.7 en lyk ononderhoude)
- [**Zeus**](https://github.com/DenizParlak/Zeus): Zeus is 'n kragtige hulpmiddel vir AWS EC2 / S3 / CloudTrail / CloudWatch / KMS beste versterking praktyke (lyk ononderhoude). Dit kontroleer slegs standaard geconfigureerde krediete binne die stelsel.
- [**Zeus**](https://github.com/DenizParlak/Zeus): Zeus is 'n kragtige hulpmiddel vir AWS EC2 / S3 / CloudTrail / CloudWatch / KMS beste versterking praktyke (lyk ononderhoude). Dit kontroleer slegs standaard geconfigureerde kredensiale binne die stelsel.
### Konstante Oudit
- [**cloud-custodian**](https://github.com/cloud-custodian/cloud-custodian): Cloud Custodian is 'n reëls engine vir die bestuur van openbare wolk rekeninge en hulpbronne. Dit stel gebruikers in staat om **beleide te definieer om 'n goed bestuurde wolkinfrastruktuur te enable**, wat beide veilig en koste-geoptimaliseer is. Dit konsolideer baie van die adhoc skripte wat organisasies het in 'n liggewig en buigsame hulpmiddel, met verenigde metrieke en verslagdoening.
- [**pacbot**](https://github.com/tmobile/pacbot)**: Policy as Code Bot (PacBot)** is 'n platform vir **deurlopende nakoming monitering, nakoming verslagdoening en sekuriteit outomatisering vir die wolk**. In PacBot word sekuriteit en nakoming beleid as kode geïmplementeer. Alle hulpbronne wat deur PacBot ontdek word, word geëvalueer teen hierdie beleide om beleid nakoming te meet. Die PacBot **auto-fix** raamwerk bied die vermoë om outomaties te reageer op beleids oortredings deur vooraf gedefinieerde aksies te neem.
- [**streamalert**](https://github.com/airbnb/streamalert)**:** StreamAlert is 'n serverless, **regte-tyd** data analise raamwerk wat jou in staat stel om **data van enige omgewing in te neem, te analiseer en te waarsku** , **met data bronne en waarskuwing logika wat jy definieer**. Rekenaar sekuriteitspanne gebruik StreamAlert om terabytes van logdata elke dag te skandeer vir insidentdetectie en -reaksie.
- [**cloud-custodian**](https://github.com/cloud-custodian/cloud-custodian): Cloud Custodian is 'n reëlsengine vir die bestuur van openbare wolk rekeninge en hulpbronne. Dit stel gebruikers in staat om **beleide te definieer om 'n goed bestuurde wolkinfrastruktuur te enable**, wat beide veilig en koste-geoptimaliseer is. Dit konsolideer baie van die adhoc skripte wat organisasies het in 'n liggewig en buigsame hulpmiddel, met verenigde metrieke en verslagdoening.
- [**pacbot**](https://github.com/tmobile/pacbot)**: Policy as Code Bot (PacBot)** is 'n platform vir **deurlopende nakoming monitering, nakoming verslagdoening en sekuriteitsoutomatisering vir die wolk**. In PacBot word sekuriteit en nakoming beleid as kode geïmplementeer. Alle hulpbronne wat deur PacBot ontdek word, word teen hierdie beleide geëvalueer om beleid nakoming te meet. Die PacBot **auto-fix** raamwerk bied die vermoë om outomaties op beleid oortredings te reageer deur vooraf gedefinieerde aksies te neem.
- [**streamalert**](https://github.com/airbnb/streamalert)**:** StreamAlert is 'n serverless, **regte-tyd** data analise raamwerk wat jou in staat stel om **data van enige omgewing in te neem, te analiseer en te waarsku**. Rekenaar sekuriteitspanne gebruik StreamAlert om terabytes van logdata elke dag te skandeer vir insidentdetectie en -reaksie.
## DEBUG: Capture AWS cli requests
```bash