HackerOne’ın 8. Yıllık Hacker Destekli Güvenlik Raporu’na göre XSS, hata ödülü açısından en yaygın bir numaralı, sızma testi açısından ise ikinci sırada yer alıyor. En yaygın üç XSS türünü bir araya getirerek HackerOne platformunda keşfedilen tüm güvenlik açığı türlerinin %20’sini oluşturur.
Her yerde bulunmasına rağmen XSS’nin bir kuruluş üzerinde gizli kullanıcı bilgilerinin açıklanması, kullanıcı davranışını yanlış yönlendirmek için yanlış bilgi sağlanması ve itibarın olumsuz şekilde zarar görmesi gibi önemli etkileri olabilir.
XSS’nin ne olduğuna, nasıl kullanıldığına ve nasıl düzeltilebileceğine daha yakından bakalım.
Siteler Arası Komut Dosyası Çalıştırma (XSS) Nedir?
Siteler arası komut dosyası çalıştırma (XSS), bir saldırganın diğer kullanıcılar tarafından görüntülenen web sayfalarına kötü amaçlı istemci tarafı komut dosyaları eklemesine olanak tanıyan bir web güvenlik açığıdır. Saldırgan erişim kontrollerini atlayabilir ve kullanıcıların kimliğine bürünebilir. XSS güvenlik açığı, bir saldırganın oturum çerezlerini çalmasına, tuş vuruşlarını günlüğe kaydetmesine, güvenlik açığı bulunan sitede görüntülenen gizli verileri çıkarmasına ve son kullanıcı sistemlerinde diğer kötü amaçlı eylemler gerçekleştirmesine olanak tanır.
Üç ana tür vardır: yansıtılan, depolanan ve DOM tabanlı XSS. Bu üç XSS türü arasındaki temel farklar şunlardır:
- Yansıyan XSS kullanıcı tarafından sağlanan, sterilize edilmemiş giriş sunucudan geri iletildiğinde ancak sunucuda depolanmadığında meydana gelir
- Saklanan XSS kullanıcı tarafından sağlanan veriler sunucu tarafında temizlenmeden depolandığında ve güvenli olmayan bir şekilde alındığında ortaya çıkar
- DOM tabanlı XSS kötü niyetli kullanıcı girişinin, sunucuya ulaşmadan kullanıcıya geri dönmeden önce yalnızca tarayıcıda işlenmesiyle oluşur
XSS saldırılarının yaygın temel nedenleri şunlardır:
- Kullanıcılara tekrar gösterilen doğrulanmamış kullanıcı girişi
- Çıkışın yanlış kodlanması
- Kötü amaçlı komut dosyalarını filtrelemeyen eski tarayıcılar ve eklentiler
Önleyici kontroller tam kullanım durumuna göre değişiklik gösterebilir ancak başlamak için bazı iyi yerler şunlardır:
- Giriş doğrulama ve çıkış kodlama
- XSS koruma yazılımı çerçeveleri ve kitaplıkları
- İçerik Güvenliği Politikası başlıkları
- Savunmasız web uygulamalarını düzeltme
- Kimlik avına karşı kullanıcı eğitimi.
Siteler Arası Komut Dosyasından Hangi Sektörler Etkileniyor?
XSS sektöre göre ayrım yapmaz. Ancak bazı sektörlerde diğerlerinden daha ön plandadır. Aşağıdaki grafik, HackerOne platformundaki sektörlere göre en önemli güvenlik açıklarını göstermektedir. XSS, Cryptocurrency ve Blockchain alanında belirlenen güvenlik açıklarının yalnızca %7’sini oluştururken, Devlet alanında %40’lık büyük bir oran oluşturuyor. Kripto ve blockchain kuruluşları daha yenidir, yani hassas eski yazılımları kullanmazlar ve özünde tekniktirler. Öte yandan devlet kurumları öncelikli olarak teknoloji odaklı değiller, bu nedenle iç güvenlik ekipleri tarafından henüz tanımlanıp düzeltilmeyen daha fazla sonuç veren güvenlik açıkları görüyorlar.
Sektörünüzün ortalamasıyla karşılaştırıldığında güvenlik açıklarınızın ne kadarının XSS olduğuna bir göz atın.
Siteler Arası Komut Dosyası Çalıştırma Güvenlik Açığının Gerçek Dünyadan Bir Örneği
HackerOne’ın Hacktivity kaynağı, HackerOne Platformunda açıklanan güvenlik açıklarını sergiliyor. Belirli zayıflıkların nasıl tanımlandığını ve düzeltildiğini görmek için göz atın. Aşağıdaki siteler arası komut dosyası çalıştırma örneği, bir bilgisayar korsanının yelp.com’da kalıcı siteler arası komut dosyası çalıştırmaya ve hesabı ele geçirmeye izin verebilecek bir güvenlik açığını nasıl keşfettiğini göstermektedir.
Müşteri: Havlama
Güvenlik Açığı: Yansıyan XSS
Şiddet: Yüksek
Özet
HackerOne topluluğunun bir üyesi, yelp.com’da kalıcı siteler arası komut dosyası çalıştırmaya ve hesabın ele geçirilmesine olanak verebilecek bir güvenlik açığı keşfetti. Yansıtılan XSS, çıkış yapılmamış bir çerez değerinin işlenmesiyle mümkün oldu. Bu, kalıcı bir siteler arası komut dosyası oluşturma yükünü ayarlamak için bir çerez ayrıştırma sorunuyla birleştirilebilir.
Darbe
Bilgisayar korsanı @lil_endian, yelp.com’da ticari hesapların tamamen ele geçirilme ve normal hesapların ele geçirilmesi olasılığını gösterdi. Bir keylogger kullanarak biz.yelp.com giriş sayfasındaki giriş bilgilerini çalmayı ve kurbanın profilini ele geçirmek için harici bir hesap bağlamayı simüle ettiler. Güvenlik açıkları hesap güvenliğini etkiledi ve kullanıcı verilerine yetkisiz erişime olanak tanıyarak Yelp’i ve kullanıcı verilerini yüksek bir suiistimal riskine soktu.
İyileştirme
Sorunu düzeltmek için kodun, herhangi bir kullanıcı girişini kullanmadan önce doğrulaması ve temizlemesi gerekir. Yelp ekibinin kodu çözmesinin yanı sıra bilgisayar korsanı, çerezi bir sorgu parametresi aracılığıyla ayarlama özelliğinin kaldırılmasını da önerdi ve bu saldırı vektörünü de azalttı.
Ödül
Bilgisayar korsanı, bir olayı önlemelerine yardımcı olduğu için Yelp ekibinden 6.000 dolar ödül ve şükran aldı.
“Kullanıcılarımızı güvende tutmaya yardımcı olduğunuz için teşekkür ederiz! Yelp’lere katılmaya devam edeceğinizi umuyoruz, başka neler bulduğunuzu görmek isteriz.”
HackerOne ile Kuruluşunuzu Siteler Arası Komut Dosyalarından Koruyun
Bu, XSS güvenlik açığının yaygınlığının ve etki ciddiyetinin yalnızca bir örneğidir. HackerOne ve etik hackerlardan oluşan topluluğumuz, saldırganın bir güvenlik açığını keşfetme konusundaki zihniyetini göz önünde bulundurarak, hata ödülü, Hizmet Olarak Pentest (PTaaS), Kod Güvenliği Denetimi veya diğer çözümler aracılığıyla kuruluşların XSS ve diğer güvenlik açıklarını tanımlamasına ve düzeltmesine yardımcı olacak en iyi donanıma sahiptir. güvenlik açığı.
En önemli 10 HackerOne güvenlik açığının etkisi hakkında daha fazla bilgi edinmek için 8. Yıllık Hacker Destekli Güvenlik Raporunu indirin veya kuruluşunuzda XSS’yi kullanmaya başlamak için HackerOne ile iletişime geçin.