1

Web サイトの脆弱性をテストしようとしています。次のように値を入力するテキストボックスがあります。

Dummy" /><script>document.alert('XSS Vulnerable');</script><input title="DummyAgain

フォームを送信した後に形成される HTML は

<input name="customerName" size="16" value="Dummy" /><script>document.alert('XSS Vulnerable');</script><input title="DummyAgain" type="text">

しかし、HTML が正しく形成されていても、javascript は実行されず、firefox/chrome の要素を調べると、テキスト ボックスの値が入力した値とまったく同じであることがわかります。

私は何を間違っていますか?

4

3 に答える 3

2

これを実行すると:

document.alert('XSS Vulnerable');

... 次のエラー メッセージが表示されます。

TypeError: document.alert は関数ではありません

これは、オブジェクトではなくオブジェクトalert()のメソッドであるwindowdocumentために発生します。

オブジェクトを省略することもできます。デフォルトは次のようになりますwindow

alert('XSS Vulnerable');

更新:コードを再現:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head><title></title>
</head>
<body>

<input name="customerName" size="16" value="Dummy" /><script>window.alert('XSS Vulnerable');</script><input title="DummyAgain" type="text">

</body>
</html>
于 2012-12-21T10:06:13.603 に答える
1

そのコードが XSS 問題を引き起こすことができるようにするには、出力例の"ように置き換えることはできません&quot;

于 2012-12-21T09:41:45.723 に答える
0

OK、みんな..これとビューソースが同じであると仮定して、FirefoxとChromeのInspect要素機能をチェックしていました...ソースを表示すると、値がDummy&quot; /&gt;&lt;script&gt;alert(&#39;XSS Vulnerable&#39;);&lt;/script&gt;&lt;input type=&quot;text.

ソースを確認せずにお手数をおかけして申し訳ありません。ありがとう@クエンティン...

于 2012-12-21T10:46:02.397 に答える