Enterキー長押し攻撃
みたいなHTMLを書いて
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <script type="text/javascript"> function onEnter() { document.getElementById("stdout").innerHTML += "!!"; return void(0); } </script> </head> <body> <a href="javascript:onEnter();">テスト</a> <div id="stdout"> </div> </body> </html>
リンクにフォーカスをあわせて、Enterキーを長押しすると、onEnterが連続で呼び出される。通常のリンクであれば、Enterを押した時点で画面遷移してフォーカスが外れるので、そう問題にならないのかもだけど、画面遷移に時間がかかる場合やそもそも画面遷移しない場合には対策が必要(な場合もある)。攻撃の意図がなくても、通常の操作でやったりしそうなのが怖いところですな。
対策としては、初回のEnterの時点でリンクを無効化するんだろうか?にしても1個1個対策するのはなかなか面倒だなー。