Vercel Security
Last updated
Last updated
AWS Hacking öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE) GCP Hacking öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)
Vercel'de bir Ekip, bir müşteriye ait olan tam ortam ve bir proje, bir uygulamadır.
Vercel için bir güvenlik incelemesi yapmak istiyorsanız, kontrol etmek için Görüntüleyici rol izni olan bir kullanıcı talep etmeniz veya en azından projeler üzerinde Proje görüntüleyici izni istemeniz gerekir (eğer sadece projeleri kontrol etmeniz gerekiyorsa ve Ekip yapılandırmasını kontrol etmeniz gerekmiyorsa).
Amaç: Proje adı, çerçeve ve derleme yapılandırmaları gibi temel proje ayarlarını yönetmek.
Transfer
Yanlış Yapılandırma: Projeyi başka bir ekibe aktarmaya izin verir
Risk: Bir saldırgan projeyi çalabilir
Proje Sil
Yanlış Yapılandırma: Projeyi silmeye izin verir
Risk: Projeyi silmek
Amaç: Özel alan adlarını, DNS ayarlarını ve SSL yapılandırmalarını yönetmek.
DNS Yapılandırma Hataları
Yanlış Yapılandırma: Kötü niyetli sunuculara işaret eden yanlış DNS kayıtları (A, CNAME).
Risk: Alan adı kaçırma, trafik kesintisi ve kimlik avı saldırıları.
SSL/TLS Sertifika Yönetimi
Yanlış Yapılandırma: Zayıf veya süresi dolmuş SSL/TLS sertifikalarının kullanılması.
Risk: Adam ortada (MITM) saldırılarına karşı savunmasızlık, veri bütünlüğü ve gizliliğin tehlikeye girmesi.
DNSSEC Uygulaması
Yanlış Yapılandırma: DNSSEC'i etkinleştirmemek veya yanlış DNSSEC ayarları.
Risk: DNS sahtekarlığı ve önbellek zehirleme saldırılarına karşı artan hassasiyet.
Her alan için kullanılan ortam
Yanlış Yapılandırma: Üretimde alan tarafından kullanılan ortamı değiştirmek.
Risk: Üretimde mevcut olmaması gereken potansiyel sırların veya işlevlerin açığa çıkması.
Amaç: Belirli ayarlar ve değişkenlerle farklı ortamları (Geliştirme, Önizleme, Üretim) tanımlamak.
Ortam İzolasyonu
Yanlış Yapılandırma: Ortamlar arasında ortam değişkenlerini paylaşmak.
Risk: Üretim sırlarının geliştirme veya önizleme ortamlarına sızması, maruziyeti artırır.
Hassas Ortamlara Erişim
Yanlış Yapılandırma: Üretim ortamlarına geniş erişime izin vermek.
Risk: Yetkisiz değişiklikler veya canlı uygulamalara erişim, potansiyel kesintilere veya veri ihlallerine yol açabilir.
Amaç: Uygulama tarafından kullanılan ortam spesifik değişkenleri ve sırları yönetmek.
Hassas Değişkenlerin Açığa Çıkması
Yanlış Yapılandırma: Hassas değişkenleri NEXT_PUBLIC_
ile öne eklemek, bunları istemci tarafında erişilebilir hale getirir.
Risk: API anahtarlarının, veritabanı kimlik bilgilerinin veya diğer hassas verilerin kamuya açılması, veri ihlallerine yol açar.
Hassas devre dışı
Yanlış Yapılandırma: Devre dışı bırakıldığında (varsayılan) üretilen sırların değerlerini okumak mümkündür.
Risk: Hassas bilgilere kazara açılma veya yetkisiz erişim olasılığının artması.
Paylaşılan Ortam Değişkenleri
Yanlış Yapılandırma: Bunlar Ekip seviyesinde ayarlanan çevresel değişkenlerdir ve hassas bilgiler de içerebilir.
Risk: Hassas bilgilere kazara açılma veya yetkisiz erişim olasılığının artması.
Amaç: Git depo entegrasyonlarını, dal korumalarını ve dağıtım tetikleyicilerini yapılandırmak.
Göz ardı edilen Derleme Adımı (TODO)
Yanlış Yapılandırma: Bu seçeneğin, Github'a yeni bir commit gönderildiğinde çalıştırılacak bir bash scripti/komutları yapılandırmaya izin verdiği görünmektedir, bu da RCE'ye izin verebilir.
Risk: TBD
Amaç: Proje işlevselliğini artırmak için üçüncü taraf hizmetler ve araçlarla bağlantı kurmak.
Güvensiz Üçüncü Taraf Entegrasyonları
Yanlış Yapılandırma: Güvenilmeyen veya güvensiz üçüncü taraf hizmetlerle entegrasyon.
Risk: Kompromize edilmiş entegrasyonlar aracılığıyla zafiyetler, veri sızıntıları veya arka kapılar tanıtma.
Aşırı İzinli Entegrasyonlar
Yanlış Yapılandırma: Entegre hizmetlere aşırı izinler vermek.
Risk: Proje kaynaklarına yetkisiz erişim, veri manipülasyonu veya hizmet kesintileri.
Entegrasyon İzleme Eksikliği
Yanlış Yapılandırma: Üçüncü taraf entegrasyonları izlemeyi ve denetlemeyi ihmal etmek.
Risk: Kompromize olmuş entegrasyonların gecikmeli tespiti, güvenlik ihlallerinin potansiyel etkisini artırır.
Amaç: Dağıtımları çeşitli koruma mekanizmalarıyla güvence altına almak, kimlerin ortamlarınıza erişip dağıtım yapabileceğini kontrol etmek.
Vercel Kimlik Doğrulaması
Yanlış Yapılandırma: Kimlik doğrulamayı devre dışı bırakmak veya ekip üyesi kontrollerini zorunlu kılmamak.
Risk: Yetkisiz kullanıcılar dağıtımlara erişebilir, bu da veri ihlallerine veya uygulama kötüye kullanımına yol açar.
Otomasyon için Koruma Atlatma
Yanlış Yapılandırma: Atlatma sırrını kamuya açmak veya zayıf sırlar kullanmak.
Risk: Saldırganlar dağıtım korumalarını atlatabilir, korunan dağıtımlara erişebilir ve bunları manipüle edebilir.
Paylaşılabilir Bağlantılar
Yanlış Yapılandırma: Bağlantıları kayıtsızca paylaşmak veya eski bağlantıları iptal etmemek.
Risk: Korunan dağıtımlara yetkisiz erişim, kimlik doğrulama ve IP kısıtlamalarını atlatma.
OPTIONS İzin Listesi
Yanlış Yapılandırma: Aşırı geniş yolları veya hassas uç noktaları izin listesine almak.
Risk: Saldırganlar, yetkisiz eylemler gerçekleştirmek veya güvenlik kontrollerini atlatmak için korunmasız yolları istismar edebilir.
Şifre Koruması
Yanlış Yapılandırma: Zayıf şifreler kullanmak veya bunları güvensiz bir şekilde paylaşmak.
Risk: Şifreler tahmin edilirse veya sızdırılırsa dağıtımlara yetkisiz erişim.
Not: Gelişmiş Dağıtım Koruması kapsamında Pro planında mevcut olup, ek olarak ayda 150 $'dır.
Dağıtım Koruma İstisnaları
Yanlış Yapılandırma: Üretim veya hassas alan adlarını yanlışlıkla istisna listesine eklemek.
Risk: Kritik dağıtımların kamuya açılması, veri sızıntılarına veya yetkisiz erişime yol açar.
Not: Gelişmiş Dağıtım Koruması kapsamında Pro planında mevcut olup, ek olarak ayda 150 $'dır.
Güvenilir IP'ler
Yanlış Yapılandırma: IP adreslerini veya CIDR aralıklarını yanlış belirtmek.
Risk: Meşru kullanıcıların engellenmesi veya yetkisiz IP'lerin erişim kazanması.
Not: Kurumsal planda mevcuttur.
Amaç: Sunucusuz fonksiyonları, çalışma zamanı ayarlarını, bellek tahsisini ve güvenlik politikalarını yapılandırmak.
Hiçbiri
Amaç: Performansı optimize etmek ve veri depolamasını kontrol etmek için önbellekleme stratejilerini ve ayarlarını yönetmek.
Önbelleği Temizle
Yanlış Yapılandırma: Tüm önbelleği silmeye izin verir.
Risk: Yetkisiz kullanıcıların önbelleği silmesi, potansiyel bir DoS'a yol açar.
Amaç: Belirli aralıklarla otomatik görevleri ve scriptleri çalıştırmak için programlamak.
Cron Görevini Devre Dışı Bırak
Yanlış Yapılandırma: Kod içinde tanımlanan cron görevlerini devre dışı bırakmaya izin verir.
Risk: Hizmetin kesintiye uğraması (cron görevlerinin ne amaçla kullanıldığına bağlı olarak)
Amaç: İzleme ve denetleme için uygulama günlüklerini yakalamak ve depolamak üzere dış günlükleme hizmetlerini yapılandırmak.
Hiçbiri (takım ayarlarından yönetilir)
Amaç: Proje erişimini, kaynak korumasını ve daha fazlasını etkileyen çeşitli güvenlikle ilgili ayarlar için merkezi bir merkez.
Derleme Günlükleri ve Kaynak Koruması
Yanlış Yapılandırma: Korumayı devre dışı bırakmak veya /logs
ve /src
yollarını kamuya açmak.
Risk: Derleme günlüklerine ve kaynak koduna yetkisiz erişim, bilgi sızıntılarına ve potansiyel zafiyetlerin istismarına yol açar.
Git Fork Koruması
Yanlış Yapılandırma: Uygun incelemeler olmadan yetkisiz çekme isteklerine izin vermek.
Risk: Kötü niyetli kod, kod tabanına birleştirilebilir, zafiyetler veya arka kapılar tanıtabilir.
OIDC Federasyonu ile Güvenli Arka Uç Erişimi
Yanlış Yapılandırma: OIDC parametrelerini yanlış ayarlamak veya güvensiz verici URL'leri kullanmak.
Risk: Hatalı kimlik doğrulama akışları aracılığıyla arka uç hizmetlerine yetkisiz erişim.
Dağıtım Saklama Politikası
Yanlış Yapılandırma: Saklama sürelerini çok kısa (dağıtım geçmişini kaybetmek) veya çok uzun (gereksiz veri saklama) ayarlamak.
Risk: Gerekli olduğunda geri alma yapamama veya eski dağıtımlardan veri açığa çıkma riskinin artması.
Son Zamanlarda Silinen Dağıtımlar
Yanlış Yapılandırma: Silinen dağıtımları izlememek veya yalnızca otomatik silmelere güvenmek.
Risk: Kritik dağıtım geçmişinin kaybı, denetimleri ve geri almaları engeller.
Amaç: Yapılandırmaları ince ayar yapmak ve güvenliği artırmak için ek proje ayarlarına erişim.
Dizin Listeleme
Yanlış Yapılandırma: Dizin listelemeyi etkinleştirmek, kullanıcıların dizin içeriğini bir dizin dosyası olmadan görüntülemesine izin verir.
Risk: Hassas dosyaların, uygulama yapısının açığa çıkması ve saldırılar için potansiyel giriş noktaları.
Saldırı Zorlama Modunu Etkinleştir
Yanlış Yapılandırma: Bunu etkinleştirmek, web uygulamasının DoS'a karşı savunmasını artırır ancak kullanılabilirlikten ödün verir.
Risk: Potansiyel kullanıcı deneyimi sorunları.
Yanlış Yapılandırma: Trafiği engelleme/açma izni verir.
Risk: Kötü niyetli trafiğe izin verme veya masum trafiği engelleme potansiyeli.
Yanlış Yapılandırma: Uygulamanın tam kaynak kodunu okumaya izin verir.
Risk: Hassas bilgilerin potansiyel açığa çıkması.
Yanlış Yapılandırma: Bu koruma, istemci ve sunucu uygulamasının her zaman aynı sürümü kullanmasını sağlar, böylece istemcinin sunucudan farklı bir sürüm kullanması ve dolayısıyla birbirlerini anlamamaları durumu oluşmaz.
Risk: Bunu devre dışı bırakmak (eğer etkinse) gelecekte yeni dağıtımlarda DoS sorunlarına yol açabilir.
Transfer
Yanlış Yapılandırma: Tüm projeleri başka bir ekibe aktarmaya izin verir.
Risk: Bir saldırgan projeleri çalabilir.
Proje Sil
Yanlış Yapılandırma: Tüm projelerle birlikte ekibi silmeye izin verir.
Risk: Projeleri silmek.
Hızlı İçgörüler Maliyet Limiti
Yanlış Yapılandırma: Bir saldırgan bu sayıyı artırabilir.
Risk: Artan maliyetler.
Üye Ekle
Yanlış Yapılandırma: Bir saldırgan, kontrol ettiği bir hesabı davet ederek kalıcılık sağlayabilir.
Risk: Saldırgan kalıcılığı.
Roller
Yanlış Yapılandırma: İhtiyaç duymayan kişilere fazla izin vermek, Vercel yapılandırma riskini artırır. Tüm olası rolleri kontrol edin https://vercel.com/docs/accounts/team-members-and-roles/access-roles.
Risk: Vercel Ekibinin maruziyetini artırmak.
Vercel'deki bir Erişim Grubu, önceden tanımlanmış rol atamalarıyla birlikte projelerin ve ekip üyelerinin bir koleksiyonudur ve çoklu projeler arasında merkezi ve akıcı erişim yönetimi sağlar.
Potansiyel Yanlış Yapılandırmalar:
Aşırı İzin Verme: Gereğinden fazla izinle rol atamak, yetkisiz erişim veya eylemlere yol açabilir.
Yanlış Rol Atamaları: Ekip üyelerinin sorumluluklarıyla uyumlu olmayan roller atamak, ayrıcalıkların yükselmesine neden olabilir.
Proje Ayrımı Eksikliği: Hassas projeleri ayırmamak, istenenden daha geniş erişime izin verir.
Yetersiz Grup Yönetimi: Erişim Gruplarını düzenli olarak gözden geçirmemek veya güncellemeler yapmamak, güncel olmayan veya uygunsuz erişim izinlerine yol açar.
Tutarsız Rol Tanımları: Farklı Erişim Grupları arasında tutarsız veya belirsiz rol tanımları kullanmak, kafa karışıklığına ve güvenlik açıklarına yol açar.
Üçüncü taraflara Log Drains:
Yanlış Yapılandırma: Bir saldırgan, günlükleri çalmak için bir Log Drain yapılandırabilir.
Risk: Kısmi kalıcılık.
Ekip E-posta Alanı: Yapılandırıldığında, bu ayar, belirtilen alanla (örneğin, mydomain.com
) biten e-posta adreslerine sahip Vercel Kişisel Hesaplarını otomatik olarak davet eder.
Yanlış Yapılandırma:
Yanlış e-posta alanı belirtmek veya Ekip E-posta Alanı ayarında yanlış yazılmış bir alan kullanmak.
Şirket spesifik bir alan yerine yaygın bir e-posta alanı (örneğin, gmail.com
, hotmail.com
) kullanmak.
Riskler:
Yetkisiz Erişim: İstenmeyen alanlardan gelen kullanıcılar, ekibinize katılmak için davet alabilir.
Veri Açığı: Hassas proje bilgilerinin yetkisiz bireylere açığa çıkma potansiyeli.
Korunan Git Kapsamları: Korunan kapsamdan diğer Vercel ekiplerinin depo dağıtımını önlemek için ekibinize 5'e kadar Git kapsamı eklemenize izin verir. Birden fazla ekip aynı kapsamı belirtebilir, her iki ekibin de erişimi olur.
Yanlış Yapılandırma: Kritik Git kapsamlarını korunan listeye eklememek.
Riskler:
Yetkisiz Dağıtımlar: Diğer ekipler, kuruluşunuzun Git kapsamlarından yetkisiz olarak depo dağıtabilir.
Fikri Mülkiyet Açığı: Sahip kod, ekibinizin dışına dağıtılabilir ve erişilebilir.
Ortam Değişkeni Politikaları: Ekibin ortam değişkenlerinin oluşturulması ve düzenlenmesi için politikaları zorunlu kılar. Özellikle, tüm ortam değişkenlerinin yalnızca Vercel'in dağıtım sistemi tarafından şifrelenebilen Hassas Ortam Değişkenleri olarak oluşturulmasını zorunlu kılabilirsiniz.
Yanlış Yapılandırma: Hassas ortam değişkenlerinin zorunlu kılınmasını devre dışı bırakmak.
Riskler:
Sırların Açığa Çıkması: Ortam değişkenleri, yetkisiz ekip üyeleri tarafından görüntülenebilir veya düzenlenebilir.
Veri İhlali: API anahtarları ve kimlik bilgileri gibi hassas bilgilerin sızdırılması.
Denetim Günlüğü: Ekibin etkinliğinin son 90 güne kadar bir dışa aktarımını sağlar. Denetim günlükleri, ekip üyeleri tarafından gerçekleştirilen eylemleri izlemeye ve takip etmeye yardımcı olur.
Yanlış Yapılandırma: Yetkisiz ekip üyelerine denetim günlüklerine erişim vermek.
Riskler:
Gizlilik İhlalleri: Hassas kullanıcı etkinliklerinin ve verilerin açığa çıkması.
Günlüklerle Oynama: Kötü niyetli aktörler, izlerini örtmek için günlükleri değiştirebilir veya silebilir.
SAML Tek Oturum Açma: Ekibiniz için SAML kimlik doğrulamasını ve dizin senkronizasyonunu özelleştirmenize izin verir, merkezi kimlik doğrulama ve kullanıcı yönetimi için bir Kimlik Sağlayıcı (IdP) ile entegrasyonu sağlar.
Yanlış Yapılandırma: Bir saldırgan, SAML parametrelerini (örneğin, Varlık Kimliği, SSO URL'si veya sertifika parmak izleri) ayarlayarak ekibi geri kapatabilir.
Risk: Kalıcılığı sürdürmek.
IP Adresi Görünürlüğü: IP adreslerinin, belirli veri koruma yasaları altında kişisel bilgi olarak kabul edilebileceği durumlarda, İzleme sorgularında ve Log Drains'de görüntülenip görüntülenmeyeceğini kontrol eder.
Yanlış Yapılandırma: Gereksiz yere IP adresi görünürlüğünü etkin bırakmak.
Riskler:
Gizlilik İhlalleri: GDPR gibi veri koruma düzenlemeleriyle uyumsuzluk.
Hukuki Sonuçlar: Kişisel verilerin kötü yönetimi nedeniyle potansiyel para cezaları ve yaptırımlar.
IP Engelleme: Vercel'in istekleri engellemesi gereken IP adreslerini ve CIDR aralıklarını yapılandırmanıza izin verir. Engellenen istekler, faturalamanıza katkıda bulunmaz.
Yanlış Yapılandırma: Bir saldırgan tarafından kötü niyetli trafiğe izin vermek veya meşru trafiği engellemek için kötüye kullanılabilir.
Riskler:
Meşru Kullanıcılara Hizmetin Reddedilmesi: Geçerli kullanıcılar veya ortaklar için erişimin engellenmesi.
Operasyonel Kesintiler: Belirli bölgeler veya müşteriler için hizmetin kullanılabilirliğinin kaybı.
Vercel Güvenli Hesaplama, Vercel Fonksiyonları ile arka uç ortamları (örneğin, veritabanları) arasında güvenli, özel bağlantılar sağlar ve özel IP adresleri ile izole ağlar kurar. Bu, arka uç hizmetlerini kamuya açma ihtiyacını ortadan kaldırarak güvenliği, uyumu ve gizliliği artırır.
Yanlış AWS Bölgesi Seçimi
Yanlış Yapılandırma: Güvenli Hesaplama ağı için arka uç hizmetlerinin bölgesiyle eşleşmeyen bir AWS bölgesi seçmek.
Risk: Artan gecikme, potansiyel veri ikamet uyumu sorunları ve performans düşüklüğü.
Çakışan CIDR Blokları
Yanlış Yapılandırma: Mevcut VPC'lerle veya diğer ağlarla çakışan CIDR blokları seçmek.
Risk: Ağ çatışmaları, başarısız bağlantılar, yetkisiz erişim veya ağlar arasında veri sızıntısına yol açabilir.
Yanlış VPC Peering Yapılandırması
Yanlış Yapılandırma: VPC peering'i yanlış ayarlamak (örneğin, yanlış VPC kimlikleri, eksik yönlendirme tablosu güncellemeleri).
Risk: Arka uç altyapısına yetkisiz erişim, güvenli bağlantıların başarısız olması ve potansiyel veri ihlalleri.
Aşırı Proje Atamaları
Yanlış Yapılandırma: Uygun izolasyon olmadan bir güvenli hesaplama ağına birden fazla proje atamak.
Risk: Paylaşılan IP açığı, saldırı yüzeyini artırır ve potansiyel olarak tehlikeye giren projelerin diğerlerini etkilemesine izin verir.
Yetersiz IP Adresi Yönetimi
Yanlış Yapılandırma: Ayrıcalıklı IP adreslerini uygun şekilde yönetmemek veya döndürmemek.
Risk: IP sahtekarlığı, izleme zafiyetleri ve IP'lerin kötü niyetli faaliyetlerle ilişkilendirilmesi durumunda potansiyel kara listeye alınma.
Gereksiz Yapılandırma Konteynerleri Dahil Etme
Yanlış Yapılandırma: Arka uç erişimi gerekmiyorsa güvenli hesaplama ağına yapılandırma konteynerleri eklemek.
Risk: Genişletilmiş saldırı yüzeyi, artan tahsis gecikmeleri ve gereksiz ağ kaynaklarının tüketimi.
Atlatma Sırlarını Güvenli Bir Şekilde Yönetmeme
Yanlış Yapılandırma: Dağıtım korumalarını atlatmak için kullanılan sırları açığa çıkarmak veya yanlış yönetmek.
Risk: Korunan dağıtımlara yetkisiz erişim, saldırganların kötü niyetli kodu manipüle etmesine veya dağıtmasına izin verir.
Bölge Yedekleme Yapılandırmalarını İhmal Etme
Yanlış Yapılandırma: Pasif yedekleme bölgeleri kurmamak veya yedekleme ayarlarını yanlış yapılandırmak.
Risk: Birincil bölge kesintilerinde hizmet kesintisi, kullanılabilirliğin azalması ve potansiyel veri tutarsızlığı.
VPC Peering Bağlantı Sınırlarını Aşma
Yanlış Yapılandırma: İzin verilen sınırdan daha fazla VPC peering bağlantısı kurmaya çalışmak (örneğin, 50 bağlantıyı aşmak).
Risk: Gerekli arka uç hizmetlerine güvenli bir şekilde bağlanamama, dağıtım hatalarına ve operasyonel kesintilere yol açar.
Güvensiz Ağ Ayarları
Yanlış Yapılandırma: Zayıf güvenlik duvarı kuralları, şifreleme eksikliği veya güvenli hesaplama ağı içinde yanlış ağ segmentasyonu.
Risk: Veri kesintisi, arka uç hizmetlerine yetkisiz erişim ve saldırılara karşı artan zafiyet.
Amaç: Tüm projeler tarafından kullanılan ortam spesifik değişkenleri ve sırları yönetmek.
Hassas Değişkenlerin Açığa Çıkması
Yanlış Yapılandırma: Hassas değişkenleri NEXT_PUBLIC_
ile öne eklemek, bunları istemci tarafında erişilebilir hale getirir.
Risk: API anahtarlarının, veritabanı kimlik bilgilerinin veya diğer hassas verilerin kamuya açılması, veri ihlallerine yol açar.
Hassas devre dışı
Yanlış Yapılandırma: Devre dışı bırakıldığında (varsayılan) üretilen sırların değerlerini okumak mümkündür.
Risk: Hassas bilgilere kazara açılma veya yetkisiz erişim olasılığının artması.