- SQLインジェクション - シングルコーテーションを置換、PreparedStatementを使用
- OSコマンドインジェクション - system関数などを使ってOSコマンドを発行しない
- 公開領域へのファイルの配置 - 公開領域に不要ファイルを置かない
- ディレクトリトラバーサル - ファイルのパスをユーザに指定させない
- パラメータ推測 - パラメータを限定する
- クロスサイトスクリプティング(XSS) - POSTされたデータやクエリストリング、Cookieなどの情報をページにリダイレクトする際に、そこにコードを混ぜ込むことで任意のスクリプトを実行させる攻撃。
- クロスサイトリクエストフォージェリ(CSRF) - スクリプトや画像タグ、iFrameなどを利用して、罠ページを開くだけでユーザが自覚症状のないうちに攻撃が実行する
- エラーの詳細が表示されるエラー画面 - カスタムエラー画面を用意
- デバッグ文 - デバッグ文は確実に消す
- Cookieの改ざん - Cookieの値のチェック
- ヌルバイト文字列 - POSTする場合は0x00を、GETの場合はパラメータに%00などを埋め込むと、文字列の終端を勘違いして予想外の挙動
- HTTPレスポンススプリッティング - HTTPのヘッダ情報をユーザ入力を元に操作する場合に発生
- UTF-8エンコーディング - 途中で文字コードの変換が発生する場合は、変換をしてから入力チェックをする必要がある
- DNSキャッシュポイズニング - DNSサーバの脆弱性を突いた攻撃で、リクエストしたURLが飛ぶべき本来のIPとは別のIPに飛ばされる。
- メールフォームのスパム化 - 制限する