一次实战中使用xp_cmdshell建表写一句话

0x00 信息搜集

闲着无聊,去shodan逛一逛发现一个可疑站点,抱试试水的心态点了进去,看到url有传参,习惯性加单引号发现报错,并且爆出路径信息c:\code\css\,突然一惊,难道有注入?

一次实战中使用xp_cmdshell建表写一句话_第1张图片
wappalyzer获取到的信息是aspx + iis7.5 +windows,没有数据库信息,端口扫一下,没看到3306和1433,但感觉大概率是mssql。

一次实战中使用xp_cmdshell建表写一句话_第2张图片
一次实战中使用xp_cmdshell建表写一句话_第3张图片
御剑和dirsearch目录扫描搞起来,御剑扫不着东西,dirsearch发现一个/admin/login.aspx,大概猜到物理路径是啥了,还需要确定。

一次实战中使用xp_cmdshell建表写一句话_第4张图片

0x01 漏洞利用

sqlmap跑一下,看看是不是管理员权限,运气不错显示是dba,并且知道数据库为mssql
一次实战中使用xp_cmdshell建表写一句话_第5张图片

使用sql-shell查看xp_cmdshell是否可用,运气好的时候是挡不住的:P
在这里插入图片描述

如果未开启xp_cmdshell可以使用以下命令开启,前提是要支持堆叠查询注入

EXEC sp_configure 'show advanced options',1;//允许修改高级参数
RECONFIGURE;
EXEC sp_configure 'xp_cmdshell',1;    //打开xp_cmdshell扩展
RECONFIGURE;

建表查询物理路径,为写shell铺好路
在这里插入图片描述
需要注意的是:for /r c:\ %i in (login*.aspx) do @echo %i 这个dos命令是遍历刚才目录扫描到的/admin/login.aspx在哪个目录,然后使用insert语句插入到新建的表中,再查询表就可以知道具体的物理路径了,以下是我再本机上遍历C盘txt文件的效果:
一次实战中使用xp_cmdshell建表写一句话_第6张图片
查询物理路径,得到c:\code\css\admin\login.aspx

一次实战中使用xp_cmdshell建表写一句话_第7张图片
万事俱备,只欠写shell,这里也需要注意一点,dos对尖括号<>会报错,所以需要用^注释一下,或者echo"一句话" > hack.aspx 用双引号括起来。

在这里插入图片描述

0x02 上菜刀

一次实战中使用xp_cmdshell建表写一句话_第8张图片

你可能感兴趣的:(复现与实战)