連載
なぜPHPアプリにセキュリティホールが多いのか?
「PHPのセキュリティは最悪だ」とよく聞きませんか?
本連載では,そのあたりの本当のところを探りながら,Webアプリケーションのセキュリティ対策について考えます。
- 第46回 セキュリティ対策を考える上で欠かせないコンテクスト
- セキュリティ対策とは?
- セキュリティ対策とコンテクスト
- まとめ
2012年1月27日
- 第45回 入力バリデーションはセキュリティ対策
- “バグ”と“脆弱性”と“セキュリティホール”
- PCI DSS(OWASP/SANS)
- ISO27000 (ISO27002/ISO17799)
- セキュリティ対策とは何か?
- 役立たないセキュリティ対策はない
- セキュリティ対策とバグ対策を区別する理由
- 「優れたセキュリティ対策」ではなく,「必要なセキュリティ対策」を採用する
- まとめ
2011年12月19日
- 第44回 セキュリティ対策が確実に実施されない2つの理由
- セキュリティ対策とコーディングのベストプラクティスは相反する
- セキュリティ対策の基本中の基本
- まとめ
2011年11月29日
- 第43回 PHP 5.3のcrypt関数の問題
- crypt関数のバグ
- PHP 5.3.7で修正されたcrypt_blowfishの脆弱性
- Crypt BlowfishやMD5 Cryptのバグは攻撃できるのか?
- なぜMD5 Cryptのバグが混入したか?
- まとめ
2011年9月5日
- 第42回 PostgreSQL 9.0に見るSQLインジェクション対策
- SQLインジェクション対策の4原則
- パラメータとして処理できない文字列
- プリペアードクエリの功罪
- PostgreSQL 9.0 libpqの新機能
- まとめ
2011年5月19日
- 第41回 PHP 5.3.4におけるセキュリティ上重要な仕様変更
- 仕様変更の必要性
- 今までのPHPの防御
- NULL文字無効化
- ローカルスクリプトインクルード
- 仕様変更の効果
- まとめ
2011年4月20日
- 第40回 MOPS:安全性の高いパスワードハッシュ作成ツール - phpass
- パスワード保存の問題
- phpass ─ パスワードハッシングフレームワーク
- まとめ
2010年11月4日
- 第39回 MOPS:静的PHPソースコード脆弱性スキャナ RIPS
- RIPSの基本設計
- 脆弱性スキャン
- Tokenizer
- Web UI
- 実際のアプリケーションのスキャン
- まとめ
- Dahse氏が参考文献としてあげたURL
2010年10月28日
- 第38回 MOPS:PHPにおけるコード実行(2)
- 動的コード
- {}構文
- コード実行可能だが稀なケース
- その他の手法
- Gerkis氏が参考文献としたURLの一覧
- まとめ
2010年10月21日
- 第37回 MOPS:PHPにおけるコード実行(1)
- なぜPHPコード実行が起きるのか?
- PHPにおけるコード実行
- まとめ
2010年10月14日
- 第36回 MOPS:コンテクストを検出するHTMLエスケープ
- コンテクストを検出するHTMLテンプレートエンジンとは?
- Nette Latteが検出するコンテクスト
- Nette Latteの利用例
- Nette Latteのマクロ
- Nette Latteの試用
- まとめ
2010年10月7日
- 第35回 MOPS:未修正のバグ
- hash_update_file関数の解放済リソースへのアクセス
- この脆弱性の攻撃方法
- ほかの攻撃手法
- まとめ
2010年9月30日
- 第34回 MOPS:コードの品質とソースコード監査の重要性
- MySQL Native Driverとは?
- MOPSで報告されたmysqlndの脆弱性
- オープンソースとセキュリティ
- まとめ
2010年9月22日
- 第33回 MOPS:解放済のリソースへのアクセス
- PHP関数への割り込みによるメモリ情報リーク
- まとめ
2010年9月16日
- 第32回 PHPセキュリティ月間(Month of PHP Sercurity)
- Month of PHP Securityとは
- 公開されたバグ
- 公開された論文
- まとめ
2010年9月9日
- 第31回 番外編:sqlmapの紹介
- sqlmapとは?
- インストール
- sqlmapの使い方
- まとめ
2010年6月28日
- 第29回 SQLインジェクションの復習
- SQLインジェクションとは
- SQLインジェクション対策
- まとめ
2010年5月31日
- 第28回 あまり語られないセキュリティの基本 ── トラストバウンダリ
- あまり語られない核心
- 現実世界でのセキュリティ対策
- トラストバウンダリの管理がセキュリティ対策の基本
- まとめ
2010年5月17日
- 第30回 番外編:簡単なガンブラー対策
- ガンブラーとは?
- ガンブラー対策
- 2つのコンテンツ改ざん
- まとめ
2010年6月14日
- 第27回 見過ごされているWebアプリケーションのバリデーションの欠陥
- 文字エンコーディングバリデーションの必要性
- データベースシステムの場合
- 文字エンコーディングバリデーションの重要性に対する無理解
- 文字エンコーディングを正しく扱わないリスク
- 文字エンコーディングのバリデーション
- オプションモジュールのmbstring
- auto_prepend_fileの利用
- ファイルアップロードと文字エンコーディングの自動変換
- まとめ
2009年6月22日