Sqli-labs Less-42-45

Less-42

  我们打开这一关,发现是登录数据库的界面,我们在前面做这种界面的关卡的时候是二次注入,登录数据库然后创建数据库并修改密码,我们这里还是一样,只是改为使用堆叠注入。还要注意的一点是,这里的数据是Post数据,所以我们的注释符需要使用#,而不是--+。

  使用admin    admin登录,回显正常:

   我们打开login.php查看源码,发现只有username被mysqli_real_escape_string()函数处理了,password并没有被处理,所以我们可以果断在password处进行堆叠注入:

   我们注入之前可以现在浏览器把password的type改成明文格式方便观察:

  然后就可以正常输入用户名,在password进行堆叠注入了,先查看Mysql数据库,发现里面的表如图所示:

  a';create table liuhui42 like users;insert into liuhui42 select * from users; #

   虽然这里回显异常,但是我们再查看数据库,发现表已经创建成功:

Less-43:用?id=1’)包裹

  除了包裹方式,其他过程与Less-42别无二致,不再赘述。

  a');create table liuhui43 like users;insert into liuhui43 select *from users; #

Less-44:用?id=1"包裹

  除了包裹方式,其他过程与Less-42别无二致,不再赘述。另外,因为这一关没有报错,所以不能使用报错注入。

  a“;create table liuhui44 like users;insert into liuhui44 select *from users; #

Less-45:用?id=1')包裹 

  除了包裹方式,其他过程与Less-42别无二致,不再赘述。另外,因为这一关没有报错,所以不能使用报错注入。

  a');create table liuhui45 like users;insert into liuhui45 select *from users; #

原文地址:https://www.cnblogs.com/FHBBS/p/12370916.html