开源杀毒软件 ClamAV 1.3.0 新版释出,支持解析检查 Microsoft OneNote 附件

作者:Sender Su  来源:原创内容  发布日期:2024-02-22  最后修改日期:2024-02-25

笔者一向比较关注 ClamAV 的发展,一方面源于自己对恶意代码攻防技术的关注,另一方面是 ClamAV 是唯一的开源杀毒软件。

根据ClamAV的博客,在2月7日,1.3.0 新版已经正式释出,同时释出的还有1.2.2 和 1.0.5 两个安全补丁版本。官方提醒用户 1.1 版的生命周期已经终结,用户应转用1.0 LTS、1.2或1.3版。

article banner

笔者:国际认证信息系统审计师、软考系统分析师

ClamAV 下载页面地址:

https://www.clamav.net/downloads

clamav trademark logo

1.3 版的主要改进和评论

1.3 版主要改进可以在 ClamAV 的博客上获知[1]。在笔者看来,比较重要的功能更新包括有以下几点:

1、支持从 Microsoft OneNote 文件中解析和检查附件。

在2022年12月到2023年1月期间,网络安全研究人员开始发现攻击者大量使用 OneNote 文件隐藏恶意代码,并作为电子邮件附件对邮件接收人发起攻击[2]。

随后,在2023年4月,微软在 OneNote 中增加了在用户试图运行高风险的附件时的提醒[3]。微软还通过新设置了“安全附件”策略加强了 Microsoft Defender 的应对能力,但对于 Linux 环境,这显然是用不上,还是得靠 ClamAV。

按说明,该功能默认开启,可以用命令行参数 --scan-onenote=no 关闭,或者通过在 clamd.conf 配置文件中设置 ScanOneNote no 等其它一些方法关闭。

2、ClamD 启动时检查配置文件 clamd.conf 中通过 TemporaryDirectory 设定的临时文件夹是否存在,如果不存在会给出错误信息,并返回错误代码1。

用过 ClamAV 的都知道它在运行时需要指定临时文件夹。笔者也确实碰到过(新配置的虚机直接搬运使用旧虚机的配置文件,忽视了一些目录路径发生了变化),如果设定的临时文件夹不存在,它会直接退出而不显示出错信息。当时也没想过要去报 BUG,现在这个问题补上了[4]。

3、新增辨认编译后的 Python 文件类型 .pyc。

之前只是辨认为普通的二进制数据文件 CL_TYPE_BINARY_DATA,现在能辨认为 CL_TYPE_PYTHON_COMPILED。这个辨认不影响恶意代码扫描的能力。

4、改善和修正对设置空密码的 PDF 文件的解密扫描。

这就是个典型的因为想当然(密码不会为空)而致的 BUG 啦。

1.2版的主要改进和评论

由于也有一段时间没介绍 ClamAV 的新版本情况了,所以顺带一提较早之前的 ClamAV 1.2.0 版本的新功能特性[5]:

1、增加支持解析 Universal Disk Format (UDF) 分区

官方介绍,具体地是增加了对开始扩展区域描述符(Beginning Extended Area Descriptor,BEA01)类型的UDF文件的支持。UDF 这种光盘镜像格式现在对于大多数用户来说用得不多,顶多就是搞搞U盘启动盘。

2、增加参数选项设置清理文件的缓存大小。

增大缓存可以改善扫描的效率,但会占用更多的内存。如果在服务器环境运行 ClamAV 和配置该参数选项,要注意避免因为内存占用增加而导致和服务器本身的正常服务发生内存资源争夺而产生影响整体运行效率的内存/磁盘交换空间(交换文件)读写。

最典型就是如果服务器配置运行 MySQL 数据库,且为了最大化效率而把绝大部分内存都配置给了 MySQL 的 InnoDB 引擎作为缓存,那就很有可能会产生上述的内存资源争夺情况了。

3、增加了 SystemD 定时器,方便定时触发 Freshclam 去更新特征库,而不需要在系统后台保持 Freshclam 长期运行。

这个其实也能自己写个 cronjob 什么的去实现的。

4、增大了 MaxScanSize 的限制值,以便对大于 4GB 的文件能检查更多的文件内容,甚至是整个文件。

按其说明,这个修改其实只是对32位的操作系统环境,对于64位操作系统环境该限制早已扩展。另外,MaxFileSize 的2GB限制依然存在,所以对于任何文件,包括嵌入式的文件,如果大过 2GB 就会被跳过。

时至今日,32位操作系统环境应该已经很少了。

5、进一步增强对自建私有的特征库的支持,允许 Freshclam 使用指定的私钥和证书与私有特征库进行通信获取特征库升级。

在笔者看来,私有特征库相关的功能应充分完善和加强,因为这能显著减轻 ClamAV 的特征库分发流量压力,进而促进 ClamAV 获得部署使用。

我自己搞的内部软件仓库就曾经想做 ClamAV 的内部特征库,但当时发现是 ClamAV 本身并不支持,需要大量的辅助手段才能实现,于是就搁置了。现在看来可以重拾这件事。

参考:基于安全审计思维规划缓解内网自建软件仓库的风险

以下是外部参考

[1] ClamAV 1.3.0

https://blog.clamav.net/2023/11/clamav-130-122-105-released.html

[2] OneNote Documents Increasingly Used to Deliver Malware 

https://www.proofpoint.com/us/blog/threat-insight/onenote-documents-increasingly-used-to-deliver-malware

[3] Microsoft OneNote is being fixed after surge in malware

https://www.techradar.com/news/microsoft-onenote-is-being-fixed-after-surge-in-malware

[4] ClamD fails silently if temporary folder does not exist

https://github.com/Cisco-Talos/clamav/issues/1028

[5] ClamAV 1.2.0

https://github.com/Cisco-Talos/clamav/releases/tag/clamav-1.2.0

本栏目相关
  •  2024-11-13 挖深网络安全的兔子洞:CPU 微码补丁管理
  •  2024-11-10 安全加固基准搅合国产操作系统上下游关系
  •  2022-05-11 CIS-CAT 配置评估工具介绍及操作实践
  •  2022-03-16 Windows 系统安全基线及软件工具介绍
  •  2022-08-28 网络攻防中的色彩象征
  •  2022-03-11 安装RHEL/CentOS时如何选择配置安全策略?
  •  2023-02-27 注意:TightVNC 2.8.75 释出,修补 zlib 漏洞 CVE-2022-37434
  •  2022-03-25 从甲方角度介绍“CIS互联网安全中心”
  •  2022-03-17 详细了解微软安全合规工具包(SCT)
  • 本站微信订阅号:

    微信订阅号二维码

    本页网址二维码: