結論

  • 読んでよかった
  • ボリュームがかなり多い
  • これ一冊でWebアプリケーションの開発における留意すべきセキュリティリスクが満遍なく学べる
  • 動作環境は触らなくても学びは十分

読もうと思った経緯

半年前に現職の会社に転職しました。
所属している事業部の開発チームにおける必読本がいくつか設定されており、その中に本書籍も含まれていました。
必読本だし、名前は聞いたことあるし、セキュリティもたまには体系的に勉強せねば... と思い、読んで見ることにしました。

必読本といいつつ、社内Wikiに書いてあるだけで特に義務だったりするわけではない...

読んだ感想

ざっくりとは最初の結論の通りですが、もう少し詳細に書いてみます。

とりあえずWebアプリケーションの開発に関わるなら読んどけ

対象読者はWebアプリケーションの開発にかかわる人全員という認識で良さそう。
テストだけしているとか、インフラがメインだとか、ディレクションしかしてないっていう人でも読んどくと役に立つと思います。

なんとなーく理解していた攻撃手法やセキュリティリスクを詳細に学べた

私は雰囲気プログラミングしているクソ雑魚エンジニアではあるものの、SQLインジェクションだのクロスサイトスクリプティングだのhiddenパラメータの改ざんだのというのはまぁ普通に知っていく内容ですし、自分なりに気をつけて開発はしているものです。

とはいえ、網羅出来ているかと問われると自信はなく、原因と対策方法について正しい知識を持っているかと問われると汗かいちゃうようなレベルではありました。
そういったときに、 この本を一通り読んだよ! と言えれば多少なりとも信頼してもらえそうですし、実際脳内にindexが生成されているので、開発時にリスクに気づきやすくもなると思います。

ボリュームがエグい

読み進めていて思ったのが、 これいつになったら読み終わるんだ? ということでした。
私は毎日ちょっとずつ読み進める習慣にしているのですが、これまでの本なら読み終わった期間で半分にすら行っておらず、ちょっと心がくじけかけました。

電子書籍版だと692ページということで、ほぼ700ページあります。
まぁ空白ページやツールの説明などのページもあるので、純粋に全部読んだページではないですが、結構読むのに体力は必要そうです。

一気に読める人尊敬する…。

動作環境は触らなくてもいいんじゃね?

本書籍ではPHPをメインにコードの実装例を紹介しつつ解説がなされています。
実際に攻撃を体験するために動作環境も提供されていて、Vagrantで仮想環境立ち上げてブラウザでアクセスする、OWASP ZAPを使って通信を改ざんするなど出来ます。
読んだだけではイメージできない人は触ったほうが良いと思いますが、そうでなければ動作環境は用意して触らなくても良いんじゃないかと思います。

まぁ私がめんどくさくてやらなかっただけというのは秘密です。

やっぱIEはクソ

IE先輩だけの脆弱性とか結構あって、やっぱクソだなって思いました。
Chromeは優秀です。
たまにFirefoxのみの脆弱性もあったのは少し意外でした。

楽しい内容ではない

セキュリティオタクとか脆弱性オタクとかじゃないなら特に面白い内容の本ではないと思います。
私のような勉強意欲の薄い人間には読むのそこそこダルく感じるけど、ちょっとずつでも流し読みでもいいので読んどくと良いと思います。

おわり

私はクソ雑魚エンジニアなので全部真に受けないで、自分で読んでみて確かめてください。(予防線)
本の感想シリーズはこれからも書いていきたい。