探秘网络行为:Net-Monitor工具包
Net-Monitor(NM)是一个专为Mac OS X Yosemite设计的审计工具,它帮助你跟踪和记录所有用户级和系统级进程的"电话回家"行为。通过这个强大的开源项目,你可以深入理解你的设备与互联网之间的互动。
项目介绍
NM的目标是提供透明的明文日志记录,包括TCP、TLS、HTTPS流量,并利用pf(4)和定制版SSLSplit实现。无需额外的代理配置。此外,它还关联应用程序启动的连接,以及发起连接的用户和组信息。非TCP流量的日志则通过pf(4)、pflog(4)和tcpdump进行捕获。值得注意的是,NM会自动生成并信任本地的、针对特定机器的MITM证书权威机构。
默认情况下,NM会在/var/log/sslsplit目录下生成TCP/SSL日志,在/var/log/udp-monitor下生成UDP或其他类型日志。
技术分析
NM的核心是SSLsplit,一个强大的 TLS 中间人工具。我们的本地补丁已全部集成到上游,以支持对TLS流量的洞察。此外,NM使用pf(4)规则和launchd配置文件来拦截并记录网络活动,同时能够精确识别和关联应用路径。
应用场景
这款工具适用于安全研究人员、系统管理员和任何关注其设备网络行为的人。在专门的虚拟机或研究环境中,NM可以帮助你识别潜在的隐私泄露、恶意软件通信,甚至可以作为教学示例,展示如何监测网络流量。然而,由于其可能影响默认配置和介入TLS通信,不建议将其用于日常生产环境。
项目特点
- 无代理透明监控:无需修改用户的网络设置。
- 全方位日志记录:不仅记录TCP/SSL流量,还覆盖UDP和其他协议。
- 智能关联:自动关联连接到发起该连接的应用程序、用户和组。
- 本地MITM证书:创建可信的本地CA,便于中间人操作。
我们鼓励贡献者提供改进和完善数据收集准确性的建议,以使Net-Monitor更加完善。
为了安装和更新项目,请运行install.sh
脚本,配置文件位于conf/
目录下。如果要更新内嵌的SSLSplit二进制文件,请使用sslsplit-create-standalone.sh
。
让我们一起探索设备的网络世界,提升网络安全意识,揭开隐藏的"电话回家"行为的秘密!
- CangjieCommunity为仓颉编程语言开发者打造活跃、开放、高质量的社区环境Markdown00
- redis-sdk仓颉语言实现的Redis客户端SDK。已适配仓颉0.53.4 Beta版本。接口设计兼容jedis接口语义,支持RESP2和RESP3协议,支持发布订阅模式,支持哨兵模式和集群模式。Cangjie032
- 每日精选项目🔥🔥 推荐每日行业内最新、增长最快的项目,快速了解行业最新热门项目动态~ 🔥🔥02
- qwerty-learner为键盘工作者设计的单词记忆与英语肌肉记忆锻炼软件 / Words learning and English muscle memory training software designed for keyboard workersTSX022
- Yi-CoderYi Coder 编程模型,小而强大的编程助手HTML07
- advanced-javaAdvanced-Java是一个Java进阶教程,适合用于学习Java高级特性和编程技巧。特点:内容深入、实例丰富、适合进阶学习。JavaScript085
- taro开放式跨端跨框架解决方案,支持使用 React/Vue/Nerv 等框架来开发微信/京东/百度/支付宝/字节跳动/ QQ 小程序/H5/React Native 等应用。 https://taro.zone/TypeScript09
- CommunityCangjie-TPC(Third Party Components)仓颉编程语言三方库社区资源汇总05
- Bbrew🍺 The missing package manager for macOS (or Linux)Ruby01
- byzer-langByzer(以前的 MLSQL):一种用于数据管道、分析和人工智能的低代码开源编程语言。Scala04