動的生成されるDOMオブジェクトを完全にチェックするにはjavascriptエンジンを実装する必要があるので、ブラウザに協力してもらう。
つまり、現在見ているページのHTMLから、ブラウザ側で外部リンクスクリプトを抽出して送信する、というブックマークレットを作った。
ユーザ固有のhostsを作るためのヒントに使われるだけので、フォーマットさえサーバ側で確認すればセキュリティ的には問題は無い。
そもブックマークレットな上、送信するアドレスを明示してconfirmダイアログを出しているのでユーザの個別かつ明示的な同意を得ているはずで、URLの?以降も除去している。
URLはリンク先表示に使うだけで即時破棄されているので、サーバサイドでも個人情報的な問題は発生しない。
javascript:(function(){document.body.appendChild(document.createElement('script')).src='https://hostsaway.appspot.com/js/bookmarklet.js';})();もしくはリンク