From a6447f3ef2afa5a30bfd595ce88208f1bbf49744 Mon Sep 17 00:00:00 2001 From: Translator Date: Sat, 15 Nov 2025 16:36:41 +0000 Subject: [PATCH] Translated ['src/pentesting-cloud/confidential-computing/luks2-header-ma --- ...2-header-malleability-null-cipher-abuse.md | 141 ++++++++++++++++++ .../pentesting-cloud-methodology.md | 86 +++++------ 2 files changed, 184 insertions(+), 43 deletions(-) create mode 100644 src/pentesting-cloud/confidential-computing/luks2-header-malleability-null-cipher-abuse.md diff --git a/src/pentesting-cloud/confidential-computing/luks2-header-malleability-null-cipher-abuse.md b/src/pentesting-cloud/confidential-computing/luks2-header-malleability-null-cipher-abuse.md new file mode 100644 index 000000000..89e288fc4 --- /dev/null +++ b/src/pentesting-cloud/confidential-computing/luks2-header-malleability-null-cipher-abuse.md @@ -0,0 +1,141 @@ +# LUKS2 Başlık Değiştirilebilirliği ve Null-Cipher Abuse in Confidential VMs'de + +{{#include ../../banners/hacktricks-training.md}} + +## TL;DR + +- Birçok Linux-based Confidential VMs (CVMs) — AMD SEV-SNP veya Intel TDX üzerinde çalışan — kalıcı depolama için LUKS2 kullanır. Disk üzerindeki LUKS2 başlığı değiştirilebilir olup depolama bitişiğindeki saldırganlara karşı bütünlük korumasına sahip değildir. +- Başlık içindeki veri segmenti şifrelemesi null cipher olarak ayarlanırsa (ör. "cipher_null-ecb"), cryptsetup bunu kabul eder ve guest disk şifreli olduğunu zannederken şeffaf şekilde plaintext olarak okur/yazar. +- cryptsetup 2.8.0 ve öncesinde null ciphers keyslots için kullanılabiliyordu; 2.8.1'den itibaren boş olmayan parolaya sahip keyslots için reddediliyor, ancak null ciphers volume segmentleri için izinli kalmaya devam ediyor. +- Remote attestation genellikle VM kodunu/yapılandırmasını ölçer, değiştirilebilir dış LUKS başlıklarını değil; açık bir doğrulama/ölçüm yapılmadıkça, disk yazma erişimine sahip bir saldırgan plaintext I/O zorlayabilir. + +## Background: LUKS2 on-disk format (what matters for attackers) + +- Bir LUKS2 cihazı, başlık ile başlar ve ardından şifrelenmiş veri gelir. +- Başlık, iki özdeş binary bölüm kopyası ve bir JSON metadata bölümü ile bir veya daha fazla keyslots içerir. +- JSON metadata şunları tanımlar: + - etkin keyslots ve bunların sarmalayan KDF/cipher'ları + - veri alanını tanımlayan segments (cipher/mode) + - digests (ör., passphrase'leri doğrulamak için volume anahtarının hash'i) +- Tipik güvenli değerler: keyslot KDF argon2id; keyslot ve data segment şifrelemesi aes-xts-plain64. + +Hızlıca segment cipher'ını doğrudan JSON'dan inceleyin: +```bash +# Read JSON metadata and print the configured data segment cipher +cryptsetup luksDump --type luks2 --dump-json-metadata /dev/VDISK \ +| jq -r '.segments["0"].encryption' +``` +## Kök neden + +- LUKS2 başlıkları depolama manipülasyonuna karşı doğrulanmaz. Bir host/depolama saldırganı, cryptsetup tarafından kabul edilen JSON metadata'sını yeniden yazabilir. +- cryptsetup 2.8.0 itibarıyla, bir segmentin şifrelemesini cipher_null-ecb olarak ayarlayan başlıklar kabul edilir. null cipher anahtarları yok sayar ve düz metin döndürür. +- 2.8.0 öncesine kadar, null cipher'lar keyslot'lar için de kullanılabiliyordu (keyslot herhangi bir passphrase ile açılır). 2.8.1'den itibaren, null cipher'lar boş olmayan parolaya sahip keyslot'lar için reddediliyor, ancak segmentler için izin verilmeye devam ediyor. Sadece segment cipher'ını değiştirmek, 2.8.1 sonrası hâlâ düz metin I/O ile sonuç verir. + +## Tehdit modeli: neden attestation varsayılan olarak sizi korumadı + +- CVM'ler, güvensiz bir hostta gizlilik, bütünlük ve özgünlük sağlamayı amaçlar. +- Remote attestation genellikle VM imajını ve başlatma yapılandırmasını ölçer; güvensiz depolamada bulunan değişken LUKS başlığını değil. +- Eğer CVM'iniz diskteki başlığa sağlam bir doğrulama/ölçüm olmadan güveniyorsa, bir depolama saldırganı onu null cipher olacak şekilde değiştirebilir ve guest herhangi bir hata olmadan düz metin bir volume'u mount eder. + +## İstismar (depolama yazma erişimi gerekli) + +Önkoşullar: +- CVM'nin LUKS2 ile şifrelenmiş blok aygıtına yazma erişimi. +- Guest, diskteki LUKS2 başlığını sağlam doğrulama/attestation olmadan kullanıyor. + +Adımlar (yüksek seviye): +1) Başlık JSON'unu oku ve veri segmenti tanımını belirle. Örnek hedef alan: segments["0"].encryption. +2) Veri segmenti şifrelemesini bir null cipher olarak ayarla, örn. cipher_null-ecb. Guest’in olağan passphrase'inin hâlâ "çalışması" için keyslot parametrelerini ve digest yapısını bozmadan bırak. +3) Her iki başlık kopyasını ve ilişkili başlık digest'lerini güncelleyin, böylece başlık kendi içinde tutarlı olsun. +4) Bir sonraki boot'ta guest cryptsetup çalıştırır, mevcut keyslot'u passphrase ile başarıyla açar ve volume'u mount eder. Segment cipher bir null cipher olduğundan tüm okuma/yazmalar düz metindir. + +Varyant (2.8.1 öncesi keyslot suistimali): eğer bir keyslot'un area.encryption'ı null cipher ise, herhangi bir passphrase ile açılır. Bunu null segment cipher ile birleştirerek guest secret'ını bilmeden sorunsuz düz metin erişimi sağlanabilir. + +## Sağlam hafifletmeler (detached headers ile TOCTOU'dan kaçının) + +Disk üzerindeki LUKS başlıklarını her zaman güvensiz girdi olarak ele alın. detached-header mode kullanın, böylece doğrulama ve açma aynı korumalı RAM'den gelen güvenilir baytları kullanır: +```bash +# Copy header into protected memory (e.g., tmpfs) and open from there +cryptsetup luksHeaderBackup --header-backup-file /tmp/luks_header /dev/VDISK +cryptsetup open --type luks2 --header /tmp/luks_header /dev/VDISK --key-file=key.txt +``` +Sonra şu (veya daha fazlasını) zorunlu kılın: + +1) MAC the full header +- Kullanımdan önce tüm header üzerinde bir MAC hesaplayın/doğrulayın. +- MAC doğrulandığında yalnızca volume'u açın. +- Gerçekteki örnekler: Flashbots tdx-init ve Fortanix Salmiac, MAC tabanlı doğrulamayı benimsedi. + +2) Strict JSON validation (backward compatible) +- JSON metadata'sını döküp parametrelerin sıkı bir allowlist'ini doğrulayın (KDF, ciphers, segment count/type, flags). +```bash +#!/bin/bash +set -e +# Store header in confidential RAM fs +cryptsetup luksHeaderBackup --header-backup-file /tmp/luks_header $BLOCK_DEVICE +# Dump JSON metadata header to a file +cryptsetup luksDump --type luks2 --dump-json-metadata /tmp/luks_header > header.json +# Validate the header +python validate.py header.json +# Open the cryptfs using key.txt +cryptsetup open --type luks2 --header /tmp/luks_header $BLOCK_DEVICE --key-file=key.txt +``` +
+Örnek doğrulayıcı (güvenli alanları zorunlu kılar) +```python +from json import load +import sys +with open(sys.argv[1], "r") as f: +header = load(f) +if len(header["keyslots"]) != 1: +raise ValueError("Expected 1 keyslot") +if header["keyslots"]["0"]["type"] != "luks2": +raise ValueError("Expected luks2 keyslot") +if header["keyslots"]["0"]["area"]["encryption"] != "aes-xts-plain64": +raise ValueError("Expected aes-xts-plain64 encryption") +if header["keyslots"]["0"]["kdf"]["type"] != "argon2id": +raise ValueError("Expected argon2id kdf") +if len(header["tokens"]) != 0: +raise ValueError("Expected 0 tokens") +if len(header["segments"]) != 1: +raise ValueError("Expected 1 segment") +if header["segments"]["0"]["type"] != "crypt": +raise ValueError("Expected crypt segment") +if header["segments"]["0"]["encryption"] != "aes-xts-plain64": +raise ValueError("Expected aes-xts-plain64 encryption") +if "flags" in header["segments"]["0"] and header["segments"]["0"]["flags"]: +raise ValueError("Segment contains unexpected flags") +``` +
+ +3) Başlığı ölçün/doğrulayın +- Rastgele salt/digest'leri kaldırın ve temizlenmiş başlığı TPM/TDX/SEV PCRs veya KMS policy state içine ölçün. +- Şifre çözme anahtarlarını yalnızca ölçülen başlık onaylanmış, güvenli bir profile uyduğunda serbest bırakın. + +Operasyonel rehberlik: +- detached header + MAC veya sıkı doğrulamayı zorunlu kılın; disk üzerindeki başlıklara doğrudan asla güvenmeyin. +- Attestation tüketicileri, allow-list'lerinde pre-patch framework sürümlerini reddetmelidir. + +## Sürümler ve bakımcı pozisyonu hakkında notlar + +- cryptsetup bakımcıları, bu durumda LUKS2'nin depolama oynanmasına karşı bütünlük sağlamak için tasarlanmadığını açıkladı; null ciphers geriye dönük uyumluluk için korunuyor. +- cryptsetup 2.8.1 (Oct 19, 2025) boş olmayan parolalara sahip keyslots için null ciphers'i reddeder, ancak hala segments için null ciphers'e izin verir. + +## Hızlı kontroller ve triyaj + +- Herhangi bir segment encryption'ının null cipher olarak ayarlanıp ayarlanmadığını inceleyin: +```bash +cryptsetup luksDump --type luks2 --dump-json-metadata /dev/VDISK \ +| jq -r '.segments | to_entries[] | "segment=" + .key + ", enc=" + .value.encryption' +``` +- Keyslot ve segment algoritmalarını volümü açmadan önce doğrulayın. Eğer MAC yapamıyorsanız, sıkı JSON doğrulaması zorunlu kılın ve korumalı bellekten detached header kullanarak açın. + +## Referanslar + +- [Vulnerabilities in LUKS2 disk encryption for confidential VMs (Trail of Bits)](https://blog.trailofbits.com/2025/10/30/vulnerabilities-in-luks2-disk-encryption-for-confidential-vms/) +- [cryptsetup issue #954 (null cipher acceptance and integrity considerations)](https://gitlab.com/cryptsetup/cryptsetup/-/issues/954) +- [CVE-2025-59054](https://nvd.nist.gov/vuln/detail/CVE-2025-59054) +- [CVE-2025-58356](https://nvd.nist.gov/vuln/detail/CVE-2025-58356) +- [Related context: CVE-2021-4122 (auto-recovery path silently decrypting disks)](https://www.cve.org/CVERecord?id=CVE-2021-4122) + +{{#include ../../banners/hacktricks-training.md}} diff --git a/src/pentesting-cloud/pentesting-cloud-methodology.md b/src/pentesting-cloud/pentesting-cloud-methodology.md index 1b9bf2da0..876897bff 100644 --- a/src/pentesting-cloud/pentesting-cloud-methodology.md +++ b/src/pentesting-cloud/pentesting-cloud-methodology.md @@ -6,39 +6,39 @@ ## Temel Metodoloji -Her bulutun kendine özgü özellikleri vardır fakat genel olarak bir pentester'ın bir bulut ortamını test ederken kontrol etmesi gereken birkaç **ortak şey** vardır: +Her bulutun kendine ait özellikleri vardır fakat genel olarak bir pentester'ın bir cloud ortamını test ederken kontrol etmesi gereken birkaç ortak şey vardır: - **Benchmark kontrolleri** -- Bu, ortamın **büyüklüğünü** ve **kullanılan servisleri** anlamanıza yardımcı olur +- Bu, ortamın büyüklüğünü ve kullanılan servisleri **anlamanıza** yardımcı olur - Ayrıca çoğu testi **otomatik araçlarla** gerçekleştirebileceğiniz için bazı **hızlı yanlış yapılandırmaları** bulmanızı sağlar - **Services Enumeration** -- Eğer benchmark testlerini doğru uyguladıysanız burada muhtemelen çok daha fazla yanlış yapılandırma bulamayacaksınız, ancak benchmark testinde aranmayan bazıları bulunabilir. -- Bu, bulut ortamında **tam olarak neyin kullanıldığını** bilmenizi sağlar -- Bu sonraki adımlarda çok yardımcı olacaktır -- **Açıkta olan varlıkları kontrol et** -- Bu önceki bölüm sırasında yapılabilir; internete potansiyel olarak açık olan her şeyi **bulmanız** ve nasıl erişilebildiğini belirlemeniz gerekir. -- Burada web sayfaları veya diğer portları açık olan instances gibi **manuel olarak açıkta bırakılmış altyapıyı** ve ayrıca açılabilecek şekilde yapılandırılabilen diğer **cloud yönetimli servisleri** (ör. DBs veya buckets) ele alıyorum -- Sonra bu kaynağın **açığa çıkarılabilir olup olmadığını** kontrol etmelisiniz (gizli bilgi? vulnerabilities? açığa çıkan servisteki yanlış yapılandırmalar?) -- **İzinleri kontrol et** -- Burada bulut içindeki her rol/kullanıcı için **tüm izinleri** ve bunların nasıl kullanıldığını **tespit etmelisiniz** -- Çok fazla **yüksek ayrıcalıklı** (her şeyi kontrol eden) hesap mı var? Oluşturulmuş anahtarlar kullanılmıyor mu?... Bu kontrollerin çoğu zaten benchmark testlerinde yapılmış olmalı -- Eğer müşteri OpenID veya SAML ya da başka bir **federation** kullanıyorsa, her rolün **nasıl atandığı** hakkında daha fazla **bilgi** istemeniz gerekebilir (admin rolünün 1 kullanıcıya mı yoksa 100 kullanıcıya mı atandığı aynı değildir) -- Hangi kullanıcıların **admin** izinlerine "\*:\*" sahip olduğunu **bulmak yeterli değildir**. Kullanılan servislere bağlı olarak çok **hassas** olabilecek birçok **diğer izin** vardır. -- Ayrıca, izinleri kötüye kullanarak takip edilebilecek **potansiyel privesc** yolları vardır. Tüm bu şeyler dikkate alınmalı ve mümkün olduğunca çok **privesc yolu** raporlanmalıdır. -- **Entegrasyonları kontrol et** -- Muhtemelen bulut ortamı içinde **başka cloud'lar veya SaaS ile entegrasyonlar** kullanılmaktadır. -- Denetlediğiniz cloud'un diğer platformlarla olan **entegrasyonları** için, o entegrasyonu **kimlerin (ab)use edebildiğini** bildirmeli ve gerçekleştirilen eylemin **ne kadar hassas** olduğunu sormalısınız.\ -Örneğin, GCP'nin verileri aldığı bir AWS bucket'a kim yazabiliyor? (GCP'de o veriyi işlerken eylemin ne kadar hassas olduğunu sorun). -- Dış platformlardan denetlediğiniz cloud içine yapılan **entegrasyonlar** için, o entegrasyonu dışarıdan **kimlerin (ab)use edebildiğini** sormalı ve bu verinin nasıl kullanıldığını kontrol etmelisiniz.\ -Örneğin, bir servis GCR'de barındırılan bir Docker image kullanıyorsa, o imajı kimlerin değiştirme erişimi olduğunu ve imaj AWS cloud içinde çalıştırıldığında hangi hassas bilgi ve erişimlere sahip olacağını sormalısınız. +- Eğer benchmark testlerini doğru yaptıysanız burada muhtemelen çok daha fazla yanlış yapılandırma bulamazsınız, ancak benchmark testinde aranmayan bazı şeyleri bulabilirsiniz. +- Bu, cloud ortamında **tam olarak nelerin kullanıldığını** bilmenizi sağlar +- Bir sonraki adımlarda çok yardımcı olur +- **Check exposed assets** +- Bu, önceki bölüm sırasında yapılabilir; İnternete bir şekilde potansiyel olarak **açık olan her şeyi** ve bunun nasıl erişildiğini bulmanız gerekir. +- Burada manuel olarak **açığa çıkarılan altyapıyı** (web sayfası olan instance'lar veya diğer portların açık olduğu örnekler gibi) ve ayrıca **açılacak şekilde yapılandırılabilen diğer cloud yönetimli servisleri** (ör. DBs veya buckets) ele alıyorum +- Sonra bu kaynağın **açık olup olmadığını kontrol etmelisiniz** (gizli bilgi? zafiyetler? açığa çıkmış serviste yanlış yapılandırmalar?) +- **Check permissions** +- Burada cloud içindeki her rol/kullanıcının **tüm izinlerini** ve bunların nasıl kullanıldığını bulmalısınız +- Çok **fazla yüksek ayrıcalıklı** (her şeyi kontrol eden) hesap var mı? Oluşturulmuş anahtarlar kullanılmıyor mu?… Bu kontrollerin çoğu zaten benchmark testlerinde yapılmış olmalı +- Eğer müşteri OpenID veya SAML veya başka bir **federation** kullanıyorsa, her rolün **nasıl atandığı** hakkında daha fazla **bilgi** istemeniz gerekebilir (admin rolünün 1 kullanıcıya mı yoksa 100 kullanıcıya mı atandığı aynı şey değildir) +- Sadece hangi kullanıcıların **admin** izinlerine "\*:\*" sahip olduğunu bulmak **yeterli değildir**. Kullanılan servislere bağlı olarak çok **duyarlı** olabilecek birçok **diğer izin** vardır. +- Dahası, izinleri kötüye kullanarak takip edilebilecek **potansiyel privesc** yolları vardır. Tüm bu durumlar dikkate alınmalı ve mümkün olduğunca fazla privesc yolu raporlanmalıdır. +- **Check Integrations** +- Cloud ortamında muhtemelen **başka cloud'lar veya SaaS ile entegrasyonlar** kullanılıyordur. +- Denetlediğiniz cloud'un başka platformlarla olan **integrations**ı için, bu entegrasyonu kimlerin (kötüye) kullanabildiğini bildirmeniz ve gerçekleştirilen eylemin ne kadar **hassas** olduğunu sormanız gerekir.\ +Örneğin, GCP'nin veri aldığı bir AWS bucket'ına kim yazabiliyor (GCP'de o veriyi işlemenin ne kadar hassas olduğunu sorun). +- Denetlediğiniz cloud içindeki entegrasyonlar dış platformlardan geliyorsa, bu entegrasyonu harici olarak kimlerin (kötüye) kullanabildiğini sormalı ve verinin nasıl kullanıldığını kontrol etmelisiniz.\ +Örneğin, bir servis GCR'de barındırılan bir Docker imajı kullanıyorsa, bu imajı kimlerin değiştirebildiğini ve imaj çalıştırıldığında hangi hassas bilgilerin ve erişimlerin elde edileceğini sormalısınız. -## Multi-Cloud araçları +## Multi-Cloud tools -Farklı bulut ortamlarını test etmek için kullanılabilecek birkaç araç vardır. Kurulum adımları ve linkler bu bölümde belirtilecektir. +Farklı cloud ortamlarını test etmek için kullanılabilecek çeşitli araçlar vardır. Kurulum adımları ve bağlantılar bu bölümde belirtilecektir. ### [PurplePanda](https://github.com/carlospolop/purplepanda) -Cloud'larda ve cloud'lar/SaaS arasında kötü yapılandırmaları ve privesc yollarını **belirlemek için bir araç**. +Bir cloud'larda ve cloud/SaaS çapında **kötü yapılandırmaları ve privesc path'leri tespit etmek** için bir araçtır. {{#tabs }} {{#tab name="Install" }} @@ -71,7 +71,7 @@ python3 main.py -e -p google #Enumerate the env ### [Prowler](https://github.com/prowler-cloud/prowler) -**AWS, GCP & Azure**'ı destekler. Her sağlayıcının nasıl yapılandırılacağını [https://docs.prowler.cloud/en/latest/#aws](https://docs.prowler.cloud/en/latest/#aws) adresinden kontrol edin. +**AWS, GCP & Azure**'yi destekler. Her sağlayıcıyı nasıl yapılandıracağınızı [https://docs.prowler.cloud/en/latest/#aws](https://docs.prowler.cloud/en/latest/#aws) adresinden kontrol edin. ```bash # Install pip install prowler @@ -146,7 +146,7 @@ done {{#tabs }} {{#tab name="Install" }} -Steampipe'i indirin ve yükleyin ([https://steampipe.io/downloads](https://steampipe.io/downloads)). Veya Brew kullanın: +Steampipe'i indirin ve kurun ([https://steampipe.io/downloads](https://steampipe.io/downloads)). Veya Brew kullanın: ``` brew tap turbot/tap brew install steampipe @@ -170,7 +170,7 @@ steampipe check all Tüm Projeleri Kontrol Et -Projelerin tamamını kontrol etmek için test edilecek tüm projeleri belirten `gcp.spc` dosyasını oluşturmanız gerekir. Aşağıdaki scriptin yönergelerini izleyebilirsiniz. +Tüm projeleri kontrol etmek için test edilecek tüm projeleri belirten `gcp.spc` dosyasını oluşturmanız gerekir. Aşağıdaki script'teki yönergeleri takip edebilirsiniz. ```bash FILEPATH="/tmp/gcp.spc" rm -rf "$FILEPATH" 2>/dev/null @@ -194,7 +194,7 @@ echo "Copy $FILEPATH in ~/.steampipe/config/gcp.spc if it was correctly generate ``` -Diğer **GCP içgörüleri** (servisleri listelemek için kullanışlı) kontrol etmek için kullanın: [https://github.com/turbot/steampipe-mod-gcp-insights](https://github.com/turbot/steampipe-mod-gcp-insights) +Diğer **GCP içgörülerini** (hizmetleri keşfetmek için faydalı) kontrol etmek için kullanın: [https://github.com/turbot/steampipe-mod-gcp-insights](https://github.com/turbot/steampipe-mod-gcp-insights) Terraform GCP kodunu kontrol etmek için: [https://github.com/turbot/steampipe-mod-terraform-gcp-compliance](https://github.com/turbot/steampipe-mod-terraform-gcp-compliance) @@ -234,15 +234,15 @@ Steampipe için daha fazla AWS eklentisi: [https://github.com/orgs/turbot/reposi ### [~~cs-suite~~](https://github.com/SecurityFTW/cs-suite) AWS, GCP, Azure, DigitalOcean.\ -python2.7 gerektirir ve bakımı yapılmıyor gibi görünüyor. +python2.7 gerektirir ve bakımsız görünüyor. ### Nessus -Nessus, _**Audit Cloud Infrastructure**_ taraması ile şu platformları destekler: AWS, Azure, Office 365, Rackspace, Salesforce. **Azure** için **Client Id** almak üzere bazı ek yapılandırmalar gereklidir. +Nessus, _**Audit Cloud Infrastructure**_ taramasıyla şu platformları destekler: AWS, Azure, Office 365, Rackspace, Salesforce. Bir **Client Id** almak için **Azure**'da bazı ek yapılandırmalar gereklidir. ### [**cloudlist**](https://github.com/projectdiscovery/cloudlist) -Cloudlist, Cloud Providers'tan Assets (Hostnames, IP Addresses) almak için bir **multi-cloud tool**'dur. +Cloudlist, Cloud Providers'dan **multi-cloud tool for getting Assets** (Hostnames, IP Addresses) elde etmek için kullanılan bir araçtır. {{#tabs }} {{#tab name="Cloudlist" }} @@ -265,7 +265,7 @@ cloudlist -config ### [**cartography**](https://github.com/lyft/cartography) -Cartography, altyapı varlıklarını ve aralarındaki ilişkileri Neo4j veritabanı tarafından desteklenen sezgisel bir grafik görünümünde birleştiren bir Python aracıdır. +Cartography, Neo4j veritabanı tarafından desteklenen sezgisel bir graf görünümünde altyapı varlıklarını ve bunlar arasındaki ilişkileri birleştiren bir Python aracıdır. {{#tabs }} {{#tab name="Install" }} @@ -302,7 +302,7 @@ ghcr.io/lyft/cartography \ ### [**starbase**](https://github.com/JupiterOne/starbase) -Starbase, bulut altyapısı, SaaS uygulamaları, güvenlik kontrolleri ve daha fazlası dahil olmak üzere hizmetler ve sistemlerden varlıkları ve ilişkileri toplayıp Neo4j veritabanı destekli sezgisel bir grafik görünümünde sunar. +Starbase, bulut altyapısı, SaaS uygulamaları, güvenlik kontrolleri ve diğer hizmetler ile sistemlerden varlıkları ve ilişkileri toplayıp Neo4j veritabanı tarafından desteklenen sezgisel bir grafik görünümünde sunar. {{#tabs }} {{#tab name="Install" }} @@ -361,7 +361,7 @@ uri: bolt://localhost:7687 ### [**SkyArk**](https://github.com/cyberark/SkyArk) -Taranan AWS veya Azure ortamındaki en ayrıcalıklı kullanıcıları, AWS Shadow Admins dahil olmak üzere keşfeder. powershell kullanır. +Taranan AWS veya Azure ortamındaki en ayrıcalıklı kullanıcıları (AWS Shadow Admins dahil) keşfeder. powershell kullanır. ```bash Import-Module .\SkyArk.ps1 -force Start-AzureStealth @@ -372,13 +372,13 @@ Scan-AzureAdmins ``` ### [Cloud Brute](https://github.com/0xsha/CloudBrute) -Şirketin (hedefin) altyapısını, dosyalarını ve uygulamalarını en büyük bulut sağlayıcılarında (Amazon, Google, Microsoft, DigitalOcean, Alibaba, Vultr, Linode) bulmak için bir araç. +Bir şirketin (target) altyapısını, dosyalarını ve uygulamalarını en büyük bulut sağlayıcılarında (Amazon, Google, Microsoft, DigitalOcean, Alibaba, Vultr, Linode) bulmak için bir araç. ### [CloudFox](https://github.com/BishopFox/cloudfox) -- CloudFox, bulut altyapısında istismar edilebilir saldırı yollarını bulmak için bir araçtır (şu anda yalnızca AWS & Azure destekleniyor, GCP yakında eklenecek). -- Bu, manuel pentesting'i tamamlamayı amaçlayan bir enumeration aracıdır. -- Bulut ortamı içinde herhangi bir veri oluşturmaz veya değiştirmez. +- CloudFox, bulut altyapısında sömürülebilir saldırı yollarını bulmak için bir araçtır (şu an için yalnızca AWS ve Azure destekleniyor; GCP yakında eklenecek). +- Manuel pentesting'i tamamlayacak şekilde tasarlanmış bir keşif aracıdır. +- Bulut ortamında herhangi bir veri oluşturmaz veya değiştirmez. ### More lists of cloud security tools @@ -410,12 +410,12 @@ aws-security/ azure-security/ {{#endref}} -### Attack Graph +## Ortak Bulut Güvenlik Özellikleri -[**Stormspotter** ](https://github.com/Azure/Stormspotter)creates an “attack graph” of the resources in an Azure subscription. Bu, red teams ve pentesters'in bir tenant içindeki attack surface'i ve pivot fırsatlarını görselleştirmesini sağlar ve savunma ekiplerinizi olay müdahalesi çalışmalarında hızla yönlenip önceliklendirmelerini sağlayacak şekilde güçlendirir. +### Gizli Hesaplama -### Office365 - -You need **Global Admin** or at least **Global Admin Reader** (but note that Global Admin Reader is a little bit limited). Ancak, bu sınırlamalar bazı PS modüllerinde ortaya çıkar ve özelliklere **web uygulaması üzerinden** erişerek aşılabilir. +{{#ref}} +confidential-computing/luks2-header-malleability-null-cipher-abuse.md +{{#endref}} {{#include ../banners/hacktricks-training.md}}