imi-tech-lab/imi-guard

GitHub: imi-tech-lab/imi-guard

一款便携式、离线运行的 Windows 终端只读安全审计工具,提供安全评分、CIS 基线检查与事件调查时间线,帮助快速评估终端安全态势。

Stars: 0 | Forks: 0

IMI Guard v2.1(“证据与置信度”版本) SHA-256: 200B50BA5C9FF9A9E77ACED6954E2F230AA4EEA8A940249CB3FB95B5EDC406FC 在 PowerShell 中验证您的下载: Get-FileHash .\IMIGuard.exe -Algorithm SHA256 便携式、只读的 Windows endpoint 安全审计工具。单一的自包含可执行文件, 无需安装程序,也不需要互联网连接。可作为图形界面应用运行,或完全以无头模式 进行大规模部署。 v2.1 新特性:针对各项发现的置信度与类型、基于置信度的评分、审计完整性 面板、按区域划分的风险汇总管理器,以及三个新模块 - 易受攻击/停止支持的软件 检测、Windows Event ID 参考以及 LAN 设备智能识别(NIC 供应商 + 设备类型)。 有关完整详情,请参阅 MANUAL.pdf。 # ============================================================ 兼容性(需要安装任何东西吗?) IMI Guard 是一个单一的自包含 .exe 文件,不包含任何第三方库。它仅依赖于两个 属于 Windows 自身的组件:.NET Framework 4.6+ runtime 和 PowerShell 5.1。 - Windows 10、Windows 11、Server 2016/2019/2022:两者均内置。无需安装 - 解压并运行即可。完全离线。 - Windows 8.1 / Server 2012 R2:需先安装 .NET 4.8 和 WMF 5.1(部分收集器受限)。 - Windows 7 SP1 / Server 2008 R2:在安装 .NET 4.8 + WMF 5.1 后可运行,但许多收集器 不可用,且该操作系统已停止支持。不建议使用。 - 早于 Windows 7 SP1 的版本:不支持。 检查任意机器: powershell -ExecutionPolicy Bypass -File .\check_prereqs.ps1 适用于旧系统的离线安装程序:请参阅 prereqs\README.txt(Microsoft 可再发行组件需 下载一次并放置在 prereqs 文件夹中;由于许可原因,它们不能在此处捆绑提供)。 # ============================================================ 运行(图形界面) 1. 双击 IMIGuard.exe(它会自动请求管理员权限)。 2. 选择快速、完全或事件模式。 3. 选择可选的证据模块(包括可选的 Active LAN 扫描)。 4. 点击开始审计。使用取消可停止正在运行的扫描。 5. 完成后,使用打开报告 / 打开 PDF / 打开输出文件夹。 # ============================================================ 运行(无头 / 大规模部署) 适用于 RMM、SCCM、Intune、GPO 启动脚本或计划任务(以 SYSTEM/提升的权限运行): IMIGuard.exe --silent --mode Full --out D:\audits 选项: --mode 审计深度(默认:Full)。 --out 基础输出文件夹(默认:exe 旁边的 audit_results)。 --config 用于品牌标识/ engagement 元数据的 winguard.config.json。 --baseline | --no-baseline 与之前的基线进行比较(默认:开启)。 --lan | --no-lan 被动 LAN 清单(默认:关闭)。 --active-scan 自愿开启的激进扫描:对本地子网 进行 ICMP 扫描 + TCP 探测(默认:关闭;仅限授权网络)。 --no-connections --no-developer --no-browser --no-usb --no-reputation -h, --help 完整用法。 退出代码(供自动化程序根据风险进行分支处理): 0 极佳 1 良好 2 需要改进 3 高风险 4 严重风险 64 用法错误 65 运行时错误 66 已取消 # ============================================================ 审计覆盖范围 - 系统和操作系统身份 - 本地用户、管理员和 RDP 用户 - Windows 防火墙配置文件和入站暴露面 - Microsoft Defender 健康状况、排除项和检测结果 - RDP 状态、监听器、身份验证和失败登录 - TCP/UDP 监听器和选定的已建立连接 - 远程访问工具(AnyDesk、TeamViewer、RustDesk、VNC、Tailscale、RMM、VPN 工具) - 启动文件夹、Run 键、Winlogon、IFEO、PowerShell 配置文件 - 高级持久化(ASEP):LSA 安全/身份验证/通知包、BootExecute、 打印处理器/监视器、用户级 COM 注册(COM 劫持)以及 Shell 扩展 - 服务和自动启动服务 - 计划任务 - SMB 共享和 SMB 服务器配置 - 已安装软件清单 - Windows Update、补丁和待处理的重启状态 - 事件日志时间线(账户更改、服务安装、Defender、任务创建、登录) - PowerShell 事件/历史记录排查 - 危险进程/文件位置中的恶意软件指标排查 - WMI 事件持久化 - 代理、DNS、hosts 文件和最近的根证书 - TPM、Secure Boot、BitLocker 和 UAC - 仅限浏览器扩展清单 - 网络连接历史:已知网络(首次/最后一次连接、网关 MAC)、Wi-Fi 和 VPN/RAS 连接事件、VPN 配置文件/适配器以及蜂窝网络/调制解调器/网络共享适配器 - USB 设备历史:每个设备首次安装、最后一次连接、最后一次移除、会话 持续时间、存在状态和序列号 - WSL、Docker、虚拟机、VPN 和开发者暴露面 - 针对服务/启动项/任务/监听器的数字签名和 SHA256 哈希检查 - 被动 LAN 清单(无扫描),以及在明确同意下的本地子网主动扫描 - 针对新增端口、服务、任务、管理员、Defender 排除项、远程 工具和根证书的基线比较 - 发现项的 MITRE ATT&CK 技术映射(可通过 rulecatalog.json 配置) - 用于批准的已知安全发现的可编辑 whitelist.json - 包含检查、修复和验证命令的离线技术人员操作库 重复的发现(例如许多未加引号的服务路径)会被合并为带有实例计数的单行, 从而保证安全评分的合理性并提高报告的可读性。 # ============================================================ 配置文件(首次运行时在 exe 旁边创建) - winguard.config.json 品牌标识/ engagement:组织、客户、engagement id、分析师、 分类横幅、Logo 路径、报告页脚。 - whitelist.json 隐藏已批准的已知安全发现。 - rulecatalog.json 每个规则的 MITRE 技术/参考以及可选的严重性覆盖, 无需重新编译即可编辑。 # ============================================================ 输出(位于 audit_results 下带有时间戳的文件夹中) - report.html 交互式报告:严重性分布图、类别图表、实时搜索、 严重性过滤器、可排序表格、可折叠部分。可直接打印。 - report.pdf 带有品牌标识的 PDF 摘要。 - audit_metadata.json 汇总锚点:schema 版本、资产 id、评分、计数、engagement。 - winguard_run.log 带有各收集器执行时间的工具执行审计追踪。 - findings.json / findings.csv - technician_action_guide.md - summary.txt - baseline_current.json / baseline_diff.html - whitelist_suppressed_findings.json - raw_evidence/*.json - CSV 导出:network_ports、installed_apps、services、scheduled_tasks、file_reputation、 rdp_history、logon_history、network_history、usb_history、active_lan_hosts 每次审计都会链接到一个稳定、不可逆的资产 ID(WGA-...),该 ID 源自机器 身份标识,因此可以对同一 endpoint 的重复扫描进行随时间推移的跟踪和汇总。 # ============================================================ 安全与道德 - 只读审计。不进行清理或自动修复;报告中的修复命令仅为 指导参考,绝不会由该工具执行。 - 不进行漏洞利用检查。不收集密码、cookie、已保存的凭据、私人文档、浏览器历史 记录或 token。不上传任何文件。 - 默认为被动 LAN 清单。Active LAN 扫描默认处于关闭状态,需要明确 自愿开启(在 GUI 中通过确认提示,或在 CLI 中使用 --active-scan),仅限于 直接连接的本地子网,并且仅执行 ICMP 发现和 TCP 连接探测 (不进行漏洞利用或凭据测试)。仅在您获得授权测试的网络上使用。 # ============================================================ 许可 IMI Guard 使用名为 license.key 的离线许可证文件进行授权。应用程序在本地对其进行检查 (不会向任何服务器发送任何内容),并且该文件经过加密签名,因此无法被 编辑或伪造。 要对此副本进行授权,请将您获得的 license.key 放在与 IMIGuard.exe 相同的文件夹中。 如果没有有效的许可证,该工具仍会运行,但报告会被标记为“UNLICENSED - EVALUATION”,并且 界面会显示横幅。如果您的许可证已过期,请联系您的供应商续订。 要申请或续订许可证,请联系您的 IMI Guard 供应商。 # ============================================================ 构建 powershell.exe -NoProfile -ExecutionPolicy Bypass -File .\build.ps1 使用标准 Windows 系统上已有的 Windows .NET Framework C# 编译器;无需 安装任何软件包。构建过程嵌入了应用程序清单(管理员 + DPI 感知)。 代码签名(建议用于企业部署)如果在 构建前通过环境变量提供了证书,则会自动运行: WG_SIGN_THUMBPRINT 本地存储中代码签名证书的指纹,或者 WG_SIGN_PFX .pfx 文件的路径(+ 可选的 WG_SIGN_PFX_PASSWORD) 如果未提供,构建仍会成功,但可执行文件将是未签名的。 构建过程还会生成 release\ 和 IMIGuard_release.zip。 # ============================================================ 测试 规则引擎回归测试(合成证据 -> 预期发现项): powershell.exe -NoProfile -ExecutionPolicy Bypass -File .\tests\run_tests.ps1 退出代码 0 = 所有测试通过。
标签:AI合规, CIS基线, HTTP工具, Libemu, 安全合规, 数据包嗅探, 无线安全, 终端安全, 网络代理