MacOS 记录每个连接及其相关进程

MacOS 记录每个连接及其相关进程

我的新 IDS 告诉我我的主机行为异常。由于我不确定,我需要进一步调查。我正在使用 macOS Big Sur (11.2.1) 主机,一旦我收到新的可疑事件,我就需要将 Mac 上运行的进程与此类事件关联起来。

该事件(大约每天生成一次)包含类似 的信息destination_ip:destination_port。从此类信息开始,我需要将此类连接映射到生成它的相应进程。我知道可以通过 检索当前网络连接列表netstat。然而,当我收到警报时,连接已经关闭。因此,我需要在某种日志上“回溯”,以检索连接和相关进程的列表,并在 上对其进行过滤destination_ip:destination_port

我尝试过运行:

lsof -i -n -a -r5 > /tmp/connections.log

但我认为它不起作用,因为从一个日志和下一个日志来看,可疑连接已被关闭。

因此,另一种解决方案可能涉及 SIEM 安装,但我更喜欢使用更容易、更快捷管理的方法,因为我的目的只是确定事件是否为误报。

那么,我如何才能获得网络连接和相关进程的完整日志?我知道流量转储会收集所有流量信息,但不会收集生成过程的信息。

答案1

在 MacOS 上,你应该能够轻松获取进程信息tcpdump -k- 以下是一个例子

sudo tcpdump -vvv -k NP
tcpdump: data link type PKTAP
tcpdump: listening on pktap, link-type PKTAP (Apple DLT_PKTAP), capture size 262144 bytes
15:03:55.445666 (proc Google Chrome He:66290) ...

也可以看看https://serverfault.com/questions/206822/log-network-traffic-with-process-id-on-mac-os-x

相关内容