Ana Sayfa Çözümler Hizmetler Çözüm Ortakları Neden Netsmart? Kariyer Keşif İletişim

Netsmart Bilişim Sistemleri A.Ş.

Esentepe Mh. Ecza Sk. No: 6 K: 1, 34394,
Şişli-İstanbul, Türkiye

+90212-274-31-61

[email protected]

Analiz

Modern API Güvenliği Tehditlerine Karşı WAF, API Gateway ve API Security Platformları Karşılaştırması

Günlük hayatta kullandığımız ya da kurumların kendi bünyelerinde kullandıkları web ve mobil uygulamalar, uygulama programlama arayüzleri (API’ler) aracılığıyla birbirine bağlanır. Örneğin, telefonlarımızdaki mesajlaşma uygulamaları API’ler aracılığıyla “konuşarak”, kimin çevrimiçi olduğunu görmemize ve onlara mesaj göndermemize olanak tanır. Verimlilik, pazarlama otomasyonu, CRM ve proje takip uygulamalarımızın tümü API tabanlı çalışır. Kurumlar mikroservis kullanımını yaygınlaştırdıkça ve yeni bulut-yerel uygulamalar oluşturdukça, API kullanımı da artmaya devam etmektedir. Nitekim günümüzde kullanılan 142 milyardan fazla uygulamanın her biri API tabanlıdır. Gartner raporları, API suistimallerinin ve buna bağlı veri ihlallerinin sürekli olarak arttığını göstermektedir.

Günümüzün hızlı ve tekrarlayan geliştirme süreçlerine dayalı uygulama geliştirme dünyasında geliştiriciler, uygulamalar arası iletişim için API’lere güvenmektedir. Dijital dönüşüm yolculuğunda olan kurumlar için API’ler, modern web uygulamalarının temel taşlarından biri haline gelmiştir. Günümüzde geliştiricilerin en az %90’ı, bulut tabanlı web uygulamaları geliştirirken API’leri aktif olarak kullanmaktadır. Dolayısıyla API’ler, hız ve esneklik sağlamalarının yanı sıra güvenlik açısından da yeni riskler barındırmaktadır.

API’ler giderek daha fazla saldırganın hedefi haline gelmektedir. Saldırganlar, hassas verilere doğrudan API’lerdeki zaafiyetleri kullanarak ulaşmaya çalışmaktadır. API’ler, doğaları gereği internet üzerinden erişilebilen uç noktalar sunarak, belirli sorgulara yanıt olarak kullanıcı verilerini ve hizmetleri döndürür. Güçlü bir API güvenlik mekanizması uygulanmadığı takdirde, bu yapı hackerlar için cazip bir hedef haline gelir. Saldırganlar, API’leri yetkisiz veri elde etmek amacıyla doğrudan kullanabilir veya dönen verileri analiz ederek ana uygulamayı tersine mühendislik yoluyla çözmeye çalışabilir.

API Zafiyeti Nedir?

API zafiyeti, en basit ifadeyle bir yazılım hatası veya sistem yapılandırma hatasıdır. Saldırganlar bu açıkları kullanarak:
Hassas uygulama verilerine veya işlevlerine izinsiz erişebilir, API’yi amacı dışında kötüye kullanabilir.

Bu alanda referans olarak kabul edilen OWASP API Top 10, en yaygın API güvenlik açıklarını özetleyerek kuruluşların bu riskleri tespit edip gidermesine yardımcı olur. OWASP API Top 10, API güvenliğini artırmak için iyi bir başlangıç noktasıdır ve çeşitli API risklerini kapsayan geniş bir çerçeve sunar.

API'ler Nasıl Kötüye Kullanılabilir?

Yukarıda da bahsettiğim gibi, çok fazla kullanım alanına sahip olan API’ler çeşitli yöntemlerle saldırıya uğrayabilir ve kötüye kullanılabilir. Yani atak yüzeyi oldukça geniştir. En yaygın API istismar türleri şunlardır:

  • Vulnerability Exploitation (Zaafiyetin Sömürülmesi):
    Altyapıdaki teknik açıklar, sunucunun ele geçirilmesine yol açabilir.Örneğin: Apache Struts güvenlik açıkları (CVE-2017-9791, CVE-2018-11776 vb.) ve Log4j güvenlik açıkları (CVE-2021-44228 vb.).
  • Business Logic Abuse (İş Mantığı İhlali):
    Bu tür saldırılar, CISO’ların en büyük kabuslarından biridir ve geleneksel güvenlik çözümleri bu saldırılara karşı genellikle etkisiz kalır. Saldırganlar, uygulamanın tasarımındaki veya implementasyonundaki hataları kullanarak API’nin beklenmedik ve izinsiz şekilde çalışmasını sağlayabilir.Tespit edilmesi zor bir saldırı türüdür; çünkü zararlı bir kod enjekte edilmeden yapılır. Bu nedenle imza tabanlı çalışan güvenlik araçları tarafından yakalanamaz. Anomali tespiti ve kullanıcı davranış analizi gibi ileri seviye yöntemler gereklidir.
  • Unauthorized data access (Yetkisiz Veri Erişimi): 
    API güvenlik açıklarından biri de bozuk yetkilendirme mekanizmalarının kullanılmasıdır. Saldırganlar, erişim yetkisi olmadan hassas verilere ulaşabilir.Bu tür açıkların başında ve OWASP API Security Top 10 listesinin ilk sırasında Broken Object-Level Authorization (BOLA) yer alır. Diğer örnekler arasında Insecure Direct Object Reference (IDOR) ve Broken Function-Level Authorization (BFLA) da bulunmaktadır.Bu yetkilendirme açıkları, uygulamanın kullanıcı rolleri ve izinleriyle ilgili kontrolleri doğru şekilde yapmamasından kaynaklanır. Bu tür zafiyetlerin giderilmesi için her API çağrısında yetkilendirme kontrollerinin tutarlı bir şekilde uygulanması gerekir.
  • Account Takeover (Hesabın Ele Geçirilmesi):
    Kimlik bilgisi hırsızlığı veya XSS saldırıları ile uygulamaların ayrıcalıklı hesapları ele geçirilebilir.Gelişmiş bir davranış analizi yapılmadığı sürece, saldırganın gerçekleştirdiği her yetkili işlem sistem tarafından geçerli bir kullanım olarak algılanır.Saldırgan, bir kullanıcının kimliğine büründüğü için yapılan işlemler “yetkili bir kullanıcı tarafından yapılmış gibi” görünür.Özellikle oturum çerezleri (cookies), token’lar veya kimlik bilgileri çalındığında, saldırgan API ile doğrudan ve kolayca etkileşime geçebilir.Bu durumu önlemek için MFA kullanımı, kısa ömürlü veya tek kullanımlık token’lar ve davranış tabanlı tehdit tespiti yapan modern güvenlik çözümleri entegre edilmelidir.Şüpheli etkinliklerde hesabı askıya alma gibi önlemlerle veri kaybı engellenebilir.
  • Data Scraping (Veri Kazıma):
    Veri setleri, public API’ler üzerinden erişilebilir hale getirildiğinde, saldırganlar bu API’leri agresif şekilde sorgulayarak büyük ölçekli veri toplama işlemi gerçekleştirebilir.Bu tür saldırılar data scraping ya da data harvesting olarak adlandırılır.Sistem kaynaklarının aşırı kullanımı, uygulamanın yavaşlamasına veya kesintiye uğramasına (DoS benzeri etki) neden olabilir. Ayrıca API rate limit’lerinin kötüye kullanılması, diğer kullanıcıların servise erişememesine yol açabilir.Gizli kalması gereken veriler kümelenerek anlamlı hale geldiğinde veri sızıntısı yaşanabilir.
    Bu tür saldırılara karşı:

    • Rate limiting ve throttling gibi mekanizmalarla bir kullanıcı veya IP’nin belirli bir zaman dilimindeki istek sayısı sınırlandırılmalı,
    • Bu limitler, normal kullanıcıları engellemeden kötüye kullanımı önleyecek şekilde esnek yapılandırılmalı,
    • Bot tespiti ve CAPTCHA entegrasyonu ile şüpheli davranışlar analiz edilerek saldırganların API’yi sömürmesi zorlaştırılmalı,
    • Veri maskelenmesi ve erişim sınırlandırma yöntemleriyle, kamuya açık API’ler üzerinden erişilebilecek veriler minimum seviyede tutulmalıdır.
  • Business DoS – Denial of Service (İş Sürekliliğini Engelleme):
    Saldırganlar, arka planda işlem gerektiren çok sayıda istek göndererek hizmetin yavaşlamasına veya tamamen devre dışı kalmasına neden olabilir.Bu tür saldırılar özellikle GraphQL gibi sistemlerde yaygındır; ancak kaynak tüketimi yüksek olan her API endpoint’i bu tür saldırılara açık olabilir.

 

Yukarıdaki zafiyet türleri ve API kullanımının bu denli yaygınlaşması nedeniyle, API güvenliği, hepimiz için en önemli önceliklerden biri haline gelmiştir.

Pek çok kurum, hâlâ geleneksel bir yaklaşımla Web Application Firewall (WAF) ve/veya API Gateway çözümlerine yönelerek API’lerini korumaya çalışmaktadır.

Ancak bu çözümler, kullanım prensipleri ve yetenek setleri itibarıyla API güvenliğini tam anlamıyla sağlayamamaktadır.

Bu çözümleri detaylandırmak gerekirse, aşağıdaki gibi özetleyebiliriz:

Web Application Firewall (WAF)

Başlangıçta PCI Section 6.6 gereksinimlerini karşılamak amacıyla tasarlanan WAF’ler, OWASP Web Application Top 10 Threats listesinde tanımlanan bilinen güvenlik açıklarını tespit etmek için imza tabanlı bir yaklaşım kullanır. Temel olarak kurum ağında bulunan web uygulamalarını dışarıdan gelebilecek saldırılara karşı korumak için geliştirilmiştir. Ancak bu yapı, API saldırılarına karşı tam anlamıyla savunma sağlamaz. Dolayısıyla WAF’ler, yeni nesil API saldırı türlerini tespit etmekte zorlanır ve API güvenliği için gerekli olan görünürlük, envanter takibi, risk değerlendirmesi ve tehdit önleme gibi gereksinimleri karşılayamaz.

Örneğin, bir BOLA (Broken Object Level Authorization) saldırısında, görünürde zararsız bir çağrı aslında başka bir kullanıcının verisine erişim sağlayabilir. Ancak bu durum, WAF tarafından tanımlanmış bir “tehdit paterni” olarak algılanmaz. Çünkü bu tür saldırıların tespit edilmesi için öncesinde API bazlı davranış analizi yapılması ve öğrenme mekanizmalarının devreye alınması gerekir.

API Gateway

Temel olarak, kurumların API’leri bir araya getirip yönetmelerine yardımcı olmak için tasarlanmıştır. Erişim kontrolü (access control), oran sınırlama (rate limiting) ve IP engelleme listeleri (IP block lists) gibi temel güvenlik işlevlerini sağlar. Ayrıca veri dönüşümü (data transformation), çağrı yönlendirme (call routing) ve kuyruklama (queuing) gibi kapsamlı API yönetim işlevleri içerir; ancak bunlar doğrudan güvenlik işlevi olarak değerlendirilmez.

API Gateway, reaktif bir yapıya sahiptir; yani geliştiricilerin yönetilecek API’leri manuel olarak tanımlaması gerekir.
Güvenlik açısından API Gateway’in sağladığı temel işlevler şunlardır:

  • API’ler üzerinde bir proxy kontrol noktası olarak hizmet vermek,
  • Kimlik bilgileri ve token doğrulama yöntemleriyle API isteklerini kimlik doğrulamasına tabi tutmak,
  • API çağrılarını yetkilendirmek ve ön uç ile arka uç hizmetleri arasında yönlendirmek,
  • Rate limiting ve throttling ile API trafiğini sınırlamak.

On-premise olarak kurulan birçok API Gateway genişletilebilir yapıya sahiptir ve gelişmiş kayıt tutma (logging) ile özel politika uygulama olanağı sunar.

Genellikle kurumsal altyapılarda, belirli departman seviyelerinde veya bulut ortamlarında konuşlandırılan API Gateway’ler, API güvenliği için gereken tam görünürlük, envanter takibi, risk değerlendirmesi, genel güvenlik politikalarının uygulanması ve tehdit önleme gibi kritik gereksinimler konusunda, tıpkı WAF’ler gibi yetersiz kalmaktadır.

Daha önce de belirttiğim gibi, API Gateway’ler ve API Güvenliği Platformları farklı güvenlik amaçlarına hizmet eder. API Gateway’ler yalnızca uç noktaları izler ve her bir API’nin tam şemasını otomatik olarak keşfetmez. Daha da önemlisi, bir API Gateway, API üzerinden akan verileri tanımlama veya sınıflandırma yeteneğine sahip değildir. Kullandığımız API’lere tam görünürlük kazandırmak, onları siber saldırılardan korumak için şarttır. Uyumluluğun sağlanması ve hassas verilerin API’lerde kötüye kullanımdan korunması da aynı derecede önemlidir. Sonuç olarak, neye sahip olduğumuzu bilemezsek onları koruyamayız.

Özetle

API Gateway temelde erişim kontrolü (access control) gibi önemli işlevleri sağlamak amacıyla tasarlanmıştır. Ancak, OWASP API Security Top 10’da belirtilen yeni nesil tehditlere karşı etkili bir savunma sağlayabilmek için, tıpkı WAF gibi tek başına yeterli değildir.

Bu noktada, WAF ve API Gateway’lerin sunduğu güvenlik imkanlarına ek olarak kapsamlı bir API güvenliği sağlayabilmek için aşağıdaki özellikleri içeren bir güvenlik çözümüne ihtiyaç duyulmaktadır. Bu özellikler şu şekilde sıralanabilir:

  1. API Discovering: Modern ortamlarda uygulamalar sürekli güncellenmekte ve yeni mikro servisler eklenmektedir. Bu durum, API’lerin hızla çoğalmasına ve kontrolsüz biçimde büyümesine neden olur. Bu nedenle manuel envanter tutma yöntemleri yetersiz kalır. Ayrıca ortamda kullanılan tüm API’lerin; shadow API ve zombie API’ler dahil olmak üzere tespit edilmesi ve sonunda iyi sınıflandırılmış bir API envanteri oluşturulması gereklidir.
  2. Shadow API: Genellikle geliştiriciler tarafından test, prototip veya geçici çözüm amacıyla oluşturulmuş, fakat daha sonra ortamda kalmaya devam etmiş ya da dokümantasyon ve envanter sürecine dahil edilmemiş API’lerdir.
    Zombie API: Artık kullanılmayan, resmi olarak devre dışı bırakılmış ya da güncel sistem mimarisinde aktif bir görevi kalmamış olmasına rağmen hâlâ erişilebilir durumda olan API’lerdir. Adından da anlaşılacağı üzere, “ölü ama yaşayan” API’lerdir.
  3. API Monitoring and Runtime Protection: Tespit edilen tüm API’lerin nasıl kötüye kullanılabileceğini anlamak için, bu API’lerin nasıl ve neden kullanıldığını analiz eder. Her API için bir “iş bağlamı” (business context) oluşturur. Bu analizlerde yapay zekâ teknolojilerinden yararlanılır. Yeni nesil tüm güvenlik teknolojilerinde olduğu gibi, API güvenliği ürünlerinin merkezinde de yapay zekâ yer alır. Bu sayede API kanalında gerçekleşen sıfırıncı gün saldırıları gibi birçok sofistike saldırı türü tespit edilip önlenebilir.
  4. API Testing: API’lerdeki güvenlik açıklarını ve potansiyel riskleri tespit etmek amacıyla gerçekleştirilen test süreçlerini kapsar. Bu testler manuel olarak ya da otomatik araçlar kullanılarak yürütülebilir ve API’lerin hem güvenli hem de doğru şekilde çalıştığından emin olunmasına yardımcı olur. Bu testlerin, Yazılım Geliştirme Yaşam Döngüsü (SDLC) boyunca uygulanabilir olması gerekir. Böylece hem geliştirme sürecinde hem de hizmete alım sonrası API güvenlik testlerinin sürdürülebilirliği sağlanmış olur.
  5. Behavioral Analysis and Threat Hunting: API aktivitelerinin uzun vadeli olarak kaydedilmesi ve analiz edilmesi, olası tehditlerin tespit edilmesini sağlar. Sistem, API trafiğini izleyerek kullanıcıların normal davranış kalıplarını öğrenir. Amaç, “kullanıcı davranışı açısından normal nedir?” sorusunun cevabını bulmak ve bu sayede anormal, şüpheli davranışları tespit edebilmektir.

BOLA örneğinde olduğu gibi, davranış bazlı ve görünürde zararsız olan sorguların tespit edilmesi ve önlenmesinde bu yetenek kritik öneme sahiptir.

Tüm anlatılanlar ışığında, bir API Güvenliği Platformu’nun WAF ve API Gateway ile karşılaştırmasını tablo şeklinde özetlemek gerekirse, aşağıdaki tablo faydalı olacaktır.

Sonuç olarak, yazının genelinde de vurguladığım gibi API güvenliği, günümüz siber güvenlik trendleri arasında üst sıralarda yer almaktadır. WAF ve API Gateway’ler; web güvenliği ve API yönetimi konularında her ne kadar vazgeçilmez araçlar olsa da, kapsamlı bir API güvenliği sağlamak için bu teknolojilere ek olarak bir API Güvenliği Platformu kullanılması kaçınılmazdır. Ayrıca bu teknolojilerin birbirine alternatif değil, entegre biçimde birlikte çalışarak API’ler için bütünsel bir güvenlik sağlayabileceği unutulmamalıdır.

Kuantum Tehdidine Karşı Güvenlikte Yeni Çağ: Post-Quantum Kriptografi ve Yol Haritası

Analiz

Kuantum bilgisayarlar, klasik bilgisayarların ötesine geçen hesaplama yetenekleriyle, modern kriptografi altyapılarını tehdit eden yeni bir dönemi beraberinde getirmektedir.

Daha fazla
SIEM Projelerinde WEF’in Faydaları ve WEF Konfigürasyonu

SIEM Projelerinde WEF’in Faydaları ve WEF Konfigürasyonu

Konfigürasyon

Windows Event Forwarding, Windows tabanlı sistemlerde yerel olarak desteklenen günlük merkezileştirme özellikleri sağlar. Microsoft, sunucular üzerindeki logların tek bir yerde toplanması WEF mimarisi ile sağlamaktadır.

Daha fazla

Veri Koruma Günü

Analiz

Veri Koruma Günü, her yıl 28 Ocak’ta, kişisel verilerin korunması ve veri gizliliği konusunda farkındalık yaratmak amacıyla belirlenmiş bir gündür.

Daha fazla
9 Adımda Veri Keşfi Neden Önemli

9 Adımda Veri Keşfi: Neden Önemli ve Veri Keşfi Ürünlerinde Nelere Dikkat Edilmeli?

Analiz

Veri keşfi konusu 7 Nisan 2016 tarihinde yürürlüğe giren 6698 sayılı Kişisel Verilerin Korunması Kanunu (KVKK) ile hayatımıza girdi. Bu kanunla beraber bu zamana kadar dağınık olan verilerimizin nerede tutulduğunun ve ne derece kritik olduğunun önemi giderek artmaktadır.

Daha fazla