Kann ich herausfinden, wer eine HTTP-Anfrage gestellt hat?

Kann ich herausfinden, wer eine HTTP-Anfrage gestellt hat?

Mir wird gesagt, dass mein Server vor einigen Tagen einen HTTP-Download durchgeführt hat und dass es sich möglicherweise um einen Virus handelt. Ich habe die Quell-IP/den Quell-Port der Anfrage, die Ziel-IP/den Ziel-Port, das Protokoll, die Zeit, die Länge und die Methode.

Vielleicht ist mein Server gehackt, aber ich möchte herausfinden, welcher Benutzer und welches Programm die HTTP-Anforderung gestellt hat. Ist das möglich? Zeichnet Linux alle ausgehenden HTTP-Anforderungen auf? Wenn nicht, kann ich das mit den obigen Informationen herausfinden?

Antwort1

Wenn Sie einen httpd-Server verwenden, dann haben Sie ein http-Protokoll, das Ihnen bei Ihrer Anfrage helfen kann (es gibt zusätzlicheModfür Apache mod_dumpio kann besseres Feedback liefern), und ich schlage vor, dass Sie diesen Befehl bei Bedarf ausführen, um besser zu wissen, was derzeit http auf Ihrem Server anfordert

# tcpdump filter for HTTP GET 
sudo tcpdump -s 0 -A 'tcp[((tcp[12:1] & 0xf0) >> 2):4] = 0x47455420'

# tcpdump filter for HTTP POST 
sudo tcpdump -s 0 -A 'tcp dst port 80 and (tcp[((tcp[12:1] & 0xf0) >> 2):4] = 0x504f5354)'

# tcpdump for specific client
tcpdump -vvvnn port 80 and host ip_addr_of_client -i any

verwandte Informationen