Gün geçtikçe API saldırılarındaki hızlı ve kontrol edilemeyen artış ve buna önlem almak için yapılan güvenlik çözümleri endişeyle gündeme geliyor. Bu bağlamda siber saldırganların botlarının engellenme işlemleri ve API güvenliği çözümlerinin ortaya çıkmasının sanki birbirleriyle ilişkisi yokmuş gibi kafa karışıklığı yarattığını görmekteyiz. Gerçekçi açıdan değerlendirilirse , API’ler ve botların ayrılmaz bir şekilde birbiriyle ilişkili olduğu şüphe götürmez.
Çok doğal olarak yazılım geliştiricilerin API’lerde önemli avantaj gördüğü özellikler var. Bunlar “esneklik, kullanım kolaylığı, hız, vb.” Unutmamak gerekir ki bu özellikler istismar edilecek kod açıklarını bulan, ya da kusursuz kodlanmış yazılımları API’lere saldırmak için bot kullanan veya her ikisini hibrit olarak kullanabilen siber saldırganlar için de aynı şekilde geçerlidir. Gerek düzgün kodlanmış yazılımları gerekse hatalı API’lere nasıl saldırılabileceğini
tam olarak anlamadığımız sürece, kusursuz API korumasından söz etmek olası değildir.
Başarı, bir riskin nasıl keşfedildiğini, saldırganların bundan yararlanmak için kullandıkları taktikleri, araçlarını ve prosedürleri ve saldırganların yapılan savunmalara nasıl tepki vereceğini iyi tahmin ederek anlamaktan ve özgün siber güvenlik önlemlerini çoğaltmaktan geçiyor.
Hedefimiz yalnızca API’lerin öncelikle “OWASP API Security Top 10” uyumluğundan emin olmakla değil, aynı zamanda mükemmel şekilde kodlanmış bir API’nin yapabileceği birçok farklı yolu kapsayan bir kategori olan “API10+” olarak tanımlanabilecek detayları da çok iyi kavramak ve bilmek olmalıdır.
1- CQ Prime Tehdit Araştırması ekibi tarafından geliştirilen rapora göre, 2022’nin ilk yarısında gözlemlenen 20 milyardan fazla API ler günümüzde kurumları rahatsız eden en önemli Siber tehditlerin başında geliyor.
2- Gözlemlenen 16,7 milyar kötü amaçlı istem (request) içinde yaklaşık 5 milyarı (%31), (Shadow API = Gölge API’ler) olarak adlandırılan, hedeflenen bilinmeyen, yönetilmeyen ve korunmayan API’lerden oluşmaktaydı.
3- CQ Prime Tehdit Araştırması ekibince farkedilip engellenen 3,6 milyar saldırıya dayanarak, 2022’nin ilk yarısında azaltılan ikinci en büyük API güvenlik tehdidi, siber saldırganların uygun şekilde kodlanmış ve envantere alınmış API’leri hedeflediği saldırılar oldu. Engellenebilen en yaygın saldırılar, saldırganların stratejileri hakkında bize fikir veriyor…
– Spor ayakkabılar veya lüks ürünleri hedefleyen 3 milyar alışveriş botu,
– 290 milyon hediye kartı ( Gift Card ) saldırısı.
– Popüler flört ve alışveriş uygulamalarında yaklaşık 237 milyon sahte hesap oluşturulmaya çalışılması, örnekler çoğaltılabilir.
Bunları ötesinde en ciddi tehdidin “Kimlik Bilgileri Doldurma, Gölge API’ler ve Hassas Verilere Maruz Kalma” üçlüsünün birlikte kullanılmasına dikkat çekiliyor.
100 milyon saldırıya bakarak, API2 (Broken User Authentication), API3 (Excessive Data Exposure) ve API9 (Improper Assets management) zafiyetlerinin birlikte kullanımını yorumlarsak,
Saldırganların,
– Her bir API’nin nasıl çalıştığına ve
– Her biri ile nasıl etkileşime girdiğine dair ayrıntılı ve sürekli analizler yapıyor oldukları anlaşılıyor.
Dikkat çekmek istediğimiz şey, yazılım geliştiricilerin API kodlamalarında her zamankinden daha çok dikkatli ve tetikte olmaları, API’leri de ayrıca mutlaka spesifik API’lere özgü güvenlik testinden geçirmeleri gereğidir.
API Güvenliğinin Genel Uygulama Güvenliğinden Farkı Nedir?
Geleneksel web güvenliğinin temel özelliklerine bakarsak : Hepimizin bildiği üzere “Geleneksel ağlarda”, erişim noktalarını kontrol eden net bir çevre mevcuttur. Bu çevre, istek sahiplerinin ( requestors) erişimlerine ya izin verir , ya da bunları reddeder ve izin verilen erişimlerin iyi niyetli olduğunu varsayar. Statik protokollerin davranışını düşünürsek ; gelen istekler çoğunlukla statik protokollere uyacak ve güvenlik yöneticilerinin bu protokolleri
zorlamak için bir web uygulaması güvenlik duvarı (WAF) yapılandırmasına olanak tanıyacaklardır.
Web tarayıcısı kullanan istemcilerde ; WAF, istemcilerin tarayıcı ortamlarını doğrulayabilir ve eğer bu doğrulama başarısız olursa, istemcinin kontrolsuz bir tarayıcı veya öykünücü kullanan bir bot olduğu varsayılacaktır. Şimdi de saldırıları tespit etmek için istekleri inceleme konusuna bakalım; geleneksel bir ağ, siteler arası komut dosyası çalıştırma (XSS) girişimlerini engellemek için bir WAF kullanabilir. Eğer tek bir IP’den büyük bir trafik hacmi algılarsa, WAF bunun bir “Dağıtılmış Hizmet Reddi” (DDoS) girişimi olduğunu belirleyebilir.
Şimdi de API güvenliğini geleneksel güvenlikten ayıran temel özelliklere bakalım…. Birçok açıklığı olan ve “hendeği olmayan bir kale gibi” düşünelim… Hatırlarsak geçmişte geleneksel ağların yalnızca 80 (HTTP) ve 443 (HTTPS) gibi ortak bağlantı noktalarının koruması gerekiyordu. Ancak artık günümüzün web uygulamaları, farklı protokoller kullanan çok sayıda API uç noktasına sahiptir. API’ler genellikle zamanla genişlediğinden, tek bir API bile güvenliği sandığımızdan çok zorlayacak bir hale getirme potansiyeline sahiptir.
Sık sık değişen gelen istek biçimleri olduğunu aklımızdan çıkartmayalım. Biliyoruz ki günümüzün dinamik iş dünyasının yenilikçi uygulamaları gereği API’ler bir DevOps ortamında hızla gelişir ve çoğu WAF bu esneklik düzeyine uyum sağlayamaz. Bir API her değiştiğinde, geleneksel güvenlik araçlarının mutlaka manuel olarak yeniden ayarlanması ve yeniden yapılandırılması zorunlu olarak gerekir ki bu süreç, ciddi kaynak ve zaman tüketen hataya çok açık bir süreçtir.
İstemciler genellikle bir web tarayıcısı kullanmazlar – çoğu hizmet veya mikro servis API’sine yerel ve mobil uygulamalar veya diğer hizmetler ve yazılım bileşenleri tarafından erişilir. Bu istemciler bir tarayıcı kullanmadığından, web güvenlik araçları tarayıcı doğrulamasını kullanamaz. Kötü amaçlı botları tespit etmek için tarayıcı doğrulamasına dayanan çözümler, otomatik trafiği API uç noktalarından hariç tutmayı genellikle zor bulur. Özetlersek gelen
istekleri incelemek, saldırıları tespit etmeyi garanti etmez – birçok API kötüye kullanım saldırısı, meşru görünen istekleri kullanır.
API Güvenlik açıklarını nasıl tespit ederiz ?
API’leri etkili bir şekilde güvenli hale getirmenin tek yolu, API yaşam döngüsünün hangi bölümlerinin güvensiz olduğunu anlamaktan geçiyor. Eğer uygulamalarınız çok sayıda API içeriyorsa API yaşam döngüsünün tamamını göz önünde bulundurmak önemlidir. API, bir yazılım ürününün tasarımından geliştirmeye, test etme, hazırlama ve üretime geçişine kadar tüm aşamalarından geçen bütünsellikle ele alınmalıdır.
Son yıllarda gittikçe artan API ile ilgili güvenlik tehditleri sebebiyle, Open Web Application Security Project (OWASP), en ciddi API güvenlik sorunlarına ilişkin farkındalığı arttırmak amacıyla API Security Top 10’u güncelledi. API’lersiz dünya düşünülemez çünkü işletmelerin dijital ürün ve hizmetlerini sunmak için ihtiyaç duyduğu temel verilerin birbirine bağlanmasını sağlayan önemli unsurlar API’lerdir. Bulutta faaliyet gösteren her şirket API’lere
güvenir. API güvenliği, bu şirketlerin kritik hizmetlerini ve müşterilerinin verilerini korumaları için mutlak bir gereklilik haline geldi.
API’ye özgü siber güvenlik ihtiyacının karşılanması mutlak zorunludur. Özetle bu konuda geleneksel siber güvenlik yöntemleri günümüzde artık yetersizdir. API saldırılarının sayısı ve karmaşıklığı arttıkça, API güvenliğine farklı yaklaşmak zorunlu hale gelmiştir. Konuyu merak eden, bu konudaki çözümleri tartışmak isteyenler doğrudan bana ulaşabilir. API güvenliği konusundaki birikimimizi ve özgün çözümlerimizi konuşmaya ve paylaşmaya hazırız.
Cüneyt Kalpakoğlu
Founder & Chairman @ Endpoint-labs Cyber Security R&D.
Founding member & member of the supervisory board Türkiye Informatics Foundation “Türkiye Bilişim Vakfı”
OWASP “The Open Worldwide Application Security Project®” Member
cuneyt@endpoint-labs.com
Kaynakça:
Why API Security Must Be a Top Concern? Bar Dvir Director of Engineering at WIB
Full Lifecycle Security For Your API Ben Grossmann VP of Engineering at WIB
API Security: Why It’s Unique and Where We’re Going Wrong Philip Ingram MBE
API Security: The Complete Guide to Threats, Methods & Tools Danko Kovacic
API risklerinin farkında mısınız ? Cüneyt KALPAKOĞLU Published on October 19, 2022
https://www.darkreading.com/,
https://www.cequence.ai/ Salt Security State of API Security Report Q3 2022.
https://owasp.org/www-project-api-security/