Yavuzlar
Ana sayfaTelegram
  • Yavuzlar
  • VulnLab
  • CodinLab
  • 📚EĞİTİM
    • PHP
      • XAMPP kurulumu
      • VS Code Kurulum
      • 1.0 PHP Nedir
      • 1.1 Dosya Oluşturma
      • 1.2 Syntax (Yazım Kuralları)
      • 1.3 PHP'de Echo ve Print
      • 1.4 PHP'deki yorumlar
      • 1.5 PHP Değişkenleri
      • 1.6 Operatörler (Operators)
      • 1.7 Veri Türünü Alma
      • 1.8 PHP'de String
      • 1.9 PHP'de Sabitler
      • 2.0 PHP'de If Else Elseif
      • 2.1 Switch Case
      • 2.2 PHP'de Döngüler
      • 2.3 PHP'de Diziler (Arrays)
      • 2.4 PHP'de Süper Global Değişkenleri
      • 2.5 PHP'de Cookie (Çerez) Ve Session (Oturum) Yöntemleri
      • 2.6 Form işlemleri
    • C++
      • 1.0 Temeller
        • 1.1 Dosya Oluşturma
        • 1.2 Syntax (Yazım Kuralları)
        • 1.3 Yorum Satırları
        • 1.4 C++ Değişkenleri
          • 1.4.1 Değişken Türleri
        • 1.5 Operatörler (Operators)
        • 1.6 Namespace
        • 1.7 Kullanıcı Girdisi (User Input)
        • 1.8 C++ Stringleri (C++ Strings)
        • 1.9 Matematik (Math) Fonksiyonları
        • 1.10 Booleans
        • 1.11 If Else
        • 1.12 Switch
        • 1.13 While Döngüsü
          • 1.13.1 Do While Döngüsü
        • 1.14 For Döngüsü
        • 1.15 Break/Continue
        • 1.16 Diziler
        • 1.17 Structures
        • 1.18 Enums
        • 1.19 References
        • 1.20 Pointers
      • 2.0 Fonksiyonlar
      • 3.0 Sınıflar
        • 3.1 OOP
        • 3.2 Sınıflar ve Objeler
        • 3.3 Sınıf Methodları
        • 3.4 Yapıcılar (Constructors)
        • 3.5 Erişim Belirleyicileri (Access Specifiers)
        • 3.6 Kapsülleme (Encapsulation)
        • 3.7 Inheritance
        • 3.8 Polimorfizm (Polymorphism)
        • 3.9 Dosyalar (Files)
        • 3.10 İstisnalar (Exceptions)
        • 3.11 Tarih ve Zaman (Date and Time)
      • 4.0 Veri Yapıları (Data Structures)
        • 4.1 Veri Yapıları ve STL
        • 4.2 Vektörler (Vectors)
        • 4.3 Listeler (Lists)
        • 4.4 Yığınlar (Stacks)
        • 4.5 Kuyruklar (Queues)
        • 4.6 Deque (Çift Uçlu Kuyruk)
        • 4.7 Küme (Set)
        • 4.8 Maps
        • 4.9 Iterator
        • 4.10 Algoritmalar
  • 🛠️ARAÇLAR
    • Aircrack-ng
    • Airgeddon
    • Arjun
    • BeEF
    • Bettercap
    • Docker
    • Gelişmiş Wireshark Kullanımı (Advanced Wireshark Usage)
    • Google Dorks
    • Hping3
    • John the Ripper
    • Metasploit Framework
    • Netcat
    • Nmap
    • OSINT Framework
    • PEASS-ng
    • Sublist3r
    • XSS Scanner
    • Wireshark
    • ZAP
    • HYDRA
  • 🖥️İŞLETİM SİSTEMLERİ
    • Linux101
    • MBR
  • 🔑KRİPTOLOJİ
    • Dijital Sertifika ve İmzalar
    • Sezar Şifrelemesi
    • Steganografi
    • Veri Şifreleme (Data Encryption)
  • 🔏Network
    • Domain Name Server (DNS)
    • Firewall Nedir? Nasıl Çalışır ?
    • Ortadaki Adam Saldırısı (Man In The Middle Attack)
    • OSI Modeli
    • Sanal Özel Ağlar (VPN)
    • World Wide Web (WWW)
  • 🔐PRIVILEGED
    • Docker Escape
  • 📨Protokoller
    • ARP
    • DHCP
    • FTP
    • HTTP/HTTPS
    • SSH
    • TCP/IP
    • UDP
    • Wİ-Fİ Güvenlik Protokolleri (WEP/WPA/WPA2/WPA3)
  • 💻SİBER TEHDİT İSTİHBARATI
    • Gelişmiş Siber Tehdit İstihbaratı Nedir?
  • 🔒WEB GÜVENLİĞİ
    • 403 ByPass
    • API Güvenliği (API Security)
    • Broken Access Control
    • Bulut Güvenliği (Cloud Security)
    • Command Injection
    • Cross Origin Resource Sharing
    • Cross Site Request Forgery (CSRF)
    • Cyber Kill Chain
    • DDoS Saldırıları
    • File Upload Zafiyeti Nedir?
    • HTTP Request Smuggling
    • Insecure Direct Object Reference (IDOR)
    • Incident Response
    • Local File Inclusion (LFI)
    • NoSQL Injection
    • Pentest 101
    • Race Condition
    • Server Side Request Forgery (SSRF)
    • Server Side Template Injection (SSTI)
    • Spring4Shell
    • Two Factor Authentication Bypass
    • XML External Entity Attack (XEE)
  • 🤖YAPAY ZEKA
    • ChatGPT for Hacking
    • Siber Güvenlik ve Yapay Zeka
    • Yapay Zeka ile Sahte Fotoğraf Tespiti
  • 🌐YAZILIM
    • Düzenli İfadeler (Regular Expressions)
    • Elasticsearch Nedir?
    • Front-end Teknolojileri
    • Golang'da Arayüzler (Interfaces)
    • Go'da Concurrency ve Uygulamaları
    • Güvenli Kodlama (Secure Coding)
    • Java Overloading vs Overriding
    • JSON Web Token (JWT)
    • Material-UI
    • NextJS Nedir?
    • ReactJS Kancalar (Hooks)
    • ReactJS Nedir?
    • Redux Toolkit
    • SOLID Yazılım Geliştirme Prensipleri
    • SQL 101
    • UI / UX Nedir?
    • Veri Taşıma Nedir? (Database Migration)
    • Versiyon Kontrol Sistemleri ve GIT
  • 🔷DİĞER
    • Bug Bounty (Hata Ödülü) Nedir?
    • Popüler Yazılımların Kurulumları
      • Ubuntu Server 24.04 LTS Kurulumu
      • Ubuntu için Güncel Docker Engine Kurlumu
    • Güvenlik Operasyonları Merkezi Nedir?
    • Honeypot (Bal Küpü)
    • IoT Güvenliği Nedir?
    • ShellShock Exploit
    • Yük Dengeleyici (Load Balancer) Nedir?
Powered by GitBook
On this page
  • API Nedir?
  • API Kullanmanın Avantajları Nelerdir?
  • API Güvenliği İçin Yaygın Mimariler Nelerdir?
  • Soap Mimarisi
  • Rest Mimarisi
  • GraphQL Mimarisi
  • API'leri Bir Hedef Haline Getiren Faktörler Nelerdir?
  • API Tasarımı ve Uygulanması
  • API Güvenliği Nasıl Sağlanır?
  • Web Uygulaması Güvenlik Duvarı (WAF)
  • Bot Koruması
  • API Yönetimi
  • API Ağ Geçidi

Was this helpful?

  1. WEB GÜVENLİĞİ

API Güvenliği (API Security)

Previous403 ByPassNextBroken Access Control

Last updated 4 months ago

Was this helpful?

API Nedir?

Api uygulama geliştirme arayüzü anlamına gelir ve yazılım bileşenleri arasında iletişim kurmak için kullanılır.

Farklı yazılım sistemleri arasında bilgi ve işlevsellik paylaşımını mümkün kılar.

Programcıya belirli bir uygulamanın sağladığı verilere erişmeyi kolaylaştıran bir set protokol, komut ve araç sunar.


API Kullanmanın Avantajları Nelerdir?

Binevi güvenlik duvarı oluşturur. Tüm veriyi paylaşmak yerine tek bir talep sunucuya iletilir.

Hızlı ve kolay çalışır.

Program geliştirmeyi kolaylaştırır. Arka planda ne olduğu ile ilgili bir fikre ihtiyaç duyulmaz.

Bütün karmaşıklığı sorunsuz bir şekilde saklayabilmemizi sağlar.


API Güvenliği İçin Yaygın Mimariler Nelerdir?

Soap Mimarisi

Basit nesne erişimi protokolü anlamına gelir.XML tabanlı bir protokol olan SOAP farklı platformlardaki uygulamalar arasında bilgi alışverişini sağlar. Veri paketlerini şifreleyerek ve kimlik doğrulaması yaparak güvenli bir iletim ve endüstri standardı olması sebebi ile farklı platformlar arasında uyumluluk sağlar.

Rest Mimarisi

Temsili durum aktarımı anlamına gelir ve web servislerinde kullanılan bir mimari tarzıdır. HTTP protokolünü kullanır. Veri formatı olarak JSON,XML gibi alternatif seçenekler sunar. Basit, esnek ve ölçeklendirilebilir olması nedeni ile popülerdir.

GraphQL Mimarisi

Web servislerinde kullanılan bir veri alışverişi dilidir. Veri formatı olarak JSON kullanır. İstemcinin ihtiyacı olan verileri tam olarak belirtmesine ve almasına olanak tanır. Kimlik doğrulama için 0Auth,JWT gibi farklı seçenekler sunar


API'leri Bir Hedef Haline Getiren Faktörler Nelerdir?

  • Kolay anlaşılıyor olmaları.

  • Değerli bilgiye daha çabuk ulaşılabiliyor olması.

  • Saldırıları otomatize etmenin kolay olması.

  • Sürekli değişip güncelleniyor olmaları.

  • Saptanmalarının ve sömürülmelerinin kolay olması.


API Tasarımı ve Uygulanması

Sürüm Oluşturma

Sürüm oluşturma, zaman içerisinde apilerde yapılan değişiklikleri yönetme işlemidir. Geliştiriciler apide yapılan değişikliklerin mevcut uygulamaları bozmaması için sürüm oluştururlar.

Giriş Doğrulama ve Veri Temizleme

Api tarafından alınan verilerin geçerli bir formata uygun olduğunu kontrol etme işlemidir. Örneğin sql injection gibi saldırıları önlemek için veri temizleme yapılmalıdır.

Uç Nokta Güvenliği

Uç noktaları yetkisiz erişime karşı koruma işlemidir. Kimlik doğrulama ve yetkilendirme işlemleri kullanılır.


API Güvenliği Nasıl Sağlanır?

Web Uygulaması Güvenlik Duvarı (WAF)

Bir WAF veri çalmak ya da kötü amaçlı kod yürütmek için kullanılan uygulamadaki izinsiz talepleri algılar. Web sitesi sunucusu ve istemci istekleri arasında bir bariyer görevi görür.

Bot Koruması

HTTP Api’leri istenmeyen otomatize trafiğe maruz kalabilir. Bot koruması çözümü HTTP tabanlı Api’leri kısıtlama ilkesi ile uygulamayı korur.

API Yönetimi

Api ağ geçidinin Api çağrılarını işlerken uyguladığı güvenlik politikası tanımlama işlemini üstlenir. Apiye özel örtük bir URL listesi gibi önemli güvenlik önlemlerini içerir. Ayrıca programlanabilir hız sınırlama ve hizmet reddi(DOS) saldırılarından korunmak için kısıtlama sağlar.


API Ağ Geçidi

Modern bir Api yönetimi Kimlik Doğrulama ve yetkilendirme, hız sınırlandırma ve giriş yönetimi gibi işlevler aracılığı ile api çağrılarını korur.

Kimlik Doğrulama

Api Anahtarları:

Api’ye erişimi doğrulamak ve yetkilendirmek için kullanılan benzersiz tanımlayıcılardır. Güvenli bir şekilde oluşturulmaları ve gizli tutulmaları gerekir.

0AUTH VE OPENID

İkisi de endüstri standartları protokolleridir. 0Auth kimlik bilgilerini paylaşmadan kaynaklara erişim izni vermemizi sağlar.

OpenID ise kullanıcının bir kimlik doğrulaması yapmasını ve bir kimlik belirteci almasını sağlar.

ROL TABANLI ERİŞİM KONTROLU

Kullanıcılara atanan rollere göre Api’lere erişimi kontrol etme mekanizması. Yönetici veya farklı kullanıcıların farklı katmanlara erişimine olanak sağlar.

Giriş Doğrulama

Bir kullanıcı ya da uygulama tarafından yapılan girişin doğru olup olmadığını kontrol eder.

Örneğin giriş parametreleri doğru türde karakterlerden(noktalama işaretleri-sayılar) mi oluşuyor? Kabul edilen değer kümesinin bir parçası mı?

Verilerin Şifrelenmesi

Api verilerinin gizliliğinin ve bütünlüğünü korumak için kullanılan yöntemlerdir. HTTPS SSL/TLS gibi yöntemler örnek gösterilebilir.

Aynı zamanda duran verilerin de şifrelenmesi gerekir. Herhangi bir ihlal durumunda verilere yetkisiz erişilmesinin önüne geçilmesini sağlar


🔒
Siyenursel - OverviewGitHub
Logo
REST ve GRAPHQL API Arasındaki Farkı Gösteren Bir Görsel
OWASP Topluluğunun API Zaafiyetleri İçin Ayrıca Hazırladığı Liste