サーバーからのラブレター@人騒がせ
サーバーからは1日1回ラブレターが送られてきます♪
って、ログがメールで来るだけなんですけど。w
ラブレターによると・・・
rootkit検知ツールが改ざんを検知したと騒いでます。
実際にはcron.dialyで毎日決まった時間に自動実行させますが、
手動でやる場合は以下のコマンドです。
# chkrootkit
何もなければ【not infected】や【not found】という結果が出力されます
Checking `du’… not infected
・
・
省略
・
・
Searching for Adore Worm… nothing found
・
・
・
以下省略
ところが以下のように
Checking `du’… INFECTED
rootkitが問題を検知すると、大文字で【INFECTED】と出力されます。
そこで通常は
# chkrootkit | grep INFECTED
のごとく多項目にわたる結果から【INFECTED】とされた項目のみ抜き出して
出力されるようにします。
つまり、何事もなければ何も表示されません。
ラブレター(しつこいって?)によると
for Suckit rootkit… Warning: /sbin/init INFECTED
ギョギョ!/sbin/initがSuckitにより改ざんされた!?
早速事実かどうか該当するパッケージとデータベースに
格納されているパッケージ情報と比較してみます。
# rpm -V `rpm -qf /sbin/init`
実際に改ざんされていれば、なにがしかのメッセージが
表示されますが、何も表示されませんので、検知ツールの
誤検知ということになります。
なぜ誤検知されるかをググってみると、詳細は省きますが
upstartパッケージの更新でinit が置き換わることにより
リブートするまでは誤検知するのだとか。
誤検知をさせないために
/usr/lib64/chkrootkit-0.49/chkrootkit
の中に
rpm -V `rpm -qf /sbin/init`
を実行してなにも出力されなければ未検出という条件を
加える方法も見つけましたので、修正しておきました。
人騒がせなやつめ!
ところでシステム全体の整合性チェック・ツールとしては
tripwireがありますが、この1台が未導入でしたので
インストールしておきます。
パッケージはサードパーティのEPELに置いてありますが、
先日のrpmforgeとの絡みで、enabled=0にしてましたので
# yum –enablerepo=epel install tripwire
ポリシーファイル最適化などは後ほどゆっくり・・・
ちなみにenablerepo=epelの前は【-】が2個連続なのですが、
wordpressの標準エディタの仕様なのか、うまく表示されません。。。
Evernoteでも半角のマイナスを2個並べたとき、前後がスペースや
半角文字だと、勝手に全角マイナス1個に変換されてしまいます。
横線引きたいときには便利なのでしょうけどね。