Uygulama programı ara yüzü (API) ihlalleri son pandemide hızlandı. API’ler geniş bir saldırı yüzeyi oluşturur: iş mantığı kusurları, güvenli olmayan API uç noktaları, zayıf kimlik doğrulama ve şifreleme eksikliği ve uygulamaya ve verilere sağladıkları doğrudan erişim nedeniyle riskler yüksektir.
API kötüye kullanımı ve aşırı API çağrıları, uygulama kaynaklarını bunaltarak uygulamanın kapalı kalmasına neden olabilir; bu da üretkenlik ve gelir kaybı anlamına gelir.
API’leriniz Düşündüğünüzden Daha Hassas
Kusurlu API güvenliği, dünyanın dört bir yanındaki vatandaşların kişisel bilgilerinin ifşa olmasına, güç dağıtımını ve hastane operasyonlarını aksatmasına ve hatta ABD gıda tedarik zincirinin güvenliğini tehlikeye atmasına neden oldu. Bu düzeyde veriye maruz kalma, itibarlara zarar verdiği için kuruluşlar için ciddi bir sorundur.
Bu vakaların çoğu, şirketlerin bildiği API’leri içeriyordu. Ancak, yeni ve gelişmekte olan bir risk kategorisi vardır: gölge, bilinmeyen ve unutulmuş API’ler. Gölge API’leri genellikle BT’nin kontrolü dışındadır. Doğrudan iş kolları grupları tarafından yaratılmış, geliştirilmiş ve kullanılmış olabilirler. Ayrıca belgelenmemiş veya unutulmamış API’ler veya geliştiricilerin API’lerini güvenlik ekibine tam olarak beyan etmediği güncel uygulamalar da olabilir.
API’lere yönelik saldırılar çok sayıda ve çeşitli olsa da (OWASP, API’lere özel ilk 10’u derlemiştir), en yaygın olanları arasında kimlik doğrulama ve yetkilendirme saldırıları, enjeksiyon saldırıları, DDoS saldırıları ve parametre kurcalama yer alır.
API’lerinizi Güvende Tutmak için En İyi Dört Uygulama
Her uygulamaya her giriş noktasını güvenceye almaya çalışmak göz korkutucu görünebilir, ancak görevi biraz daha kolaylaştıracak takip edebileceğiniz dört temel ilke vardır.
1. Tüm API’leri keşfedin
Yukarıda belirtildiği gibi, hangi API’lere sahip olduğunuzu bilmiyorsanız, hangi verilerin açığa çıktığını veya sistemlerinizin güvenliğinin ihlal edilip edilmediğini kontrol edemezsiniz. Kullandıkları iletişim yöntemlerini (GET, POST vb.), etkinliklerini (zaman içindeki istek sayısı) ve kimlik doğrulama hatalarını tanımlayın.
Tüm API’lerinizi anlamanız, belgelemeniz ve kurumsal güvenlik standartlarınızla uyumlu olmalarını sağlamak için katı bir yönetim modeli uygulamanız gerekir. Bu, kullanımdaki API’ler için basit olsa da hareketsiz ve belgesiz olanlar için zor bir görev olabilir. Sonuç olarak, bu gizli API’ler çok tehlikelidir ve onları bilgisayar korsanlarından önce bulmanız gerekir.
2. API Erişim Kontrolünü Zorunlu Kılın
Erişim kontrolünün iki bölümü vardır: kimlik doğrulama ve yetkilendirme. Kimlik doğrulama, API’ye erişen istemcinin gerçekten söylediği kişi olduğunu kanıtlar ve yetkilendirme, istemcinin istediği verilere erişme hakkına sahip olduğunu doğrular. Geleneksel olarak, istemcilerin kimliğini doğrulamak için temel kimlik bilgisi kontrolleri kullanılmış olabilir. Yine de bu saldırıya uğramış parolalar ve belirteç kötüye kullanımı dünyasında, her API için ayrıntılı yetkilendirme politikaları oluşturmak, tanımlamak, tanımlamak ve uygulamak için kripto grafik olarak güvenli mekanizmalar (örneğin OpenID ve OAuth) kullanmak en iyisidir.
Ayrıca, API anahtarlarınızı Amazon S3 gibi genel bulut depolama alanında veya GitHub gibi herkesin kullanımına açık kod havuzlarında saklamadığınızdan emin olun. Uygulamalarda sabit kodlanmış API anahtarı olmadığından emin olmak için kod incelemeleri de gereklidir.
Son olarak, aktarım sırasında verilerin açığa çıkmasını önlemek için API iletişimleri için her zaman güçlü şifreleme uygulamalısınız.
Üç katmanlı uygulamalarınız için bu prosedürleri zaten oluşturmuş olabilirsiniz, ancak uygulamanızı daha modern, bulutta yerel mimarilere geçirirken, tüm iç uygulamalarınız için aynı güvenlik düzeylerini (kimlik doğrulama, yetkilendirme şifrelemesi ve görünürlük) sağlamak hayati önem taşır. -mikro hizmetler API iletişimleri. Yine, hizmet ağı dağıtım modelleri için karşılıklı TLS gibi kripto grafik olarak güvenli mekanizmalar kullanılmalıdır.
3. API’leri Kötüye Kullanımdan Koruyun
Bir API’ye yapılan aşırı istekler iki tehdidi temsil edebilir. Ya birisi verilerinizi çalmaya çalışıyor ya da biri hizmetlerinizi bozmaya çalışıyor, her ikisi de işiniz için çok ciddi. İyi haber şu ki, bir müşterinin saniyede yapabileceği işlem veya istek sayısını basitçe tanımlayarak bu tehditleri hafifletmek kolaydır. Tüm API’leriniz için bir hız sınırı stratejisi uygulamak en iyi uygulamadır. Bu, yalnızca API’nin kasıtlı olarak kötüye kullanılmasını önlemekle kalmaz, aynı zamanda hatalı çalışan veya yanlış yapılandırılmış uygulamalardan gelen ve uygulamanızı bir taramaya yavaşlatabilecek kazara isteklerin taşmasını da azaltır.
4. İç görü İçin Sürekli İzleyin
API’lerinizin sürekli izlenmesi, güvenlik için bir zorunluluktur. API etkinliğindeki değişiklikler, iş uygulamasındaki değişiklikleri yansıtabilir veya bir saldırıyı gösterebilir. API kullanımını hem çağrıların hem de aktarılan verilerin sayısını – ve performansı (gecikme dahil) ve hataları incelemelisiniz. Ek olarak, coğrafi konum ile API çağrılarının kaynağına çapraz referans vermek, istenmeyen istekleri ortaya çıkarabilir. Kimlik doğrulama başarısına ve daha da önemlisi başarısızlık oranlarına yakından bakın. Bunlardaki değişiklikler, bir şeylerin ters gittiğinin ve araştırılması gerektiğinin iyi göstergeleridir. API’lerinizin temel trafiğini bilin ve sapmaları tespit etmek için kullanın.
Güvenlik Bir Yolculuktur, Varış Noktası Değil
API’ler işletmenizin çevikliği için çok önemli olmakla birlikte, değerli verilere doğrudan erişime sahip çok net bir saldırı yüzeyini temsil ederler, bu nedenle onları korumak çok önemlidir.
API koruması çeşitli şekillerde dağıtılabilir, ancak en basit yöntem, onu mevcut uygulama teslim denetleyicinizde (ADC) etkinleştirmektir. Örneğin Citrix® ADC™ gibi araçlar , tüm API trafiğinizi görmek ve WAF ve bot yönetimi gibi diğer kapsamlı güvenlik özelliklerinin yanı sıra entegre API güvenlik işlevselliği sunmak için kullanılabilir.
Güvenlik bir varış noktası değil, sürekli bir yolculuktur. Yukarıda özetlenen en iyi dört uygulamayı takip eden şirketler, daha iyi API güvenliği ve kurumsal başarı için net bir yol oluşturabilir.