Linux 用户帐户“nagent”已删除并重新添加到安全日志中

Roy*_*ley 10 security centos logging

以下几行出现在我的 CentOSsecure日志文件中:

Oct 27 21:10:59 servr userdel[7270]: delete user 'nagent'
Oct 27 21:10:59 servr userdel[7270]: removed group 'nagent' owned by 'nagent'
Oct 27 21:11:04 servr useradd[7333]: new group: name=nagent, GID=502
Oct 27 21:11:04 servr useradd[7333]: new user: name=nagent, UID=502, GID=502, home=/home/nagent, shell=/bin/bash
Run Code Online (Sandbox Code Playgroud)

我没有这样做,据我所知,我是唯一可以访问该服务器的人。

这些日志条目是什么意思?是否有可能执行此操作的进程,或者是否有其他人闯入了我的系统?

编辑 1 - 运行建议:

find / -user nagent -iname "*" -exec ls -l {} \;
-rw-rw----. 1 nagent mail 0 Oct 27 21:11 /var/spool/mail/nagent
find: `/proc/14041/task/14041/fd/5': No such file or directory
find: `/proc/14041/task/14041/fdinfo/5': No such file or directory
find: `/proc/14041/fd/5': No such file or directory
find: `/proc/14041/fdinfo/5': No such file or directory
total 28
drwx------. 2 root root 4096 Oct 27 21:11 CMData
drwx------. 2 root root 4096 Oct 27 21:11 CMSetting
-rw-r--r--. 1 root root  615 Oct 27 21:11 nagent.conf
-rw-r--r--. 1 root root  615 Oct 27 21:11 nagent.conf.Save
-rwxr-xr-x. 1 root root 5510 Oct 27 21:11 nagent_download.sh
-rwxr-xr-x. 1 root root 1665 Oct 27 21:11 uninstall.sh
-rw-r--r--. 1 nagent nagent 18 Sep 22 12:40 /home/nagent/.bash_logout
total 0
-rw-r--r--. 1 nagent nagent 124 Sep 22 12:40 /home/nagent/.bashrc
-rw-r--r--. 1 nagent nagent 176 Sep 22 12:40 /home/nagent/.bash_profile
total 8
drwxr-xr-x. 2 nagent nagent 4096 Aug 18  2010 extensions
drwxr-xr-x. 2 nagent nagent 4096 Aug 18  2010 plugins
total 0
total 0
Run Code Online (Sandbox Code Playgroud)

我不知道如何解释这个输出......?这是否是 SendMail 的一部分,我相信它可能是?谷歌搜索SendMail "nagent"返回结果讨论SendMail Network Agent。虽然不确定这一点。我在跑步SendMail SMTP server

编辑 2 - /etc/nagent.conf 的内容

[main]
    logfilename=/var/log/n-central/nagent.log
    loglevel=2
    homedir=/home/nagent/
    thread_limitation=50
    poll_delay=1
    datablock_size=20

[soap]
    Server=127.0.0.1
    Port=80
    Protocol=http
    ApplianceID=1
    Server_ro=no
Run Code Online (Sandbox Code Playgroud)

仅供参考 - 此服务器上的端口 80 被 iptables 条目阻止:

-A INPUT -p tcp -m tcp --dport 80 -j DROP
Run Code Online (Sandbox Code Playgroud)

内容/home/ncm/nable/nagent-rhel5.1_64/nagent_download.sh

#!/bin/bash

# Exit on failure --------------------------------------------------------------
function exitOnFailure {
        echo "" >> $LOGGER
        echo "Download failed" >> $LOGGER
        echo "==================================== END DOWNLOAD ================================" >> $LOGGER
        exit 1
}

# Show usage -------------------------------------------------------------------
function usage {
        echo "" >> $LOGGER
        echo "Usage: nagent_download.sh URL InstallerName FileSize MD5Sum Destination [Proxy] [ProxyUsername] [ProxyPassword]" >> $LOGGER
        echo "Example: nagent_download.sh http://192.168.20.128/download/100.0.0.0/rhel5.1_64/N-central/nagent-rhel5.1_64.tar.gz nagent-rhel5.1.tar.gz 2785964 aea43c12d2a86d76ea95bbbf0bf625e9 /tmp" >> $LOGGER

        exitOnFailure
}

# Verify given arguments -------------------------------------------------------
function verifyArguments {
        if [ -z "$URL" ]
        then
                echo "No download url provided" >> $LOGGER
                usage
        fi

        if [ -z "$INSTALLER" ]
        then
                echo "No installer name provided" >> $LOGGER
                usage
        fi

        if [ -z "$INSTALLER_FILESIZE" ]
"/home/ncm/nable/nagent-rhel5.1_64/nagent_download.sh" 167L, 5335C
Run Code Online (Sandbox Code Playgroud)

编辑 3

netstat -antp | grep 80
tcp        0      0 0.0.0.0:57808               0.0.0.0:*                   LISTEN      2190/rpc.statd      
tcp        0      0 ::ffff:127.0.0.1:8005       :::*                        LISTEN      2027/java           
tcp        0      0 :::8009                     :::*                        LISTEN      2027/java           
tcp        0      0 :::80                       :::*                        LISTEN      2027/java           
tcp        0      0 ::ffff:127.0.0.1:58580      ::ffff:127.0.0.1:3306       TIME_WAIT   -                   
tcp        0      0 ::ffff:127.0.0.1:58380      ::ffff:127.0.0.1:3306       TIME_WAIT   -                   
tcp        0      0 ::ffff:192.168.1.18:443     ::ffff:70.192.192.180:10757 ESTABLISHED 2027/java           
tcp        0      0 ::ffff:127.0.0.1:58280      ::ffff:127.0.0.1:3306       TIME_WAIT   -                   
tcp        0      0 ::ffff:127.0.0.1:58480      ::ffff:127.0.0.1:3306       TIME_WAIT   - 
Run Code Online (Sandbox Code Playgroud)

编辑 4

中的 nagent 文件夹home是使用secure日志事件创建的。我不知道这是否重要:

drwx------.  6 nagent   nagent    4096 Oct 27 21:11 nagent
Run Code Online (Sandbox Code Playgroud)

还显示正在运行的进程ps aux | less有这些相关的结果

...
root      7393  0.0  0.0 108432  1176 ?        S    Oct27   0:00 /bin/sh /etc/init.d/nagent start
root      7396  0.0  0.0 108164  1404 ?        S    Oct27   0:00 /bin/bash -c ulimit -S -c 0 >/dev/null 2>&1 ; nagent -f /home/nagent/nagent.conf
root      7397  0.0  0.0 219960  7100 ?        Sl   Oct27   0:15 nagent -f /home/nagent/nagent.conf
...
Run Code Online (Sandbox Code Playgroud)

Sor*_*cha 3

如果用户 nagent 是您系统上文件的所有者,您可以开始搜索:

find / -user nagent -iname "*" -exec ls -l {} \;
Run Code Online (Sandbox Code Playgroud)

您可以查看某个进程是否已启动并且没有再次被该用户停止:

ps -ef | grep nagent
Run Code Online (Sandbox Code Playgroud)

在您的日志中,您可以查看服务器在 10 月 27 日 21:10 左右的活动,如下所示:

cat /var/log/<your file> | grep "Oct 27 21:1"
Run Code Online (Sandbox Code Playgroud)

编辑 1:在 userdel 和 useradd 的同时修改/创建了一些文件:

-rw-r--r--. 1 root root  615 Oct 27 21:11 nagent.conf
-rw-r--r--. 1 root root  615 Oct 27 21:11 nagent.conf.Save
-rwxr-xr-x. 1 root root 5510 Oct 27 21:11 nagent_download.sh
-rwxr-xr-x. 1 root root 1665 Oct 27 21:11 uninstall.sh
Run Code Online (Sandbox Code Playgroud)

你能读懂nagent.confnagent_download.sh吗?


编辑 2:您能否验证是否有一个监听 TCP 端口 80 的进程:

 netstat -antp | grep 80
Run Code Online (Sandbox Code Playgroud)

您是否在 10 月 27 日 21 点完成了更新/升级?


编辑3:

从 中netstat command,您可以看到 PID 为 2027:java 的进程打开了端口 80。此外,此过程打开与机器有连接的8089和443:

  ::ffff:192.168.1.18:443     ::ffff:70.192.192.180:10757 ESTABLISHED     2027/java
Run Code Online (Sandbox Code Playgroud)

要了解更多信息,您可以执行ps -ef | grep 2027并查看有关命令及其父进程的详细信息。

通过 ps 命令,您在 /etc/init.d/nagent 中有一个名为 nagent 的服务

总之,您或某人已经安装了 N-central 软件的代理(文件和进程与 @ojs 在他的解决方案中完成的文档匹配)。现在,您必须搜索谁以及如何安装该软件。

要知道已经安装了哪个包: ls -ltr /var/lib/dpkg/info/*.list

您可以在服务器用户的主目录中查看 .bash_history