chkrootkitは/ sbin / initが感染していると言いますが、それはどういう意味ですか?


30

私は最近走りchkrootkit、次の行を得ました:

Searching for Suckit rootkit...                   Warning: /sbin/init INFECTED

これはどういう意味ですか?これは偽陽性であり、正確に何が起こっているのか聞いた。

お願いします。

回答:


34

chkrootkitにバグがあるため、これは誤検知である可能性があります(おそらく後のバージョン0.50-3ubuntu1で修正されています)。明らかに、chkrootkitは厳密な十分なチェックを実行していません。

参照:https : //bugs.launchpad.net/ubuntu/+source/chkrootkit/+bug/454566

さらに、chkrootkitに似たrkhunterを試すこともできます。

さらなる情報:幸いなことに、ファイル `which chkrootkit`を実行すると、chkrootkitは単なるシェルスクリプトであり、直接検査できることがわかります。

Searching for Suckit in the file /usr/sbin/chkrootkit we find:
   ### Suckit
   if [ -f ${ROOTDIR}sbin/init ]; then
      if [ "${QUIET}" != "t" ];then printn "Searching for Suckit rootkit... "; fi
      if [ ${SYSTEM} != "HP-UX" ] && ( ${strings} ${ROOTDIR}sbin/init | ${egrep} HOME  || \
              cat ${ROOTDIR}/proc/1/maps | ${egrep} "init." ) >/dev/null 2>&1
        then
        echo "Warning: ${ROOTDIR}sbin/init INFECTED"
      else
         if [ -d ${ROOTDIR}/dev/.golf ]; then
            echo "Warning: Suspect directory ${ROOTDIR}dev/.golf"
         else
            if [ "${QUIET}" != "t" ]; then echo "nothing found"; fi
         fi
      fi
   fi

キーラインは次のとおりです。

cat ${ROOTDIR}/proc/1/maps | ${egrep} "init."

Ubuntuの最近のバージョン以降、このコマンドを実行すると出力が生成されます(rootまたはsudoとして実行する必要があります)。

# sudo cat /proc/1/maps | egrep "init."
b78c2000-b78db000 r-xp 00000000 08:02 271571     /sbin/init (deleted)
b78db000-b78dc000 r--p 00019000 08:02 271571     /sbin/init (deleted)
b78dc000-b78dd000 rw-p 0001a000 08:02 271571     /sbin/init (deleted)

ただし、これはルートキットによる感染ではありません。私はrkhunterコードも調べましたが、チェックははるかに厳密です(ルートキットによってインストールされたあらゆる種類の追加ファイルのテスト)。

chkrootkitファイルの行1003、1004を変更して、/ proc / 1 / mapsのチェックを実行しないことを確認しました(最初にコピーを取ることを忘れないでください)

if [ ${SYSTEM} != "HP-UX" ] && ( ${strings} ${ROOTDIR}sbin/init | ${egrep} HOME  ) \
             >/dev/null 2>&1

4
これは、apt-getによってインストールされたV0.49に適用されます。chkrootkit 0.50(chkrootkit.orgから直接入手可能)がこの誤検知を修正するようです。
Quog 14年

:あなたがUbuntuのが付属しているバージョンを知りたい場合は見ていpackages.ubuntu.com/search?keywords=chkrootkit
エドゥアール・ロペス

:これは私がトラブルシューティングして、検索に来たので、私はここに追加情報を持つ別の議論があることを言及したかったaskubuntu.com/questions/597432/...
コーディシャープ

2

2013-07-31現在のKubuntu 13.04

ランニング:

cat /sbin/init | egrep HOME

生産物:

Binary file (standard input) matches

そして

ランニング:

cat /proc/1/maps | egrep "init."

出力を生成しません。

注:ピリオドを削除すると出力が生成されます(「init。」を「init」に変更)

b7768000-b779f000 r-xp 00000000 08:02 399192     /sbin/init
b779f000-b77a0000 r--p 00036000 08:02 399192     /sbin/init
b77a0000-b77a1000 rw-p 00037000 08:02 399192     /sbin/init

したがって、HOMEをチェックする部分が問題であるように思われます。

rkhunterに有効なチェックがあると仮定できる場合、おそらく簡単な方法は、chkrootkitからこのセクションを削除し、rkhunterとchkrootkitの両方を実行することですか?


1
Ubuntu 14.04 32ビットでも同じです。私が試してみるstrings /sbin/init | grep HOMEと、それ XDG_CACHE_HOME and XDG_CONFIG_HOMEはまだ偽陽性ですか?/ sbin / initで文字列「HOME」を検索する目的は何ですか?なぜそれがポジティブなのか?
rubo77 14年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.