Web API Pentesting
Last updated
Last updated
AWS Hacking'i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE) GCP Hacking'i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)
Trickest kullanarak dünyanın en gelişmiş topluluk araçlarıyla desteklenen iş akışlarını kolayca oluşturun ve otomatikleştirin. Bugün Erişim Alın:
API'leri pentest etmek, zayıflıkları ortaya çıkarmak için yapılandırılmış bir yaklaşım gerektirir. Bu kılavuz, pratik teknikler ve araçlara vurgu yaparak kapsamlı bir metodolojiyi özetlemektedir.
SOAP/XML Web Servisleri: Belgelendirme için genellikle ?wsdl
yollarında bulunan WSDL formatını kullanır. SOAPUI ve WSDLer (Burp Suite Eklentisi) gibi araçlar, istekleri ayrıştırmak ve oluşturmak için önemlidir. Örnek belgeler DNE Online adresinde mevcuttur.
REST API'leri (JSON): Belgelendirme genellikle WADL dosyalarında gelir, ancak Swagger UI gibi araçlar etkileşim için daha kullanıcı dostu bir arayüz sunar. Postman, örnek istekleri oluşturmak ve yönetmek için değerli bir araçtır.
GraphQL: API'ler için veri hakkında tam ve anlaşılır bir tanım sunan bir sorgu dilidir.
VAmPI: OWASP top 10 API zayıflıklarını kapsayan, uygulamalı pratik için kasıtlı olarak zayıf bir API.
SOAP/XML Zayıflıkları: XXE zayıflıklarını keşfedin, ancak DTD bildirimleri genellikle kısıtlıdır. XML geçerli kaldığı sürece CDATA etiketleri yükleme eklemeye izin verebilir.
Yetki Yükseltme: Yetkisiz erişim olasılıklarını belirlemek için farklı yetki seviyelerine sahip uç noktaları test edin.
CORS Yanlış Yapılandırmaları: Kimlik doğrulama oturumlarından CSRF saldırıları yoluyla potansiyel istismar için CORS ayarlarını araştırın.
Uç Nokta Keşfi: Gizli uç noktaları keşfetmek için API desenlerini kullanın. Fuzzer gibi araçlar bu süreci otomatikleştirebilir.
Parametre Manipülasyonu: Yetkisiz verilere veya işlevlere erişmek için isteklere parametre eklemeyi veya değiştirmeyi deneyin.
HTTP Yöntemi Testi: Beklenmedik davranışları veya bilgi sızıntılarını ortaya çıkarmak için istek yöntemlerini (GET, POST, PUT, DELETE, PATCH) değiştirin.
İçerik Türü Manipülasyonu: Ayrıştırma sorunları veya zayıflıkları test etmek için farklı içerik türleri (x-www-form-urlencoded, application/xml, application/json) arasında geçiş yapın.
Gelişmiş Parametre Teknikleri: JSON yüklerinde beklenmedik veri türleri ile test edin veya XXE enjeksiyonları için XML verileri ile oynayın. Ayrıca, daha geniş testler için parametre kirliliği ve joker karakterler deneyin.
Sürüm Testi: Eski API sürümleri saldırılara daha duyarlı olabilir. Her zaman birden fazla API sürümünü kontrol edin ve test edin.
kiterunner: API uç noktalarını keşfetmek için mükemmel. Hedef API'lere karşı yolları ve parametreleri taramak ve kaba kuvvetle denemek için kullanın.
https://github.com/BishopFox/sj: sj, açık Swagger/OpenAPI tanım dosyaları ile ilgili API uç noktalarını zayıf kimlik doğrulama açısından kontrol ederek denetim yapmaya yardımcı olmak için tasarlanmış bir komut satırı aracıdır. Ayrıca manuel zafiyet testleri için komut şablonları sağlar.
automatic-api-attack-tool, Astra ve restler-fuzzer gibi ek araçlar, saldırı simülasyonundan fuzzing ve zafiyet taramasına kadar API güvenlik testleri için özel işlevler sunar.
Cherrybomb: OAS dosyasına dayalı olarak API'nizi denetleyen bir API güvenlik aracıdır (araç rust ile yazılmıştır).
OWASP API Güvenliği En İyi 10: Yaygın API zafiyetlerini anlamak için temel bir okuma (OWASP Top 10).
API Güvenlik Kontrol Listesi: API'leri güvence altına almak için kapsamlı bir kontrol listesi (GitHub link).
Logger++ Filtreleri: API zafiyetlerini avlamak için, Logger++ faydalı filtreler sunar (GitHub link).
API Uç Noktaları Listesi: Test amaçları için potansiyel API uç noktalarının derlenmiş bir listesi (GitHub gist).
Trickest kullanarak dünyanın en gelişmiş topluluk araçlarıyla desteklenen iş akışlarını kolayca oluşturun ve otomatikleştirin. Bugün Erişim Alın:
AWS Hacking'i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE) GCP Hacking'i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)