Wyniki dla ZAP OWASP były bardzo przydatne do eliminowania wrażliwych części mojej witryny.Dlaczego/Jak jest "value =" javascript: alert (1) "" uważany za lukę XSS w narzędziu ZAP OWASP?
Jednak znalazłem wiele wyników, których po prostu nie mogę naprawić. Na przykład jeden z parametrów get ustawił javascript:alert(1);
w zmiennej. Ta zmienna jest następnie wyprowadzana przez PHP w atrybucie ukrytego elementu o wartości value
. Ostateczny kod HTML wygląda następująco:
<input type="hidden" name="someName" id="someID" value="javascript:alert(1);"/>
Ta wartość jest zwykle używana do zapełnienia menu rozwijanego przy pomocy JavaScript. Jeśli jest 1, pokazuje opcjonalne filtry wyszukiwania, jeśli 0 to nic nie pokazuje. Jest więc używany tylko przy porównywaniu ciągów, które zawodzą.
Nie widzę możliwości wykorzystania tego, alert nie działa tak, jak inne ataki pokazane mi przez ZAP. Dane wyjściowe są zakodowane, więc nie mogą wstrzyknąć kodu HTML, kończąc cytaty lub element wcześnie z "/>
, podobnie jak wcześniej wykryte ataki, ponieważ te znaki stają się ich odpowiednikami w HTML.
Czy jest to tylko fałszywe potwierdzenie z ZAP pasujące do ciągu wejściowego w źródle strony, ponieważ kodowanie javascript:alert(1);
nadal jest dokładnie takie samo jak javascript:alert(1);
?
Może to pomóc http://stackoverflow.com/questions/23838300/how-to-solve-owasp-zap-reported-alert1-xss-ululność – Anil