在.NET中隐藏带有只读Web路径的Web shell

在最近一次渗透测试中,我发现了一个容易受到CVE-2020-1147 影响的SharePoint实例。我被要求在不运行任何命令的情况下构建Web Shell,以避免任何可能部署在主机上的EDR解决方案。由于目标SharePoint服务器以最小的特权在IUSR用户下运行,因此我们不能简单地通过利用反序列化漏洞(CVE-2020-1147)在Web目录中创建Web Shell。我记得以前在运行PowerShell命令时,攻击很容易被发现,所以需要更隐蔽的方法!

这篇文章说明了当我们存在代码执行漏洞但Web目录不可写时如何创建Web Shell,从理论上讲,我们应该能够执行此操作,因为我们的代码正在Web应用程序中执行,因此我想出了以下两种解决方案:

使用C#创建功能全面的Web Shell

尽管我很喜欢使用Web Shell,但是大多数功能强大的.NET都是HTML和C#代码的混合体。因此,清理它们以将其作为纯C#代码运行非常困难且耗时。我的解决方案是使用aspnet_compiler命令,以便从其临时编译文件中获取ASPX Web Shell的C#代码。

另一个问题是,当我们想与嵌入式Web Shell进行交互时,当易受攻击的页面和Web Shell期望完全不同的HTTP请求时,我们可能需要利用我们的易受攻击的功能,这可能会导致冲突或根本不适用。因此,URL和正文中所有与Web Shell相关的参数以及HTTP动词,内容类型,Cookie和其他自定义标头都应以某种方式封装

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值