8wDlpd.png
8wDFp9.png
8wDEOx.png
8wDMfH.png
8wDKte.png

.NET 通过 Microsoft Jet 引擎访问受感染的 Excel 文件(带有勒索软件),这会影响或感染服务器吗?

ngomez 2月前

62 0

我们有一个简单的 ASP.NET Web 应用程序,它通过上传页面读取 Excel 文件并在数据库中插入行。用户正在上传一个 Excel 文件,该文件填充了 MSSQL 数据库中的表格。我们

我们有一个简单的 ASP.NET Web 应用程序,它通过上传页面读取 Excel 文件并在数据库中插入行。用户正在上传填充 MSSQL 数据库中表的 Excel 文件。

我们正在通过像这样的简单代码块读取 Excel 文件。

Dim con As New OleDb.OleDbConnection()
con.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source= " & filePath & ";Extended Properties=Excel 12.0"
'Get data from Exel into a DataFile
Try
    con.Open()
    Dim cmd As New OleDb.OleDbCommand("SELECT * FROM [Sheet1$]", con)
    Dim da As New OleDb.OleDbDataAdapter()
    da.SelectCommand = cmd
    Dim ds As New DataSet()
    da.Fill(ds, "DataSet")
    Return ds.Tables(0)
Catch ex As Exception
    HttpContext.Current.Session("Error") = "err: " & ex.Message
    Throw ex
    Return New DataTable()
Finally
    con.Close()
End Try

通过我们的应用程序读取恶意 Excel 文件是否会感染运行该页面的服务器?

Jet Engine 是否如此强大,以至于 它可能会 通过代码访问行时 嵌入在受感染的 Excel 文件中的恶意代码

帖子版权声明 1、本帖标题:.NET 通过 Microsoft Jet 引擎访问受感染的 Excel 文件(带有勒索软件),这会影响或感染服务器吗?
    本站网址:http://xjnalaquan.com/
2、本网站的资源部分来源于网络,如有侵权,请联系站长进行删除处理。
3、会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。
4、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
5、站长邮箱:yeweds@126.com 除非注明,本帖由ngomez在本站《asp.net》版块原创发布, 转载请注明出处!
最新回复 (0)
  • 简单的回答是肯定的,这是可能的。世界上有两种类型的恶意标准办公文档:

    • 基于宏的恶意活动

    基于宏的感染文件对于您来说并不是那么危险,因为它们是嵌入在文档中的一些额外对象,由用户交互触发,或者您的应用程序中的一些代码会自动执行宏,所以如果您没有任何代码在办公文档内执行宏,就不必担心办公文档被宏脚本感染!

    • 利用恶意活动

    另一方面,受感染的文档包含针对某些错误或逻辑功能等的漏洞。这些文件非常危险,因为它们利用了文档的标准功能(如解析器)。因此,如果您解析此类文件的底层 API 或引擎实现并使用了被利用的此功能,您的程序可能会受到影响!

    最后,如果您想保护服务器免受这种情况的感染,您应该实现或使用现有的沙盒产品,以防止执行的文件对系统进行任何更改,并防止执行文件的网络和 IO 活动,并且为了更安全,最好在单独的机器或 VM 上进行解析过程,而不是直接在主服务器上进行,只需将结果返回给服务器。但一般来说,沙盒解决方案就足够了。

    例如,下面是通过谷歌搜索“Microsoft Jet driver Exploit”找到的一些 Jet driver 漏洞的列表:

    • MS08-028
    • CVE-2000-0325
    • CVE-2005-0944
    • CVE-2005-0944

    也许这种情况根本不会发生,因为安全专家在流行软件和工具发布之前会对其进行代码审查、模糊测试、渗透测试和漏洞赏金测试,这就是为什么你看到像 Jet 驱动程序这样的底层流行软件和工具的漏洞很少的原因,但即使在安全方面也没有什么是绝对的,没有人可以声称他的产品是安全的。

    最后,这取决于您开发的平台以及安全性对您和您的产品有多重要。我的答案是学术性的,可能不会发生。但即使是绝对可能的。因此,您应该根据您的需要和风险选择最佳解决方案;)

返回
作者最近主题: