Bloga geri dön

WPAD Protokolü: Kurumsal Ağda Hatasız Proxy Otomatik Keşfi Nasıl Ayarlanır

WPAD, manuel yapılandırma olmadan kurumsal ağdaki tüm cihazlarda proxy'yi otomatik olarak ayarlamayı sağlar - bunun nasıl çalıştığını ve hangi gizli tehlikelerin olduğunu inceliyoruz.

📅5 Ağustos 2026
```html

Şirketinizde onlarca veya yüzlerce cihaz varsa, her birine manuel olarak proxy ayarlamak imkansızdır. İşte bu nedenle WPAD (Web Proxy Auto-Discovery) protokolü vardır - kullanıcı müdahalesi olmadan tarayıcıların ve uygulamaların proxy sunucu ayarlarını otomatik olarak bulmasını sağlar. Nasıl çalıştığını, nasıl doğru yapılandırılacağını ve hangi hatalardan kaçınılması gerektiğini inceliyoruz.

WPAD nedir ve neden gereklidir

WPAD, Web Proxy Auto-Discovery Protocol olarak açılır - web proxy otomatik keşif protokolü. Temel görevi, istemci cihazının (dizüstü bilgisayar, akıllı telefon, iş istasyonu) proxy sunucu ayarlarını kendiliğinden bulup uygulamasını sağlamaktır; bu, sistem yöneticisinin veya kullanıcının manuel müdahalesini gerektirmez.

300 çalışanlı bir kurumsal ağı hayal edin. Yeni bir kişi işe alındığında veya proxy sunucusunun adresi değiştiğinde, WPAD olmadan yönetici her bir cihazı manuel olarak dolaşmak veya talimatlar göndermek zorunda kalırdı. WPAD ile her şey otomatik olarak gerçekleşir: cihaz ağa bağlanır, yapılandırmayı talep eder ve hemen gerekli proxy üzerinden çalışmaya başlar.

Protokol, 1990'ların sonlarında Netscape ve Sun Microsystems tarafından geliştirilmiştir. Yaşına rağmen, hala dünya genelindeki kurumsal BT altyapılarında yaygın olarak kullanılmaktadır - özellikle internet trafiğinin merkezi kontrolü, içerik filtrelemesi veya kurumsal geçit üzerinden isteklerin zorunlu yönlendirilmesi gereken yerlerde.

WPAD'ın gerçekten gerekli olduğu durumlar:

  • Şirkette bir proxy'ye bağlı 20'den fazla cihaz var
  • Proxy sunucusunun adresi periyodik olarak değişiyor
  • Çalışanlar farklı lokasyonlardan (ofis, şube, uzaktan) bağlanıyor
  • Farklı trafik türleri için farklı proxy'ler uygulanması gerekiyor
  • Kullanıcı müdahalesi olmadan merkezi yönetim gerekiyor

Teknik olarak WPAD, proxy seçimi mantığını içeren bir JavaScript fonksiyonu içeren PAC dosyası (Proxy Auto-Config) ile birlikte çalışır. WPAD, bu dosyanın istemci cihazlara teslim mekanizmasıdır, PAC ise kural setidir. Her iki bileşeni anlamak, doğru yapılandırma için kritik öneme sahiptir.

WPAD nasıl çalışır: adım adım keşif mekanizması

WPAD etkinleştirildiğinde bir cihaz ağa bağlandığında, otomatik proxy keşif prosedürünü başlatır. Bu süreç kesinlikle standartlaştırılmıştır ve belirli bir sırada gerçekleşir. Bu sırayı anlamak, altyapıyı doğru yapılandırmaya ve sorunları hızlı bir şekilde teşhis etmeye yardımcı olur.

Adım 1: DHCP üzerinden istek (seçenek 252)

İlk olarak, cihaz bir DHCP isteği gönderir ve 252 numaralı seçeneği (wpad) kullanır. Eğer DHCP sunucusu WPAD desteği ile yapılandırılmışsa, yanıt olarak PAC dosyasının URL'sini döner - örneğin, http://wpad.company.local/wpad.dat. Bu, yapılandırmanın en hızlı ve güvenilir teslimat yoludur, çünkü IP adresi alım aşamasında gerçekleşir.

Adım 2: "wpad" ana bilgisayarı için DNS isteği

Eğer DHCP URL döndürmediyse, cihaz mevcut alan adında wpad ismini çözmek için DNS sunucusuna başvurur. Eğer cihaz company.local alanında ise, DNS isteği wpad.company.local adresine olacaktır. Başarılı bir çözümleme durumunda, cihaz http://wpad.company.local/wpad.dat adresine başvurur.

Adım 3: PAC dosyasının indirilmesi ve uygulanması

URL alındıktan sonra, tarayıcı veya uygulama PAC dosyasını HTTP üzerinden indirir. Dosya, her istekte bir dize döndüren JavaScript fonksiyonu FindProxyForURL(url, host) içerir: proxy kullanmak, doğrudan bağlanmak veya sunucu listesini taramak. İstemci bu dosyayı önbelleğe alır ve trafiği yönlendirmek için kullanır.

Önemli bir nokta: WPAD keşfi sadece ilk bağlantıda değil, periyodik olarak tekrarlanır. Tarayıcılar genellikle her başlatıldıklarında veya belirli aralıklarla PAC dosyasını yeniden yükler. Bu, proxy ayarları değiştiğinde PAC dosyasını sunucuda güncellemenin yeterli olduğu anlamına gelir - tüm cihazlar değişiklikleri otomatik olarak alır.

Keşif Aşaması Yöntem Öncelik Gereksinimler
DHCP Seçeneği 252 URL'nin doğrudan iletimi 1 (en yüksek) Yapılandırılmış DHCP sunucusu
DNS wpad.* Ana bilgisayar adının çözülmesi 2 DNS'de wpad için A kaydı
Manuel PAC URL'si Açık yapılandırma Manuel Her cihazda yapılandırma

PAC dosyası: WPAD yapılandırmasının kalbi

PAC dosyası (Proxy Auto-Configuration), tek bir zorunlu fonksiyon olan FindProxyForURL(url, host) içeren bir JavaScript dosyasıdır. Tarayıcı veya uygulama bir bağlantı kurmak istediğinde, bu fonksiyonu çağırır ve hangi proxy üzerinden gideceği veya doğrudan bağlanıp bağlanmayacağına dair bir talimat alır.

Fonksiyon iki parametre alır: istenen kaynağın tam URL'si ve ana bilgisayar adı. Bu verilere dayanarak, üç tür direktiften birini döndürür:

  • DIRECT — doğrudan bağlan, proxy olmadan
  • PROXY host:port — belirtilen HTTP proxy'sini kullan
  • SOCKS host:port veya SOCKS5 host:port — SOCKS proxy'sini kullan

Kurumsal bir ağ için basit bir PAC dosyası örneği:

function FindProxyForURL(url, host) {

  // Yerel adresler - doğrudan
  if (isPlainHostName(host) ||
      shExpMatch(host, "*.company.local") ||
      isInNet(host, "192.168.0.0", "255.255.0.0")) {
    return "DIRECT";
  }

  // Dahili hizmetler - doğrudan
  if (shExpMatch(host, "*.internal.company.com")) {
    return "DIRECT";
  }

  // Tüm diğer trafik - kurumsal proxy üzerinden
  return "PROXY proxy.company.local:8080; DIRECT";
}
  

PROXY proxy.company.local:8080; DIRECT yapısına dikkat edin - bu bir yedekleme zinciridir. Eğer ana proxy erişilemezse, tarayıcı otomatik olarak doğrudan bağlantıya geçecektir. Yük dengelemesi veya yedekleme için noktalı virgülle birden fazla proxy sunucusu belirtilebilir.

PAC dosyası, doğru MIME türü ile web sunucusu tarafından dağıtılmalıdır: application/x-ns-proxy-autoconfig. Bazı tarayıcılar ayrıca text/plain kabul eder, ancak bu önerilmez. Dosya genellikle wpad.dat veya proxy.pac olarak adlandırılır ve web sunucusunun kök dizininde bulunur.

Karmaşık senaryolar için yararlı PAC fonksiyonları:

  • isInNet(host, pattern, mask) — alt ağ maskesi ile IP adresi kontrolü
  • shExpMatch(str, pattern) — desenle karşılaştırma (wildcards)
  • dnsDomainIs(host, domain) — alan adına ait olup olmadığını kontrol etme
  • myIpAddress() — istemcinin IP adresini alma (farklı ofisler için)
  • weekdayRange() / timeRange() — programlı yönlendirme

DHCP ve DNS üzerinden WPAD yapılandırması

Kurumsal ağda WPAD'ı dağıtmanın iki temel yolu vardır: DHCP ve DNS üzerinden. Pratikte, her ikisini de yapılandırmak önerilir - DHCP öncelikli yöntem olarak ve DNS yedek olarak. Her bir yaklaşımı detaylı olarak inceleyelim.

DHCP üzerinden yapılandırma (seçenek 252)

DHCP sunucusunda, PAC dosyasının URL'si ile 252 numaralı seçeneği (WPAD) eklemek gerekir. Windows Server için (DHCP rolü):

  1. DHCP sunucusu yönetim konsolunu açın
  2. Server Options veya Scope Options bölümüne gidin
  3. Configure OptionsAdvanced seçeneğine tıklayın
  4. Vendor class: Microsoft Windows 2000 Options seçeneğini seçin
  5. 252 numaralı seçeneği (WPAD) bulun ve URL'yi girin: http://wpad.company.local/wpad.dat
  6. Değişiklikleri kaydedin - yeni DHCP istemcileri ayarları otomatik olarak alacaktır

ISC DHCP Sunucusu olan Linux sistemleri için yapılandırma dosyasına ekleyin:

# /etc/dhcp/dhcpd.conf
option wpad code 252 = text;

subnet 192.168.1.0 netmask 255.255.255.0 {
  range 192.168.1.100 192.168.1.200;
  option routers 192.168.1.1;
  option wpad "http://wpad.company.local/wpad.dat\000";
}
  

DNS üzerinden yapılandırma

DNS yöntemi için, PAC dosyasını dağıtan web sunucusunun IP adresini gösteren wpad ismiyle iç DNS alanınızda bir A kaydı oluşturmanız gerekir.

  1. DNS Yöneticisi konsolunu açın (Windows) veya alan dosyasını düzenleyin (BIND)
  2. company.local alanında bir A kaydı oluşturun: wpad → 192.168.1.50
  3. 192.168.1.50 sunucusunda bir web sunucusu (IIS, Apache, Nginx) dağıtın
  4. wpad.dat dosyasını web sitesinin kök dizinine yerleştirin
  5. .dat uzantısı için MIME türünü ayarlayın: application/x-ns-proxy-autoconfig
  6. Erişilebilirliği kontrol edin: tarayıcıda http://wpad.company.local/wpad.dat adresini açın

⚠️ Windows Server DNS için önemli:

Windows Server DNS, güvenlik nedenleriyle (WPAD saldırılarına karşı koruma) "wpad" ismiyle A kaydı oluşturulmasını varsayılan olarak engeller. Oluşumuna izin vermek için PowerShell'de şu komutu çalıştırın: dnscmd /config /enableglobalqueryblocklist 0 veya "wpad"ı DNS global engelleme listesinden kaldırın.

PAC dosyasını dağıtmak için Nginx web sunucusunun yapılandırılması

# /etc/nginx/sites-available/wpad
server {
    listen 80;
    server_name wpad.company.local;
    root /var/www/wpad;

    location /wpad.dat {
        default_type application/x-ns-proxy-autoconfig;
        add_header Cache-Control "max-age=3600";
    }

    location /proxy.pac {
        default_type application/x-ns-proxy-autoconfig;
        add_header Cache-Control "max-age=3600";
    }
}
  

WPAD güvenlik açıkları ve riskleri

WPAD, yönetim kolaylığının ciddi güvenlik riskleri ile el ele gittiği protokollerden biridir. Bu riskleri anlamak, kurumsal ağlarla çalışan herhangi bir BT uzmanı için kritik öneme sahiptir. Birkaç saldırı sınıfı, trafiği ele geçirmek için WPAD'ı bir vektör olarak kullanır.

WPAD İsim Ele Geçirme

Eğer bir cihaz, meşru bir WPAD sunucusunun olmadığı bir ağa bağlanıyorsa, ancak bir saldırgan sahte bir DNS sunucusu kurar veya DHCP isteklerine yanıt verirse, kurbanına kötü niyetli bir PAC dosyası sunabilir. Tüm HTTP istekleri tarayıcıdan saldırganın proxy'si üzerinden geçecektir - bu klasik bir "adam ortada" (MITM) saldırısıdır. Özellikle halka açık Wi-Fi ağlarında tehlikelidir.

WPAD üzerinden DNS Rebinding

Saldırı, tarayıcının PAC dosyasına güvendiği ve JavaScript'i çalıştırdığı gerçeğini kullanır. Kötü niyetli bir PAC dosyası, iç ağı keşfetmek için dnsResolve() fonksiyonunu kullanabilir: IP adreslerini taramak, açık portları ve hizmetleri belirlemek. Bu, kurbanın tarayıcısını kurumsal altyapıyı tarayan bir araç haline getirir.

WPAD'ın halka açık ağlardaki etkisi

Otomatik proxy keşfi etkin olan cihazlar, halka açık ağlarda - kafelerde, havaalanlarında, otellerde - WPAD sunucusu aramaya devam eder. Eğer üst düzey bir alanda wpad.com kaydı varsa (ve böyle durumlar araştırmacılar tarafından kaydedilmiştir), tarayıcı dış sunucudan PAC dosyasını yükleyebilir. Bu nedenle ICANN, wpad.com alan adının kaydını engellemiştir.

Tehdit Saldırı Vektörü Koruma Önlemleri
Sahte WPAD ile MITM DHCP/DNS değiştirme DHCP Snooping, DNS imzalama
İç ağı keşfetme Kötü niyetli PAC dosyası PAC bütünlüğünü kontrol etme
Halka açık ağlarda veri sızıntısı Açık Wi-Fi Ofis dışında WPAD'ı devre dışı bırakma
Kimlik bilgilerini ele geçirme Proxy ele geçirme Her yerde HTTPS + HSTS

Nasıl korunulur: pratik öneriler

  • WPAD'ı yalnızca gerektiğinde etkinleştirin - kurumsal cihazlarda grup politikaları (GPO) aracılığıyla
  • PAC dosyasını dağıtmak için HTTPS kullanın - bu içerik değiştirilmesini önler
  • Switch'lerde DHCP Snooping yapılandırın - sahte DHCP sunucularına karşı koruma
  • Perimetrede wpad DNS isteklerini engelleyin - cihazların dış ağlarda WPAD aramasını önlemek için
  • Uzaktan çalışanlar için WPAD'ı devre dışı bırakın - ofis dışında çalışırken VPN politikaları veya GPO aracılığıyla
  • wpad.dat'a yapılan istekleri izleyin - beklenmedik istekler saldırı sinyali verebilir

WPAD ve manuel yapılandırma: yaklaşımların karşılaştırılması

WPAD'ı uygulamadan önce, gerçekten hangi durumlarda mantıklı olduğunu ve ne zaman manuel yapılandırma veya grup politikaları ile devam etmenin daha iyi olduğunu anlamak faydalıdır. Her yaklaşımın avantajları ve sınırlamaları vardır.

Parametre WPAD Manuel yapılandırma GPO (grup politikaları)
Ölçeklenebilirlik ✅ Harika ❌ Kötü ✅ Harika
Windows dışı cihazları destekleme ✅ Evet ✅ Evet ⚠️ Sadece Windows
Güvenlik ⚠️ Riskler var ✅ Yüksek ✅ Yüksek
Yönlendirme kurallarının esnekliği ✅ Maksimum ❌ Hayır ⚠️ Sınırlı
Ayarların değiştirilme hızı ✅ Anında ❌ Her PC'de manuel ⚠️ Bir sonraki GPO güncellemesinde
Kurumsal ağ dışında çalışma ⚠️ Halka açık ağlarda riskler ✅ Stabil ✅ Stabil

Çoğu kurumsal ortam için en iyi strateji, ofis cihazları için WPAD ve uzaktan çalışan dizüstü bilgisayarlar için zorunlu manuel yapılandırma (GPO veya MDM aracılığıyla) kombinasyonudur. Bu, güvenlikte ödün vermeden yönetim esnekliği sağlar.

Ayrıca, anonimlik ve güvenilirliğin önemli olduğu görevler için - örneğin, dış hizmetlerle çalışırken veya rakipleri izlerken - WPAD aracılığıyla kurumsal proxy yeterli olmayabilir. Bu gibi durumlarda, dış hizmetlerden kaynaklı engellemeleri önemli ölçüde azaltan gerçek ev kullanıcılarının IP adreslerini sağlayan rezidans proxy'leri ek olarak kullanılır.

Kurumsal ağlar için WPAD alternatifleri

WPAD, kurumsal ağda proxy ayarlarını merkezi olarak yönetmenin tek yolu değildir. Altyapıya, şirketin büyüklüğüne ve güvenlik gereksinimlerine bağlı olarak, diğer yaklaşımlar da uygun olabilir. Temel alternatifleri inceleyelim.

1. PAC dosyasının doğrudan dağıtımı GPO aracılığıyla

Active Directory ortamında, Internet Explorer ve Edge tarayıcılarında PAC dosyası URL'sinin zorunlu olarak ayarlanması için grup politikaları kullanılabilir (Internet Explorer Bakımı veya Yönetim Şablonları aracılığıyla). Avantajı - hangi cihazların ayarları alacağını tam kontrol etme, WPAD saldırı riskleri olmadan. Dezavantajı - yalnızca alan içindeki Windows cihazları için çalışır.

2. Şeffaf proxy (Transparent Proxy)

Ağ ekipmanları (yönlendirici, güvenlik duvarı) HTTP/HTTPS trafiğini yakalar ve istemci cihazlarda herhangi bir ayar olmadan proxy sunucusu üzerinden yönlendirir. Kullanıcılar ve uygulamalar proxy'nin varlığından haberdar değildir. Bu kullanışlıdır, ancak HTTPS trafiği için SSL İnceleme desteği gerektirir, bu da PKI altyapısı için ek gereksinimler getirir.

3. Mobil cihazlar için MDM sistemleri

iOS ve Android cihazlar için mobil cihaz yönetim sistemleri (MDM) - örneğin, Microsoft Intune, Jamf veya VMware Workspace ONE - proxy ayarlarını merkezi olarak göndermeyi sağlar. Bu, kurumsal ağ dışında sıkça çalışan mobil cihazlar için WPAD'dan daha güvenilirdir.

4. Zorunlu yönlendirme ile kurumsal VPN

Proxy sunucusu yerine, uzaktan çalışanların tüm trafiği kurumsal VPN geçidi üzerinden yönlendirilir. Geçitte filtreleme ve trafik inceleme politikaları uygulanır. Bu yaklaşım yüksek güvenlik seviyesi sağlar, ancak VPN altyapısı gerektirir ve diğer bölgelerdeki kullanıcılar için gecikmeleri artırabilir.

Kurumsal altyapının ötesinde kalan görevler için - örneğin, pazarlama departmanının rakip fiyatlarını izlerken veya farklı bölgelerden reklam kampanyalarını test ederken - kurumsal araçlar genellikle yetersiz kalır. Bu gibi durumlarda, hızlı veri çekme görevleri için veri merkezi proxy'leri veya sosyal medya ve reklam platformları ile çalışmak için mobil proxy'ler kullanılır.

Proxy yönetim yaklaşımını seçerken kontrol listesi

  • ✅ Sadece Windows cihazları alan içinde → GPO + PAC dosyası
  • ✅ Karma ortam (Windows + Mac + Linux + mobil) → WPAD + DHCP
  • ✅ Yüksek güvenlik gereksinimleri → Şeffaf proxy veya VPN
  • ✅ Mobil cihazlar → MDM (Intune, Jamf)
  • ✅ Uzaktan çalışanlar → VPN + zorunlu yönlendirme
  • ✅ Dış hizmetlerle, reklamla, veri çekmeyle çalışma → Dış proxy sağlayıcıları

Sonuç

WPAD, kurumsal ağlarda proxy ayarlarını merkezi olarak yönetmek için güçlü bir araçtır. Doğru yapılandırılmış WPAD, DHCP ve DNS üzerinden sistem yöneticilerini her cihazı manuel olarak yapılandırma zorunluluğundan kurtarır ve tüm altyapıda değişikliklerin anında uygulanmasını sağlar. Başarılı bir uygulamanın anahtarı, çalışma mekanizmasını anlamak, PAC dosyasını doğru yapılandırmak ve güvenlik önlemlerini almak: DHCP Snooping, PAC dağıtımı için HTTPS, ağın dışındaki WPAD isteklerini engelleme.

WPAD'ın, kurumsal ağ içindeki trafik yönlendirme sorununu çözdüğünü, ancak dış hizmetlerle çalışmak için özel proxy çözümlerinin yerini almadığını unutmamak önemlidir. Eğer ekibiniz rakipleri izliyorsa, farklı bölgelerden reklamları test ediyorsa veya pazar yerleriyle çalışıyorsa, ek olarak rezidans proxy'lerini değerlendirmeyi öneririz - gerçek ev kullanıcılarının IP adreslerini sağlarlar ve dış platformlardan engellenme riskini en aza indirirler.

```