Skip to content
Onlayer

HTTP Outdated Versions

Önem derecesiDüşük

enRead this article in English

Bir Web kullanıcısu Web sayfasını istemcisi vasıtasıyla talep ettiğiğinde, tarayıcı ve sunucu arasında sayfadan önce bir dizi haberleşme gerçekleşir. Bu haberleşme, gelecek olan sayfa hakkında tarayıcıya bilgi verir. Bu veriler sıkıştırma algoritmalarından sayfa diline kadar birçok bilgiyi içerebilir.

HTTP isteği yapıldığında, sunucunun sayfanın başına iliştirdiği kısıma HTTP Header denilmektedir. Bu bilgiler arasında tamamen istatiksel olan ancak tarayıcı ya da sayfanın işlenmesi konusunda bilgi vermeyen header içeriği de bulunabilir. Bunlar arasında Sunucunun yazılımı ve versiyonu Server: Apache/2.4.6, şifreleme kütüphanesinin ismi ve versiyonu OpenSSL/1.0.2k-fips, script işleme motorunun versiyonu PHP/7.2.11 ve işletim sisteminin ismi CentOS yer alabilir. Aşağıda bir örneğini görebilirsiniz.

GET / HTTP1.1
Host: www.rackdc.com
Date: Sun, 21 Jul 2019 20:08:57 GMT
Server: Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/7.2.11
Content-Length: 226
Connection: close
Content-Type: text/html; charset=iso-8859-1

Tamamen istatistiksel ya da reklam amacıyla headera eklenen bu bilgiler, saldırgan için altın madeni gibidir. Yukarıdaki örnek isimleri arama motoruna yazdığımızda:

  • apache 2.4 6 vulnerabilities: 942 bin sonuç
  • OpenSSL/1.0.2k-fips vulnerabilities: 8 bin 380 sonuç
  • PHP/7.2.11 vulnerabilities ise 14 bin 900 sonuç vermiştir.
Atak HedefiUygulamaÖrnek Atak
Web ServisleriÖzel tasarlanmış yazılımlarXSS, CORS
Paket UygulamalarWordPress, DominoZero Day atakları
Şifreleme KatmanıOpenSSL, TLSLuck13
Web SunucusuApache, nginx, IIS, TomcatCRLF, Struts
Veri TabanıSQL, MySQLSQL Injection atakları
İşletim SistemiLinux, Windows, BSDZero Day atakları
AğLoad balancer, Firewall, RouterMeltdown, Spectre

Sadece yukarıdaki ifadelerin headerda durması nedeniyle 7 tip ataktan 3 vektör tipi için potansiyel oluşturmaktadır.

Çözüm

Web servisi ve script motoru gibi yazılımlar varsayılan yükleme ayarlarında kendi bilgilerini headera gönderirler. Bu yazılımların yüklemesi tamamlandığında yapılandırma dosyaları düzenlenmelidir.

Apache Web Sunucusu için .conf dosyası ayarlanmalıdır. Farklı işletim sistemlerinde bu dosya belirtilen dizinlerde bulunur:

Debian: /etc/apache2/apache2.conf CentOS: /etc/httpd/conf/httpd.conf

Bu dosyanın sonuna belirtilen komutları ekleyin:

ServerSignature Off
ServerTokens Prod

Apache servisini tekrar başlatmayı unutmayın.

apachectl restart

Nginx Web Sunucusu için /etc/nginx/nginx.conf dosyasının değiştirilmesi gerekir. Bu dosyada http etiketinin içine gösterildiği gibi server_tokens off; yazısını ekleyin.

http {
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log main;

    sendfile            on;
    tcp_nopush          on;
    tcp_nodelay         on;
    keepalive_timeout   65;
    types_hash_max_size 2048;

    include             /etc/nginx/mime.types;
    default_type        application/octet-stream;

    server_tokens off;
    ...
    ...
}

Nginx sunucusunu yeniden başlatın

systemctl restart nginx

IIS Sunucusunda HTTP başlıklarını kaldırmak için iki yöntem kullanılabilir.

1 – C:\inetpub\wwwroot dosyasına bu komutu ekleyin:

<httpRuntime enableVersionHeader="false" />

2 – Windows tuşuna basıp regedit‘i çalıştırın. Sol menüde HKLM\SYSTEM\CurrentControlSet\Services\HTTP\Parameters ağacına gidin. Sağ klik ile yeni bir DisableServerHeader adında değeri 1 olan bir DWORD32 ekleyin. Ayar tamamlanınca aşağıdakine benzer olup olmadığını kontrol edin.

Eğer sunucunuz ASP.NET ise X-Powered-By ayarını da kaldırmalısınız. IIS’te resimde belirtilen HTTP Response Headers tuşuna çift tıklayın. Sonra X-Powered-By başlığına tıklayıp Remove tuşuna basın.

Yasal Uyarı

Copyright (c) 2019 – 2026 ONLAYER Bilişim Teknolojileri A.Ş.

Bu sayfadaki içeriğin kullanımı sadece bu sayfaya link ile atıf yapılarak mümkündür. Yazılı izin olmadan değiştirilemez ve alıntı yapılamaz.

Kullanım Uyarısı: Burada belirtilen direktifler olduğu gibidir ve uygulanması sonucunda oluşabilecek servis kesintileri ve veri kaybından ONLAYER sorumlu değildir. Sistemlerin daha iyi çalışabileceği ya da daha güvenli olacağına dair hiç bir garanti verilmemektedir. Ne firma ne de yazar kullanımdan dolayı hiçbir sorumluluk kabul etmemektedir.

Web uygulaması

← Bilgi Bankası'na dön