好的,所以我想要做的是创建一个后台代理,用于监视进出某个应用程序的 http 流量,并在对某个网站有请求和响应时执行操作。在 Cocoa 中是否有一个很好的方法来做到这一点?我想避免使用非常低级别的嗅探和/或需要 root 访问权限来执行此操作(管理员访问权限是可以的)。

最佳答案

如果您尝试监控的应用程序支持代理服务器,您可以编写一个并在您的应用程序中使用它。这可能是最简单的解决方案。

如果这不起作用,您可以使用 mach_injectmach_override 之类的东西来覆盖您要监视的程序中的一些套接字系统调用(socketwrite 可能就足够了)。不过,这是某种黑暗艺术,因此您最好使用像 tcpdump 这样的数据包嗅探器并使用管道控制它。

除代理解决方案外,所有这些都需要管理员权限(几乎与 root 相同)。

关于objective-c - 我将如何拦截 Cocoa 应用程序中的 HTTP 流量?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3630755/

10-14 19:57
查看更多