書籍『安全なWebアプリケーションの作り方』の感想

本屋では売り切れだったので相当な人気では

 本を買うときは「川崎の大きめ本屋さん」で買う私ですが、何度か見に行ってもずっと売り切れだったので、仕方なくAmazonでポチリました。Amazonでポチッたのは『Hadoop』象本の和訳が出た直後に購入して以来、約1年振りですた。川崎の大きめ本屋さんは、人気の書籍でもたいてい置いてあるので、相当人気の本なのではないでしょうか?
 なお、私が本屋さんで本を買う理由は、なんとなくです。本屋さんの、整然と並べられた本の雰囲気とか、静かに過ごさないといけない感じが個人的に好きなんですかねー?(どうでもいいですが・・・
 ソフトバンク関連会社から出版されているみたいですし、こういう教育的な本こそ手元に置いておきたいので、電子書籍化も期待したいですねー。ミーハーな私は、人気の本はすぐに読むことにしました〜♪

Webアプリは少しの油断で脆弱性だらけになりそう

 書籍の感想は、大体次のような感じです。

  • 脆弱性の例に250ページ使っての詳細説明が大変勉強になります
  • Webアプリでは、ちょっとしたことですぐ脆弱性になりうることが理解でき、必読本ではないかと
  • アプリ開発者の視点だと、フレームワークとかでフォローして欲しい内容(他人まかせですw)

 第4章の「Webアプリケーションの機能別に見るセキュリティバグ」が本書の中心だと思いますが、約半分の250ページも使われていて、詳細な説明が大変勉強になります。

危険なコード→攻撃例→攻撃を受けてしまう原因→具体的な防御策

という流れで書かれていて大変理解しやすいデス。あと、CDにサンプルコードが入っていて、攻撃や防御を実体験できるみたいですねー。(さーせん。時間なくて体験はまだできてません。。。
 しかし、Webアプリはちょっとしたことで、すぐに脆弱性になってしまうことが分かります。例えばクロスサイト・スクリプティングでは、「<」や「&」などのたった数文字の扱いを間違うだけで、すぐに脆弱性になります。それらの原因は、HTTP、HTMLやCookieの仕様、ブラウザの問題、等が複雑に絡み合っています。結局、根本原因は、HTTPとかを考えた人たちが、最初から脆弱性なんて意識してないというところに行き着くのかな?と思いますが、HTTPだけ単体では安全でも、特定の使われ方だとすぐ脆弱性になるなんて、Webアプリ弱過ぎで泣けてきますね。。。網羅的に理解するという意味で、プログラマは必読の本だと思います。
 一方、アプリ開発者の視点ですと、仕様を満たすことに集中したいので、脆弱性の対策はフレームワークとかに一任したいのが本音ですねぇ。「このフレームワークを使えば、本書並みの対策は万全です」的なフレームワークが登場すれば、世のため人のためになるのではないかなぁと思います。

将来のお話を一度聞きたいです

 セキュリティって、

新しい攻撃手法が生み出される→新しい防御対策を確立

みたいな感じで、「強制的に後手に回らされるいたちごっこ」だと思うんですけど、どうにか先手に回って予防対策できないもんでしょうかねぇ。ある意味、当たり前ですが、本書も過去のお話ばかりです(「セキュリティ事故の歴史で学ぶ…」的な書籍もアリではないかとひらめきました、、、)。
 あと、本書のような攻撃手法を記述した本って使い方によっては危険ですので、ほぼ世の中に認知されていて対策も確立されている内容にする必要があると思っていて、そのあたりのバランスは難しかっただろうなぁと想像します。だって、誰も対策してないような攻撃手法を書いちゃうと、「安全なアプリの作り方」のはずが、とたんに「危険なアプリの作り方」に急変してしまいますからー。完全に妄想ですが、徳丸さんしか知らないような攻撃方法がイロイロあるのではないかと。。。
 最近ですと、ソ○ーの個人情報の流出が問題になっています。お金絡みは別問題ですけど、一部の個人情報なんてtwitterfacebookとかにガンガンにアップされていて、バンバン漏れてるような時代な気がしているんですよねー。そんな時代において、「これからのWebはどうなっていくのか?」とか「そのときセキュリティやプライバシーの考え方は?」など、将来的なお話を一度お伺いしたいなぁと思いました。