連載
なぜPHPアプリにセキュリティホールが多いのか?
「PHPのセキュリティは最悪だ」とよく聞きませんか?
本連載では,そのあたりの本当のところを探りながら,Webアプリケーションのセキュリティ対策について考えます。
- 【スクリプトインジェクション対策04】不正なセッションIDの利用がないか記録する
2008年4月8日
- 【スクリプトインジェクション対策03】セッションIDが利用できる範囲を制限する
2008年4月7日
- 【スクリプトインジェクション対策02】セッションIDを頻繁に変更する
2008年4月4日
- 【スクリプトインジェクション対策01】セッションクッキーを利用する
2008年4月3日
- 第12回 フェイルセーフ ── 万が一に備える
- なぜフェイルセーフ機能が必要なのか?
- スクリプトインジェクション/セッションハイジャックに備える
2008年4月2日
- 第11回 スクリプトインジェクションを防ぐ10のTips
- デフォルト文字エンコーディングを指定
- 文字エンコーディングを入力時にチェック
- 入力文字列は厳格にバリデーション
- 出力する場合はエスケープした出力をデフォルトに設定
- エスケープせずに出力する場合,確実に安全であることを確認
- strip_tags関数では許可タグを設定しない
- HTMLのパースに正規表現は利用しない
- タグや属性を出力する場合は厳格なホワイトリストで確認
- CSSファイル生成に注意を払う
- JavaScript生成に注意を払う
2007年12月17日
- 第10回 スクリプトインジェクションが無くならない10の理由
- 複雑な攻撃経路と対策
- 新しい技術やブラウザの導入
- 知識不足
- コードの独り歩き
- リソース不足
- 不適切な対策
- コードレビューの不在
- 国際化の壁
- フレームワークの不在
- 不適切な設定
2007年11月12日
- 第9回 クロスサイトスクリプティングの名称と種類
- クロスサイトスクリプティングの名称
- スクリプトインジェクションの原因・対策
- ブラウザに対するスクリプトインジェクションの種類
- Type0のスクリプトインジェクション
- Type1のスクリプトインジェクション
- Type2のスクリプトインジェクション
- プラグインを必要とするファイルのサポート
- まとめ
2007年9月27日
- 第8回 クロスサイトスクリプティング対策の落とし穴
- JavaScriptを排除しているつもりで排除に失敗?!
- サニタイズ処理の問題
- バリデーション処理をしよう
- Webアプリケーション開発フレームワークを使っているから安全!?
- まとめ
2007年8月10日
- 第7回 いまさらながらクロスサイトスクリプティングの基礎の基礎
- クロスサイトスクリプティングとは?
- なぜクロスサイトスクリプティングは危険な脆弱性なのか?
- なぜクロスサイトスクリプティングは無くならないのか?
2007年7月23日
- 第6回 意外に知られていないブラインドSQLインジェクション
- SQLインジェクションの常識
- ブラインドSQLインジェクション
- SQLインジェクション脆弱性は非常に危険
2007年6月11日
- 第5回 まだまだ残っているSQLインジェクション
- SQLインジェクションの動作原理
- 間違ったSQLインジェクション対策
- 正しいSQLインジェクション対策
- まとめ
2007年4月19日
- 第4回 なぜPHP本体にバグが多いのか?
- PHP本体のセキュリティ関連バグは多い?
- PHPは使いづらい!?
2007年3月22日
- 第3回 Webアプリは気楽なアプリ?!
- 利用者と開発者の認識
- Webアプリは気楽なアプリ?!
- セキュリティは専門知識?!
2007年2月28日
- 第2回 CVEでみるPHPアプリケーションセキュリティ(その2)
- PHPアプリケーションの脆弱性は本当に多いのか?
- 同じアプリに含まれる複数の脆弱性
- セキュリティを確保しづらいアプリケーションが多い
- PHPで書かれたOSSのWebアプリが多い
- 被害を避けるには?
2007年2月1日
- 第1回 CVEでみるPHPアプリケーションセキュリティ
- PHPアプリケーションの脆弱性は本当に多いのか?
- PHPアプリケーションでの特徴的な脆弱性
- register_globalsの罠
- 対策
2007年1月15日


