ホーム > タグ > アクセス解析

アクセス解析

リファラスパムでトラフィック汚し

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

記事を増やす余裕も無くほぼ放置状態のホームページですが
微妙にアクセスが増えてるのに気づきました。
要因を探ってみると新しいリファラが増えてました。

どんな感じでリンクされてんだろうと
リファラを辿ってみるとリンクが無いんだ。

なんだこれ???

で、アクセス元のホストを追跡してみると
異なるリファラを持った同じホストからのアクセスってとこに行き着きました。
これが噂に聞いた『リファラスパム』ってやつですね。

リファラは、URLそのままだったり、ショートURLだったり、
その先は、個人のブログや企業のホームページだったり、
情報商材やアフィリエイトといった類のもの。

アフィリエイト大いに結構だけど
意味のないトラフィックを増やして公共の利益を削って
お金を稼ぐなんざ間違っても仕事とは言わないから。
意味のないトラフィックを増やす意味でトラフィックチェンジも同類。

人に喜んでもらえる仕事をして
お金をもらうほうがやりがいも魅力もあると思うよ。

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

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

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

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

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

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

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

SQLインジェクション発見

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

IPA情報処理推進機構さんで提供されてる
ウェブサイトの脆弱性検出ツール iLogScanner
昨年11月にバージョンアップしてました。
って、気付くの遅いですね。
気にしてたつもりでしたがアナウンスを見逃してたようです。

個人サイトだと、第三者から客観的に
サイト内を見てもらう機会ってそうありませんし
アプリケーションの現状での脆弱性を確かめられるので
まだの方は使ってみてください。

さて、PHPの基礎体力のココ2日分のアクセスログを
チェックしてみたところこの度はじめて検出されました。
SQLインジェクションが 176件、このうち
攻撃が成功した可能性の高い件数は 0件という結果です。

解析結果レポート

攻撃とみなされたアクセスは、こんな感じで解析ログに記録されます。

攻撃が検出されたログ

攻撃部分のコード掲載はやめときますが
すべて副問合せを含んだSQLだったので
うちのサーバではまったく機能しない攻撃でした。

とはいえ、持ちあわせの知識で
考えられる限りのこんな対策を施しています。
続きを読む

$_SERVER[‘HTTP_*’] はクライアントの値

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

スパム投稿の特徴を見つけ出すのに、どんな値を
ログに記録してたらいいのか試行錯誤してたところ、
PHPがあらかじめ用意してくれるスーパーグローバル変数
$_SERVER の中でキーが HTTP_ で始まるものが
クライアントが送信してきた値だとつい最近知りました。

よく Proxy が付加してくる ViaX-Forwarded-For など
全て大文字で、- (ハイフン)は _ (アンダーバー) に変換され
こんなキーで得られます。

$_SERVER[‘HTTP_VIA’]
$_SERVER[‘HTTP_X_FORWARDED_FOR ‘]
続きを読む

アクセスログの(null) を含むリクエスト

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

Apacheのアクセスログを見てると、リクエストに
(null) が付いたアクセスが1日10件程あるのに気づきました。

例)
"GET /php/(null) HTTP/1.1"

特定のホストからというわけでもなく
日本の一般的なプロバイダさんからのアクセスです。
リクエストされてるページもバラバラです。

共通してるのは UAER_AGENTMSIE 8.0 なことと
単発のリクエストであることの2点です。

1. ヌルバイトアタック?
2. ワームによる攻撃?
3. MSIE 8.0 のバグ?
4. 単に (null) って文字を付けて遊んでるだけ?

Apacheがヌルバイトを(null)に変えて
ログに保存してるのかもしれないけど、これはなんでしょね?
正規版が公開されたばかりの MSIE 8.0 をインストールして試しましたが
(null) は付いてこなかったのでバグではなさそうです。

「2. ワームによる攻撃」の可能性が高い気がしてますが
ひとまずヌルバイトと(null)って文字の入ったリクエストを
別ログにとって様子をみたいと思います。

PHPの基礎体力をPHP化

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

「PHPのコンテンツなのにサイトはHTMLじゃん」と言う
もう一人の自分と葛藤を続けること5年、
この13日にPHPベースのサイトに移行しました。

PHPの基礎体力

PHP化にあたって考えたことやプログラミング手法など
記事にできそうなことは沢山ありますがこのネタは別の機会に。

いまやってるのは
古いURLへのリクエストを新しいURLにうまくリダイレクトすること。
続きを読む

1 2

ホーム > タグ > アクセス解析

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

ページの上部に戻る