2013-01-01から1年間の記事一覧

JPCERT/CCの「HTML5(中略)調査報告書」が安全になっていた

JPCERT/CCは「HTML5を利用したWebアプリケーションのセキュリティ問題に関する調査報告書」(PDF))を以下のURLから公開しています。http://www.jpcert.or.jp/research/html5.html「HTML5を利用したWebアプリケーションのセキュリティ問題に関する調査報告書」…

Chromeで(☝ ՞ਊ ՞)☝ウイーン

この記事はEject Advent Calendar 20133日目の記事です。ちなみに今日は僕の誕生日ですかつて一世を風靡し世界中のChromeユーザーを病院送りにしたCD-ROM トレイを取り出せる Chrome拡張、「chrome-eject」ですが、内部でNPAPIを使っていたために近い将来確…

バグハンティング生活

セキュリティの専門家が錦糸町の小さな会社についたとき、JVNに一人のバグハンターが乗っていた。 JVNの中には数種のXSSが載せられていた。そのセキュリティ専門家はバグハンターにバグの品質を褒めて、見つけるのにどれくらい時間がかかったのか尋ねた。 バ…

空前の脆弱性ハンティングブーム

追記:このエントリーは以下の記事を極限までに参考にさせて頂きました。いつも著作権フリーでコピー改変OKな記事の提供ありがとうございます!それにしても、ほんとうに実力さえあればパクリだけで食べていける時代なんですね! http://www.whitehackerz.jp/…

JavaScript文字列の動的生成におけるエスケープ

「JavaScript文字列を動的生成する」と一言で言っても、例えば <html>... <script> // HTML内のscript要素内に生成 var s = "ここに動的生成される"; </script> だったり、 <div onclick='foo("ここに動的生成される");'> だったり、 <script src="external.js"></script> // external.js var s = "ここに動的生成される"; だったり、さらに複雑な組み合わせだったり</div></html>…

HTML5関連のセキュリティ情報

HTML5に関連したセキュリティの話題で、とりあえずこれまでに話した資料の一覧や、考察した記事。今後もっと増える予定です。「このAPI使う上で気を付けることないの?」みたいなリクエストもあればぜひ言って下さいませ。 JavaScript Security beyond HTML5…

アセンブラ短歌

世の中には常人には理解できない趣味を持っている人がいまして、組み込みOSを作っている坂井さんもその一人で、最近は「アセンブラ短歌」という新しい遊びを提案しています。アセンブラ短歌というのは坂井さんによると、“「アセンブラ短歌」は五・七・五・七…

セキュリティ・キャンプ2013 お疲れ様でした

今さらという感じもありますが、セキュリティ・キャンプ2013にWebセキュリティ・クラスの講師として今年も参加しました。 Webセキュリティ・クラス以外の実施内容については様々な記事をご参照いただくとして、ここではWebセキュリティ・クラスでの講義内容…

補足編:機密情報を含むJSONには X-Content-Type-Options: nosniff をつけるべき

「機密情報を含むJSONには X-Content-Type-Options: nosniff をつけるべき - 葉っぱ日記」の補足編です。 結局、よくわからないんだけど。 よくわからない場合は、とにかく全てのレスポンスに X-Content-Type-Options: nosniff をつけましょう。 機密情報を…

機密情報を含むJSONには X-Content-Type-Options: nosniff をつけるべき

WebアプリケーションにおいてJSONを用いてブラウザ - サーバ間でデータのやり取りを行うことはもはや普通のことですが、このときJSON内に第三者に漏れては困る機密情報が含まれる場合は、必ず X-Content-Type-Options: nosniff レスポンスヘッダをつけるよう…

Same-Origin Policy とは何なのか。

ちょっと凝ったWebアプリケーションを作成していたり、あるいはWebのセキュリティに関わっている人ならば「Same-Origin Policy」(SOP)という言葉を一度は聞いたことがあると思います。日本語では「同一生成元ポリシー」あるいは「同一生成源ポリシー」などと…

IPAから「クリックジャッキング」に関するレポート出ました

Webアプリケーションのセキュリティの分野で「新しい攻撃手法」は実はそれほど多くないのですが、比較的新しく対応が求められているものとしてクリックジャッキングがあります。クリックジャッキングは、CSRFと同じように「Webアプリケーションのサーバー側…

Web StorageやindexedDBを扱う上でのセキュリティ上の注意点(続編)

先日書いた「Web StorageやindexedDBを扱う上でのセキュリティ上の注意点」の続き。 sessionStorage を使うと解決するか この用途なら sessionStorage でよい (はてなブックマーク - ssig33 - 2013年3月9日)sessionStorageはウィンドウあるいはタブが開かれ…

Web StorageやindexedDBを扱う上でのセキュリティ上の注意点

localStorageやsessionStorage、あるいはindexedDBのようなブラウザ上でのデータの保存が可能になったことで、これらを取り扱ううえでもセキュリティ上の注意点が必要である。 これらのストレージは、localStorageやindexedDBは永続的に、sessionStorageはブ…

XMLHttpRequestを使ったCSRF(補足編)

XMLHttpRequestを使ったCSRF対策 - 葉っぱ日記を書いていて思ったけど、いまいちXHRを使ったCSRF(というかクロスオリジン通信)について理解されていないような感じだったので、ちょっと書いておきます。とりあえず日本語のリソース的には、HTTP access contr…

XMLHttpRequestを使ったCSRF対策

合わせて読んでください:Flashと特定ブラウザの組み合わせでcross originでカスタムヘッダ付与が出来てしまう問題が未だに直っていない話 (2014-02/07)XMLHttpRequestを使うことで、Cookieやリファラ、hidden内のトークンを使用せずにシンプルにCSRF対策が…

httpstatus ブックマークレットで、HTTP のステータスコードをすばやくしらべる!

一般的な Web Programmer ならば、HTTP Status code はすべて暗記していると聞きました。しかし、僕は初心者なので、なかなか覚えきれていないので、HTTPのステータスコードをさがすのに便利なブックマークレットを用意しました。httpstatus.js です。インス…

GoogleのJSON(モドキ)の先頭にwhile(1); がつく理由

なぜGoogleはJSONの先頭に while(1); をつけるのか #JavaScript #HTML #Ajax #StackOverflow - Qiita これはクロスサイト・リクエスト・フォージェリ対策。違うよ!全然違うよ!攻撃者の作成した罠ページにてJSONを<script src="target.json">みたいに読み込んで、ゴニョゴニョやること…

CD-ROM トレイを取り出せるIE用ブックマークレット、「ie-eject.vbs」作った。

IE 使ってると良く CD-ROM を取り出したくなりますよね。 ならないとしたら、今すぐこの記事を読むのをやめて病院に行って下さい。 ie-eject.vbs https://gist.github.com/4583466 shell:favoritesフォルダにコピーすると、 というお気に入りの項目が追加さ…

hiddenなプロパティを作る秘伝の方法

IE限定。よくわからん。 <script language="VBScript"> [abcd]=1 </script> ... <script type="text/javascript"> alert( window.hasOwnProperty("abcd"); // true alert( window.abcd == 1 ); // true alert( Object.getOwnPropertyNames(window).indexOf("abcd") ); // -1 !!! </script>

CD-ROM トレイを取り出せる Chrome拡張、「chrome-eject」作った。

Chrome 使ってると良く CD-ROM を取り出したくなりますよね。 ならないとしたら、今すぐこの記事を読むのをやめて病院に行って下さい。 hasegawayosuke/chrome-eject · GitHub https://github.com/hasegawayosuke/chrome-eject インストールすると というア…