“Çoğu web API kusuru, standart güvenlik testlerinde gözden kaçıyor” – Corey J Ball, ihmal edilmiş bir saldırı vektörünün güvenliğini sağlama üzerine


API güvenliği, kalem testi kariyerine açılan ‘harika bir kapıdır’, bu alandaki uzmanlara tavsiyede bulunur

Çoğu web API kusuru, standart güvenlik testleri tarafından gözden kaçırılır - Corey J Ball, ihmal edilmiş bir saldırı vektörünün güvenliğini sağlama üzerine

RÖPORTAJ Standart testler rutin olarak en yaygın güvenlik açıklarını kaçırdığından, web API’lerinin güvenliğini sağlamak, klasik web uygulama güvenliğine farklı bir yaklaşım gerektirir.

Bu, web API’lerine göre kalibre edilmemiş yöntemlerin kalem testi yapanlar için yanlış negatif bulgulara yol açabileceği konusunda uyarıda bulunan API güvenlik uzmanı Corey J Ball’un görüşüdür.

Ball, 2015 yılında bilgisayar korsanlığı kitapları, HackTheBox ve VulnHub aracılığıyla web uygulaması penetrasyon testindeki zanaatını öğrendikten sonra, Cold Fusion, WordPress, Apache Tomcat ve diğer kurumsal odaklı web uygulamalarını çalıştıran bilgisayarlarda becerilerini daha da geliştirdi.

Sektör uzmanlarıyla yapılan son röportajların devamını okuyun

Daha sonra CEH, CISSP ve OSCP sertifikalarını aldı ve sonunda hala web uygulaması kalem test uzmanı olarak çalıştığı kamu muhasebe firması Moss Adams’ta penetrasyon testi hizmetlerine liderlik etme fırsatı teklif edildi.

Son zamanlarda, büyük ölçüde yetersiz hizmet alan bir alan olan web API güvenliğine daha dar bir şekilde odaklanan Ball, konuyla ilgili ücretsiz bir çevrimiçi kurs başlattı ve yayınladı Hacking API’leri: Breaking Web Uygulama Programlama Arayüzleri (Nişasta Presi Yok, 2022).

ile yapılan bir röportajda günlük yudumBall, web API’lerinin artan kullanımının, uygulamalarımızı nasıl güvence altına aldığımız konusunda nasıl bir bakış açısı değişikliği gerektirdiğini açıklıyor.

Çekici saldırı vektörü

Geçtiğimiz birkaç yılda, çeşitli sektörlerde web API’lerinin benimsenmesinin hızlandığı görüldü. 2018’de Akamai, API çağrılarının web trafiğinin %83’ünü oluşturduğunu bildirdi.

Ball, “İşletmeler, uygulamalarının her yönünü (haritalar, ödeme işlemleri, iletişim, kimlik doğrulama vb.) geliştirmek zorunda olan genel uzmanlar olmaya artık ihtiyaç duymadıklarını fark ettiler” diyor. “Bunun yerine, üçüncü taraflarca yapılan işlerden yararlanmak ve uzmanlaşmaya odaklanmak için web API’lerini kullanabilirler.”

API, uygulama yazılımı oluşturmak ve entegre etmek için bir dizi tanım ve protokol olan uygulama programlama arayüzü anlamına gelir.

HTTP protokolü ile erişilebilen Web API’leri, teknolojilerini, altyapılarını, işlevselliklerini ve verilerini paraya çeviren API hizmetleri üretti. Ancak API’ler siber suçluların da dikkatini çekti.

Ball, “Güvensiz API’ler gizlilik, bütünlük ve kullanılabilirlikten ödün vermek için kullanılabilir” diyor. “Birçok API’nin internete dönük olması gerçeğiyle birleşen bu potansiyel, savunmasız API’lerin en iyi saldırı vektörlerinden biri olduğu anlamına geliyor.”

Farklı kurallar geçerlidir

API’ler, tasarım sırasında güvenlik odaklı ekip üyelerini dahil ederek, güvenli kodlamayı teşvik ederek, düzenli güvenlik testleri gerçekleştirerek ve programlama çağrılarını saldırılara ve kötüye kullanıma karşı izleyerek daha az sorumluluk haline gelebilir.

Ball’a göre web API’lerinin güvenliğini sağlamak, klasik web uygulama güvenliğine farklı bir yaklaşım gerektiriyor.

“Standart web uygulaması testleri, web API’leri için yanlış negatif bulgularla sonuçlanacaktır” diye açıklıyor. “Web API’lerine göre özel olarak kalibre edilmemiş araçlar ve teknikler, neredeyse tüm yaygın güvenlik açıklarını kaçıracaktır.”

Dikkate değer bir örnek, ilk olarak güvenlik araştırmacısı Brian Krebs tarafından bildirilen USPS Informed Visibility API’deki bir güvenlik açığıdır. Web uygulaması, Krebs’in veri ifşasını bildirmesinden bir ay önce kapsamlı bir şekilde test edildi.

KAÇIRMAYIN Nasıl penetrasyon test cihazı olunur: 1. Bölüm – saldırgan güvenlik testine giden yolunuz

Test sırasında, Nessus ve HP WebInspect gibi araçlar genel olarak test hedeflerine uygulandı ve bu nedenle önemli bir web API güvenlik açığı tespit edilmedi. USPS Bilgilendirilmiş Görünürlük API’sindeki bu keşfedilmemiş güvenlik açığı, kimliği doğrulanmış herhangi bir kullanıcının 60 milyon müşteriyle ilişkili e-posta adreslerine, kullanıcı adlarına, paket güncellemelerine, posta adreslerine ve telefon numaralarına erişmesine izin verdi.

Ball, “Informed Visibility sisteminin harici saldırı yüzeyinin güvenlik açığı değerlendirmesi, API’lere web uygulaması hackleme teknikleri uygulandığında neler olabileceğinin harika bir göstergesidir” diyor. “Buradan çıkarılacak ders, API’leri test ederken doğru araç ve tekniklerin uygulanması gerektiğidir.”

Yan kanal API saldırıları

Ball’un kendisi, API odaklı kalem testi yoluyla epeyce hata buldu. En sevdiği keşif, müşteri kayıtlarını aramak için kullanılan bir yönetim API’sinden bilgileri sızdıran bir yan kanal zamanlama saldırısıdır.

Normalde, API tüm yetkisiz istekleri reddeder ve standart bir HTTP 401 Yetkisiz yanıtı döndürür. API hız sınırlaması içermediğinden Ball, pasif keşif sırasında toplanan farklı kullanıcı kimliklerini ve adlarını test ederek birçok istek gönderebilir. Güvenlik araştırmacısı, belirli yanıtların diğerlerinden biraz daha fazla bayta sahip olduğunu fark etti.

“Daha yakından incelendiğinde (Comparizer kullanılarak), bir ara katman başlığının, sunucunun belirli istekleri işleme koymasının ne kadar süreceğini ortaya koyduğu netleşti” diyor. “Mevcut kayıtları içeren isteklerin sunucu tarafından işlenmesinin, mevcut olmayan kayıtlara göre beş kat daha uzun sürdüğünü keşfettim.”

API zamanlama saldırılarıBall’un en sevdiği bulgu, müşteri kayıtlarını aramak için kullanılan bir yönetici API’sinden bilgi sızdıran bir zamanlama saldırısıydı.

Ball, ifşa edilen çeşitli bilgileri bir araya getirerek hassas bilgileri toplayabildi ve kullanıcıları kullanıcı kimliği, posta kodu, telefon numarası, sağlık kayıtları ve SSN (sosyal güvenlik numarası) ile ilişkilendirdi.

“Harici ağdan sızmaya, bir güvenlik duvarını atlamaya, ağ içinde dönmeye ve nihayet doğru veritabanına erişmeye ve verileri dışarı sızdırmanın bir yolunu bulmaya ihtiyacım yoktu; bunun yerine taç mücevherlerini ortaya çıkarmak için bir web API kullandım,” diye sözlerini tamamladı Ball.

Fırsatın kapıya gelmesi

Web API’lerinin giderek daha popüler bir saldırı vektörü haline gelmesine rağmen Ball, bu konuda uzmanlaşmadan önce bunları güvenlik açıkları için test etme konusunda kaynakların kıtlığını fark etti.

“API güvenlik testine odaklanan kitap yoktu, sertifika yoktu, birkaç blog gönderisi vardı. [or] videolar, vb” diyor. “Konferanslara gittim ve en son web uygulaması korsanlığı konuşmalarını yapan konuşmacılara API güvenlik testi için ne yaptıklarını sordum. Ya API’lerle ne yapacaklarına dair hiçbir fikirleri yoktu ya da ekiplerinde API’leri nasıl test edeceklerini bilen tek bir kişi vardı.”

Web API ile ilgili en son güvenlik haberlerini ve analizlerini takip edin

Moss Adams’ın ortaklarından biri, Ball’u bir API konu uzmanı olmaya teşvik etti. Birkaç ay içinde Ball, API güvenliği üzerine bir kitap yazmanın yarısına geldiğini fark etmeden önce konuyla ilgili yaklaşık 150 sayfalık notu usulüne uygun olarak derledi.

“Araştırmamı paylaşma, test uzmanlarını donatma ve API ile ilgili bir sonraki veri ihlalini önlemeye yardımcı olma fırsatı gördüm” diyor. “Nişastasız Pres ile bağlantı kurdum. Gerisi tarih.”

Ball ayrıca APIsec Üniversitesi’nde bir laboratuvar kurma, keşif yapma, uç noktaları analiz etme ve çeşitli saldırıları düzenleme dahil olmak üzere API kalem testi sürecinin farklı aşamalarını öğrettiği ücretsiz bir çevrimiçi kurs yayınladı.

UnAPI günleri

Açık Kaynak Web Uygulama Projesi (OWASP) tarafından 2019’da yayınlanan ilk 10 API güvenlik açığı da dahil olmak üzere, API güvenliğiyle ilgili kaynaklar ve standartlar yavaş yavaş şekilleniyor.

Ancak Ball, web’de çoğalan bazı yaygın API güvenlik hatalarını görmeye devam ediyor. “Yetkilendirme, vahşi ortamda en büyük API güvenlik hatası olmaya devam ediyor” diyor.

OWASP’ın lig tablosunda her ikisi de giriş olan, sık sık bozuk nesne düzeyinde yetkilendirme ve bozuk işlev düzeyinde yetkilendirme örnekleri görüyor. Çoğu durumda, bu güvenlik açıkları, kimliği doğrulanmış bir kullanıcının diğer kullanıcıların verilerine yetkisiz erişim elde etmek için API’yi kullanabilmesi şeklinde kendini gösterir.

Ball, “API yetkilendirme güvenlik açıklarının yaygınlığı nedeniyle, hem geçerli kullanıcılara çok fazla güven duyuluyor hem de kullanıcıların ve grupların birbirlerinin verilerine erişemeyeceğinden veya bunları değiştiremeyeceğinden emin olmak için yeterli test yok” diyor.

Ağ geçidi hatası

API’ler daha yaygın hale gelmeye devam ettikçe, API güvenlik uzmanlarına olan ihtiyaç da artıyor.

“API’lerin aslında kalem testçisi olmakla ilgilenen herkes için harika bir ağ geçidi olduğuna inanıyorum. API’ler, yeni bir hacker’ın hacklediği ilk şey olabilir,” diyor Ball.

API güvenliği hakkında nereden bilgi edinilir? Ball aşağıdaki kaynakları önerir:

Ball, “Postman ve Burp Suite’i iyice tanıyın,” diye tavsiye ediyor. “Elbette, tüm bunları tek bir kaynaktan yapmak istiyorsanız, Hacking APIs adlı kitabıma bakın.”

*PortSwigger, The Daily Swig’in ana şirketidir.

İLGİLİ API güvenliği: Bozuk erişim denetimleri, enjeksiyon saldırıları, 2022’de kurumsal güvenlik ortamını rahatsız ediyor



Source link