有人说 SQL 注入已经落后了,请问可以捶他吗???
上次写了一篇文关于 SQL 注入的文章,居然有人说 SQL 注入过时了!!!
前言:
本次用 4 个有趣的实战案例来分别讲:狠--常见 getshell 快--快速报错注入准--字符长度 100 限制下注入绕--绕福某大学安全狗
虽然只有 4 个实战案例,但真的挺实用、通用哦,当然此次都是站在前辈肩膀上实践总结的可能还不够全,如有分析不足的地方望各位大佬指正!
狠--常见 getshell:实战一:这是一次挖到一个小 OA 系统的通用管理员弱口令,后台可以执行 sql 语句并且是 sa 权限,这运气没谁了哈哈但可以去 edu 刷分的大部分目标 xp_cmdshell 却废了.只能恰个弱口令.......
先说可以 xp_cmdshell 部分:
xp_cmdshell 写 shell 技巧:条件:sa 权限,常见问题:xp_cmdshell 存储过程在 SQL Server 2005 以后默认关闭,需要手动开启
开启方法
上面执行开启命令后,执行一下 whoami ,system 权限,直接起飞!
写 shell 技巧:
先找网站根路径:
直接写入 aspx 文件同目录却访问不了,麻了!问了一下同事,他说:估计做了和 springboot 类似的路由映射,但静态文的目录可能不会走路由. 访问路径如下
故再找根路径下绝对静态可解析路径:
写 shell,这里也需要注意一点,dos 对尖括号<>会报错,所以需要用^转义一下,或者 echo"一句话" > hack.aspx 用双引号
然后倚天大剑(蚁剑)连接http://x.x.x.x/login/login/xx.aspx
即可.
其它 gethell 大全:
剩下不可以 xp_cmdshell 的,但其它大多 getshell 方法,都没法用
这些方法前提条件都是:SQL Server 2008 不可用,SQL Server 2000 可用因为我这版本是 SQL Server 2008 不可用,吐了!!于是只好备份 getshell
备份 getshell:(至少 DBO 权限)
log 备份(推荐):
优势:1、重复性好,多次备份的成功率高 2、相对于差异备份而言,shell 的体积较小利用条件:1、前提得知绝对路径,并且可写 2、站库不分离 3、数据库必须被备份过一次
差异备份的条件:
1、前提知道绝对路径,路径可写。2、HTTP 500 错误不是自定义 3、WEB 和数据在一块。还有的就是数据库中不能存在 %号之类的,不然也是不成功的。4、数据量不能太大
小结:
备份 getshell 这一般对 php 和 asp 有用,注意 asp 备份生成的文件经常有没有闭合的问题,但 aspx 我暂时没找到成功例子我这是 aspx 的 2 种备份都试了,但因为备份后会插入多个 shell 如下
导致:<%@ Page Language=xx %>
出现多次,报错:只能有一个 page 指令 试了闭合和其它方法不行
快--快速报错注入:实战二:mssql 报错注入很方便,但柯大佬也没完善总结,我试了几种方法,这里快速报错最快,且在之后的手工注入很实用:
注册一个账号但要审核,如上图消息里得到账号规律,对后 4 位数爆破,成功 00xxxxx 123456
然后登录后台,在某处发现 sql 注入:
我是一名安全渗透测试工程师,热爱安全行业,用心做安全,在工作的同时学习知识,另外,我积攒了一些网络安全的学习视频和资料,需要的可以下载学习【资料领取】
评论