2005/11/21(月)
先週、2日ほど立続けに掲示板に奇妙な書込みがあった。某ちびっこモデルのママからの通報ですぐに削除した。ちなみに、ちびっこのモデルをやっているママではなくてちびっこモデル業をしているお子様の母上である。削除はしたけど特に対策を取らずにいたら、翌日また同じような書込みがあった。
時間は日本時間の早朝、共にタイトルは”nice website”で、欧米系っぽい名前が実在しそうにないメールアドレスと一緒に記されていた。本文にはいくつかURLが記されているのみである。この状況から、直ちにこれが悪意の書込みであると判断するのは早計であろう。もしかしたら、どこかのナイスガイが「ヘイ、このサイトcoolだね。気に入ったぜ。俺っちの仲間がやってるサイトにも遊びに来てくれよ」ということで書き込んだのかも知れない。試しにURLを辿ってみたが(良い子は真似しないように)、ウチの環境では何も起こらなかった。インターネットに繋がっているマシンではヤバいスクリプトなんかは一切許可していないので、もしかするとInternet Explorerとかだったら変なものが勝手にインストールされたりするのかも知れない。実行しないまでもスクリプトを見せて欲しかったのだが、「ちゃんと実行してくれる環境でなきゃファイル送ってあげないよん」というポリシーなのか単に何も用意できていないのか、空ファイルしかくれなかった。ケチ。
ま、この時点で程度はともかく悪意の(少なくともサイトの趣旨には沿っていない)書込みと判断してよかろう。何より、書き込んでいる時の接続元IPアドレスがDNSで引いて来れないのが怪しい。とりあえず、管理者判断で削除決定。
サイトを開設して以来4年以上になるが、目に見える「攻撃」というのは初めてだ。実を言うと、Webサーバーのセキュリティホールを突くタイプの攻撃はコンスタントにあるのだが、これはホスティング先の会社が責任を持って対応してくれている。大抵はWindowsで動くIISというサーバーを狙ったもので、ウチはIISでもWindowsでもないから関係ない。それでも一応管理者として気が向けばアクセスログをチェックして、最近の攻撃パターンのトレンドを眺めたりもしている。これらはサーバーを設置しているホスティング会社の責任範囲であり、管理者とは言え私が何かすることもなければ、ログを見ない限り気付くことすらない。ところが、今回のはこちらで設置したCGIプログラムに対する攻撃であり、管理者である私が対処しなければならないのだ。なんか、ワクワクするじゃないか。
学生時代、配属されて間もない研究室で不正アクセス騒ぎがあり、学内ネットワークから遮断された事がある。研究室の管理者はWindowsNTをこよなく愛する助手の先生であったが、研究室内には卒業生が管理していたLinuxサーバーも稼働していた。当時研究室にLinuxの分かる人はおらず、新顔でありながら既にLinuxヲタクと認知されていた私がそのサーバーのログ解析並びに不正アクセスの顛末に関するレポート作成を仰せつかったのだ。その縁でその後研究室内のネットワーク管理及びセキュリティ管理を一部担当することになり、全く予想していなかったのだが卒業した時にはかなりの額をバイト代として頂いたりもした。ちなみに、詳細はアレなので伏せるが領収書不要のニコニコ現金払いである。ビバ、産学連携。そのお金がなかったら結婚指輪が買えなかったというのは秘密だ。
太郎を寝かせた後、解析開始。書込み時の接続元IPアドレスに対しもう一度IPlookupを試すがやはりDNSの登録なし。pingを打ってみたが届かず。まあそうだろう。tracerouteを試してみた。当然最後までは行かないのだが、最後の方の数ホップで興味深いところを通っている。ドメイン名の最後が.ro、ルーマニアのドメインだ。IPアドレスの先頭バイトが一致していないので我がターゲットがそのドメインである確証はない(というか、多分違う)が、ネットワーク的に近いところにいるのは間違いない。そこで、そのドメイン名をgoogleで検索してみた。結構たくさんヒットする。どうも、何たらいうワーム(名前忘れた)が使っているMXレコードにそのドメイン名があるらしい。直接の関係は分からないが、あまり素性のよろしくないIPであることはほぼ疑いない。掲示板を訪れて下さる方に迷惑がかかってもいけないので、当該IPアドレスからは書き込めないようにする。登録ドメインのアドレス範囲が分からないので、様子を見ながら徐々に禁止アドレス範囲を広げていくことにする。
ここまでしたところで、眠くなったのでひとまず対策終了。新たな攻撃があればまたもうちょっと頑張ってみよう。
2005/11/30(水)
以降10日間、件の書込みは一度もない。サーバー自体のアクセスログはチェックしてないので、CGIの方で拒否したのか、あの日以来アクセスして来ていないのかは分からないけど、とにかく問題は解決した。もうちょっとしつこくやってくれたら面白かったのに。ま、そこまで手を掛ける価値もないんだろうけど。
2005/12/8(木)
サーバーのログをチェックしてみた。しっかり来てるじゃん。GETメソッドは禁止していないので、2~3日置きに来ては掲示板のCGIファイルにアクセスしている。サーバーがコード200(OK)でページを返すと、直後にPOSTメソッドで書き込もうとして跳ねられている。GETとPOSTで言ってくるUser-Agentが違うのは何故でだろう。どっちも嘘っぽいけど。実害は何もないが、何かイヤなので該当IPアドレスからのアクセスは.htaccessファイルで完全に排除することにした。ちなみに、IPアドレスは少なくとも今のところ1つだけっぽい。
2005/12/10(土)
そう言っていたら別のIPアドレスから書込みがあった。同じ挙動、同じような内容(URL列挙)、同じUser-Agentだ。今度のIPはDNSで引いて来れた。やはりトップレベルは.ro、ルーマニアである。書き込んでいるURLも.roドメインだ。試しにアクセスしてみると、薬(合法)のオンラインショップにジャンプする。アファリエイトとかかも知れない。何れにせよ、歓迎できるものではないのでお引取り願う。.htaccessファイルの拒否アドレスを、今までの32ビット指定から上位16ビット指定に変更。エラーログをしばらく観察することにしよう。
何だかんだ言って結構楽しんでいる。実害もないし、ちょっと感謝。