用于拦截网络流量的API

Ste*_*eAp 5 macos cocoa firewall tcp

有些人可能会暗示哪个API会拦截Little Snitch那样在Mac OS X进出的网络流量

基于可可的API是受欢迎的.

是否需要编写一个kext或者某种程度上授权的用户土地应用程序也可以完成这项工作?

geo*_*war 4

我不知道小飞贼是怎么做到的(但我很乐意\xe2\x80\xa6);我一直在使用这些 dTrace 探针:

\n\n

# 套接字按进程名称接受:

\n\n

dtrace -n \'syscall::accept*:entry { @[execname] = count(); }\'

\n\n

# 按进程和用户堆栈跟踪的套接字连接:

\n\n

dtrace -n \'syscall::connect*:entry { 跟踪(execname); ustack(); }\'

\n\n

# 谁正在连接什么:

\n\n

dtrace -n \'tcp:::accept-builted { @[args[3]->tcps_raddr, args[3]->tcps_lport] = count(); }\'

\n\n

(这些内容来自“DTrace:Oracle Solaris、Mac OS X 和 FreeBSD 中的动态跟踪,作者:Brendan Gregg 和 Jim Mauro,Prentice Hall 2011” http://www.dtracebook.com/index.php/Network_Lower_Level_Protocols。)

\n\n

您还应该查看 Brendan Gregg 的 DTraceToolkit:http://www.brendangregg.com/dtrace.html#DTraceToolkit

\n\n

特别是 tcpsnoop 和 tcptop。

\n