Web Sitelerinde CSS Zafiyeti Bulma

CSS(Cascading Style Sheets), web sitelerinde HTML sayfalarının görsel yapılarının kullanıcılara uygun hale getirilmesini sağlayan bir yapıdır.HTML nesnelerinin göze daha hoş gelmesini ve siteyi ziyaret eden kullanıcıların göz zevkine uygun hale gelmesini sağlayan CSS komutlarıdır.HTMl nesnelerinin tamamının veya tekinin kendine has renk ,boyut vb. özelliklerinin tasarlanması CSS ile gerçekleştirilir.
Peki CSS açığı sitelerde nasıl bulunur? Aşağıdaki örnekte CSS değerinin kullanıcıdan alınarak “background”-arkaplan alanının renklendirilmesi sağlanmaktadir.
Alınan değerin oluşturduğu durumu görelim.Aşağıda görüldüğü gibi  “900″ değeri girilmiş ve arkaplan koyu kırmızı renge boyanmıştır.


Sayfanın kaynak koduna bakalım.Girdiğimiz değer nasıl kodlanmış.


Girilen değer direk “background color:# ” alanına eklenmiş.Biz buraya başka değerlerde girebiliriz.Ama genelde giriş alanının kaarakter sayısını kısıtlıyorlar.En fazla 6 karakter vb. yöntemlerle.Firebug eklentisi ile bu sorunu aşabiliriz.
Şimdi giriş alanına farklı değerler girelim.

Gönderdiğimiz kodun sonucunu görelim.Javascript kodu çalıştı.Ama  “> kod parçası açıkta kaldı. Bunu da tamamlayacak bir değer girelim.


Form elementi içerisine span değerini yazabiliriz.Aşağıda da görüldüğü gibi form elementi normal bir şekilde kapandı.



Biz javascript kod olarak istediğimiz kod parçasını buraya ekleyebiliriz.Aşağıda SessionId değerini çektik.

Biz burada CSS zafiyetini javascript kod ile sömürdük.Html injection ile html nesnelerinide sayfaya ekleyebiliriz.Önlem olarak mutlaka girdi-çıktı kontrolü yapılmalıdır.

Yorumlar

Bu blogdaki popüler yayınlar

Wamp Server ile Yerel Ağınızda Site Yayınlama

Web Pentest İşlemlerinde Burp Suite Kullanımı-1

Wireshark Filtreleme Komutları