![]() |
| Home | Diary | Desktop | Link | Update History |
セキュリティには絶対と言う事はないため、自分のマシンが不正侵入されるケースも想定する必要があります。
クラッカーはマシンをクラックした後にrootkitと呼ばれるものを仕掛け、そのマシンへの
進入の痕跡を消したり、バックドアと呼ばれる裏口を確保します。
このrootkitと呼ばれるソフトを検知するツールとしてchkrootkitがあります。
chkrootkitはクラッカーが仕掛けたrootkitを検出するツールです。
$ emerge chkrootkitインストールされたchkrootkitのバージョンは0.44でした。
$ chkrootkit ROOTDIR is `/' Checking `amd'... not found Checking `basename'... not infected Checking `biff'... not found Checking `chfn'... not infected Checking `chsh'... not infected Checking `cron'... not infected Checking `date'... not infected Checking `du'... not infected Checking `dirname'... not infected Checking `echo'... not infected Checking `egrep'... not infected Checking `env'... not infected (以下略)上記は改ざんがされていない場合の結果の一部ですが、改ざんされている場合は大文字で 'INFECTED' と表示されます。
$ chkrootkit -q
awk cut echo egrep find head id ls netstat ps strings sed uname
これらのコマンドが改ざんされている場合は、rootkitの検出が正しく行われない可能性
があります。
chkrootkit では p オプションの後に上記コマンド群を格納したディレクトリを指定する事
で、使用するコマンド群を制御する事ができます。
書き込み不可にしたフロッピーディスクやCDROMに安全なコマンド群を保存し、chkrootkit実行時
にはそれらを使用するようにする事ができます。
私はKNOPPIXから上記コマンド群を得ました。KNOPPIXならコマンドが改ざんされている
心配も少ないと思います。
フロッピーディスクにコマンド群をコピーする時には以下のコマンドで取得しました。
例ではフロッピーディスクが/mng/floppyにマウントされているものとしています。
$ cp `which --skip-alias awk cut echo egrep find head id ls netstat ps strings sed uname` /mnt/floppy/
フロッピーディスクに保存した安全なコマンド群を使用してchkrootkitを実行した例です。
フロッピーディスクは/mnt/floppyにマウントされているものとしています。
$ chkrootkit -p /mnt/floppy ROOTDIR is `/' Checking `amd'... not found Checking `basename'... not infected Checking `biff'... not found Checking `chfn'... not infected Checking `chsh'... not infected Checking `cron'... not infected Checking `date'... not infected Checking `du'... not infected Checking `dirname'... not infected Checking `echo'... not infected Checking `egrep'... not infected Checking `env'... not infected (以下略)
#! /bin/sh /usr/sbin/chkrootkit -q -p /mnt/floppy | grep INFECTED
上記例では /mnt/floppy にあるコマンド群を用いて、chkrootkitを実行し、結果に "INFECTED" が含まれる場合は root宛てにメールが送信されます。
chkrootkit.cronに実行権限を与えます。$ chmod 700 /etc/cron.daily/chkerootkit.cron