0

作为企业软件项目的一部分,我们的应用程序连接到由 ClamAV 支持的防病毒服务,使用 ICAP 作为通信协议。我想测试防病毒服务对恶意文档的响应,但当然,我不能使用实际上感染了恶意软件的文档。我找到了 EICAR 反恶意软件测试文件,但它似乎只能以 .txt 或 .zip 格式出现,并且系统只允许上传 Word 或 PDF。防病毒服务仅在“按原样”发送给它的情况下识别 EICAR,但在嵌入 Word 或 PDF 时不识别。

我的问题是:我如何创建一个被 ClamAV 识别为威胁的 Word 和/或 PDF 文档,尽管它实际上根本没有害处?

4

1 回答 1

1

我最初建议

由于 docx 是一个 zip,您可以尝试将 eicar.zip 重命名为 eicar.docx,这仅证明 docx 类似于 zip 进行审查/扫描,而不是 AV 可以检测到恶意 VBA 宏,这将是不同的有效负载。

但是,涉及 Apache Tika 文件验证的上传步骤阻止了这种简单化的方法,因为文件类型与预期不符。

我的第二个建议是

使用有效的 docx 重命名以使用资源管理器将 eicar 文本压缩到其中(或使用 zip add)并重命名为 docx,因为这可能会绕过 Tika 检查。

显然这奏效了。

同样,应该可以将 eicar.txt 嵌入 PDF 中,但再次检测并不意味着 av 正在扫描 JavaScript 漏洞,只是在 PDF 文件中看到纯文本签名,因此仅提示扫描了 PDF。

由于 PDF 加密,这更加困难,但是在编辑器中使用手工制作的文本文件附件,它可能不会被编码,只是存储为纯文本,足以让 eicar 触发器被看到。

它可能看起来像这样,但剪切和粘贴显示为文本的二进制文件可能会由于 ansi 行结尾编码而无法存储为 eicar.pdf。所以从下面的链接中获取二进制副本

%PDF-1.4
%µ¶

1 0 obj
<</Pages 2 0 R/Type/Catalog>>
endobj

2 0 obj
<</Count 1/Kids[3 0 R]/Type/Pages>>
endobj

3 0 obj
<</Contents 4 0 R/MediaBox[0 0 500 800]/Parent 2 0 R/Resources<</Font<</F1 5 0 R>>>>/Type/Page>>
endobj

4 0 obj
<</Length 57>>
stream
q BT /F1 24 Tf 1 0 0 1 50 720 Tm (Hello World!) Tj ET Q

endstream
endobj

5 0 obj
<</BaseFont/Courier/Subtype/Type1/Type/Font>>
endobj

xref
0 6
0000000000 65536 f 
0000000016 00000 n 
0000000062 00000 n 
0000000114 00000 n 
0000000227 00000 n 
0000000333 00000 n 

trailer
<</Size 6/Root 1 0 R/ID[<89311A609A751F1666063E6962E79BD5><FDDAE606D8247DFCBA7D13E1833DEDE3>]>>
startxref
395
%%EOF
%X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*
%%EOF

暂时可从https://gofile.io/d/53fylg获得,假设您的防病毒软件允许下载 :-)尝试 将下载保存为文本,否则我需要上传为 RAR

在此处输入图像描述

然而,这两个“阳性”将与任何 AV 正在搜索这些文件类型以查找当前已知漏洞的迹象一样好。

推荐下载本文底部的实时脚本运行版进行更深入的测试。 https://blog.didierstevens.com/2015/08/28/test-file-pdf-with-embedded-doc-dropping-eicar/

于 2021-12-15T18:50:13.567 回答