J'ai couru nmap sur mon serveur et trouvé un port étrange ouvert. J'essaie de voir s'il existe un moyen de mapper ce port sur un processus spécifique sans avoir la moindre idée de l'existence d'un tel outil.
Aucune suggestion?
J'ai couru nmap sur mon serveur et trouvé un port étrange ouvert. J'essaie de voir s'il existe un moyen de mapper ce port sur un processus spécifique sans avoir la moindre idée de l'existence d'un tel outil.
Aucune suggestion?
Réponses:
En plus de Netstat, mentionné dans d'autres publications, la commande lsof devrait pouvoir le faire parfaitement. Il suffit d'utiliser ceci:
lsof -i :<port number>
et tous les processus devraient arriver. Je l'utilise assez souvent sous OS X.
L'outil dont vous avez besoin est la lsof
liste des fichiers (et des sockets et des ports). Il est très probablement installé et correspond probablement à la version de l'attaquant, ce qui signifie qu'elle vous mentira .
C'est en effet un rootkit. J'ai déjà vu ce comportement auparavant, et il s'agit toujours d' un rootkit. Votre système est compromis et les outils que vous utilisez et qui proviennent de la même machine ne peuvent pas être approuvés. Démarrez dans un Live CD (qui contient des fichiers binaires approuvés en lecture seule) et utilisez-le pour extraire vos données, paramètres, etc. Tous les programmes que vous avez, tous les scripts que vous avez, les abandonnent . Ne les amène pas . Traitez-les, et le système, comme s'ils avaient la lèpre, parce qu'ils le font .
Faîtes-le aussitôt que possible. Oh, et débranchez votre connexion réseau - refusez l'accès à votre attaquant.
netstat -anp
Le "-p" lui dit de lister l'ID de processus avec le port ouvert. Le -an lui dit de lister les ports d'écoute et de ne pas résoudre les noms. Sur les systèmes occupés, cela peut considérablement accélérer la vitesse de retour.
netstat -anp | grep "LISTE"
Cela ne vous donnera que les ports ouverts.
Si vous ne pouvez pas voir le port ouvert avec les outils du système d'exploitation et que vous suspectez une intrusion, il est possible qu'un rootkit ait été installé.
Le rootkit pourrait avoir modifié les outils système pour éviter certains processus et certains ports ou modifié les modules du noyau.
Vous pouvez vérifier le rootkit avec plusieurs outils automatisés. 'apt-cache search rootkit' montre ce qui suit dans Ubuntu:
chkrootkit - rootkit detector
rkhunter - rootkit, backdoor, sniffer and exploit scanner
unhide - Forensic tool to find hidden processes and ports
Si vous avez un rootkit, vous pouvez rétablir les modifications sur votre système, mais je vous recommande de découvrir comment l'intrusion a été créée et de renforcer le système pour qu'il ne se reproduise plus.
Ils ne sont pas exclusifs à Ubuntu, vous pouvez également les utiliser dans CentOS. Il suffit de chercher le package ou de le télécharger à partir de leur page.
À la sortie de ce port, il semble que vous utilisiez pcanywhere: " Ы <Entrée>" est très similaire à "Veuillez appuyer sur <Entrée>" ce qui est un message de bienvenue de pcanywhere. Je ne sais pas pourquoi le processus ne figure pas dans la liste des processus. Êtes-vous root?
Vous pouvez essayer de redémarrer pour voir si le processus est unique.
Pour expliquer la réponse de @bjtitus, vous pouvez obtenir des informations très détaillées, par exemple:
$ lsof -i :8000
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
squid3 1289 proxy 15u IPv6 14810490 0t0 TCP *:8000 (LISTEN)
$ ps -fp 1289
UID PID PPID C STIME TTY TIME CMD
proxy 1289 1 0 09:48 ? 00:00:00 /usr/sbin/squid3 -N -f /etc/squid-deb-proxy/squid-deb-proxy.conf
Je peux voir ici que le calmar est le processus, mais c’est en fait le mien squid-deb-proxy
qui prend le port.
Un autre bon exemple d'application java:
$ lsof -i :4242
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
java 3075 root 86u IPv4 12019 0t0 TCP *:4242 (LISTEN)
$ ps -fp 3075
UID PID PPID C STIME TTY TIME CMD
root 3075 1 15 May24 ? 3-16:07:25 /usr/local/crashplan/jre/bin/java -Dfile.encoding=UTF-8 -Dapp=CrashPlanService -DappBaseName=CrashPl
Vous pouvez voir dans lsof
(LiSt Open Files) qu'il s'agit de Java, ce qui est moins qu'utile. En exécutant la ps
commande avec le PID, nous pouvons voir immédiatement qu’il s’agit de CrashPlan.