rkhunterでrootkitを検知しよう!
rootkitが仕込まれていないかをチェックするツールにrkhunterがあります。
ここでは、rkhunterの導入手順を掲載しています。
rkhunterとは…
不正アクセスに使われるコマンドやツールをセットにしたものです。rootkitは不正アクセスに必要なコマンド、ソフト、プロセスを隠蔽する働きを持ち、システムや管理者から見えない状態になるため、検出するのは非常に困難です。
rkhunterはrootkitの仕込まれた疑いのあるコマンドをサーバ内から探しだし、通知をする機能を持っています。
ただし、このrkhunterでは検出しか出来ません。仮にrootkitが検知された場合、修復などは自分で行う必要があります。また、誤検出もあったりするので、過信せず、目安程度に留めておくのが良さそうです。
[root@co ~]# yum --enablerepo=epel -y install rkhunter
読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
* base: ftp-srv2.kddilabs.jp
* epel: fedora.cs.nctu.edu.tw
* extras: ftp-srv2.kddilabs.jp
* updates: ftp-srv2.kddilabs.jp
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ rkhunter.noarch 0:1.4.6-1.el7 を インストール
--> 依存性の処理をしています: lsof のパッケージ: rkhunter-1.4.6-1.el7.noarch
--> トランザクションの確認を実行しています。
---> パッケージ lsof.x86_64 0:4.87-6.el7 を インストール
--> 依存性解決を終了しました。
依存性を解決しました
================================================================================
Package アーキテクチャー バージョン リポジトリー 容量
================================================================================
インストール中:
rkhunter noarch 1.4.6-1.el7 epel 207 k
依存性関連でのインストールをします:
lsof x86_64 4.87-6.el7 base 331 k
トランザクションの要約
================================================================================
インストール 1 パッケージ (+1 個の依存関係のパッケージ)
総ダウンロード容量: 538 k
インストール容量: 1.7 M
Downloading packages:
(1/2): lsof-4.87-6.el7.x86_64.rpm | 331 kB 00:00
(2/2): rkhunter-1.4.6-1.el7.noarch.rpm | 207 kB 00:00
--------------------------------------------------------------------------------
合計 639 kB/s | 538 kB 00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
インストール中 : lsof-4.87-6.el7.x86_64 1/2
インストール中 : rkhunter-1.4.6-1.el7.noarch 2/2
検証中 : rkhunter-1.4.6-1.el7.noarch 1/2
検証中 : lsof-4.87-6.el7.x86_64 2/2
インストール:
rkhunter.noarch 0:1.4.6-1.el7
依存性関連をインストールしました:
lsof.x86_64 0:4.87-6.el7
完了しました!
データベースの実行
データベースを更新します
[root@co ~]# rkhunter --update
[ Rootkit Hunter version 1.4.6 ] Checking rkhunter data files... Checking file mirrors.dat [ Updated ] Checking file programs_bad.dat [ Updated ] Checking file backdoorports.dat [ No update ] Checking file suspscan.dat [ Updated ] Checking file i18n/cn [ No update ] Checking file i18n/de [ Updated ] Checking file i18n/en [ No update ] Checking file i18n/tr [ Updated ] Checking file i18n/tr.utf8 [ Updated ] Checking file i18n/zh [ Updated ] Checking file i18n/zh.utf8 [ Updated ] Checking file i18n/ja [ Updated ]
システムデータを更新します
[root@co ~]# rkhunter --propupd
[ Rootkit Hunter version 1.4.6 ] File created: searched for 175 files, found 126
rkhunterの実行
実際に動かしてみたいと思います。
[root@co ~]# rkhunter --check --skip-keypress --report-warnings-only
しばらく待って何も表示されなければ、検出されなかったということです。
私の場合、passwdとgroupにWarningが出ました。問題ないと判断した場合は、もう一度データベースの更新とシステムデータの更新を行ってください。
[root@co ~]# vi /etc/cron.daily/rkhunter
#!/bin/bash MAIL_TO=root MAIL_SUBJECT="`hostname -s` `date +%Y%m%d_%H-%M-%S` Rootkit Hunter" LOG_FILE=`mktemp /tmp/rkhunter.temp.XXXXXX` /bin/rkhunter --update > /dev/null 2>&1 /bin/rkhunter --check --skip-keypress --cronjob --report-warnings-only 2>&1 > ${LOG_FILE} if [ -s ${LOG_FILE} ]; then grep Warning ${LOG_FILE} | mail -s "$MAIL_SUBJECT NG" $MAIL_TO else echo "$MAIL_SUBJECT OK" | mail -s "$MAIL_SUBJECT OK" $MAIL_TO fi rm -f ${LOG_FILE}
[root@co ~]# chmod +x /etc/cron.daily/rkhunter
コマンド群のバックアップ
rootkitで使われるコマンドをあらかじめバックアップしておき、仮に検出された際に修復できるようにしておきます。
[root@co ~]# mkdir rkhuntercmd
[root@co ~]# cp `which --skip-alias awk cut echo egrep find head id ls netstat ps strings sed uname` rkhuntercmd/
[root@co ~]# zip -r rkhuntercmd.zip rkhuntercmd/
adding: rkhuntercmd/ (stored 0%) adding: rkhuntercmd/uname (deflated 54%) adding: rkhuntercmd/cut (deflated 51%) adding: rkhuntercmd/sed (deflated 54%) adding: rkhuntercmd/head (deflated 52%) adding: rkhuntercmd/ps (deflated 59%) adding: rkhuntercmd/echo (deflated 54%) adding: rkhuntercmd/ls (deflated 55%) adding: rkhuntercmd/egrep (deflated 49%) adding: rkhuntercmd/strings (deflated 57%) adding: rkhuntercmd/id (deflated 54%) adding: rkhuntercmd/awk (deflated 51%) adding: rkhuntercmd/find (deflated 52%) adding: rkhuntercmd/netstat (deflated 57%)
[root@co ~]# rm -rf rkhuntercmd
あとはrkhuntercmd.zipをWinSCPで他のPCに移動したり、USBメモリに移すなりして、保管します。
とはいえ、今回コピーしたコマンド以外にも影響が出ている可能性があるため、rootkitが仕掛けられていると感じたならば、サーバ再構築の方が確実かも知れません…。
参考にしたサイト様
今回新しく登場したコマンド
- grep
- zip
- which
[広告]

トップページ
Rocky Linux 8
CentOS 7
○準備
○VMware Player
○Hyper-V(Win Proのみ)
○導入
○セキュリティ対策
○Dynamic DNS
○NTPサーバ
○データベース
○WEBサーバ
○FTPサーバ
○メールサーバ
○DNSサーバ
○ブログシステム
○オンラインストレージ
○その他
Scientific Linux 6
CentOS 5
ブログ
[広告]