chkrootkit 说 /sbin/init 被感染了,这是什么意思?

myu*_*uf3 30 10.04 security rootkit

我最近跑了chkrootkit,得到以下行:

Searching for Suckit rootkit...                   Warning: /sbin/init INFECTED
Run Code Online (Sandbox Code Playgroud)

这究竟是什么意思?我听说这是一个误报,到底发生了什么。

谢谢,麻烦您了。

Sim*_*n B 34

这很可能是误报,因为 chkrootkit 中存在一个错误(据说在 0.50-3ubuntu1 以后的版本中已修复)。显然 chkrootkit 没有执行足够严格的检查。

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

此外,您可以尝试类似于 chkrootkit 的 rkhunter。

更多信息:幸运的是,运行文件 `which chkrootkit`向我们展示了 chkrootkit 只是一个 shell 脚本,因此我们可以直接检查它。

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
Run Code Online (Sandbox Code Playgroud)

关键线是:

cat ${ROOTDIR}/proc/1/maps | ${egrep} "init."
Run Code Online (Sandbox Code Playgroud)

由于最近版本的 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)
Run Code Online (Sandbox Code Playgroud)

但是,这不是rootkit 感染。我还查看了 rkhunter 代码,检查要严格得多(测试 rootkit 安装的各种附加文件)。

我在 chkrootkit 文件中更改了第 1003,1004 行,不检查执行 /proc/1/maps 的检查(记得先复制一份)

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

  • 这适用于 apt-get 安装的 V0.49。看起来 chkrootkit 0.50(可直接从 http://www.chkrootkit.org/ 获得)修复了这个误报。 (4认同)