The following lines appear in my CentOS secure
log file:
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
I did not do this, and I am the only one to my knowledge that has access to this server.
What do these log entries mean? Is there a process that might do this, or has someone else broken into my system?
Edit 1 – Running suggestions:
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
I am not sure how to interpret this output…? Is this part of SendMail, I believe it might be? Googling SendMail "nagent"
returns results discussing SendMail Network Agent
. Not certain on this though. I am running SendMail SMTP server
.
Edit 2 – contents of /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
FYI – port 80 is blocked on this server with the iptables entry:
-A INPUT -p tcp -m tcp --dport 80 -j DROP
The contents of /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
Edit 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 -
Edit 4
The nagent folder in home
was created with the secure
log events. I don't know if that is significant:
drwx------. 6 nagent nagent 4096 Oct 27 21:11 nagent
Also displaying running processes ps aux | less
has these related results
...
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
...
Best Answer
You can begin by search if the user nagent is owner of files on your system:
And you can look at if some process have been launched and not again stopped by this user:
In yours logs, you can look at the activity of your server around the 27 october 21:10, something like this:
EDIT 1: Some files has been modified/created during the same time of the userdel and useradd:
Can you read
nagent.conf
andnagent_download.sh
?EDIT 2: Can you verify if you have a process which listen on the TCP port 80:
Have you done a update/upgrade maybe the 27 oct 21h ?
EDIT 3:
From the
netstat command
, you have the port 80 opened by a process with PID of 2027:java. Moreover, this process opens the 8089 and the 443 which has a connection with a machine :To have more infos, you can do
ps -ef | grep 2027
and see details on the commands and the parent process of it.From your ps command, you have a service named nagent in /etc/init.d/nagent
In conclusion, you or someone have installed the agent of the N-central software (the files and process match with the doc done by @ojs in his solution). Now, you must search who and how this software has been installed.
To know which package has been installed:
ls -ltr /var/lib/dpkg/info/*.list
You can look the .bash_history in the home directory of the users of your server