2011-09-15 18 views
6

Siteme karşı bir dizi XSS saldırısı yaşadım.Herkes bana bu XSS vektörünün tarayıcıda neden/nasıl çalıştığını söyleyebilir mi?

<a href="mailto:"> 
<a href=\"http://www.google.com onmouseover=alert(/hacked/); \" target=\"_blank\"> 
<img src="http://www.google.com onmouseover=alert(/hacked/);" alt="" /> </a></a> 

Bu komut yürütmek olmamalıdır gibi görünüyor, ama ben tarayıcı için HTML çevirir olduğunu görmek mümkün oldu IE9 gelişim aracını kullanarak: Aşağıdaki HTML parçası saldırgan tarafından enjekte edilmiş XSS vektörüdür aşağıdaki: bazı testten sonra

<a href="mailto:"/> 
<a onmouseover="alert(/hacked/);" href="\"http://www.google.com" target="\"_blank\"" \?=""> 
</a/> 

, bu \ onmouseover 'canlı 'özelliği için'" yapar' çıkıyor, ama neden bilmiyorum bu vektör

+1

"Geçersiz" url'nin bir parçası olmak için alıntıyı bırakarak \ "yorumda bulunur" gibi görünüyor. HTML'de tırnak işaretleri olmadan özellik değerlerine sahip olabilirsiniz. da geçerlidir. Ama bu ilginç. Bunu bilmiyordum '' o gibi çalıştı. – Erlend

+0

Önünde herhangi bir karakter görünüyor, 'öznitelik değerinin bir parçası haline getirir. – Erlend

cevap

5
başarır neden bilen var mı.?

Bu yüzden yorumları özetlemek için: Alıntıdaki karakter, değeri, değerin başlangıcını ve sonunu işaretlemek yerine, öznitelik değerinin bir parçasına dönüştürür.

href=a"http://www.google.com onmouseover=alert(/hacked/); \" 

HTML quoteless niteliklerini kılar o verilen değerlere sahip iki özellik haline gelir: Bu da iyi çalışır.

İlgili konular