ინტერნეტში არსებული Microsoft-ის IIS (Internet Information Services) სერვერები ხშირად აღმოჩნდება არასწორად კონფიგურირებული, რაც მათ კიბერუსაფრთხოების მკვლევრებისა და ბაგ-ბაუნთი მონადირეების სამიზნედ აქცევს. ერთი შეხედვით ჩვეულებრივი „ცისფერი ეკრანის“ უკან ხშირად იმალება სერიოზული დაუცველობები.

სერვერების აღმოჩენა და იდენტიფიკაცია

პირველი ნაბიჯი ნებისმიერი კვლევისთვის არის სერვერების პოვნა. სპეციალისტები ამისთვის Shodan-ს, Fofa-ს ან Censys-ს იყენებენ. სკანირებისას ყურადღება მახვილდება SSL სერტიფიკატებსა და ორგანიზაციულ დომენებზე, რაც ხშირად გამოავლენს დამალულ ადმინისტრაციულ პანელებს.

Google Dorking-ი ასევე ეფექტური მეთოდია. ისეთი სპეციფიკური პაპკების ძიება, როგორიცაა _vti_bin ან aspnet_client, პირდაპირ მიუთითებს IIS-ის არსებობაზე. HTTP პასუხის სათაურების შემოწმება კი ყველაზე ზუსტი მეთოდია ტექნოლოგიური სტეკის დასადასტურებლად.

ზოგიერთ შემთხვევაში, HTTP/1.0 მოთხოვნის გაგზავნით შესაძლებელია სერვერიდან შიდა IP მისამართის მიღება, რაც თავდამსხმელს შიდა ქსელის ინფრასტრუქტურის შესახებ მნიშვნელოვან ინფორმაციას აძლევს.

IIS-ის სპეციფიკური დაუცველობები

ერთ-ერთი ყველაზე ცნობილი მეთოდია Tilde Enumeration. ეს ტექნიკა ეფუძნება DOS-ის დროინდელ 8.3 ფაილური სახელების კონვენციას. სპეციალურად შემუშავებული მოთხოვნებით, ჰაკერებს შეუძლიათ გამოიცნონ ფაილების სრული სახელები მაშინაც კი, როდესაც დირექტორიების ნახვა აკრძალულია.

web.config: კრიტიკული წერტილი

თუ მკვლევარი ახერხებს web.config ფაილის წაკითხვას, ეს ხშირად ნიშნავს სისტემაზე სრულ კონტროლს. ამ ფაილში ხშირად ინახება კრიპტოგრაფიული გასაღებები, რომლებიც გამოიყენება ViewState-ის დასაშიფრად. ამ გასაღებების მოპოვების შემდეგ შესაძლებელია სერვერზე კოდის დისტანციურად შესრულება (RCE).

DLL ფაილების ექსპოზიცია

ASP.NET-ის მემკვიდრეობითი ფუნქცია, რომელიც დაკავშირებულია „cookieless“ სესიებთან, საშუალებას აძლევს თავდამსხმელს მანიპულაცია მოახდინოს URL-ის გზებით. ამ მეთოდით შესაძლებელია /bin დირექტორიაში არსებული DLL ფაილების ჩამოტვირთვა და მათი დეკომპილირება, რაც ავლენს კოდში ჩაშენებულ პაროლებსა და API გასაღებებს.


უსაფრთხოების სპეციალისტები ხაზს უსვამენ, რომ IIS-ის თავისებურებების ცოდნა და მიზანმიმართული ფაზინგი (fuzzing) არის მთავარი ინსტრუმენტი ამ სისტემების დაცვის გასაძლიერებლად.