IIS te İstenmeyen HTTP Başlıkları nasıl kaldırılır?

Mart 21, 2017
57 Views

Herkese Merhaba,

Bugün sizlere IIS 6.5 ve sonraki versiyonlarda tam olarak güvenlik açığı diyemeyeceğimiz ama aynı zamanda saldırıların yoğun olduğu ülkemizde bundan bir şey olmaz da diyemeyeceğimiz bir konuyu anlatacağım.

Şimdi gelelim konumuza; bir saldırganın ilk bilmek isteyeceği şeyi bulması şu kadar basit, Tarayıcıyı aç Network tabına gel ve siteyi çağır !!!

Bu benim oluşturduğum IIS te Default Site. Normal bir sitede ASP.NET versiyonu bile yazabiliyor.

Bu şu demek oluyor.

Birinin gözünü bağlayıp yeri kaz dediniz. Yer kum mu kaya mı beton mu çamur mu belli değil. Yada gözünü bağlamadınız. Baktı yer toprak kazmaya başladı. Taaki Bitcoin bulana kadar J

Evet şimdi gelelim bu açığı nasıl kapatacağımıza.

Bunun 3 adet yöntemi var IIS versiyonunuza göre değişiklik gösterebilir şimdi ben en kesin ve en favori yöntemi anlatacağım.

NOT: Bu işlemi Server bazında yaparsanız tüm sitelerinizde geçerli olacaktır kısıtlayacağınız bilgileri isteyen uygulamalarda hata yaratabilir.

İlk olarak URLRewrite uygulamasını IIS e kurmanız gerekiyor. Yüklemek için alttaki linki yada Web İnstallerı kullanarak kurabilirsiniz.

http://www.iis.net/downloads/microsoft/url-rewrite

Yükledikten sonra Web sitesine yada Server a tıklayarak URL Rewrite a geliyoruz.

URL Rewrite a girdiktan sonra sağ taraftaki View Server Variables butonuna tıklıyoruz.

Default olarak burada bir kayıt bulunmaz. Add diyerek RESPONSE_SERVER isimli bir kayıt oluşturuyoruz.

Burada Header da yazan hangi bilgi için düzenleme yapacağımızı belirttik. Şimdi gelelim kural yazmaya.

Back to Rules seçeneğinden bir önceki ekrana geri dönüyoruz. Add Rules diyerek kuralı oluşturmaya başlıyoruz.

Karşımıza gelen Pop-Up da Outbound Rules Kısmında Blank Rules u seçiyoruz.

Evet karşımıza gelen ekrandaki alanları doldurmaya başlayabiliriz.

Name kısmına Server Delete diyorum. Precondition kısmını None olarak bırakıyoruz.

Matching Scope kısmında Server Varible ı seçiyoruz. Varible Name kısmına RESPONSE_SERVER yazıyorum.

Using Kısmını Regular
Expressions olarak bırakıyoruz. Pattern kısmına .* yazıyoruz.

Ekran görüntüsündekileri yazdıktan sonra biraz daha alta iniyoruz. Action kısmını Rewrite olarak bırakıyoruz.

Action Properties de Value kısmını boş bırakırsanız hiçbir server bilgisi gitmeyecektir ama isterseniz MY Server yazabilirsiniz.

Bu ayarları yaptıktan sonra Apply diyerek tekrardan sitemizi kontrol ediyoruz.

Evet Resimde de gördüğünüz gibi Server bilgisi boş gelecektir.

Aynı şekilde X-Powered-By : ASP.NET vb bilgileri de kaldırabilir yada değiştirebilirsiniz.

Buraya kadar anlattığım her şeyi belki de daha önce okumuş olabilirsiniz yada yazmış veya yapmışsınızdır.

Testimiz okey server bilgisini kapattık evet ama güvenlik taramasında hala server bilgisi çıkıyorsa durum şudur.

Bunu kendi test ortamımda göstermeyeceğim çünkü canlı bir site gerekiyor.

Yukarıda gördüğünüz 2 paket var. İkisi de aynı server aynı site hiçbir fark yok aralarında. Tek farkı farkettiyseniz HTTP durum kodu.

Birinde status ok (200) diğerinde internal error (500).

Bununda sebebi eğer Web Sitenizde kendi özel hata sayfalarınızı kullanıyor iseniz bu hata sayfaları sitenin yada server ın URL Rewrite kurallarına tabi olmaz.

Bu yüzden herhangi bir paket İnternal Error (HTTP 500) hatası verdiğinde bilgiyi saklayamazsınız.

Bunun çözümü ise Site nin Web.Config dosyasından Custom Error Pages leri kaldırarak IIS de siteye tıkladıktan sonra .NET Error Pages uygulamasında Edit Feature Settings e tıklayarak Remote Only seçeneğini seçerek bu sorunu ortadan kaldırabilirsiniz.

Gördüğünüz gibi hata sayfası artık URL Rewrite a Tabi durumdadır bu sebepten Header Response da istemediğimiz bilgileri yayınlamayacaktır.

Not: Error Pagesler ile ilgili kısım IIS 6.5 ve 7.5 da denenmiştir. Üstü versiyonlarda farklılık gösterebilir.

İşinize Yaraması dileğiyle.

You may be interested

Fortigate 5.4.0 BlackHole Routing nedir?
Ağ Teknolojileri
0 shares444 views
Ağ Teknolojileri
0 shares444 views

Fortigate 5.4.0 BlackHole Routing nedir?

Caner AKTAŞ - May 29, 2017

Herkese Merhaba,  Bugün kü konumuz Black Hole ( Kara Delik) routing nedir, nerelerde kullanırız ve nasıl kullanırız gibi başlıklar altında…

İŞ İLANI – Bilgi Güvenliği – Destek Uzmanı (ESET Türkiye)
Güvenlik Teknolojileri
0 shares255 views
Güvenlik Teknolojileri
0 shares255 views

İŞ İLANI – Bilgi Güvenliği – Destek Uzmanı (ESET Türkiye)

Mücahid AKÇAY - May 24, 2017

ESET Türkiye İstanbul ofisinde, teknik destek ekibinde çalışacak aşağıdaki özelliklere sahip ekip arkadaşları arayışımız bulunmaktadır. İlgilenenlerin ik@stratus.com.tr adresine Bilgi Güvenliği -…

Fortigate 5.4.0 ile WannaCry nasıl önlenir?
Güvenlik Teknolojileri
0 shares646 views
Güvenlik Teknolojileri
0 shares646 views

Fortigate 5.4.0 ile WannaCry nasıl önlenir?

Caner AKTAŞ - May 23, 2017

Herkese Merhaba, Gündemimize bomba gibi oturan televizyonlar da sosyal medyalarda her yerde görmeye başladığımız WannaCry virüsü ile ilgili birkaç not…

Leave a Comment

Your email address will not be published.