首页 / 知识
关于安全性:确保上传的文件是安全的
2023-04-13 12:59:00

ensuring uploaded files are safe我的老板来找我,问如何确保通过网页上传的文件是安全的。他希望人们能够上载pdf和tiff图像(等等),而他真正关心的是有人在pdf中嵌入了病毒,然后对其进行查看/更改(并执行了病毒)。我只是读了一些程序,该程序可用于通过更改最不重要的位来破坏图像中包含的速记信息。可以使用类似的过程来确定没有植入病毒吗?有人知道任何可以清理文件的程序吗?
更新: http://www.softwarebyrob.com/2008/05/15/virus-scanning-from-code/ 我建议您通过ClamAV等防病毒软件运行您上传的文件。我不知道清理文件以删除病毒,但这至少可以让您在查看文件之前检测并删除受感染的文件。 图像文件中嵌入的病毒不太可能成为您应用程序的主要问题。 JAR文件将是一个问题。带有JAR预告片的图像文件可以作为Java小程序从Internet上的任何页面加载,并且具有相同来源的绑定(cookie)指向您的应用程序和服务器。 处理图像上载的最佳方法是裁剪,缩放并将其转换为其他图像格式。图像在转换前后应具有不同的大小,哈希值和校验和。例如,Gravatar为堆栈溢出提供"伙伴图标",它会强制您裁剪图像,然后将其转换为PNG。 是否可以构造将利用Word或Acrobat中的漏洞的恶意PDF或DOC文件?大概。但是ClamAV在阻止这些攻击方面做得不好。这些不是"病毒",而是查看器软件中的漏洞。 这取决于您公司的预算,但是可以在Web服务器和外界之间放置一些硬件设备和软件应用程序来执行这些功能。其中一些是内置防病毒软件的硬件防火墙。有时将它们称为应用程序网关或应用程序代理。
以下是使用Clam-AV的开源网关的链接: 您可能需要将实际的病毒扫描程序链接到上传过程(许多病毒扫描程序可以确保在浏览器中下载的文件是安全的)。 为了自己执行此操作,您必须保持最新状态,这意味着保留病毒定义库,这可能超出了应用程序的范围(根据组织的规模,甚至可能不可行) )。 使用反向代理设置,例如 www <-> HAVP <->网络服务器
HAVP(http://www.server-side.de/)是一种通过ClamAV或任何其他商业防病毒软件扫描http流量的方法。这将防止用户下载受感染的文件。 但是,它在上载时不起作用,因此它不会阻止文件存储在服务器上,而是会阻止文件下载并因此传播。因此,请将其与常规文件扫描(例如clamscan)一起使用。 是的,无论扩展名如何,ClamAV都应扫描文件。 |
最新内容
相关内容
Python实现批量文件的压缩处理
Python实现批量文件的压缩处理,项目,信息,分析,数据,软件,培训,文件夹,文件,源文件,目标,一、前言接到项目求助,需要对上千个文件夹中的文件进Python 3.6 中针对文件系统的神奇
Python 3.6 中针对文件系统的神奇方法,数字,代码,数据,标准,信息,培训,首次,工作,文件名,常数,Python3.6首次发布于2016年,尽管它已经发布了很Python如何在后台自动解压各种压缩
Python如何在后台自动解压各种压缩文件?,代码,综合,工具,分析,检测,培训,文件,文件夹,模块,结尾,一、需求描述编写一个Python程序,每次下载压Python处理文件的几个常用小知识
Python处理文件的几个常用小知识,数据,代码,信息,文件,系统,培训,分析,交通,名称,名字,python这门语言有个很大的用途就是使用它来进行文件处用Python来自动化处理文件
用Python来自动化处理文件,数据,代码,模具,时间,文件,电脑,投入,工具,培训,项目,当代码投入生产时,你需要去组织代码的文件。读写、创建和运行Python文件读取相关方法
Python文件读取相关方法,数据,位置,文件,中行,培训,方法,字节,内容,结果,字符串,我们知道,对文件的读取操作需要将文件中的数据加载到内存中,而如何在 python 中打开文件?
如何在 python 中打开文件?,名称,单位,培训,模式,文件,表示,缓存,路径,函数,定义,使用内置函数open就可以打开文件。先来看下python中对openpython文件打开模式
python文件打开模式,观点,数据,文件,权威,管理,系统,名称,资料,培训,模式,我们先来看下在Python、PHP和C语言中打开文件的函数定义Python#PytPython文件操作步骤示例
Python文件操作步骤示例,异常,代码,信息,文件,设计,简介,通用,意外,中级,培训,我们来读取这样一个文本文件:song.txt,该文件的字符编码为utf-8python文件读写实现原理与操作步骤
python文件读写实现原理与操作步骤,数据,文件,培训,操作系统,操作,对象,磁盘,函数,可能会,原理,1.文件读写实现原理文件读写就是一种常见的IOPython文件读取相关方法
Python文件读取相关方法,数据,位置,文件,中行,培训,方法,字节,内容,结果,字符串,我们知道,对文件的读取操作需要将文件中的数据加载到内存中,而Python可执行文件和模块
Python可执行文件和模块,标准,培训,模块,文件,属性,上面,内容,变量,函数,源码,python源代码文件按照功能可以分为两种类型:用于执行的可执行程