Ho eseguito nmap sul mio server e ho trovato una strana porta aperta. Sto cercando di capire se esiste un modo per mappare quella porta su un processo specifico ma non ho idea se esiste un tale strumento.
Eventuali suggerimenti?
Ho eseguito nmap sul mio server e ho trovato una strana porta aperta. Sto cercando di capire se esiste un modo per mappare quella porta su un processo specifico ma non ho idea se esiste un tale strumento.
Eventuali suggerimenti?
Risposte:
Oltre a Netstat, menzionato in altri post, il comando lsof dovrebbe essere in grado di farlo bene. Usa questo:
lsof -i :<port number>
e tutti i processi dovrebbero emergere. Lo uso su OS X abbastanza frequentemente.
Lo strumento che ti serve è lsof
, che elencherà i file (e socket e porte). Molto probabilmente è installato ed è molto probabilmente la versione dell'attaccante, il che significa che mentirà a te.
Questo è davvero un rootkit. Ho già visto questo comportamento ed è sempre un rootkit. Il sistema è compromesso e tutti gli strumenti che si utilizzano che provengono dalla stessa macchina non sono affidabili. Avvia un Live CD (che ha binari attendibili di sola lettura) e usalo per estrarre i tuoi dati, impostazioni, ecc. Tutti i programmi che hai avuto, qualsiasi script che hai, li abbandonano . Non portarli . Trattali e il sistema, come se avessero la lebbra, perché lo fanno .
Fallo il prima possibile. Oh, e scollegare la connessione di rete - negare l'accesso all'attaccante.
netstat -anp
"-P" indica di elencare l'ID processo con la porta aperta. -An dice di elencare le porte di ascolto e di non risolvere i nomi. Su sistemi occupati che possono accelerare notevolmente la velocità con cui ritorna.
netstat -anp | grep "ELENCO"
Questo ti darà solo le porte aperte.
Se non riesci a vedere la porta aperta con gli strumenti del sistema operativo e sospetti un'intrusione, è possibile che sia stato installato un rootkit.
Il rootkit avrebbe potuto cambiare gli strumenti di sistema per evitare determinati processi e porte o modificare i moduli del kernel.
Puoi verificare il rootkit con diversi strumenti automatici. 'apt-cache search rootkit' mostra quanto segue in Ubuntu:
chkrootkit - rootkit detector
rkhunter - rootkit, backdoor, sniffer and exploit scanner
unhide - Forensic tool to find hidden processes and ports
Se ti capita di avere un rootkit puoi ripristinare il 'modificato' sul tuo sistema, ma ti consiglio di scoprire come è stata fatta l'intrusione e indurire il sistema affinché non si ripeta.
Non sono esclusivi di Ubuntu, puoi usarli anche in CentOS. Cerca il pacchetto o scaricalo dalla loro pagina.
Dall'output di quella porta sembra che tu stia eseguendo pcanywhere: " Ы <Invio>" è molto simile a "Prego premi <Invio>" che è il messaggio di benvenuto di pcanywhere. Non so perché il processo non venga visualizzato nell'elenco dei processi. Sei root?
Puoi provare a riavviare per vedere se è in esecuzione anche una volta.
Per spiegare la risposta di @bjtitus puoi ottenere alcune informazioni molto dettagliate, ad esempio:
$ 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
Vedo proprio lì che il calamaro è il processo, ma in realtà è il mio squid-deb-proxy
che sta prendendo il porto.
Un altro buon esempio di un'app 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
Puoi vedere in lsof
(LiSt Open Files) che è java, il che è meno utile. Eseguendo il ps
comando con il PID possiamo vedere subito che si tratta di CrashPlan.