千家信息网

如何通过BDC反序列化在Microsoft SharePoint上执行任务

发表于:2025-01-19 作者:千家信息网编辑
千家信息网最后更新 2025年01月19日,本篇文章为大家展示了如何通过BDC反序列化在Microsoft SharePoint上执行任务,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。漏洞细节这个漏洞存
千家信息网最后更新 2025年01月19日如何通过BDC反序列化在Microsoft SharePoint上执行任务

本篇文章为大家展示了如何通过BDC反序列化在Microsoft SharePoint上执行任务,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

漏洞细节

这个漏洞存在于微软SharePoint中的业务数据(BDC)连接服务之中,由于自定义的BDC模型中可以使用任意的方法参数类型,从而导致Microsoft SharePoint 2016中的业务数据连接(BDC)服务容易受到XmlSerializer流的任意反序列化的攻击。早

SharePoint允许使用业务数据连接模型文件格式(MS-BDCMFFS)数据格式来指定自定义的BDC模型,这种规范中的部分内容为方法和参数定义。下面给出的是微软提供的样本

上述代码定义了一个名叫GetCustomer的方法,它负责封装一个名叫sp_GetCustomer的程序,这两者的输入参数(Direction="In")和返回参数(Direction="Return")都使用了各自对应类型的描述来定义。

在上述样本中,输入参数的原始类型为System.Int32,这就没什么大问题。但如果定义的BDC模型参数类型为Microsoft.BusinessData.Runtime.DynamicType,就会出现问题了。这种方案的好处在于允许开发人员灵活地通过该参数传递不同类型的值,但坏处就是为反序列化的调用方提供了任意的XmlSerializer流。

漏洞利用

我们的测试设备为Microsoft SharePoint Server 2016,并且安装了KB4464594,操作系统版本为64位的Windows Server 2016 update 14393.3025。

漏洞利用步骤及过程如下:

1、管理员首先需要自定义一个BDC模型,其中包括一个参数类型为Microsoft.BusinessData.Runtime.DynamicType的方法。针对自定义的BDC模型,程序会使用数据库模型样本来作为模板对其进行大规模简化:

2、接下来,管理员需要通过SharePoint管理中心|应用管理|管理服务应用程序|业务数据连接服务来上传BDC模型。当然了,这个操作也可以通过PowerShell来完成:

3、然后,攻击者就可以调用这个方法了,并通过函数参数来传递攻击Payload:

在SharePoint服务器上,你将会发现生成了两个cmd.exe实例以及一个win32calc.exe实例,它们都会以SharePoint应用程序池的身份运行。

如果你想要查看代码路径的话,你可以把调试器绑定到SharePoint应用程序的w3wp.exe上,并在system.web.dll上设置断点。

我们可以通过System.Web.dll!System.Web.UI.ObjectStateFormatter.Deserialize来查看调用堆栈:

需要注意的是,即便是你能够成功利用该漏洞并实施攻击,你也无法拿到服务器端的管理员权限,不过攻击者可以利用该漏洞在SharePoint应用程序池以及SharePoint服务器账号的上下文环境中执行他们的代码。根据微软方面的描述,他们已经在9月份推送的补丁中修复了此漏洞。

上述内容就是如何通过BDC反序列化在Microsoft SharePoint上执行任务,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注行业资讯频道。

参数 模型 漏洞 服务 数据 程序 类型 管理 方法 应用 攻击 序列 业务 应用程序 代码 内容 服务器 样本 管理员 微软 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 国家网络安全法治宣传周主题 安顺网络安全系统价格 江苏网络软件开发记录 武汉好软件开发公司 新乡两年制计算机网络技术 金康新能源软件开发部 数据库怎么生成拼音 原神服务器不同可以多人 联想服务器的管理页面 sci是外文全文数据库 通过扫描录入数据库 ibm服务器风扇如何减速 关于加强网络安全的重要论述 网络安全的监督管理 适用 中国电子网络安全与信息化 深圳海纳互联网科技有限公司 分子动力学软件开发 redis数据库 STM32的软件开发模式及特点 武汉大学服务器申请 杭州小蜴网络技术有限公司面试 医保网络安全和数据安全自查 阿里云服务器如何退款 服务器维护和管理的重要性 ip地址连接服务器记不住密码 0灯各服务器首杀 为什么主题商店显示服务器正在忙 朋友圈自动转发软件开发 数据库设计两个方面的内容 怎么配置服务器dell
0