#LT駆動 29での発表スライド
![Webアプリケーションにおけるパスワードの管理について](https://cdn-ak-scissors.b.st-hatena.com/image/square/2a44e7a034d6eb3873c5650e26030cf8cc59a954/height=288;version=1;width=512/https%3A%2F%2Ffiles.speakerdeck.com%2Fpresentations%2Fb34fae1adab44fbaabdbe3f6010511eb%2Fslide_0.jpg%3F6815906)
最近、私は「セッショントークンを、cookieの代わりに Web Storage (sessionStorage/localStorage)に保存するのは安全ですか?」ということを尋ねられました。このことについてGoogleで検索したところ、検索結果の上位のほとんどが「Web storageはcookieに比べてかなりセキュリティが弱く、セッショントークンには不向きである」と断言していました。透明性のため、私はこの逆の結論に至った理論的根拠を公に書くことにしました。 Web Storageに関する議論の中核として言われるのは、「Web StorageはsecureフラグやHttpOnlyフラグといったcookie特有の機能をサポートしていないため、攻撃者が容易に盗み取ることが可能」というものです。path属性についても言及されます。私は、これらの機能それぞれについて調べてみました。そして、
デジタル市民権団体の電子フロンティア財団(EFF)は11月20日(現地時間)、米IT企業大手のサービスの暗号化状況を一覧できるリストを公開した。 米国家安全保障局(NSA)による大手IT企業のユーザーデータへの無断アクセスが報じられる中、企業がユーザーを守るためにどのような対策をとっているかを確認することが目的。 リストの項目は、左からデータセンター間のリンク、HTTPSのサポート、HTTP Strict Transport Security(HSTS)のサポート、forward secrecy(PFSとも呼ばれる)の採用、STARTTLSのサポート。 現時点ですべて対応しているのはGoogle、Dropbox、Dropboxの競合のSpiderOak、ブロードバンドISPのSonic.netの4社のみ。VerizonとAT&Tという米通信キャリア1位と2位はいずれも対応状況を明らかにして
WebアプリケーションにおいてJSONを用いてブラウザ - サーバ間でデータのやり取りを行うことはもはや普通のことですが、このときJSON内に第三者に漏れては困る機密情報が含まれる場合は、必ず X-Content-Type-Options: nosniff レスポンスヘッダをつけるようにしましょう(むしろ機密情報かどうかに関わらず、全てのコンテンツにつけるほうがよい。関連:X-Content-Type-Options: nosniff つかわないやつは死ねばいいのに! - 葉っぱ日記)。 例えば、機密情報を含む以下のようなJSON配列を返すリソース(http://example.jp/target.json)があったとします。 [ "secret", "data", "is", "here" ] 攻撃者は罠ページを作成し、以下のようにJSON配列をvbscriptとして読み込みます。もちろ
DNSサーバーの不適切な設定である「オープンリゾルバー」は、「DNS Reflector Attacks(DNSリフレクター攻撃)」という分散サービス不能(DDoS)攻撃に悪用される恐れがあり、JPRSではこれまでも各所での情報提供や注意喚起を行ってきています。 2013年3月、海外で大規模な攻撃事例があり、一部地域においてインターネットが一時的に利用しにくくなるなどの障害が発生しました。JPRSでは、この問題に関する技術解説やDNSサーバーの適切な設定方法について、改めて以下の通りまとめ、公開しました。 自身の管理するDNSサーバーがオープンリゾルバーであると、DDoS攻撃の加害者や踏み台となる恐れがあります。DNSサーバー管理者や関係者の皆さまはご確認をお願いします。
合わせて読んでください:Flashと特定ブラウザの組み合わせでcross originでカスタムヘッダ付与が出来てしまう問題が未だに直っていない話 (2014-02/07) XMLHttpRequestを使うことで、Cookieやリファラ、hidden内のトークンを使用せずにシンプルにCSRF対策が行える。POSTするJavaScriptは以下の通り。(2013/03/04:コード一部修正) function post(){ var s = "mail=" + encodeURIComponent( document.getElementById("mail").value ) + "&msg=" + encodeURIComponent( document.getElementById("msg").value ); var xhr = new XMLHttpRequest(); xhr
技術者としての良心に従ってこの記事を書きます。俺はセキュリティとプライバシーの人ではなく、JavaScriptとUIの人である。法律の勉強だって自分の生活と業務に関わりのある範囲でしかしないだろう。しかし少なくともJavaScriptやブラウザが絡むような部分については、確実に自分のほうが理解していると思っている。高木浩光さんが、あからさまに間違ったことを書いたり、おかしなことを書いていたりしても、徐々に誰も指摘しなくなってきたと思う。おかしなこと書いていたとしても、非技術者から見たときに「多少過激な物言いだけど、あの人は専門家だから言っていることは正論なのだろう」とか、あるいは技術者から見た時でも、専門分野が違えば間違ったことが書かれていても気付けないということもあるだろう。 もう自分には分からなくなっている。誰にでも検証できるような事実関係の間違い、あるいは、技術的な間違いが含まれてい
これちょっとマズいんじゃないかなあ。 Kampa! の人である佐田さんが見つけて教えてくれたんだけど、 Facebook のメッセージは割と簡単に他人になりすまして送れるみたい。 以下、すべて送信者と受信者の自発的な協力を得て試してみた結果です。 起きること Facebook ではユーザーに @facebook.com のメールアドレスが与えられています。 個人ページが www.facebook.com/namaewo の人なら namaewo@facebook.com という具合に。 そのアドレス宛にメールを送ると、 アドレスの所有者に Facebook 上のメッセージとして届きますね。 この時、そのメールの送信元メールアドレスが 別の Facebook ユーザーによって登録されているアドレスであった場合 Facebook では、そのユーザーから送られたメッセージとして扱われます。 電子
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く