Cracked!

恥ずかしい話ではありますが、 shinh.skr.jp のトップページが書き変えられちゃいました。しかしかなり早い速度で、というかタイムスタンプを見るに書き換えの4分後に教えていただけたので、すぐに戻すことができました。ありがとうございました…

会社だったので、とりあえず index.html を戻しておいて、他に増えてるファイルをチェックしました。すると SC2 のリプレイを共有するために適当に放置してあったアップローダ経由だなーというのは割とすぐに見当がついたので、とりあえずそれを止めておきました。

ちなみにこのアップローダっていうやつは、アップローダというよりはバックドアで、 ssh アクセスが無い大学のサーバに手軽にファイルをアップロードするために使われてたものでした。割とどこにでもファイルが置ける上に、 tgz を上げるとそれを散らかすなんてこともあって当時は便利でした。元々は私の友達が書いたコードを私が適当にいじって使っていたものでした。まぁそんなもん Basic 認証すらかかってない場所に転用するな、っていう話ではあります…

以下は家に帰ってからやった作業。

とりあえず PHP を止める。 .htaccessphp の関連付けを切る。 phtml, php4, php5 あたりを試した感じ、たぶんこれだけで十分、かな。

AddHandler default-handler php
AddType text/plain .php

で、まだ動いてた uploader をいじる。認証かかってるとこは index ではじまってるファイルと . ではじまってるファイルと .. が入ってるファイルを落とす。まぁ認証入ってるとこは入られたら他にもマズいんで適当。かかってないとこのは、 SC2Replay で終わってて .. を含んでなくて、かつ basename 取るとかした。ちなみにコレ。暇な人でクラックできたらご一報ください。

http://shinh.org/ggl/

PHP スクリプトを走らされたと見て良いぽいので、 .htpasswd は取られてるだろう、ってことでこのへん変える。前もダイジェスト認証に変えれなかった記憶あるな…と思ったらやはり変えれない。どうも Apache 1.3 なのに AuthDigestFile が文法エラーって言われるあたり、 Digest 認証用の apache モジュール動いてない気がするんですよね…

ついでにサーバのパスワードを変える。

置かれたファイルやアクセスログなど: http://shinh.skr.jp/crack/

メッセージとか見るに、このへんのクラックの模倣なり同じスクリプトが出回ってるなり、なんですかね。いきなり uploader へのアクセスからはじまってるあたり、攻撃候補 input type="file" を探しておいて、攻撃ボタン押したら色々こころみる感じのスクリプトがあるのかなぁと。

http://www.zdnet.com/blog/security/baidu-dns-records-hijacked-by-iranian-cyber-army/5204

中国語のメッセージを翻訳して読むとかはまた今度。明らかに増えてるファイルでタイムスタンプいじられてるファイルは見つからなかったのですが、一応ファイルの一覧とか精査しないとですね…あと SC2 用のアップローダもどう考えても書き直しておくべき。

なにかあれば下記メールアドレスへ。
shinichiro.hamaji _at_ gmail.com
shinichiro.h