ViewStates反序列化情报,国外安全研究者利用 .NET 机器密钥实施代码注入攻击

图片

近期,Microsoft Threat Intelligence监测到一起由未知威胁行动者发起的攻击事件。该行动者利用从公开资源中获取的 .NET 机器密钥,成功注入了恶意代码,并部署了Godzilla,尽管其活动范围有限。经调查,发现问题的根源在于部分开发人员错误地从可公开访问的代码文档和存储库中整合了已公开的 .NET 机器密钥,为威胁行动者提供了可乘之机。


01. ViewState攻击

ViewState是 .NET Web窗体用于在回发之间保存页面和控件状态的一种机制。ViewState数据被存储在页面上的隐藏字段中,并使用Base64编码。

为保护ViewState免受篡改和信息泄露,.NET页面框架使用机器密钥:ValidationKey和DecryptionKey。这些密钥可自动生成并存储在注册表中,也可在配置文件中手动指定。

若这些密钥被盗或泄露给威胁者,他们可利用这些密钥制作恶意ViewState,并通过POST请求发送至网站。当目标服务器上的.NET运行时处理该请求时,由于使用了正确的密钥,ViewState将被解密并验证通过。随后,恶意代码将被加载到工作进程内存中并执行,使威胁者能够在目标IIS Web服务器上获得远程代码执行能力。

为了直观展现此类攻击的危害,并在我们的dot.Net安全代码审计课程中深入讲解,我们设计了视频教程和demo代码案例。通过这些材料,可以亲自挖掘漏洞,并观察实际操作触发漏洞的过程。以下图示展示了相关的内容和演示效果。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

dot.Net安全矩阵

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值