いきなりの結論
今回の教訓
何か書き込んだらバックアップ
これに尽きる。さくらインターネットさんもバックアップツールがあるのに上手く使えてなかった。
他のユーザーに書き込ませない
レンタルサーバーの他のユーザーからもアクセスできるらしい。実際にchmod 700 でも動作している。
cgi-bin 内だけで実行させることも考える
万一クラックされても書き込める範囲が狭かったり自由なエリアを狭めることで、影響は最小に抑えられる。
.htaccess で厳格に制限
フォルダ毎に実行権限を徹底的に奪っておくと安全。
wordpress等有名どころのデフォルト設定がターゲットにされている
インストールするときは個性を足して、一段深いディレクトリとデータベース名
にすることだな。
気付いたのは過負荷のお知らせメール
サーバーを乗っ取られメールサーバー化された。気が付いたのはさくらインターネットによるお知らせメール
弊社ではサーバの稼働状況について24時間体制で監視を行っておりますが、 この度、お客様にご利用いただいております「さくらのレンタルサーバ スタンダード」 にて負荷が著しい状況にあり、調査の結果、下記のパスに設置されている ファイルが原因であると思わしきことを確認しましたため、ご連絡差し上げ ました。 /home/xx1x/www/xxx1xx.xxx/lib/include/config.inc.php /home/xx1x/www/xxx1xx.xxx/lib/plugins/jupload/include/j_catmgr.inc.php /home/xx1x/www/xxx1xx.xxx/lib/plugins/jupload/include/config.inc.php /home/xx1x/www/xxx1xx.xxx/lib/plugins/jupload/include/global.inc.php /home/xx1x/www/xxx1xx.xxx/lib/plugins/jupload/include/gui.inc.php /home/xx1x/www/xxx1xx.xxx/lib/plugins/jupload/include/j_picmgmt.inc.php /home/xx1x/www/xxx1xx.xxx/lib/plugins/jupload/include/jupload.inc.php /home/xx1x/www/xxx1xx.xxx/lib/plugins/jupload/include/session.inc.php /home/xx1x/www/xxx1xx.xxx/lib/plugins/jupload/lang/chinese_big5.php /home/xx1x/www/xxx1xx.xxx/lib/plugins/jupload/lang/arabic.php /home/xx1x/www/xxx1xx.xxx/lib/plugins/jupload/lang/brazilian_portuguese.php /home/xx1x/www/xxx1xx.xxx/lib/plugins/jupload/lang/chinese_gb.php /home/xx1x/www/xxx1xx.xxx/lib/plugins/jupload/lang/croatian.php /home/xx1x/www/xxx1xx.xxx/lib/plugins/jupload/lang/czech.php /home/xx1x/www/xxx1xx.xxx/lib/plugins/jupload/lang/danish.php
何だこの見たことないファイルたちは。
さくらインターネットによって公開ディレクトリは chmod 000 。つまりcd も出来ない状態に変更された。のはありがたかったが、ホームページ内容全部消えたかと思った。
さくらインターネットによるバックアップの周期の直前だったことから、何とか復元できないかと、ネットを漁ると、ファイル変更の日付が新しいものがハックされたファイルとの事。
なるほど ls-R を csv で吐かせて 800k行のファイルを見ていくと、怪しいディレクトリ3つとルートに明らかに変なphp ファイルを発見。
ありがたいことに、wordpress とかを上書きされたわけではないようだ。
ざっと調べるとメール送信のための踏み台にされていた。