charitha-98/win32-network-activity-monitor

GitHub: charitha-98/win32-network-activity-monitor

一款用纯 C 编写的 Windows 终端安全监控工具,通过关联文件系统变更与实时 TCP 连接来检测和记录潜在的数据外泄活动。

Stars: 0 | Forks: 0

# 🛡️ 基于 Windows 主机的数据外泄监控工具 一款使用**纯 C** 编写的轻量级、高性能终端安全监控工具,专为 Windows 环境设计。该工具可动态拦截文件系统更改,并将其与活跃的 TCP 网络连接结构相关联,以审计和记录潜在的数据外泄途径(例如未经授权的 Web 浏览器或云端上传),且无需依赖内核级驱动程序。 ## 🚀 核心功能 * **动态目录审计:** 利用 Win32 `ReadDirectoryChangesW` API 实时捕获异步文件系统修改。 * **扩展网络轮询:** 采用 10 秒轮询周期结合 `GetExtendedTcpTable`,以捕获 Web 浏览器在执行活动的分段文件上传(例如 Google Drive、Gmail、Telegram)期间发起的延迟连接握手。 * **进程解析:** 利用 `EnumProcessModules` 和 `GetModuleBaseNameA`,将活跃连接的归属追溯至其原生源进程 (.exe)。 * **表格化取证日志记录:** 将所有拦截到的事件清晰地记录为结构化的单行日志格式,针对 SIEM 集成进行了优化。 * **后台服务集成:** 通过 NSSM 与服务控制管理器 (SCM) 完全兼容,可在系统重启后无需用户交互即可无缝执行。 ## 🛠️ 架构与日志结构 每一条记录的运行时事件都会直接映射为平面文件的表格格式: `[时间戳] [PID] [协议] [本地端点] [远程端点] [进程名] [检测到的文件和数据量]` ## 💻 前置条件与编译 * **操作系统:** Windows 10 / 11 (64-bit) * **编译器:** 通过 MinGW-w64 工具链提供的 GCC * **权限:** 管理员 shell(网络和模块枚举所必需) ### 编译命令: 在项目根目录下以**管理员**身份打开 PowerShell 或命令提示符,并链接必要的 Windows Sockets 和 IP Helper API: ``` gcc monitor.c -o data_exfiltration_monitor.exe -liphlpapi -lpsapi -lws2_32 ```
标签:Linux, SIEM日志审计, Windows服务, 主机安全监控, 客户端加密, 构建工具, 网络流量关联