ホーム > アーカイブ > 2010年4月のアーカイブ

2010年4月のアーカイブ

攻撃的(?)なリクエストのサンプル

[`evernote` not found]
[`grow` not found]
[`livedoor` not found]
[`yahoo` not found]
Delicious にシェア
このエントリーをはてなブックマークに追加

いつもと毛色の違う攻撃的(?)なリクエストが・・・。
これだけでたいした悪さの出来るものではないところがいつもと違います。

脆弱性をテストするサンプルか!

スーパーグローバル変数 $_GET$_POST$_COOKIE$_SERVER['HTTP_*']
$_SERVER['REQUEST_URI'] あたりで得られる値をそのまま使ってると
なにか動作するものと推測出来ます。
クライアントから来る値を信用してはいけない。っていうわかりやすい見本です。
こういうのがあるので以下の2点は必ずやりましょう。

1.プログラムで使用する前に、想定内の値かどうか確認する。(バリデーション)
2.HTMLとして整形時に無効化する。(サニタイジング)

ちなみにこのリクエストは、
アプリケーションのバリデーションに引っかかったのではなく
こちらのフィルタにかかって、即ハネられたものです。
攻撃的?なリクエストをフィルタリングしてみる

設計段階でクライアントから受け取る値(文字)に制限を設けておけば
未知の攻撃に対してもこうした予防措置をとることが出来ます。

それにしても http://www.puritysearch.net/ は
うちのサイトの脆弱性テストでもしてるのでしょうか。
レポート(Japanese only)、気長にお待ちしてます。

spamp:掲示板スパムバリデータ出来ました

[`evernote` not found]
[`grow` not found]
[`livedoor` not found]
[`yahoo` not found]
Delicious にシェア
このエントリーをはてなブックマークに追加

掲示板スパム対策の取り組みもこれでひと区切りとしたいと思います。
PHPスクリプトのダウンロードとドキュメントはこちらです。
spamp : 掲示板スパムバリデータ

spampは、マルチバイトを含まない投稿をはじく、
投稿出来るURL数を限定する、
プロキシっぽいクライアントを拒否する、
といったフィルタはまったく使っていません。
CAPTCHA(画像認証)やパスワードによる認証でもありません。

掲示板スパムボットのプロファイリングから生まれた
ロジックで判定をおこなっています。

人がやれば簡単に突破できる
極めて単純な仕組みですが自動投稿ロボットにはこれが難しいのです。
いつか新手のロボットが現れるまでの繋ぎとはわかってますが
その時はまたプロファイリングしてロジックを組み直したいと思います。
ロボットを手先に、楽して一発儲けようとしてる
スパム業者なんぞには負けません。

それにしてもここ1ヶ月くらいで
コメントスパムのリクエスト数が激減。多い日でも3件程度に減りました。
このフィルタリングの影響・・・とは考え難いので
他にそれっぽい記事を見ないので
Waledacボットネットの件が影響してたのかな・・・。

さて最後に、WordPressのコメント投稿に
組み込んだ方法を紹介しておきます。
続きを読む

攻撃的?なリクエストをフィルタリングしてみる

[`evernote` not found]
[`grow` not found]
[`livedoor` not found]
[`yahoo` not found]
Delicious にシェア
このエントリーをはてなブックマークに追加

PHPプログラミングを扱ってるからでしょうが
毎日なにかしらの攻撃的なリクエストがあります。

特定のURLに誘導するものとか、サーバーのコマンドを実行するものとか
SQLインジェクションとか、アプリケーションの脆弱性をつくものとか・・・
まあ、アクセスログにはいろいろと記録されてます。

4/2はこんな感じでした。
脆弱性をつく攻撃的なリクエストの図

攻撃者が、任意のコードやコマンドをうちのサーバーで
なんとか実行させようと試みてるのがみてとれます。

うちのサイトでこのようなリクエストは全部 Error404 ってことになり、
レスポンスにボディーは無し、コマンドも実行されることもありません。
今日は攻撃的なリクエストのフィルタリングについて書いてみます。
続きを読む

ホーム > アーカイブ > 2010年4月のアーカイブ

Ad
Apache
MySQL
PHP
お気に入り
ん。。。。。。広告
アーカイブ
Ad

ページの上部に戻る