È possibile utilizzare il framework auditd per questo tipo di cose. Non sono molto "intuitivi" o intuitivi, quindi richiedono un po 'di ricerche da parte tua.
Per prima cosa assicurati di avere auditd installato, in esecuzione e che il tuo kernel lo supporti.
Per Ubuntu puoi installarlo con apt-get install auditd
ad esempio.
Quindi aggiungi un criterio per il controllo per monitorare tutti i connect
syscall in questo modo:
auditctl -a exit,always -F arch=b64 -S connect -k MYCONNECT
Se si utilizza un'installazione a 32 bit di Linux, è necessario modificare da b64 a b32.
Questo comando inserirà un criterio nel framework di controllo e tutti i syscall di connect () verranno ora registrati nei file di registro di controllo (di solito /var/log/audit/audit.log
) per consentirne la visualizzazione .
Ad esempio, una connessione con netcat alla porta 80 di news.ycombinator.com comporterà qualcosa del genere:
type=SYSCALL msg=audit(1326872512.453:12752): arch=c000003e syscall=42 success=no exit=-115 a0=3 a1=24e8fa0 a2=10 a3=7fff07a44cd0 items=0 ppid=5675 pid=7270 auid=4294967295 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=pts4 ses=4294967295 comm="nc" exe="/bin/nc.openbsd" key="MYCONNECT"
type=SOCKADDR msg=audit(1326872512.453:12752): saddr=02000050AE84E16A0000000000000000
Qui puoi vedere che l'applicazione /bin/nc.openbsd ha avviato una chiamata connect (), se ricevi molte chiamate connect e vuoi solo estrarre un determinato ip o porta devi fare qualche conversione. La riga SOCKADDR contiene un argomento saddr, inizia con 0200 seguito dal numero di porta in esadecimale (0050) che significa 80 e quindi dall'IP in esadecimale (AE84E16A) che è l'IP di news.ycombinator.com di 174.132.225.106.
Il framework di controllo può generare molti log, quindi ricordati di disabilitarlo una volta completata la missione. Per disabilitare la politica di cui sopra, è sufficiente sostituire -a con -d come tale:
auditctl -d exit,always -F arch=b64 -S connect -k MYCONNECT
Buona documentazione sul framework auditd:
http://doc.opensuse.org/products/draft/SLES/SLES-security_sd_draft/part.audit.html
Converti gli indirizzi IP in / da hex, dec, binary, ecc su:
http://www.kloth.net/services/iplocate.php
Convertitore hex / dec generale:
http://www.statman.info/conversions/hexadecimal.html
Una breve introduzione a auditd, dallo scambio di stack di sicurezza IT.
http://security.blogoverflow.com/2013/01/a-brief-introduction-to-auditd/
Modifica 1 :
Un altro modo rapido e veloce (svedese: fulhack) per farlo è quello di creare un ciclo rapido che scarica i dati di connessione, in questo modo:
while true;do
ss -ntap -o state established '( dport = :80 )'
sleep 1
done
Questo comando utilizza il ss
comando (statistiche socket) per scaricare le connessioni correnti stabilite alla porta 80, incluso il processo avviato. Se sono molti i dati che è possibile aggiungere | tee /tmp/output
dopo aver fatto entrambi per mostrare l'output sullo schermo e scrivere su / tmp / output per successive elaborazioni / scavi. Se non rileva la rapida connessione haproxy, provare a rimuovere sleep 1
ma prestare attenzione a una registrazione estesa se si tratta di una macchina molto utilizzata. Modifica secondo necessità!