IIS Güvenlik etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
IIS Güvenlik etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

17 Ekim 2012 Çarşamba

IIS 7,7.5'de Maximum Query String değeri ve önemi - Nass oluyor da oluyor?

IIS 7 (Windows 2008) ve 7.5 (Windows 2008 R2) ile birlikte gelen "Request Filtering" isimli güzel bir ek özellik daha doğrusu Role Service var daha önceki yazıları takip edenler hatırlayacaktır. Windows 2008 ve 2008 R2 işletim sistemlerine IIS rolü kurmaya çalıştığınızda bu rol hizmeti de varsayılan olarak yüklenecekler listesine eklenir tabi siz özellikle kutucuktaki "tick" işaretini kaldırmazsanız.Bu rol hizmeti temel olarak daha önceki IIS versiyonlarına uygulanabilen URLScan aracındaki fonksiyonları ve daha fazlasını kullanılabilir hale getirir. Bu fonksiyonlardan biri de dinamik web sayfalarınıza gönderilen query stringleri sınırlama özelliğidir.
Request Filtering rol hizmetini yükleseniz de yüklemeseniz de IIS sunucunun loglarında "cs-uri-query" sütununda dinamik sayfalar için görebileceğiniz "Query String" uzunluğu 4096 karakterdir.Dinamik sayfalarınıza gelen query string uzunluğu 4096 karakterden uzunsa IIS "cs-uri-query" sütununa karşılık gelen alana Resim 1'de gösterildiği gibi  3 nokta ( "..." ) karakteri ekler.

Resim 1

13 Eylül 2012 Perşembe

IIS 7 ve 7.5'i Slow Loris DOS Saldırısına Karşı Koruma - Nass oluyor da oluyor?


Türkçe

OSI modelinin yedinci seviyesine yönelik saldırılarla ilgilendiyseniz Slow Loris saldırı aracını da duymuşsunuz ya da kullanmışsınızdır mutlaka. Blogun düsturu "az bilineni,anlatılmayanı anlatmak" olduğu için bu yazıda aracın nasıl kullanılacağı ile ilgili çok az bilgi bulacaksınız. Benim anlatacaklarım aracın çalışma prensibi ve IIS 7-7.5 web sunucularda savunmayı artırıcı yöntemler olacak. Bu yazıda okuyacaklarınızın bir bölümü nette hiç bir yerde bulamayacağınız türden.
RFC 2616'da tanımlanan HTTP 1.1 protokolüne göre HTTP Request headerlar birbirinden CR ( Carriage Return ) ve LF (Linefeed) karakterleriyle ayrılır (kafanız karışmasın satır sonlarında alt satıra geçişi gösteren karakterler). Headerlar ile asıl verinin iletildiği Body kısmını ise boş bir satır birbirinden ayırır. Hernekadar GET Requestlerin body kısmı boş olsa da isteğin web sunucu tarafından alınması ve değerlendirilmesi için yine de headerların bitişini simgeleyen boş satıra ( CR + LF ) ihtiyaç duyulur. Sunucu bu karakterleri görmezse rahat edemez ve Request headerların tamamlanmadığını düşünür ,istemciden Request headerların tamamı gelene kadar beklemeye devam eder, bağlantıyı da işletim sistemine ve web sunucusuna göre farklılık gösteren zamanaşımı süresi (timeout) dolana kadar açık tutar. Olması gereken, iyi niyetli insanların tasarladığı şekliyle protokol bu şekilde çalışıyor. 

7 Ağustos 2012 Salı

IIS 7 - 7.5 Request Filtering - Nass oluyor da oluyor ? Rules & Headers

IIS 7 ve 7.5 ile birlikte gelen (rol servisi olarak yüklerseniz tabi) Request Filtering güvenlik özelliği ile yapılabileceklere devam edelim.
"Rules" sekmesi web sunucunuza gönderilen HTTP isteklerinde URL,Header,Query string gibi metinlerde kelime bazlı filtreleme yapmaya imkan verir. Örnek olması bakımından "User-Agent" Header değeri "Attack" ( piyasada kolaylıkla bulunabilecek acunetix gibi güvenlik tarayıcıları varsayılan olarak User-Agent header'ına belli değerler atarlar,benzer şekilde http saldırı araçları da öyle, bu tip basit saldırıları bu özelliği kullanarak engelleyebilirsiniz) ise web sunucumuzun erişilmek istenen sayfayı engellemesi için kullanılacak kural ekran görüntüsündeki gibi olmalı;


Kural tanımında "Scan URL","Scan Query String" işaretlenmediği için request-filtering modülü URL ve Query Stringi taramayacak.Benzer şekilde "Applies To" hanesinde "html,htm,asp,aspx" gibi dosya uzantısı da belirtmediğimiz için kural tüm dosya uzantılarına erişim isteklerine etki edecek.
"Header" hanesinde kontrol edilmesini istediğimiz header değerini yani "User-Agent" satırını ekledikten sonra, bu header değerinde reddedilecek kelimeyi "Deny Strings" alanında satır olarak ekliyoruz. Özetle kural, kendisine gelen isteklerin Header değerlerini kontrol edecek, "User-Agent: Attack" header'ı ile gelen istekleri reddedecek yani isteği 404 kodu ile cevaplayacak, daha kesin konuşmak gerekirse bu istek ve akabinde gönderilen cevap kayıt dosyasına 404.19 koduyla kaydedilecek. Daha önceki yazıdan hatırlarsanız 404.19 "Denied by filtering rule" anlamına geliyor.

6 Ağustos 2012 Pazartesi

IIS 7 - 7.5 Request Filtering - Nass oluyor da oluyor ? File Name Extension & HTTP Verb filtreleme

URLScan eklentisini bilirsiniz, IIS 6 ve öncesi versiyonlarda bir eklenti olarak kurulur kullanılırdı. Microsoft IIS 7 ile birlikte bu fonksiyonu "Request Filtering" rol servisi ile web sunucusuna entegre etmeye başladı. Request filtering bir güvenlik servisi ve kurulduğunda IIS'e dosya uzantısına,URL'e,HTTP request metoduna, içerik uzunluğuna,URL uzunluğuna,query string uzunluğuna göre filtreleme, double-escaping önleme gibi yetenekler kazandırır. Bu özellikleri kullanarak web sunucunuza yapılan bir çok saldırıyı engelleyebilirsiniz. Request Filtering IIS rolüne ait bir servis.


Ve kurulduktan sonra IIS Manager arayüzünden konfigüre edilebileceği gibi 

27 Haziran 2012 Çarşamba

IIS Sıkılaştırma Klavuzu - Nam-ı diğer Security Hardening Guide

Hardening, sıkılaştırma-sertleştirme gibi cinsel çağrışımlar yapsa da BT dünyasında bir cihazı,bilgisayarı,uygulamayı,sunucuyu zaafiyetlerden arındırma, saldırı yüzeyi ya da vektörü de denen hedefin saldırı alabileceği noktaları azaltma anlamına geliyor kardeşlerim. Eskiden microsoft hemen her ürünüyle bu tip klavuzlar yayınlardı şimdi nedense pek yapmıyor, belki de yayınlanan bütün o klavuzlara rağmen ürünlerin hala kolayca istismar edilmesindendir bilemiyorum. Herneyse bu yazıda bizi ilgilendiren IIS web sunucuların daha güvenli hale getirilmesi. "SSL" terimi gibi "Hardening" terimi de bana hala bilgi ve bilişim güvenliğinden zerre kadar anlamayan ama her nasılsa çok ciddi kurumlardan birinde güvenlik ekibinin başında dikilen, ağzından bu kelimeyi eksik etmeyen, ismi de lazım olmayan birini hatırlatıyor."Hardening yaptıktan sonra productiona alıcaz,hardeningini kontrol edicez" gibi kusturucu cümlelere maruz kalmıştım bir dönem.