Kaydol

Merhaba Sevgili Floodlar.com Kullanıcısı, Web sitemizde geçirdiğiniz zaman ve bu büyüleyici flood evrenine katılımınız için teşekkür ederiz. Floodların geniş dünyasıyla dolu deneyiminizi daha fazla keşfetmek için, web sitemizi sınırsız olarak kullanabilmeniz adına giriş yapmanız gerekmektedir.

Oturum aç

Merhaba Floodlar.com Kullanıcısı, İlk üç sayfayı tamamladınız, tebrikler! Ancak, floodların devamını görmek ve daha fazla interaktif deneyim yaşamak için giriş yapmanız gerekiyor. Hesabınız yoksa, hızlıca oluşturabilirsiniz. Sınırsız floodlar ve etkileşimler sizleri bekliyor. Giriş yapmayı unutmayın!

Şifremi hatırlamıyorum

Şifreniz mi unuttunuz? Endişelenmeyin! Lütfen kayıtlı e-posta adresinizi giriniz. Size bir bağlantı göndereceğiz ve bu link üzerinden yeni bir şifre oluşturabileceksiniz.

Fil Necati Masonlar Locası Subreddit Adı Nedir? Cevap: ( N31 )

Üzgünüz, flood girme izniniz yok, Flood girmek için giriş yapmalısınız.

Lütfen bu Floodun neden bildirilmesi gerektiğini düşündüğünüzü kısaca açıklayın.

Lütfen bu cevabın neden bildirilmesi gerektiğini kısaca açıklayın.

Lütfen bu kullanıcının neden rapor edilmesi gerektiğini düşündüğünüzü kısaca açıklayın.

Mobil Uygulamada Açın

Güncel Floodlar En sonuncu Nesne

Fetch Metadata ile kaynaklarınızı web saldırılarına karşı koruyun

Fetch Metadata ile kaynaklarınızı web saldırılarına karşı koruyun

Web kaynaklarınızı ayırmayı neden önemsemelisiniz? #

Birçok web uygulaması, aşağıdakiler gibi kaynaklar arası saldırılara karşı savunmasızdır: siteler arası istek sahteciliği (CSRF), siteler arası komut dosyası ekleme (XSSI), zamanlama saldırıları, kaynaklar arası bilgi sızıntıları veya spekülatif yürütme yan kanalı (Hayalet) saldırılar.

Meta Verileri Al istek başlıkları, uygulamanızı bu yaygın kaynaklar arası saldırılara karşı korumak için güçlü bir derinlemesine savunma mekanizması (bir Kaynak Yalıtma Politikası) dağıtmanıza olanak tanır.

Belirli bir web uygulaması tarafından sunulan kaynakların diğer web siteleri tarafından değil, yalnızca uygulamanın kendisi tarafından yüklenmesi yaygın bir durumdur. Bu gibi durumlarda, Fetch Metadata istek başlıklarına dayalı bir Kaynak İzolasyon Politikası dağıtmak çok az çaba gerektirir ve aynı zamanda uygulamayı siteler arası saldırılardan korur.

Tarayıcı Uyumluluğu #

Fetch Metadata istek başlıkları tüm modern tarayıcı motorlarında desteklenir.

tarayıcı desteği

  • Chrome 76, Desteklenir 76
  • Firefox 90, Desteklenir 90
  • Kenar 79, Desteklenen 79
  • Safari 16.4, Desteklenir 16.4

Kaynak

Arka plan #

Web varsayılan olarak açık olduğundan ve uygulama sunucunuz kendisini harici uygulamalardan kaynaklanan iletişimden kolayca koruyamadığı için birçok siteler arası saldırı mümkündür. Tipik bir çapraz kaynak saldırısı, bir saldırganın bir kullanıcıyı kontrol ettiği bir siteye çektiği ve ardından kullanıcının oturum açtığı sunucuya bir form gönderdiği siteler arası istek sahteciliğidir (CSRF). Sunucu, isteğin başka bir etki alanından (siteler arası) kaynaklanıp kaynaklanmadığını anlayamadığından ve tarayıcı, siteler arası isteklere çerezleri otomatik olarak eklediğinden, sunucu, kullanıcı adına saldırgan tarafından istenen eylemi gerçekleştirecektir.

Siteler arası betik dahil etme (XSSI) veya kaynaklar arası bilgi sızıntıları gibi diğer siteler arası saldırılar, doğası gereği CSRF’ye benzer ve kurban uygulamadan saldırgan kontrollü bir belgeye kaynak yüklemeye ve kurban uygulamalar hakkında bilgi sızdırmaya dayanır. Uygulamalar, güvenilen istekleri güvenilmeyen isteklerden kolaylıkla ayırt edemediği için, kötü amaçlı siteler arası trafiği ortadan kaldıramaz.

Fetch Meta Verileri Tanıtımı #

Fetch Metadata istek başlıkları, sunucuların kaynaklar arası saldırılara karşı kendilerini savunmalarına yardımcı olmak için tasarlanmış yeni bir web platformu güvenlik özelliğidir. Bir dizi HTTP isteğinin içeriği hakkında bilgi sağlayarak Sec-Fetch-* başlıklar, yanıt veren sunucunun isteği işlemeden önce güvenlik ilkelerini uygulamasına izin verir. Bu, geliştiricilerin, yalnızca kendi uygulamaları tarafından yapılan meşru isteklere yanıt vermeyi mümkün kılarak, yapılma biçimine ve kullanılacağı bağlama göre bir isteği kabul edip etmeyeceğine karar vermesini sağlar.

Aynı Menşei

Kendi sunucunuz (aynı kaynak) tarafından sunulan sitelerden kaynaklanan istekler çalışmaya devam edecektir.

siteler arası

Kötü amaçlı siteler arası istekler, tarafından sağlanan HTTP isteğindeki ek bağlam nedeniyle sunucu tarafından reddedilebilir. Sec-Fetch-* başlıklar.

Sec-Fetch-Site #

tarayıcı desteği

  • Chrome 76, Desteklenir 76
  • Firefox 90, Desteklenir 90
  • Kenar 79, Desteklenen 79
  • Safari 16.4, Desteklenir 16.4

Kaynak

Sec-Fetch-Site sunucuya isteği hangi sitenin gönderdiğini söyler. Tarayıcı bu değeri aşağıdakilerden birine ayarlar:

  • same-originistek kendi uygulamanız tarafından yapıldıysa (örn. site.example)
  • same-siteistek sitenizin bir alt alanı tarafından yapıldıysa (örn. bar.site.example)
  • noneistek açıkça bir kullanıcının kullanıcı aracısıyla etkileşiminden kaynaklanıyorsa (örneğin, bir yer imine tıklamak)
  • cross-siteistek başka bir web sitesi tarafından gönderilmişse (örn. evil.example)

Sec-Fetch-Mode #

Sec-Fetch-Mode gösterir mod talebin Bu kabaca talebin türüne karşılık gelir ve kaynak yüklerini gezinme taleplerinden ayırmanıza olanak tanır. Örneğin, bir hedef navigate üst düzey bir gezinme isteğini belirtirken no-cors resim yükleme gibi kaynak isteklerini gösterir.

Sec-Fetch-Dest #

tarayıcı desteği

  • Chrome 80, Desteklenir 80
  • Firefox 90, Desteklenir 90
  • Kenar 80, Desteklenen 80
  • Safari 16.4, Desteklenir 16.4

Kaynak

Sec-Fetch-Dest bir isteği ortaya çıkarır varış noktası (örneğin eğer bir script veya bir img etiketi, tarayıcı tarafından bir kaynağın istenmesine neden oldu).

Bu istek başlıklarının sağladığı ek bilgiler oldukça basittir, ancak ek bağlam, sunucu tarafında yalnızca birkaç satır kodla Kaynak İzolasyon Politikası olarak da adlandırılan güçlü güvenlik mantığı oluşturmanıza olanak tanır.

Kaynak İzolasyon Politikası Uygulama #

Kaynak İzolasyon Politikası, kaynaklarınızın harici web siteleri tarafından talep edilmesini engeller. Bu tür trafiğin engellenmesi, CSRF, XSSI, zamanlama saldırıları ve kaynaklar arası bilgi sızıntıları gibi yaygın siteler arası web güvenlik açıklarını azaltır. Bu politika, uygulamanızın tüm uç noktaları için etkinleştirilebilir ve kendi uygulamanızdan gelen tüm kaynak isteklerinin yanı sıra doğrudan gezinmelere (bir HTTP aracılığıyla) izin verir. GET rica etmek). Siteler arası bağlamda yüklenmesi gereken uç noktalar (örn. CORS kullanılarak yüklenen uç noktalar) bu mantığın dışında bırakılabilir.

1. Adım: Fetch Metadata göndermeyen tarayıcılardan gelen isteklere izin verin #

Tüm tarayıcılar Fetch Metadata’yı desteklemediğinden, ayarlanmayan isteklere izin vermeniz gerekir. Sec-Fetch-* var olup olmadığını kontrol ederek başlıkları sec-fetch-site.

if not req['sec-fetch-site']:
return True # Allow this request

2. Adım: Aynı site ve tarayıcı tarafından başlatılan isteklere izin verin #

Kaynaklar arası bir bağlamdan kaynaklanmayan tüm istekler (örneğin evil.example) izin verilecek. Özellikle, bunlar şu taleplerdir:

  • Kendi uygulamanızdan kaynaklanır (örn. aynı kaynaklı bir istek, burada site.example istekler site.example/foo.json her zaman izin verilecektir).
  • Alt alan adlarınızdan kaynaklanır.
  • Açıkça bir kullanıcının kullanıcı aracısı ile etkileşiminden kaynaklanır (örn. doğrudan gezinme veya bir yer imine tıklama vb.).

if req['sec-fetch-site'] in ('same-origin', 'same-site', 'none'):
return True # Allow this request

3. Adım: Basit üst düzey gezinmeye ve iç çerçevelemeye izin verin #

Sitenizin diğer sitelerden bağlantı almaya devam edebilmesini sağlamak için, basit (HTTP GET) üst düzey gezinme.

if req['sec-fetch-mode'] == 'navigate' and req.method == 'GET'
# &LTobject> and &LTembed> send navigation requests, which we disallow.
and req['sec-fetch-dest'] not in ('object', 'embed'):
return True # Allow this request

4. Adım: Siteler arası trafiğe hizmet vermesi amaçlanan uç noktaları devre dışı bırakın (İsteğe bağlı) #

Bazı durumlarda, uygulamanız siteler arası yüklenmesi amaçlanan kaynaklar sağlayabilir. Bu kaynakların yol başına veya uç nokta bazında muaf tutulması gerekir. Bu tür son noktalara örnekler:

  • Kaynaklar arası erişilmesi amaçlanan uç noktalar: Uygulamanız, CORS etkinleştirildiyse, bu uç noktalara yönelik siteler arası isteklerin hâlâ mümkün olduğundan emin olmak için bunları açıkça kaynak izolasyonundan devre dışı bırakmanız gerekir.
  • Genel kaynaklar (ör. resimler, stiller, vb.): Diğer sitelerden çapraz kaynak olarak yüklenebilir olması gereken tüm genel ve kimliği doğrulanmamış kaynaklar da muaf tutulabilir.

if req.path in ('/my_CORS_endpoint', '/favicon.png'):
return True

5. Adım: Siteler arası olan ve gezinme amaçlı olmayan diğer tüm istekleri reddedin #

başka siteler arası istek, bu Kaynak İzolasyon Politikası tarafından reddedilecek ve böylece uygulamanızı yaygın siteler arası saldırılardan koruyacaktır.

Örnek: Aşağıdaki kod, basit gezinme isteklerine izin verirken potansiyel olarak kötü amaçlı siteler arası kaynak isteklerini reddetmek için sunucuda veya bir ara yazılım olarak sağlam bir Kaynak İzolasyon Politikasının eksiksiz bir şekilde uygulanmasını gösterir:

# Reject cross-origin requests to protect from CSRF, XSSI, and other bugs
def allow_request(req):
# Allow requests from browsers which don't send Fetch Metadata
if not req['sec-fetch-site']:
return True

# Allow same-site and browser-initiated requests
if req['sec-fetch-site'] in ('same-origin', 'same-site', 'none'):
return True

# Allow simple top-level navigations except &LTobject> and &LTembed>
if req['sec-fetch-mode'] == 'navigate' and req.method == 'GET'
and req['sec-fetch-dest'] not in ('object', 'embed'):
return True

# [OPTIONAL] Exempt paths/endpoints meant to be served cross-origin.
if req.path in ('/my_CORS_endpoint', '/favicon.png'):
return True

# Reject all other requests that are cross-site and not navigational
return False

Kaynak İzolasyon Politikası Dağıtma #

  1. Sitenizin nasıl davrandığını günlüğe kaydetmek ve izlemek ve kısıtlamaların herhangi bir yasal trafiği etkilemediğinden emin olmak için yukarıdaki kod parçacığı gibi bir modül yükleyin.
  2. Kaynaklar arası meşru uç noktaları hariç tutarak potansiyel ihlalleri düzeltin.
  3. Uyumlu olmayan istekleri bırakarak politikayı zorunlu kılın.

Politika ihlallerini belirleme ve düzeltme #

Politikanızı, önce sunucu tarafı kodunuzda raporlama modunda etkinleştirerek yan etkisiz bir şekilde test etmeniz önerilir. Alternatif olarak, bu mantığı ara yazılımda veya üretim trafiğine uygulandığında politikanızın üretebileceği tüm ihlalleri günlüğe kaydeden bir ters proxy’de uygulayabilirsiniz.

Google’da Meta Verileri Getir Kaynak İzolasyon Politikasını kullanıma sunma deneyimimize göre, çoğu uygulama varsayılan olarak bu tür bir politikayla uyumludur ve siteler arası trafiğe izin vermek için uç noktaların muaf tutulmasını nadiren gerektirir.

Bir Kaynak İzolasyon Politikasını Zorlama #

Politikanızın meşru üretim trafiğini etkilemediğini kontrol ettikten sonra, diğer sitelerin kaynaklarınızı isteyemeyeceğini garanti ederek ve kullanıcılarınızı siteler arası saldırılardan koruyarak kısıtlamaları uygulamaya hazırsınız.

daha fazla okuma #

İlgili Mesajlar

Yorum eklemek için giriş yapmalısınız.