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
  • ARP(Address Resolution Protocol) Nedir?
  • Temel ARP İşlemi
  • ARP Cache
  • ARP Protokolünün Türleri
  • ARP ile İlgili Güvenlik Sorunları

Was this helpful?

  1. Protokoller

ARP

PreviousDocker EscapeNextDHCP

Last updated 4 months ago

Was this helpful?

ARP(Address Resolution Protocol) Nedir?

Address Resolution Protocol/Adres Çözümleme Protokolü (ARP), TCP/IP protokol ailesinde yer alan ve IPv4 adreslerini fiziksel MAC adreslerine çevirmek için kullanılan bir ağ protokolüdür. ARP, iki cihazın aynı yerel ağda (LAN) birbirleriyle iletişim kurabilmesi için gereklidir.

ARP'nin Önemi

İnternet veya herhangi bir IP tabanlı ağda, cihazlar (bilgisayarlar, yönlendiriciler, yazıcılar vb.) IP adresleriyle tanımlanır. Ancak, bu cihazlar veri link katmanında iletişim kurabilmek için birbirlerinin MAC adreslerini bilmelidir. İşte bu noktada ARP devreye girer.

ARP'nin işleyişini anlamak için bir telefon rehberi örneğini kullanabiliriz. Bir kişinin adını (IP adresini) bildiğinizde, o kişinin telefon numarasını (MAC adresini) öğrenmek için telefon rehberine bakarsınız. Benzer şekilde, bir cihaz IP adresini bildiğinde, ARP kullanarak bu IP adresine karşılık gelen MAC adresini bulur.

Telefon Rehberi Örneği

Farz edelim ki bir arkadaşınıza (IP adresi: 192.168.1.10) telefon etmek istiyorsunuz. Telefon rehberinde arkadaşınızın adını (IP adresini) bulup, karşısındaki telefon numarasını (MAC adresini) öğrenirsiniz.

ARP, bu süreci otomatikleştirir. Cihazınız, yerel ağdaki diğer cihazların IP-MAC eşleşmelerini öğrenmek için ARP istekleri gönderir ve bu eşleşmeleri ARP cache olarak adlandırılan geçici bir tablodan takip eder.


Temel ARP İşlemi

ARP İsteği (ARP Request)

  • Bir cihaz, belirli bir IP adresine (örneğin 192.168.1.10) ait MAC adresini öğrenmek istediğinde, ağdaki tüm cihazlara bir ARP isteği gönderir. Bu istek, "192.168.1.10 IP adresine sahip cihazın MAC adresi nedir?" şeklindedir.

ARP Yanıtı (ARP Reply)

  • Hedef IP adresine sahip cihaz (192.168.1.10), kendi MAC adresini içeren bir ARP yanıtı gönderir. Bu yanıt, yalnızca isteği gönderen cihaza geri döner.

ARP İşlemi Örneği
  • Cihaz A (IP: 192.168.1.1, MAC: AA:BB:CC:DD:EE:01), cihaz B'nin (IP: 192.168.1.2) MAC adresini öğrenmek istiyor.

  • Cihaz A, "192.168.1.2'nin MAC adresi nedir?" şeklinde bir ARP isteği gönderir.

  • Cihaz B, "192.168.1.2'nin MAC adresi BB:CC:DD:EE:FF:02" şeklinde bir ARP yanıtı gönderir.

  • Cihaz A, bu bilgiyi ARP cache'ine kaydeder ve iletişim kurmak için kullanır.


ARP Cache

ARP Cache Tanımı

  • ARP Cache, ağ cihazlarının (örneğin bilgisayarlar, yönlendiriciler, anahtarlar) IP adresleri ile bu IP adreslerine karşılık gelen MAC adreslerini geçici olarak sakladığı bir tablodur.

  • ARP Cache, cihazların aynı IP-MAC eşleşmesi için sürekli olarak ARP istekleri göndermesini önler, böylece ağ trafiğini azaltır ve iletişim performansını artırır.

  • ARP Cache'deki girişler geçici olarak saklanır. Bu girişler belirli bir süre sonra (genellikle birkaç dakika) otomatik olarak silinir. Bu süre dolduğunda, aynı IP adresine tekrar erişim gerektiğinde yeni bir ARP isteği yapılır.

  • Bu geçici doğa, ağdaki cihazların sürekli güncel IP-MAC eşleşmelerine sahip olmasını sağlar ve herhangi bir değişiklik olduğunda (örneğin bir cihazın MAC adresi değiştiğinde) iletişimi kesintisiz sürdürür.

ARP Cache Örneği

ARP cache'i anlamak için, büyük bir ofiste çalışanların telefon numaralarını not ettiği bir beyaz tahta örneğini kullanabiliriz.

  • Ofiste çalışanların her biri, diğer çalışanların telefon numaralarını beyaz tahtada not eder.

  • Beyaz tahtaya yeni bir çalışan eklenir veya bir çalışanın telefon numarası değişirse, bu bilgi beyaz tahtaya güncellenir.

  • Bu bilgiler belirli bir süre sonra silinir, çünkü çalışanların telefon numaraları değişebilir veya yeni çalışanlar gelebilir.

  • Çalışanlar, birinin telefon numarasını öğrenmek için her seferinde yöneticiden (ağın kendisinden) sormak yerine, bu beyaz tahtaya bakarak hızlıca ulaşabilirler.

  • ARP cache, bu beyaz tahtanın ağ cihazları arasındaki karşılığıdır. Cihazlar, ARP cache kullanarak diğer cihazların MAC adreslerine hızlıca ulaşır.

ARP Cache Yönetimi

Dinamik Girişler (Dynamic Entries):

  • Dinamik girişler, ARP istek ve yanıtları sonucunda otomatik olarak oluşturulur.

  • Bir cihaz başka bir cihaza ARP isteği gönderdiğinde ve yanıt aldığında, bu eşleşme ARP Cache'e dinamik olarak eklenir.

  • Dinamik girişler belirli bir süre sonra otomatik olarak silinir.

Statik Girişler (Static Entries):

  • Statik girişler, manuel olarak eklenir ve kalıcıdır. Bu girişler, cihaz yeniden başlatılsa bile silinmez.

  • Önemli veya sık kullanılan IP-MAC eşleşmeleri için statik girişler kullanılabilir. Örneğin, ağ yöneticileri önemli sunucuların MAC adreslerini statik olarak ARP Cache'e ekleyebilirler.

Dinamik Giriş Örneği
  • Cihaz A (IP: 192.168.1.1) cihaz B'ye (IP: 192.168.1.2) bir veri paketi göndermek istiyor.

  • Cihaz A, cihaz B'nin MAC adresini bilmediği için bir ARP isteği gönderir.

  • Cihaz B, ARP yanıtıyla kendi MAC adresini (BB:CC:DD:EE:FF:02) gönderir.

  • Cihaz A, bu bilgiyi dinamik olarak ARP cache'e kaydeder.

Statik Giriş Örneği
  • Bir sunucunun IP ve MAC adresini sürekli ve hızlı erişim için manuel olarak ARP Cache'e eklemek.

  • Örneğin, arp -s 192.168.1.100 00:11:22:33:44:55 komutuyla bu eşleşme statik olarak ARP cache'e eklenir.

ARP Cache Kontrolü ve Temizleme

Kontrol Etme:

  • Bir cihazın ARP Cache'ini kontrol etmek için arp -a gibi komutlar kullanılır.

  • Bu komut, mevcut ARP Cache girişlerini listeler.

Temizleme:

  • ARP cache'i temizlemek (flush) için arp -d komutu kullanılır.

  • Örneğin, arp -d 192.168.1.1 komutu, belirli bir IP adresine ait ARP girişini siler.


ARP Protokolünün Türleri

Proxy ARP

  • Bir ağ cihazının başka bir cihazın adına ARP yanıtı vermesidir.

Gratuitous ARP

  • Cihazın kendi IP-MAC eşleşmesini tüm ağa bildirmesi için gönderdiği istektir.

  • IP çakışmalarını tespit etmek ve önlemek için kullanılır.


ARP ile İlgili Güvenlik Sorunları

ARP Spoofing

ARP Spoofing Tanımı

  • ARP spoofing, bir saldırganın sahte ARP mesajları göndererek bir cihazın ARP Cache'ini manipüle ettiği bir saldırı türüdür. Saldırgan, kendisini ağdaki başka bir cihazmış gibi tanıtarak, bu cihazlara gönderilen trafiği kendi üzerine yönlendirebilir.

Çalışma Prensibi

  • Saldırgan, sahte ARP yanıtları gönderir. Bu yanıtlar, ağdaki diğer cihazların ARP Cache'lerini yanlış bilgilerle günceller.

  • Örneğin, saldırgan kendisini ağdaki bir yönlendirici gibi tanıtarak, yönlendiricinin IP adresiyle kendi MAC adresini eşleştiren sahte ARP yanıtları gönderir.

  • Diğer cihazlar, bu sahte ARP yanıtlarını alır ve ARP Cache'lerine kaydeder. Bu cihazlar, artık yönlendiriciye gönderilmesi gereken trafiği saldırgana gönderir.

Sonuçları

  • Man-in-the-Middle (MitM) Saldırıları:

    • Saldırgan, ağdaki iki cihaz arasındaki trafiği izleyebilir, değiştirebilir veya yönlendirebilir. Bu tür saldırılarda, saldırgan gizlice iletişimleri takip eder ve gerektiğinde müdahale eder.

  • DoS (Denial of Service) Saldırıları:

    • Saldırgan, belirli cihazlara gelen trafiği keserek bu cihazların iletişim kurmasını engelleyebilir. Örneğin, ağdaki önemli bir sunucunun trafiğini kendisine yönlendirerek, sunucunun hizmet verememesine neden olabilir.

ARP Poisoning

ARP Poisoning Tanımı

  • ARP poisoning, ARP spoofing saldırısının bir alt türüdür ve aynı prensiplerle çalışır. Ancak bu saldırı, daha spesifik hedeflere yöneliktir ve genellikle belirli cihazlara veya trafiğe odaklanır.

Çalışma Prensibi

  • Hedef Odaklı Saldırılar:

    • Saldırgan, belirli bir cihazın ARP cache'ini zehirler. Bu, saldırganın belirli bir IP adresine sahip cihazın trafiğini kontrol etmesine olanak tanır.

    • Örneğin, saldırgan belirli bir sunucunun (IP: 192.168.1.100) MAC adresini kendi MAC adresiyle değiştirir ve bu sunucuya gelen tüm trafiği ele geçirir.

  • ARP Yanıltması:

    • Saldırgan, belirli bir cihaza sahte ARP yanıtları göndererek, bu cihazın ARP cache'ini yanlış bilgilerle günceller.

Sonuçları

  • Saldırgan, hedef cihazın trafiğini ele geçirerek hassas bilgileri çalabilir. Örneğin, kullanıcı adı ve parolalar, kişisel bilgiler ve finansal veriler.

  • Saldırgan, hedef cihaza gelen trafiği değiştirebilir veya yönlendirebilir. Bu, veri bütünlüğünün bozulmasına ve güvenliğin tehlikeye girmesine neden olabilir.

Korunma Yöntemleri

  • Statik ARP Girişleri

    • Kritik cihazlar için ARP tablosuna statik girişler eklemek, sahte ARP yanıtlarının etkisini azaltabilir.

  • ARP Güvenlik Protokolleri

    • Dinamik ARP Inspection (DAI) gibi güvenlik protokolleri, ARP mesajlarının doğruluğunu kontrol ederek sahte ARP mesajlarını engelleyebilir.

  • VPN ve Şifreleme

    • Ağ trafiğini şifrelemek ve güvenli iletişim kanalları (VPN) kullanmak, MitM saldırılarını zorlaştırabilir.

📨
muratbulut - OverviewGitHub
Logo