Skip to content

[Notice]关于安全软件误报的说明/Regarding Security Software False Positives #81

Description

@owu

Note: This report is posted in two comments for bilingual accessibility.

  • Comment 1 (this one): Simplified Chinese(简体中文)
  • Comment 2 (the reply below): English
    Please read the English version in the reply below if needed.

问题描述

下载 WSL Dashboard 的 .exe 安装包或 .zip 压缩包后,Windows Defender 或其他杀毒软件可能会弹出安全警告,提示文件存在风险或直接拦截删除。

为什么会出现这种情况?

这是 误报,并非文件真的携带病毒。

根本原因是:本项目未购买 EV(Extended Validation)代码签名证书

什么是代码签名证书?

代码签名证书用于对可执行文件进行数字签名,证明该文件来自可信的发布者且未被篡改。Windows 对未签名或使用普通证书签名的程序会采取更严格的安全检查。

证书类型的区别

证书类型 价格 SmartScreen 策略
无签名 免费 直接拦截,标记为"未知发布者"
普通 OV 证书 数百元/年 仍会弹出警告,需要积累信誉
EV 证书 数千元/年 立即通过,无警告

未使用 EV 证书签名的程序,Windows SmartScreen 会默认标记为不安全,杀毒软件也更容易将其识别为潜在威胁。

关于文件安全性

请放心,本项目的构建过程完全透明、可审计:

  1. 开源代码:所有源代码均托管在 GitHub 上,任何人都可以审查
  2. 自动化构建:exe 文件由 GitHub Actions 工作流在 GitHub 的服务器上自动构建生成,整个过程无人工干预
  3. 构建可追溯:每次构建都有完整的日志记录,可在 GitHub Actions 页面查看
  4. 零接触发布:开发者无法在构建过程中插入任何恶意代码,文件从构建完成到发布下载全程自动化

简单来说:exe 文件从未经过开发者的手,不存在被"投毒"的可能

解决方案

方案一:添加信任白名单(推荐普通用户)

Windows Defender 拦截时:

  1. 打开 "Windows 安全中心" → "病毒和威胁防护"
  2. 点击 "保护历史记录"
  3. 找到被拦截的项目,点击 "操作" → "允许"

或在下载前添加排除项:

  1. 打开 "Windows 安全中心" → "病毒和威胁防护" → "管理设置"
  2. 下滑找到 "排除项",点击 "添加或删除排除项"
  3. 添加下载目录为排除项

第三方杀毒软件: 请在对应软件中将下载的文件或目录添加到信任列表。

方案二:从源码编译(推荐开发者)

如果您对预编译的二进制文件仍有顾虑,可以直接克隆源码在本地编译:

# 克隆仓库
git clone https://github.com/owu/wsl-dashboard.git
cd wsl-dashboard

# 编译 Release 版本
cargo build --release

# 编译产物位于 target/release/ 目录

这样您可以完全确认运行的代码内容。

方案三:购买 EV 证书(对开发者的说明)

购买 EV 代码签名证书可以从根源上解决误报问题,但面临以下现实困难:

  • 费用高昂:EV 证书每年需要数千元人民币
  • 持续成本:证书需要按年续费,是长期负担
  • 项目性质:WSL Dashboard 是非盈利的开源项目,难以承担这笔开支

如果您希望支持本项目的发展,可以通过项目主页的赞助渠道进行捐赠,帮助开发者覆盖证书等运营成本。

总结

  • 文件被拦截是由于缺少 EV 代码签名证书,不是病毒
  • 所有构建产物均由 GitHub Actions 自动生成,过程透明可审计
  • 用户可以通过添加白名单或自行编译来解决此问题
  • 购买 EV 证书可从根本上解决,但对非盈利项目存在经济压力

感谢您的理解与支持!

Metadata

Metadata

Assignees

No one assigned

    Labels

    wontfixThis will not be worked on

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions