AWS - CloudFront Enum

Tip

AWS Hacking’i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking’i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)
Az Hacking’i öğrenin ve pratik yapın: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks'i Destekleyin

CloudFront

CloudFront, AWS’nin statik ve dinamik içeriğinizin dağıtımını hızlandıran içerik dağıtım ağıdır. Amazon CloudFront üzerinden barındırdığınız bir içerik talep ettiğinizde, talep en yakın kenar konumuna yönlendirilir ve bu, en düşük gecikmeyi sağlayarak en iyi performansı sunar. CloudFront erişim günlükleri etkinleştirildiğinde, web sitenize ve dağıtımınıza erişim talep eden her kullanıcıdan gelen talepleri kaydedebilirsiniz. S3 erişim günlüklerinde olduğu gibi, bu günlükler de kalıcı ve dayanıklı depolama için Amazon S3’te saklanır. Günlük kaydını etkinleştirmek için herhangi bir ücret yoktur, ancak günlükler S3’te saklandığı için S3 tarafından kullanılan depolama için ücretlendirilirsiniz.

Günlük dosyaları, belirli bir süre boyunca veri toplar ve Amazon CloudFront’un o dağıtım için aldığı talep sayısına bağlı olarak oluşturulan günlük dosyası sayısı değişir. Bu günlük dosyalarının S3’te oluşturulmadığını veya yazılmadığını bilmek önemlidir. S3, yalnızca günlük dosyası dolduğunda teslim edildiği yerdir. Amazon CloudFront, bu günlükleri S3’e teslim edilene kadar saklar. Yine, bu günlük dosyalarının boyutuna bağlı olarak bu teslimat bir ile 24 saat arasında sürebilir.

Varsayılan olarak çerez kaydı devre dışıdır ancak bunu etkinleştirebilirsiniz.

Functions

CloudFront’ta fonksiyonlar oluşturabilirsiniz. Bu fonksiyonların cloudfront’ta tanımlı bir uç noktası olacak ve belirtilen NodeJS kodunu çalıştıracaktır. Bu kod, AWS yönetimindeki bir makinede çalışan bir sandbox içinde çalışacaktır (altındaki işletim sistemine kaçmak için bir sandbox atlatma yöntemine ihtiyacınız olacak).

Fonksiyonlar kullanıcıların AWS hesabında çalışmadığı için, herhangi bir IAM rolü eklenmez, bu nedenle bu özelliği kötüye kullanarak doğrudan yetki yükseltme mümkün değildir.

Enumeration

aws cloudfront list-distributions
aws cloudfront get-distribution --id <id> # Just get 1
aws cloudfront get-distribution-config --id <id>

aws cloudfront list-functions
aws cloudfront get-function --name TestFunction function_code.js

aws cloudfront list-distributions | jq ".DistributionList.Items[] | .Id, .Origins.Items[].Id, .Origins.Items[].DomainName, .AliasICPRecordals[].CNAME"

Kimlik Doğrulaması Olmayan Erişim

AWS - Cloudfront Unauthenticated Enum

İstismar Sonrası

AWS - CloudFront Post Exploitation

Tip

AWS Hacking’i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking’i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)
Az Hacking’i öğrenin ve pratik yapın: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks'i Destekleyin