Developers Summit 2009 「Webアプリケーション/Ajaxセキュリティ徹底バトル」
Webアプリケーションの攻撃側と防御側(運用側)に別れてのパネルディスカッション。なかなか楽しく、かつ有意義な内容でした。
私が個人的に気になったことを列挙しておきます。
1.JSONの”脆弱性(?)”
Bugと仕様が混在している微妙な問題。
GoogleはAd-hocな対応をしたが、ちゃんとした対策をするべきだったと思う。
対策はサーバ側で行うべき(
クライアント側だけでは解決しない)。
例えば
POSTのみ許可する
XHR(XmlHttpRequest)のリクエストヘッダに固有の情報を
セットする
レスポンスヘッダのcharsetを設定する(
Shift_JIS/EUC-JP/UTF-8)
など。
2.
オープンソースは危険?クローズソースは安全?
オープンソースは多くの人にレビューされているので安全、
ということはない(神話)
コードが公開されているから危険、
ということでもない
クローズソースはソース公開されないので安全、
なんてことはない=>
コードがなくても脆弱性は発見される
3.XSSについて
イントラシステムだったら対応不要、なんてことはない。情報漏洩の原因にもなりえる。
そもそもXSSってバグでしょ!!技術者として直さないなんてありえない。
4.WAF(Web
Application Firewall)
ないよりはよい。
ただし保険的な対策と割り切る。
苦労を厭わずに安い/無料のWAFを使ってみよう!!
どちらにしても開発者はWAFのあるなしで手を抜いてはいけない
5.最後に私が質問したこと
(回答ありがとうございます)
ディスカッションの流れでは「開発者がちゃんと設計/実装すべき」となっていたが、最近のEoD(Ease of Development)とは相容れないのか?
EoDで空いた時間をセキュリティ対策に充てればいい(それが技術者が今後生き残る道でもある)
=>共存できるはず。
<<攻撃側は区別なく攻撃するのだから>>
UTF-7での脆弱性などもっとたくさんの情報があったのですが、説明できるほど私がついていけていません。
私ももっともっと
勉強しないといけないな、と実感しました。
こちらでもっとちゃんとした情報が出ています。参考にどうぞ。
| このブログのURL
|この記事のURL