- 2010-04-21 水 01:26:45
- 今日の基礎体力
いつもと毛色の違う攻撃的(?)なリクエストが・・・。
これだけでたいした悪さの出来るものではないところがいつもと違います。
スーパーグローバル変数 $_GET
、$_POST
、$_COOKIE
、$_SERVER['HTTP_*']
$_SERVER['REQUEST_URI']
あたりで得られる値をそのまま使ってると
なにか動作するものと推測出来ます。
クライアントから来る値を信用してはいけない。っていうわかりやすい見本です。
こういうのがあるので以下の2点は必ずやりましょう。
1.プログラムで使用する前に、想定内の値かどうか確認する。(バリデーション)
2.HTMLとして整形時に無効化する。(サニタイジング)
ちなみにこのリクエストは、
アプリケーションのバリデーションに引っかかったのではなく
こちらのフィルタにかかって、即ハネられたものです。
攻撃的?なリクエストをフィルタリングしてみる
設計段階でクライアントから受け取る値(文字)に制限を設けておけば
未知の攻撃に対してもこうした予防措置をとることが出来ます。
それにしても http://www.puritysearch.net/ は
うちのサイトの脆弱性テストでもしてるのでしょうか。
レポート(Japanese only)、気長にお待ちしてます。
コメント:0
トラックバック:0
- この記事のトラックバック URL
- http://beatnik.jp/blog/archives/435/trackback
- トラックバックの送信元リスト
- 攻撃的(?)なリクエストのサンプル - PHPで翻訳三昧 より