1

我们有一个基于 Web 的应用程序,其中用户可以选择将文档/文件上传到我们的数据库中。在上传任何文档/文件之前,我们希望将文件发送给一些网站(如http://virusscan.jotti.org/en )提供的免费在线病毒扫描,从他们那里获取扫描状态。只有响应状态OK,才允许上传到我们的数据库。

我什至尝试了一个解决方案:lindaocta.com/?cat=20

我的问题是:

1) 我如何在我的应用程序中处理将文档/文件直接发送到免费的在线病毒扫描程序网站而不将文档下载到我的服务器

2)如今的Web应用程序是使用AJAX开发的,因此响应可以在页面中逐步更新。如果我尝试阅读免费在线病毒扫描程序网站返回的响应,这不是我所期望的。我该如何解决这种情况?

技术 操作系统:RedHat Linux ES5.0 Java 1.6 JSP Servlets Tomcat v6.0.10

4

1 回答 1

1

1) 您必须至少通过您的服务器代理请求,以便有机会检查病毒扫描程序的响应。如果客户直接发布到 AV 公司,您的 servlet 将被排除在循环之外,除非 AV 站点提供某种基于令牌的第 3 方验证系统。什么是免费的 AV 网站?

2)永远不要在客户端(浏览器)端处理任何安全业务逻辑,无论是通过AJAX还是任何其他方法。攻击者可以简单地修改 javascript 并伪造来自 AV 扫描仪站点的积极响应。

为什么您如此害怕将可能不安全的文件下载到您的服务器?只需将其上传到您创建的特殊的非公开可浏览目录(没有其他程序正在寻找配置文件),扫描病毒,如果没有通过则将其删除。如果您从不尝试执行它,并且它没有覆盖某些配置文件或内核文件或其他东西,那么您可能已经做得足够了。

于 2009-09-30T14:34:49.387 回答