RSS HackerNoon

大多数使用 ClamAV 的 Node.js 应用程序都存在相同的漏洞。问题出在哪里。

从 Node.js 调用 ClamAV 看似简单:启动 clamscan,检查退出码,完成。但标准实现存在一个静默的缺陷——退出码 2 表示“扫描无法完成”,而非“干净”,而几乎所有自定义包装器都将其归入其他两种结果之一。其后果是对加密归档、权限拒绝的文件以及超时情况误判为“干净”。解决方案是将 ClamAV 的三个真实结果——Clean(干净)、Malicious(恶意)、ScanError(扫描错误)——建模为三个明确的返回值,并强制调用者将 ScanError 视为安全决策而非编程错误。本文阐述为何这一点至关重要,生产环境中该失败模式的表现,以及实践中正确的最小化包装器应如何构建。
favicon
hackernoon.com
Most Node.js Apps Using ClamAV Have the Same Bug. Here's What It Is.
favicon
bsky.app
Hacker & Security News on Bluesky @hacker.at.thenote.app
Create attached notes ...