strip_tags() fonksiyonu, izin verilen etiketler olarak bir parametre alıyor. bu parametrede, izin verilen HTML etiketleri kullaniliyor ve isleme sokuldugunda yok edilmiyor.
XSS saldirilarina karsi, bir cok yerde strip_tags() fonksiyonunun onerildigini gorebilirsiniz. Fakat, allowable tags kismina sadece etiketini eklemeniz bile guvenlik acisindan ciddi problemler dogurabiliyor. ( programcilar, zararsiz olarak gordukleri bu etiketleri kullanabiliyorlar bu parametrede.)
Ornegin, BB-CODE'lardan uzak duralim diye strip_tags() icinde A etiketine izin verdik diyelim.
Kod:
Ilk olarak textarea kismina yazin, sonuc hatasiz cikacak.Evet, filtrelenmis.
İkinci seferde y gibi bir sey yazin, a etiketi allowed tags icinde oldugu icin duzgun bir sekilde calisacaktir.
Fakat, sorun su ki, yetenekli bir saldirgan icin a etiketi bile yeterli olacaktir.Zira, a etiketi icindeki "onclick" eventi javascript calistirmak icin yeterli.Bu da cookie calma gibi ciddi sorunlara yol acabilir.
Ornegin, yukardaki basit betigi gecen bir saldiri deseni:
Kod:
ya da cookie (cerez) calalim:
Hiç yorum yok:
Yorum Gönder