Le compte utilisateur Linux 'nagent' a été supprimé et rajouté dans le journal sécurisé

10

Les lignes suivantes apparaissent dans mon securefichier journal CentOS :

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

Je ne l'ai pas fait et je suis le seul à ma connaissance à avoir accès à ce serveur.

Que signifient ces entrées de journal? Y a-t-il un processus qui pourrait faire cela, ou quelqu'un d'autre est-il entré dans mon système?

Édition 1 - Suggestions de course:

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

Je ne sais pas comment interpréter cette sortie ...? Est-ce que cela fait partie de SendMail, je pense que ça pourrait l'être? Google SendMail "nagent"recherche des résultats en discutant SendMail Network Agent. Pas certain cependant. Je cours SendMail SMTP server.

Edit 2 - contenu de /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

Pour info - le port 80 est bloqué sur ce serveur avec l'entrée iptables:

-A INPUT -p tcp -m tcp --dport 80 -j DROP

Le contenu de /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

Modifier 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   - 

Modifier 4

Le dossier nagent dans a homeété créé avec les secureévénements du journal. Je ne sais pas si c'est important:

drwx------.  6 nagent   nagent    4096 Oct 27 21:11 nagent

L'affichage des processus en cours ps aux | lessa également ces résultats associés

...
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
...
Roy Hinkley
la source
@Begueradj - Ce n'est pas mon compte. Je pense que c'est un compte de processus, mais je ne sais pas. Je ne suis en aucun cas un administrateur Linux.
Roy Hinkley
1
Certains démons créeront des comptes, mais généralement uniquement au moment de l'installation.
Neil Smithline
Ok, avez-vous installé / réinstallé quelque chose Oct 27vers 21h10?
@Begueradj J'ai changé certaines règles iptables et redémarré, mais je n'ai rien installé ni désinstallé depuis un certain temps maintenant.
Roy Hinkley
3
le numéro IP 192.168.20.128 ne fait pas partie du WAN général, c'est un numéro IP privé
ojs

Réponses:

3

Vous pouvez commencer par rechercher si l'utilisateur nagent est propriétaire des fichiers sur votre système:

find / -user nagent -iname "*" -exec ls -l {} \;

Et vous pouvez voir si certains processus ont été lancés et ne sont plus arrêtés par cet utilisateur:

ps -ef | grep nagent

Dans vos journaux, vous pouvez consulter l'activité de votre serveur autour du 27 octobre 21:10, quelque chose comme ceci:

cat /var/log/<your file> | grep "Oct 27 21:1"

EDIT 1: Certains fichiers ont été modifiés / créés en même temps que userdel et 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

Pouvez-vous lire nagent.confet nagent_download.sh?


EDIT 2: pouvez-vous vérifier si vous avez un processus qui écoute sur le port TCP 80:

 netstat -antp | grep 80

Avez-vous fait une mise à jour / upgrade peut-être le 27 oct 21h?


EDIT 3:

Depuis le netstat command, vous avez le port 80 ouvert par un processus avec PID de 2027: java. De plus, ce processus ouvre le 8089 et le 443 qui a une connexion avec une machine:

  ::ffff:192.168.1.18:443     ::ffff:70.192.192.180:10757 ESTABLISHED     2027/java

Pour avoir plus d'informations, vous pouvez faire ps -ef | grep 2027et voir les détails sur les commandes et le processus parent de celle-ci.

Depuis votre commande ps, vous avez un service nommé nagent dans /etc/init.d/nagent

En conclusion, vous ou quelqu'un avez installé l'agent du logiciel N-central (les fichiers et le processus correspondent au document réalisé par @ojs dans sa solution). Maintenant, vous devez rechercher qui et comment ce logiciel a été installé.

Pour savoir quel package a été installé: ls -ltr /var/lib/dpkg/info/*.list

Vous pouvez consulter le .bash_history dans le répertoire personnel des utilisateurs de votre serveur

Sorcha
la source
Curieux - find / -user naget -iname "*" -exec ls -l {} \;trouver: `naget 'n'est pas le nom d'un utilisateur connu
Roy Hinkley
désolé, une erreur de ma part, j'ai édité ma réponse, vous pouvez lire nagentet non naget:)
J'ai ajouté Edit 1 dans la réponse
Sorcha
J'ai mis à jour mon message.
Roy Hinkley du
J'ai ajouté Edit 2 dans la réponse
Sorcha
2

Cela semble indiquer le produit de Solarwinds N-able . Au moins, ils utilisaient /home/nagentet leurs packages ont été nommés nagent-rhel. J'ai trouvé une référence à cela dans un vieux document d'eux.

ojs
la source
1

Avez-vous installé Neptune ?

nagentpeut être l'utilisateur de l'agent Neptune, ajouté automatiquement lorsque vous installez le package. Par défaut, l'utilisateur l'est neptuneioagent, mais votre distribution peut avoir changé le nom d'utilisateur.

dr_
la source
Non - je ne sais pas ce que c'est.
Roy Hinkley