DropboxでJavaScriptが動くという話
.jsファイルはテキストとして表示されるだけなのだが、HTMLファイルをきちんと解釈するなら<script>で記述したJavaScriptは動くのでは? と思って検証。
<html> <head> <script language="javascript"> document.write('aaa'); window.alert('bbb'); </script> </head> <body> <p>Test</p> <body> </html>
このファイルを共有してURLにアクセスすると、見事なまでにAlertBoxが表示され「aaa」も出力される。
私はJavaScriptに詳しい方ではないのだが、これを利用するとDropboxのCookieが読み出されて、自分のDropbox内にあるファイルを勝手に読み出されてしまう可能性があったりするのではなかろうか?
一言で言えばクロスサイトスクリプティング(XSS)が心配。 (最初からそう言えよ)。
詳しい人の検証求む。
【追記】
西村さんが「勉強会で Dropbox を検証」という記事でDropboxでの検証用ファイルを公開してくれたので、興味のある方はチェックを。
この検証用ファイルはAlertBoxが1つ出て、document.writeで少量のテキストを書き込んでいるだけだが、悪意のある人が何かを仕掛けていたとしたら危険なので、知らない人の公開URLはうかつにクリックしない事をお勧めする。