原文中文,约1900字,阅读约需5分钟。
📝
内容提要
本文介绍了在asp.net中获取shell的几种实际案例,包括预编译加跨目录文件上传和反序列化两种方法。预编译的站点可以通过修改配置文件或直接上传编译好的aspx文件来实现文件上传。反序列化可以执行csharp代码,通过注入内存马来获取shell。最后介绍了基于反序列化的命令执行方法,通过提权和使用iis的appcmd命令添加网站来获取shell。这些方法在一些需要webshell的情况下非常有效。
🎯
关键要点
-
本文介绍了在asp.net中获取shell的几种实际案例。
-
预编译站点通过修改配置文件或直接上传编译好的aspx文件实现文件上传。
-
反序列化可以执行C#代码,通过注入内存马获取shell。
-
ysoserial.net的GhostWebShell代码可以用于反序列化攻击。
-
基于反序列化的命令执行方法需要提权,并使用iis的appcmd命令添加网站。
-
appcmd可以创建和配置站点、应用程序、应用程序池和虚拟目录。
-
添加网站时需设置应用程序池为.NET v2.0以执行aspx脚本。
-
该方法在某些需要webshell的情况下非常有效,但有权限和执行命令的限制。
🏷️