API Güvenliğinin Genel Uygulama Güvenliğinden Farkı Nedir?
Yayınlanan: 2023-07-19Bazen aynı şeyle karıştırılsa da uygulama güvenliği ve API güvenliği iki farklı disiplindir. Uygulama güvenliği, tüm uygulamaların güvenliğinin sağlanması anlamına gelirken, API güvenliği, kuruluşların uygulamalara bağlanmak ve veri alışverişi yapmak için kullandığı API'lerin güvenliğinin sağlanması anlamına gelir. Bu nedenle kuruluşların iki disipline farklı yaklaşımlar benimsemesi gerekir.
Uygulama güvenliği nedir?
Uygulama güvenliği (AppSec), verileri ve sistemleri siber saldırılara karşı korumak için yetkilendirme, şifreleme ve güvenli kodlama uygulamalarını kullanır. AppSec'i uygulayan kuruluşlar veri ihlali riskini azaltır, hassas verileri korur ve uygulamalarının endüstri standartlarıyla uyumlu olmasını sağlar.
ISACA, AppSec programlarının beş kritik bileşenini şu şekilde tanımlar:
- Tasarım gereği güvenlik
- Güvenli kod testi
- Yazılım malzeme listesi
- Güvenlik eğitimi ve farkındalığı
- WAF'ler ve API güvenlik ağ geçitleri ve kural geliştirme
API güvenliği nedir?
API veya uygulama programlama arayüzü güvenliği, API'leri siber saldırılara karşı korur. API kullanımı son yıllarda hızla arttı ve uygulamalar arasında veri aktarımını mümkün kılarak kuruluşlara yenilik fırsatları sağladı. Ne yazık ki API kullanımı arttıkça onlara yönelik saldırılar da artıyor. Salt Security'nin araştırması, API'lere yönelik saldırıların Haziran ve Aralık 2022 arasında %400 arttığını ortaya çıkardı.
Uygulama ve API güvenlik tehditleri
AppSec ve API güvenliği arasındaki farkı anlamak, her disiplinin en önemli tehditlerini anlamayı gerektirir. Neyse ki, yazılım güvenliğini iyileştirmeyi amaçlayan kar amacı gütmeyen bir kuruluş olan OWASP, uygulama güvenliği ve API güvenliğine yönelik en önemli tehditlerin kapsamlı bir listesini sunmaktadır. OWASP İlk On olarak bilinen listeler, uygulamalara ve API'lere yönelik en kritik tehditleri belirlemek için OWASP'ın küresel güvenlik uzmanı topluluğundan gelen bilgileri bir araya getirir.
İlginç bir şekilde, OWASP 2003 yılında İlk On Web Uygulaması Güvenlik Riski listesini yayınlarken, İlk On API Güvenlik Riski listesini yalnızca 2019'un sonlarında yayınladı. Bu tutarsızlık, uygulama ile API güvenliği arasındaki bir başka önemli farkı temsil eder: uygulama güvenliği, köklü, Kapsamlı bir şekilde araştırılmış ve çok sayıda evrim aşamasından geçmiş bir disiplindir, oysa API güvenliği böyle değildir.
Derinlemesine bir analiz için zamanımız olmasa da, aralarındaki farkları görmek için her listeye kısaca bakmak faydalı olacaktır; bu, kuruluşların AppSec ve API güvenliğine nasıl yaklaştıkları hakkında bilgi verecektir.
OWASP İlk On Uygulama Güvenliği Riski (2021)
- Kırık Erişim Kontrolü – Yetkisiz bir kullanıcı kısıtlı bilgilere veya sistemlere erişebildiğinde
- Kriptografik Başarısızlıklar – Üçüncü bir tarafın, kriptografideki eksiklik veya kusurlar nedeniyle hassas verileri özel bir amaç olmadan ifşa etmesi
- Enjeksiyon – Bir saldırganın, tercümana gönderilen komutların anlamını değiştirecek şekilde bir uygulamaya veri göndermeye çalışması
- Güvenli Olmayan Tasarım – Mimari ve tasarım kusurlarıyla ilgili riskler
- Yanlış Güvenlik Yapılandırması – Güvenlik ekipleri güvenlik kontrollerini yanlış yapılandırdığında veya güvensiz bıraktığında
- Savunmasız ve Güncel Olmayan Bileşenler – Kuruluşlar bileşenleri yamasız bıraktığında
- Tanımlama ve Kimlik Doğrulama Hataları (nee Kırık Kimlik Doğrulaması) – Uygulamalar kimlik doğrulama saldırılarına karşı savunmasız olduğunda
- Yazılım ve Veri Bütünlüğü Arızaları – Kod ve altyapı bütünlük ihlallerine karşı koruma sağlayamadığında
- Güvenlik Günlüğü Kaydetme ve İzleme Hataları (nee Yetersiz Günlüğe Kaydetme ve İzleme) – Kuruluşlar, yetersiz günlüğe kaydetme ve izleme prosedürleri nedeniyle veri ihlallerini tespit edemediğinde
- Sunucu Tarafı İstek Sahteciliği – Saldırganlar, bir güvenlik duvarı, VPN veya başka türde bir ağ erişim kontrol listesi (ACL) tarafından korunsa bile, uygulamaları beklenmedik bir hedefe hazırlanmış bir istek gönderecek şekilde kandırdığında
OWASP İlk On API Güvenlik Riski (2023)
- Bozuk Nesne Düzeyinde Yetkilendirme – Bir API nesnesi (örneğin, veritabanları veya dosyalar) uygun yetkilendirme kontrollerine sahip olmadığında, yetkisiz kullanıcılara erişim izni verilir.
- Bozuk Kimlik Doğrulama - Yazılım ve güvenlik mühendisleri API kimlik doğrulamasının sınırlarını ve bunun nasıl uygulanacağını yanlış anladığında
- Kırık Nesne Özelliği Düzeyinde Yetkilendirme – Aşırı veri açığa çıkması ve toplu atamanın birleşimi: Saldırganlar nesne özelliği düzeyinde bir kilitten veya uygunsuz yetkilendirmeden yararlandığında.
- Sınırsız Kaynak Tüketimi – API isteklerini karşılamak ağ bant genişliği, CPU, bellek ve depolama gerektirir. Hizmet sağlayıcılar, e-posta/SMS/telefon aramaları veya biyometrik doğrulama gibi diğer kaynakları API entegrasyonları aracılığıyla kullanılabilir hale getirir ve istek başına ödeme yapar. Başarılı saldırılar Hizmet Reddine veya operasyonel maliyetlerin artmasına neden olabilir.
- Bozuk İşlev Düzeyi Yetkilendirmesi, saldırganların açığa çıkan API uç noktalarına meşru API çağrıları göndermesini içerir
- Hassas İş Akışlarına Sınırsız Erişim – Bu riske karşı savunmasız olan API'ler, işlevselliğin otomatik bir şekilde aşırı şekilde kullanılması durumunda işletmeye nasıl zarar verebileceğini telafi etmeden, bilet satın alma veya yorum yayınlama gibi bir iş akışını açığa çıkarır; bu mutlaka uygulama hatalarından kaynaklanmaz.
- Sunucu Tarafı İstek Sahteciliği – Bir API, kullanıcı tarafından sağlanan URI'yi doğrulamadan uzak bir kaynağı getirdiğinde; Bir saldırganın, bir güvenlik duvarı veya VPN tarafından korunuyor olsa bile, uygulamayı beklenmedik bir hedefe hazırlanmış bir istek göndermeye zorlamasına olanak tanır.
- Yanlış Güvenlik Yapılandırması – API'ler ve bunları destekleyen sistemler genellikle onları daha özelleştirilebilir kılmak için karmaşık yapılandırmalar içerir. Yazılım ve DevOps mühendisleri bu yapılandırmaları kaçırabilir veya yapılandırmayla ilgili en iyi güvenlik uygulamalarını takip etmeyebilir, bu da farklı türdeki saldırılara kapı açabilir.
- Uygunsuz Envanter Yönetimi – API'ler, geleneksel web uygulamalarına göre daha fazla uç noktayı açığa çıkarır, bu da doğru ve güncellenmiş dokümantasyonu önemli kılar. Kullanımdan kaldırılan API sürümleri ve açığa çıkan hata ayıklama uç noktaları gibi sorunları azaltmak için yeterli sayıda ana bilgisayar ve dağıtılan API sürümü envanteri de gereklidir.
- API'lerin Güvenli Olmayan Tüketimi – Geliştiriciler, üçüncü taraf API'lerden alınan verilere kullanıcı girişinden daha fazla güvenme ve daha zayıf güvenlik standartlarını benimseme eğilimindedir. Saldırganlar, API'leri tehlikeye atmak için doğrudan hedef API'yi tehlikeye atmaya çalışmak yerine entegre üçüncü taraf hizmetlerinin peşine düşer.
Gördüğünüz gibi bazı örtüşmeler olsa da uygulamalar ve API'ler öncelikle farklı, benzersiz tehditlere maruz kalıyor ve kuruluşların buna göre yanıt vermesi gerekiyor. İki liste arasındaki temel fark, kuruluşların uygulama güvenliğiyle ilişkili tüm kritik riskleri geleneksel, çok amaçlı güvenlik araçları ve teknikleriyle azaltabilmesi ancak API güvenliğinin farklı olmasıdır.
API güvenliği, aynı derecede modern bir çözüm gerektiren son derece modern bir sorundur. Kuruluşlar, uygulamalarını ve diğer varlıklarını korumak için kullandıkları araçların API'lerin güvenliğini sağlama görevini yerine getirmesini bekleyemez. API güvenliği, API'ye özgü güvenlik araçlarını gerektirir; API ağ geçitleri ve Web Uygulaması Güvenlik Duvarları (WAF'ler) gibi geleneksel koruma yöntemleri yeterince ileri gitmiyor.