home Glamenv-Septzen(ぐらめぬ・ぜぷつぇん)(archive)

読書メモ/「体系的に学ぶ 安全なWebアプリケーションの作り方」

作成日: 2011-04-18 10:37:37   /   last updated at: 2011-04-18 10:38:18
カテゴリ: セキュリティ 読書 

2011年時点での安全なWebアプリ開発まとめ本。

体系的に学ぶ 安全なWebアプリケーションの作り方 脆弱性が生まれる原理と対策の実践 | 徳丸 浩 |本 | 通販 | Amazon

VMPlayerの仮想マシンがCD-ROMで添付されていて、すぐに仮想マシン上で実行出来る点が素晴らしい。
他にも文字コードの問題や携帯サイト開発での注意点など、2011年時点での最新の内容が網羅されている。
PHPだけでなくPerl, Java, .NET の場合についても言及されているので安心。

安全なWebアプリ開発の指南書はどうしても、年を重ねると内容が古くなってしまいがち。当時は安全と思われていた対策や関数が、後になって脆弱性や問題が発見されたり。本書は「2011年時点では」信頼できる書籍だが、数年後もそうであるとは限らない。
継続した情報収集が必要。
また、逆に古い書籍を参照するときは「今の時点ではどうなのか」というのを念頭に置いて読み進める必要がある。

参考までに、自分が安全なWebアプリ開発を勉強するときに読んできた本の軌跡:

2005年:「PHPサイバーテロの技法」

PHPサイバーテロの技法攻撃と防御の実際: PHPで作成したWebアプリケーションは、常にサイバー攻撃の脅威にさらされている | GIJOE |本 | 通販 | Amazon

この本でWebアプリのセキュリティに開眼させられた記憶が。
2004-2005年にかけて、PHPで作られたWebサイトの脆弱性が広く知られるようになって、PHPのdisが始まったような記憶が。

2006年:「Webアプリセキュリティ対策入門」

Webアプリセキュリティ対策入門 ~あなたのサイトは大丈夫? | 大垣 靖男 |本 | 通販 | Amazon

この辺で、PHPで開発するときの"NGパターン"が出揃った感じ。

2007年:「ウェブアプリケーションセキュリティ」

Amazon.co.jp: ウェブアプリケーションセキュリティ : 金床: 本

自分が購入したのはもうちょっとあとになって、2009年頃だったような。2009年の転職時に、Webアプリのセキュリティ検査やってる会社に面接しに行ったとき、予習として購入した記憶があります。

ただ、これだけ読んでじゃぁ "100%安全な" Webアプリを開発できるかと問われれば、正直なところ自信が無いです。
というのは最近のWebアプリ開発ではフレームワークやライブラリを作るのが当たり前です。
で、セッション管理とかCookieとかDB関連の機能は、フレームワークやライブラリが覆い隠してしまいます。
ということは、書籍の通りにセッション管理やDB呼び出しができるか、というのを検証するにはフレームワークやライブラリのソースコードを自分で確認しなければなりません。
さらに携帯サイトの開発などでURLにセッションIDを含める場合や携帯IDを使った認証などが絡みだすと、フレームワーク側でそういったきめ細かいHTTPヘッダーやHTML出力中のURLの書き換えを制御・カスタマイズできるのか、とか検証し、実装しなければなりません。

ということで、個人的にはもう、知れば知る程、作るのが面倒くさくて嫌になってくるのが正直な話です。妙なところで神経質になっちゃって、どうしても重箱の隅をツツクようにアレコレ気にしてしまって、前に進めなくなっちゃうんですよね・・・。「~でなければならない」にがんじがらめに縛られちゃうっていうか。あるいは機能とフレームワークの制限とセキュリティのトレードオフで延々とあちらを立てればこちらが立たず、を脳内でくり返してしまうというか。・・・向いてないのかなぁ。

original url: https://www.glamenv-septzen.net/view/955