我正在编写一个Web应用程序,该应用程序将通过打开OLEDB连接来读取由经过身份验证的用户提交的Excel文件中的数据。 有人能告诉我以这种方式打开Excel文件的安全风险吗? 我知道危险的宏可能嵌入在Excel文件中,但使用OLEDB连接时仍然存在风险吗?
谢谢。
谢谢。
不,使用OLEDB从Excel工作簿中读取数据时不存在“Excel”安全风险。任何安全风险都将通过ADO(OLEDB)而不是Microsoft Excel应用程序发生。因此,宏不是问题,单元格公式也不是问题。
您可能想搜索“ado oledb security excel”以满足好奇心,但我认为您不会找到任何需要担心的内容。
第一个问题是,您需要确保上传文件后,公众无法访问它。确保文件存储在Web根目录之外。您还必须确保他们不会上传具有.asp
或.php
扩展名的文件,或包含../../../../../
的文件名。'content-type'是用户可控变量,检查此值是完全浪费时间。
接下来,当您以这种方式打开Excel文件时,它必须被解析。这会导致缓冲区溢出,例如this one。
确保您的系统完全更新,但即使如此,微软的安全记录非常糟糕,每年可能有很多天您都会面临漏洞。