September 30Sep 30 操作系统:Microsoft Windows 11 Core x64 Build 26200杀毒软件版本: 21.24.8.522(b)在使用deepseek harness时,出现间歇性无法连接,用该软件自行排查后反馈如下:开启「扫描加密连接」(加密流量扫描)后,本机上所有使用 Node.js 自带 TLS 栈的应用访问 HTTPS 站点会间歇性握手失败,报错 SELF_SIGNED_CERT_IN_CHAIN。失败是随机的:同一进程连续访问同一域名,成功率仅约 30%~40%。环境卡巴斯基 21.24(服务名 AVP21.24,显示名「卡巴斯基服务 21.24」)Windows;受影响应用为 Electron / Node.js 应用(实测 Node.js v24.19.0)复现步骤powershellnode -e " const tls=require('node:tls'); for(let i=1;i<=5;i++){setTimeout(()=>{ const c=tls.connect({host:'api.deepseek.com',port:443,servername:'api.deepseek.com',rejectUnauthorized:false},()=>{ const cert=c.getPeerCertificate(true);let cur=cert,n=0; while(cur&&n<3){console.log('['+n+']',(cur.subject&&cur.subject.CN)||'?','<- issuer:',(cur.issuer&&cur.issuer.CN)||'?');cur=cur.issuerCertificate;n++;} c.end();}); c.on('error',e=>console.log('ERR',e.message)); },i*400);}"实际结果(连续 5 次连接同一个 IP,两种证书链交替出现)失败时(约 6~7 成):代码块[0] api.deepseek.com <- issuer: Kaspersky Anti-Virus Personal Root Certificate [1] Kaspersky Anti-Virus Personal Root Certificate <- issuer: 同上(自签)成功时:代码块[0] api.deepseek.com <- issuer: TrustAsia DV TLS RSA CA 2025 [1] TrustAsia DV TLS RSA CA 2025 <- issuer: DigiCert Global Root G2根因判断加密流量扫描用 Kaspersky Anti-Virus Personal Root Certificate 现场签发目标域名证书,替换真实证书链。该根证书已正确安装到 Windows 证书存储区(LocalMachine\Root 与 CurrentUser\Root,指纹 579AE3D361F38D41E66340004F07E41AA5EAF9BF,有效期至 2036-04-01)。但 Node.js 自带 Mozilla CA 列表,默认不读取 Windows 证书存储区,所以对 Node.js 应用而言这是不受信任的自签根,握手必然失败。Windows 原生应用走 Schannel 不受影响,问题只在 Node.js / Electron 类应用中暴露。影响Electron 类桌面应用网络请求间歇失败,表现为「随机卡顿 / 失败后重试」请求被静默降级为多次重试,用户侧难以定位直接调 API 的命令行工具、构建工具、包管理器(npm / pnpm)同样受影响期望为 Node.js 类应用提供处理方式:识别其不读系统证书存储的特性并跳过扫描,或提供「向应用注入信任根」的能力(Node.js 支持 NODE_EXTRA_CA_CERTS 指定额外根证书,可在启动子进程时注入)或在产品文档中明确说明加密扫描与 Node.js 应用的兼容性限制及推荐配置当前绕过方式:在设置中关闭「扫描加密连接」,问题立即消失;重新开启即复现。因果明确,但用户会因此失去该防护功能,故仍希望产品侧解决。
操作系统:Microsoft Windows 11 Core x64 Build 26200
杀毒软件版本: 21.24.8.522(b)
在使用deepseek harness时,出现间歇性无法连接,用该软件自行排查后反馈如下:
开启「扫描加密连接」(加密流量扫描)后,本机上所有使用 Node.js 自带 TLS 栈的应用访问 HTTPS 站点会间歇性握手失败,报错
SELF_SIGNED_CERT_IN_CHAIN。失败是随机的:同一进程连续访问同一域名,成功率仅约 30%~40%。环境
卡巴斯基 21.24(服务名
AVP21.24,显示名「卡巴斯基服务 21.24」)Windows;受影响应用为 Electron / Node.js 应用(实测 Node.js v24.19.0)
复现步骤
powershell
实际结果(连续 5 次连接同一个 IP,两种证书链交替出现)
失败时(约 6~7 成):
代码块
成功时:
代码块
根因判断
加密流量扫描用
Kaspersky Anti-Virus Personal Root Certificate现场签发目标域名证书,替换真实证书链。该根证书已正确安装到 Windows 证书存储区(LocalMachine\Root与CurrentUser\Root,指纹579AE3D361F38D41E66340004F07E41AA5EAF9BF,有效期至 2036-04-01)。但 Node.js 自带 Mozilla CA 列表,默认不读取 Windows 证书存储区,所以对 Node.js 应用而言这是不受信任的自签根,握手必然失败。Windows 原生应用走 Schannel 不受影响,问题只在 Node.js / Electron 类应用中暴露。
影响
Electron 类桌面应用网络请求间歇失败,表现为「随机卡顿 / 失败后重试」
请求被静默降级为多次重试,用户侧难以定位
直接调 API 的命令行工具、构建工具、包管理器(npm / pnpm)同样受影响
期望
为 Node.js 类应用提供处理方式:识别其不读系统证书存储的特性并跳过扫描,或提供「向应用注入信任根」的能力(Node.js 支持
NODE_EXTRA_CA_CERTS指定额外根证书,可在启动子进程时注入)或在产品文档中明确说明加密扫描与 Node.js 应用的兼容性限制及推荐配置
当前绕过方式:在设置中关闭「扫描加密连接」,问题立即消失;重新开启即复现。因果明确,但用户会因此失去该防护功能,故仍希望产品侧解决。