11

我们正在实施一个重点关注安全性的企业应用程序,其中包括文件上传。这些文件需要进行病毒扫描,但也需要加密。

当前的过程是文件被上传,然后通过加密器流式传输到磁盘上的临时存储区域。然后调用病毒扫描程序,文件被即时解密,通过套接字流式传输到 ClamAV - 然后从套接字返回病毒状态。

问题是 ClamAV 似乎在扫描之前写入磁盘上的临时区域,这意味着文件系统上的未加密、潜在敏感数据。

有谁知道如何解决这一问题?可能通过将 ClamAV 配置为仅扫描内存(我的谷歌搜索没有结果),或者可能有一些替代建议?

4

3 回答 3

7

我在这里假设您正在使用 clamd,因为您是通过套接字而不是 clamscan cli 工具与它交谈。

在这种情况下,您可以通过 clamd.conf 中的 TemporaryDirectory 指令对其进行配置,以使用 dm-crypt (https://help.ubuntu.com/community/EncryptedFilesystemHowto)之类的方式指向加密文件系统进行临时存储 - 我希望这个有帮助。

来自 man 5 clamd.conf 的参考:

   TemporaryDirectory STRING
          Optional path to the global temporary directory.
          Default: system specific (usually /tmp or /var/tmp).
于 2012-07-25T03:28:20.390 回答
3

有一个很好的例子:

使用 ClamAV Antivirus 检测病毒的 Java API

http://nsinfra.blogspot.ca/2011/06/java-api-to-detect-virus-using-clamav.html

这篇文章描述了使用 java API 扫描文件以检测木马、病毒、恶意软件和其他恶意威胁的方法。

已涵盖以下项目: 关于 ClamAV 杀毒软件 在 Linux 机器上安装 ClamAV 杀毒软件的说明 使用 ClamAV Java API 扫描文件以检测病毒的方法

于 2014-01-30T17:14:53.320 回答
1

我能想象的最简单的事情是使用 ram 磁盘。

也许你应该检查一下 ClamAV 是否​​有更复杂的 API 来完成这样的任务。

于 2012-07-24T09:24:49.773 回答