Özellikle e-ticaret hizmetlerinde Reflected XSS’ye (RXSS) bakıyoruz. 7. Yıllık Hacker Destekli Güvenlik Raporu’na göre Reflected XSS, e-ticaret kuruluşlarında bildirilen tüm hataların %10’unu oluşturuyor ve bu da onu bu sektördeki ilk üç güvenlik açığı sınıfından biri yapıyor.
Bu blogda, Shopify’ın ortaklık programına giriş yapmış müşteri hesaplarından bilgi çalmak için kötüye kullanılabilecek gerçek bir Shopify RXSS hatasını inceleyeceğiz.
Yansıyan XSS Nedir?
Yansıtılmış Siteler Arası Komut Dosyası Çalıştırma (veya kısaca RXSS), kullanıcıdan gelen temizlenmemiş girişin, güvenlik açığı bulunan site bağlamında tarayıcı Javascript’inin yürütülmesine izin verecek şekilde web sitesi koduna geri yansıtıldığı çok yaygın bir web güvenlik açığıdır. Saldırgan genellikle, kötü amaçlı giriş içeren bir bağlantı oluşturarak ve bunu oturum açmış bir kullanıcıya (müşteri veya hatta personel gibi) göndererek Javascript kodunu çalıştırıp kimliği doğrulanmış kullanıcı bağlamında bir eylem gerçekleştirerek RXSS’den yararlanabilir. Bu, hassas bilgilere yetkisiz erişime, yetkisiz materyallerin (yeni kullanıcılar ve gönderiler gibi) oluşturulmasına ve hatta oturum açan kullanıcının uygulamadaki yönetim işlevlerine erişimi varsa ayrıcalıkların yükseltilmesine yol açabilir.
E-ticarette Yansıyan XSS’nin İş Etkisi
- Müşteri hesabı ihlali: RXSS’in kötüye kullanılması genellikle kullanıcı etkileşimi gerektirdiğinden, müşteri hesaplarının ihlal edilmesi veya bilgilerinin kimlik avı saldırıları yoluyla çalınması gibi oldukça fark edilebilir bir müşteri etkisi yaratabilir. Kötüye kullanımı, kimlik avı bağlantıları göndermek için kötü e-posta güvenlik kayıtları gibi yaygın yanlış yapılandırmalarla zincirlenebilir ve bunun sonucunda bazı müşteriler, hesaplarının risk altında olduğunu fark edebilir.
- Veri ihlali: Veriler kullanıcılardan sızdırılabilir, RXSS kullanılarak istismar edilebilir ve karanlık ağda satılabilir. Saldırganlar, oturum açmış bir kullanıcı oturumunda RXSS’den yararlanıldığında sitedeki kullanıcı profillerinden ve diğer hassas alanlardan bilgilere erişebileceğinden, Kişisel Olarak Tanımlanabilir Bilgileri (PII) çalabilir ve kuruluşunuzun hem mali hem de hukuki açıdan etkilenmesine neden olabilirler.
- Dolandırıcılık işlemleri: E-ticaret uygulamaları açısından, başka bir kullanıcı olarak işlem gerçekleştirebilmek, paralarını çalmak amacıyla kullanıcı olarak potansiyel olarak hileli satın alma işlemleri gerçekleştirebilecekleri anlamına gelir (örneğin, bir alışveriş sitesinde sahte ürünler oluşturmak ve kullanıcıları bunları satın almaya zorlamak). RXSS). Bu, işletmenize ciddi mali ve itibarsal zararlar verebilir.
Ayrıntılar: Hata Raporu
İyi hata ödülü alan bilgisayar korsanlarının çoğu zaman olduğu gibi, bu bilgisayar korsanı yeni oluşturulan alanların başındaydı; E-ticaret platformları genellikle geniş bir saldırı yüzeyine ve sürekli gelişen hizmetlere sahiptir. Bu durumda bilgisayar korsanı, içerik oluşturucuların/etkileyicilerin Shopify’ın milyonlarca markasını keşfetmesi ve reklamını yapması için yeni platformu barındıran yeni Shopify Collab alanını test ediyordu.
Erken erişim başvurusu yaparak önce sitede hesap oluşturdu, ardından sosyal medya hesabını yeni Shopify Collab profiline bağladı. Oturum açarken, oturum açma sonrası yönlendirme URL’sinin yaratıcı_redirect parametresine sahip olduğunu fark etti ve bunu Kavram Kanıtı Javascript protokol bağlantısıyla değiştirdi. api.collabs.shopify.com alanı açıkken, tarayıcı penceresi bağlamında Javascript’i çalıştırabiliyordu.
Raporda, tarayıcıdaki belgenin içeriğine erişimi olduğunu kanıtlamak için oldukça zararsız bir Javascript değişkenine (document.domain) erişti:
Gerçek dünyadaki bir saldırıda, kötü niyetli bir saldırgan, sayfaya bir geri arama kancası yüklemek için xsshunter kullanmak, fetch() API’si ile HTTP istekleri yaparak oturum açmış kullanıcı olarak yetkisiz eylemler gerçekleştirmek gibi, yürütmek için büyük olasılıkla JavaScript’i uzaktan yükleyecektir. veya document.cookie’ye erişerek hassas verileri çalın.
İyileştirme
Genel olarak kuruluşlar, XSS sorunlarını, kullanıcı girişinin kullanılmadan önce uygun şekilde HTML kodlanması gibi giriş temizliğiyle düzeltir.
Bu hata durumunda hata, yaratıcı_redirect parametresinin kullanılmadan önce sterilize edilmemesidir. “Yönlendirme” sözcüğü, bunun bir yönlendirme URL’si için kullanıldığını gösterir; bu da, açık yönlendirme güvenlik açığına karşı da savunmasız olabileceği anlamına gelir.
Ancak bilgisayar korsanı, bunu yalnızca açık yönlendirme güvenlik açığı olarak bildirmek yerine, javascript: URL’lerinin (normal https:// URL’si yerine) kullanılabildiğinden bunun aynı zamanda yansıtılmış bir XSS olduğunu da buldu. Bilgisayar korsanı, yeni bir web sitesine yönlendirmek yerine javascript’i Spotify alt alan adı bağlamında çalıştırabilme yeteneği sayesinde daha yüksek etki göstererek daha iyi ödeme elde edilmesini sağladı. Bu durumda uygun iyileştirme yapılmalıdır. sadece https:// ile başlayan ve ardından izin verilen alan adları listesi (collabs.shopify.com gibi) gelen URL’lere izin verin.
Ayrıca XSS filtreleme her zaman şu aşamada gerçekleştirilmelidir: arka uç (sunucu tarafında) geçersiz girişi filtrelemek için herhangi bir ön uç JavaScript kullanmak yerine (JavaScript, başlangıçta sunucu yükünü hafifletmek için bir gönderim formundaki girişi doğrulamak için kullanılabilir, ancak kontroller arka uçta da gerçekleştirilmelidir).
Çözüm
Yansıtılan XSS, web uygulamalarındaki en yaygın güvenlik açıklarından biridir, bu nedenle e-ticarette çok fazla ortaya çıkması şaşırtıcı değildir; kötü niyetli aktörler tarafından istismar edilirse müşteriler üzerinde ciddi ticari etkiler yaratabilirdi. Neyse ki bu durumda Shopify hata ödül programındaki yeni alan adı, HackerOne topluluğundaki bilgisayar korsanları tarafından derhal test edildi ve güvenlik açığı hızla bulunup düzeltildi.
HackerOne ile Web Uygulamanızı XSS’den Koruyun
Hata ödül programına sahip olmanın avantajı, topluluğumuzdaki bilgisayar korsanlarının yeni uygulamalarınızı, etki alanlarınızı ve API uç noktalarınızı yayına girer girmez sürekli olarak test etmeleridir. HackerOne ve etik bilgisayar korsanlarından 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ı olmak için en iyi donanıma sahiptir. .
En önemli 10 HackerOne güvenlik açığının etkisi hakkında daha fazla bilgi edinmek için 7. Yıllık Hacker Destekli Güvenlik Raporunu indirin veya kuruluşunuzda XSS güvenlik açıklarını ele almaya başlamak için HackerOne ile iletişime geçin.