我想在文件上传到服务器之前对其进行病毒和恶意软件扫描。例如,用户上载文件后,应使用扫描仪来检测是否存在病毒或恶意软件,并立即将其拒绝。无论如何,在将文件上传到服务器之前是否要对其进行扫描?例如使用Javascript或任何软件开发人员工具。
谢谢
答案 0 :(得分:1)
在将文件上传到服务器之前是否仍要对其进行扫描?-答案为否,您无法控制最终用户的操作系统
添加到@Mjh,您可以在文件上传后在服务器上对其进行扫描
在上传之前,您可以运行一些验证,
答案 1 :(得分:0)
JavaScript在某人的浏览器中运行。是什么意思?
这意味着:
证明它可以被篡改并且不能被信任。
上载文件时,可以通过HTTP协议进行操作。这意味着JavaScript一直完成到这一点为止,并且发送到服务器的所有数据对于用户都是可见的,用户可以对其进行更改。
因此,如果存在JS上载过滤器,则其本质上是不安全的,这就是为什么没有JS“防病毒扫描程序”的原因。
文件上传后,可以在服务器上使用。
答案 2 :(得分:0)
好吧,这可以做到。例如,您可以在浏览器中使用javascript仲裁内容,然后选择仅在内容安全的情况下才将表单提交到服务器。
这是一个示例代码的演练以及所有要做的事情:https://docs.scanii.com/articles/client-side-content-arbitration.html
这使用scanii.com进行内容分析,但是您可以遵循完全相同的过程,只需将EC2实例替换为scanii.com,即可代理已使用的任何反病毒软件。
此三足式仲裁系统的一个非常重要的部分是,您必须验证服务器上仲裁的真实性,以防止有人仅仅在客户端弄乱JavaScript并绕过整个过程。您可以在以下示例代码中看到该逻辑:https://github.com/uvasoftware/scanii-token-sample/blob/master/app.js#L56
本质上,当表单/文件最终发布时,您需要调出已处理的服务(在上面的示例中为scanii.com),以确保确实对文件进行了分析并认为是安全的。
这听起来比实际要复杂得多,我们已经有很多客户在做这件事,并且一旦安装就很棒了,因为您将大部分工作都转移到了浏览器中,并且服务器中没有不良内容。