Salt Labs’tan araştırmacılar, Lego Group’un ikinci el Lego alıp satmak için sahip olduğu bir dijital yeniden satış platformu olan BrickLink’teki güvenlik açıklarını keşfettiler ve bu da – teknoloji açısından en azından – şirketin tüm oyuncak parçalarının tam olarak yerine oturmadığını gösterdi.
Salts Labs güvenlik araştırmacısı Shiran Yodev, 15 Aralık’ta yayınlanan bir raporda, Salt Security’nin araştırma kolunun sitenin kullanıcı giriş alanlarını destekleyen alanlarını araştırarak her iki güvenlik açığını da keşfettiğini söyledi.
Araştırmacılar, sitenin kullanıcı girişine izin veren bölümlerinde saldırı için kullanılabilecek temel kusurların her birini buldular ve bunun genellikle kuruluşlar için karmaşık ve maliyetli bir sorun olan API güvenlik sorunlarının ortaya çıktığı bir yer olduğunu söylediler.
Dezavantajlardan birinin, hazırlanmış bir bağlantı yoluyla kurban son kullanıcının makinesine kod enjekte etmelerini ve yürütmelerini sağlayan siteler arası komut dosyası çalıştırma (XSS) güvenlik açığı olduğunu söylediler. Diğeri, harici bir varlığa referans içeren bir XML girişinin zayıf yapılandırılmış bir XML ayrıştırıcı tarafından işlendiği bir XML Harici Varlık (XXE) enjeksiyon saldırısının yürütülmesine izin verdi.
API Zayıflıkları Çoktur
Araştırmacılar, Lego’yu özellikle ihmalkar bir teknoloji sağlayıcısı olarak ayırma niyetinde olmadıklarını vurgularken dikkatli davrandılar – aksine, İnternete dönük uygulamalarda API kusurlarının inanılmaz derecede yaygın olduğunu söylediler.
Yodev, Dark Reading’e bunun önemli bir nedeni olduğunu söylüyor: Bir BT tasarım ve geliştirme ekibinin yetkinliği ne olursa olsun, API güvenliği, tüm Web geliştiricilerinin ve tasarımcılarının hala çözmeye çalıştığı yeni bir disiplindir.
“Araştırdığımız her türlü çevrimiçi hizmette bu tür ciddi API güvenlik açıklarını hemen buluyoruz” diyor. “En güçlü uygulama güvenlik araçlarına ve gelişmiş güvenlik ekiplerine sahip şirketlerin bile API iş mantığında sıklıkla boşluklar vardır.”
Bir API güvenlik testi sağlayıcısı olan StackHawk’ın kurucu ortağı ve CSO’su Scott Gerlach, her iki kusur da üretim öncesi güvenlik testiyle kolayca keşfedilebilse de, “API güvenliği birçok kuruluş için hâlâ sonradan akla gelen bir konu” diyor.
“Genellikle bir API dağıtılana kadar devreye girmez veya diğer durumlarda kuruluşlar, API’leri kapsamlı bir şekilde test etmek için oluşturulmamış eski araçları kullanır ve siteler arası komut dosyası çalıştırma ve enjeksiyon saldırıları gibi güvenlik açıklarını keşfedilmez bırakır” diyor. .
Kişisel İlgi, Hızlı Yanıt
Lego’nun BrickLink’ini araştırmak için yapılan araştırma, Lego’yu utandırmak ve suçlamak ya da “kimseyi kötü göstermek” için değil, “bu hataların ne kadar yaygın olduğunu göstermek ve şirketleri önemli verilerini ve hizmetlerini korumak için atabilecekleri adımlar konusunda eğitmek” amacını taşıyordu. Yodev diyor.
Araştırmacılar, Lego Group’un dünyanın en büyük oyuncak şirketi ve gerçekten de insanların dikkatini konuya çekebilecek, kitlesel olarak tanınan bir marka olduğunu söyledi. Şirket, yalnızca çocukların Lego kullanmaya olan ilgisinden değil, aynı zamanda Yodev’in de bir tanesi olduğunu kabul ettiği, aynı zamanda Lego setlerini toplayıp inşa eden tüm bir yetişkin hobi topluluğunun bir sonucu olarak yılda milyarlarca dolar gelir elde ediyor.
Legoların popülaritesi nedeniyle, BrickLink’in sitesini kullanan 1 milyondan fazla üyesi var.
Araştırmacılar kusurları 18 Ekim’de keşfettiler ve haklı olarak Lego, Salt Security sorunları şirkete 23 Ekim’de açıkladığında hızlı bir şekilde yanıt verdi ve ifşayı iki gün içinde onayladı. Araştırmacılar, Salt Labs tarafından gerçekleştirilen testlerin kısa bir süre sonra, 10 Kasım’da sorunların çözüldüğünü doğruladığını söyledi.
Yodev, “Ancak, Lego’nun iç politikası nedeniyle, bildirilen güvenlik açıklarıyla ilgili herhangi bir bilgiyi paylaşamıyorlar ve bu nedenle, olumlu bir şekilde onaylayamıyoruz,” diye kabul ediyor Yodev. Ayrıca, bu politika aynı zamanda Salt Labs’in saldırganların vahşi ortamdaki kusurlardan herhangi birini kullanıp kullanmadığını onaylamasını veya reddetmesini de engelliyor, diyor.
Güvenlik Açıklarını Bir Araya Getirmek
Araştırmacılar, BrickLinks’in kupon arama işlevinin “Kullanıcı Adı Bul” iletişim kutusunda XSS kusurunu bulduğunu ve bunun, farklı bir sayfada açığa çıkan bir oturum kimliğini kullanan bir saldırı zincirine yol açtığını söylediler.
Yodev, “‘Kullanıcı Adı Bul’ iletişim kutusunda, bir kullanıcı sonunda web sayfasının HTML’sine dönüştürülecek olan ücretsiz bir metin yazabilir” diye yazdı. “Kullanıcılar, bir XSS durumuna yol açabilecek metin girmek için bu açık alanı kötüye kullanabilir.”
Araştırmacılar, bir saldırı başlatmak için kusuru tek başlarına kullanamasalar da, farklı bir sayfada, bir kullanıcının oturumunu ele geçirmek ve hesap devralma (ATO) gerçekleştirmek için XSS kusuruyla birleştirebilecekleri açık bir oturum kimliği buldular. .
Yodev, “Kötü aktörler bu taktikleri tüm hesabı ele geçirmek veya hassas kullanıcı verilerini çalmak için kullanabilirdi” diye yazdı.
Araştırmacılar, platformun doğrudan kullanıcı girişi alan başka bir bölümünde, BrickLink kullanıcılarının aranan Lego parçalarının ve/veya setlerinin bir listesini XML formatında yüklemelerine olanak tanıyan “Arananlar Listesine Yükle” adlı ikinci kusuru ortaya çıkardılar.
Yodev’in gönderide açıkladığı gibi, güvenlik açığı, sitenin XML ayrıştırıcısının, varlık adı verilen bir kavramı veya bir tür depolama birimini tanımlayan XML standardının bir parçası olan XML Harici Varlıklarını nasıl kullandığından kaynaklanıyordu. BrickLinks sayfası söz konusu olduğunda, uygulama, XML işlemcisinin genellikle uygulama tarafından erişilemeyen gizli bilgileri ifşa edebileceği bir duruma karşı savunmasızdı, diye yazdı.
Araştırmacılar, çalışan kullanıcının izinleriyle bir sistem dosyasının okunmasına izin veren bir XXE enjeksiyon saldırısı oluşturmak için kusurdan yararlandı. Araştırmacılar, bu tür bir saldırının, bir saldırganın Amazon Web Services üzerinde çalışan bir uygulama için kimlik bilgileri elde etmesine ve böylece bir dahili ağı ihlal etmesine olanak sağlayabilecek sunucu tarafı istek sahteciliği kullanan ek bir saldırı vektörüne de izin verebileceğini söyledi.
Benzer API Kusurlarından Kaçınma
Araştırmacılar, kuruluşların kendi ortamlarında İnternet’e yönelik uygulamalarda yararlanılabilecek benzer API sorunları oluşturmaktan kaçınmasına yardımcı olacak bazı tavsiyeler paylaştı.
Yodev, API güvenlik açıkları söz konusu olduğunda, saldırganların çeşitli konularda saldırıları birleştirmeleri veya bunları hızlı bir şekilde art arda gerçekleştirmeleri durumunda en fazla zararı verebileceklerini, araştırmacıların Lego kusurlarında durum olduğunu gösterdiğini yazdı.
Yodev, XSS kusuruyla oluşturulan senaryodan kaçınmak için kuruluşların “kullanıcı girişine asla güvenmeme” kuralını izlemesi gerektiğini yazdı. Bu konu hakkında daha fazla bilgi için kuruluşları Açık Web Uygulaması Güvenlik Projesi (OWASP) tarafından hazırlanan XSS Önleme Hile Sayfasına yönlendirerek “Girdi uygun şekilde sterilize edilmeli ve kaçmalıdır” diye ekledi.
Yodev, kuruluşların Web’e bakan sitelerde oturum kimliği uygulamalarında dikkatli olmaları gerektiğini çünkü bu, oturumu ele geçirmek ve hesap devralmak için bundan yararlanabilecek “bilgisayar korsanları için ortak bir hedef” olduğunu yazdı.
“Onu tutarken çok dikkatli olmak ve onu ifşa etmemek veya başka amaçlar için kötüye kullanmamak önemlidir” diye açıkladı.
Son olarak, araştırmacıların gösterdiği gibi XXE enjeksiyon saldırılarını durdurmanın en kolay yolu, XML ayrıştırıcınızın yapılandırmasındaki Harici Varlıkları tamamen devre dışı bırakmaktır, dedi araştırmacılar. OWASP’nin, bu görevde kuruluşlara rehberlik edebilecek XXE Önleme Hile Sayfası adlı başka bir yararlı kaynağı olduğunu eklediler.