プログラミングの基礎体力強化に - PHPサイバーテロの技法 攻撃と防御の実際
XOOPSプロジェクトに参加しているという、GIJOE氏の著書です。
最近なかなか本が手に付かず、ゴールデンウィーク中にやっと読み終えました(苦笑)
- 作者: GIJOE
- 出版社/メーカー: ソシム
- 発売日: 2005/11/01
- メディア: 単行本
- 購入: 32人 クリック: 340回
- この商品を含むブログ (82件) を見る
■目次 1 Webアプリケーションのセキュリティとは 2 Webアプリケーションを実際に攻撃してみよう 3 攻撃方法14種類総ざらえ 4 Webアプリケーションセキュリティの理論 5 HTTPセッションから攻撃の本質を知る 6 脆弱性スキャナーを利用する 7 チャート式:脆弱性の見つけ方
『アプリケーションの基礎体力』ともいうべきアプリケーションセキュリティについて、ここまで噛み砕いた説明を見たのは初めてで、とてもタメになりました。
PHPのコード、特にセッション変数やサーバ変数のことを理解しておいた方がいいと思いますが、個人的にはPHPの経験が無くてもOKだと思います。
自分の使っている言語やフレームワークでは大丈夫なのか?という観点で読んで、アウトプットに反映することができればベストです。
重要だなと思ったのは、変数が何のために利用されるのかをキチンと意識すること。
「用途」というステータスを明文化し、使い分けについて厳密なルールを適用することで、SQL用サニタイズや表示用サイニタズを忘れた、もしくはその逆に、SQL用サニタイズや表示用サイニタズが二重にかかってしまった、という人為的なミスを防ぐことができるのです。
4-3-2 「用途」というステータス
本書では、用途に合わせて明示的に変換し、命名規則で区別する方法が紹介されています。
紹介されている攻撃方法は以下の通り。やっぱり知らないのもありました...(汗
- Script Insertion
- XLL
- SQL Injection
- CSRF
- ヌルバイト攻撃
- Directory Traversal
- 変数汚染攻撃
- HTTPレスポンス分割攻撃
- インクルード攻撃
- eval利用攻撃
- 外部コマンド実行攻撃
- ファイルアップロード攻撃
- セッションハイジャック
- スパムメール踏み台攻撃
脆弱性スキャナーを利用して検査しておくことも紹介されています。
知らないツールばかりで、いい情報が得られました。
- Max Patrol(http://www.maxpatrol.com/)
- Nessus(http://www.nessus.org/)
- InternetScanner(http://www.iss.net/)
- Paros(http://www.parosproxy.org/index.shtml)
これ以外に知っているのは、iLogScanner(http://www.ipa.go.jp/security/vuln/iLogScanner/index.html)ですか。
関連のブログも併せて読んでおくべきでしょう。