sqlilab less11-less18「建议收藏」

sqlilab less11-less18「建议收藏」 less-11 uname和passwd直接带入查询,万能密码 sqlmap自动搜索表单,或者抓包后用-r参数 less-12 post数据用小括号进行包裹,构造万能密码”) or 1=1 …

	sqlilab less11-less18[数据库教程]

技术图片

 

 

 

less-11

uname和passwd直接带入查询,万能密码

技术图片

 

 

 sqlmap自动搜索表单,或者抓包后用-r参数技术图片

 

 

 


 

less-12

post数据用小括号进行包裹,构造万能密码”) or 1=1 #

技术图片

 

 


 

less-13

将mysql_error()返回前端,且用‘)包裹,构造‘) or 1=1 #

技术图片

 

 


 

less-14

post的数据用双引号包裹,构造万能密码”or 1=1 #

技术图片

 

 


less-15

报错不返回前端,考虑布尔和时间盲注

技术图片

 

 

技术图片

 

 技术图片

 

 技术图片

 

 


less-16

与15思路相同,但是由小括号,双引号包裹

技术图片

 技术图片

 

 

 技术图片

 

 

 


 

less17

这里是更新用户的密码。

加入了过滤函数,只将uname带入查询,并对uname进行处理

 1 function check_input($value)
 2     {
 3     if(!empty($value))   //不能为空
 4         {
 5         // truncation (see comments)
 6         $value = substr($value,0,15);   //只获取前15位字符串
 7         }
 8 
 9         // Stripslashes if magic quotes enabled
10         if (get_magic_quotes_gpc())  如果开启了gpc
11             {
12             $value = stripslashes($value);  用这个函数处理
13             }
14 
15         // Quote if not a number
16         if (!ctype_digit($value))如果不是数字的话,对特殊字符进行转义,并包裹单引号
17             {
18             $value = "‘" . mysql_real_escape_string($value) . "‘";
19             }
20         
21     else
22         {
23         $value = intval($value);
24         }
25     return $value;
26     }

代码100分

但是,防御函数只处理了uname变量,并未对passwd处理。

技术图片

 

 技术图片

 

 


 

less-18

这里提示了IP,可能是xxf注入

技术图片

 

 通过分析源码,这里对uname和passwd参数进行了处理,但是还有两个新的全局变量可控,ip和user-agent

代码100分 1 function check_input($value)
 2     {
 3     if(!empty($value))
 4         {
 5         // truncation (see comments)
 6         $value = substr($value,0,20);
 7         }
 8 
 9         // Stripslashes if magic quotes enabled
10         if (get_magic_quotes_gpc())
11             {
12             $value = stripslashes($value);
13             }
14 
15         // Quote if not a number
16         if (!ctype_digit($value))
17             {
18             $value = "‘" . mysql_real_escape_string($value) . "‘";
19             }
20         
21     else
22         {
23         $value = intval($value);
24         }
25     return $value;
26     }
27 
28 
29 
30     $uagent = $_SERVER[‘HTTP_USER_AGENT‘];
31     $IP = $_SERVER[‘REMOTE_ADDR‘];
32     echo "<br>";
33     echo ‘Your IP ADDRESS is: ‘ .$IP;
34     echo "<br>";
35     //echo ‘Your User Agent is: ‘ .$uagent;
36 // take the variables
37 if(isset($_POST[‘uname‘]) && isset($_POST[‘passwd‘]))
38 
39     {
40     $uname = check_input($_POST[‘uname‘]);
41     $passwd = check_input($_POST[‘passwd‘]);
42     
43     /*
44     echo ‘Your Your User name:‘. $uname;
45     echo "<br>";
46     echo ‘Your Password:‘. $passwd;
47     echo "<br>";
48     echo ‘Your User Agent String:‘. $uagent;
49     echo "<br>";
50     echo ‘Your User Agent String:‘. $IP;
51     */
52 
53     //logging the connection parameters to a file for analysis.    
54     $fp=fopen(‘result.txt‘,‘a‘);
55     fwrite($fp,‘User Agent:‘.$uname."
");
56     
57     fclose($fp);
58     
59     
60     
61     $sql="SELECT  users.username, users.password FROM users WHERE users.username=$uname and users.password=$passwd ORDER BY users.id DESC LIMIT 0,1";
62     $result1 = mysql_query($sql);
63     $row1 = mysql_fetch_array($result1);
64         if($row1)
65             {
66             echo ‘<font color= "#FFFF00" font size = 3 >‘;
67             $insert="INSERT INTO `security`.`uagents` (`uagent`, `ip_address`, `username`) VALUES (‘$uagent‘, ‘$IP‘, $uname)";
68             mysql_query($insert);
69             //echo ‘Your IP ADDRESS is: ‘ .$IP;
70             echo "</font>";
71             //echo "<br>";
72             echo ‘<font color= "#0000ff" font size = 3 >‘;            
73             echo ‘Your User Agent is: ‘ .$uagent;
74             echo "</font>";
75             echo "<br>";
76             print_r(mysql_error());            
77             echo "<br><br>";
78             echo ‘<img src="../images/flag.jpg"  />‘;
79             echo "<br>";
80             
81             }
82         else
83             {
84             echo ‘<font color= "#0000ff" font size="3">‘;
85             //echo "Try again looser";
86             print_r(mysql_error());
87             echo "</br>";            
88             echo "</br>";
89             echo ‘<img src="../images/slap.jpg"   />‘;    
90             echo "</font>";  
91             }
92 
93     }

当–level参数设定为3或者是3以上时,会尝试对User-Agent进行注入测试

 

sqlilab less11-less18

原文地址:https://www.cnblogs.com/hongren/p/13396745.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/6982.html

(0)
上一篇 2023-03-29
下一篇 2023-03-29

相关推荐

  • mysql查询(七)「终于解决」

    mysql查询(七)「终于解决」查询学过「张三」老师授课的同学的信息 多表联合查询 and(和) 第一种: 命令:select ex_xueshengbiao_95.Sid,ex_xueshengbiao_95.Sname,ex_…

    2023-03-31
    169
  • linux终端退出python的简单介绍

    linux终端退出python的简单介绍Windows和Linux系统如何退出python命令行

    2023-11-03
    139
  • MySQL数据篇(八)-

    MySQL数据篇(八)-思考:一般我们的数据都是存储在数据库里面,对于常规的CRUD操作都是用代码实现,比如使用PHP做项目,所有的数据处理都需要主动操作代码实现。如果我们现在有一项目,业务需要在用户下单后,对用户的订单进行

    2022-12-20
    149
  • 用Python判断列表是否相同

    用Python判断列表是否相同列表是Python中最常用的数据类型之一,通常用于存储一组有序的数据。在某些情况下,我们需要判断两个列表是否相同,比如在测试中验证函数的输出是否正确,或者在比较用户提交的数据和标准答案时。本文将介绍如何使用Python判断两个列表是否相同。

    2024-05-13
    62
  • 用Python实现可变空白的美观排版

    用Python实现可变空白的美观排版排版作为出版的一个重点环节,对于一本书籍或者一份报纸杂志,其排版质量直接影响着读者的阅读体验。在排版过程中,空白的使用非常重要。空白可以分隔不同的内容,同时可以让阅读更为舒适和美观。

    2024-03-15
    97
  • Flink 作业提交流程「建议收藏」

    Flink 作业提交流程「建议收藏」大家好,我是小寒~ 今天给大家带来一篇 flink 作业提交相关的文章。 我们都知道,在开发完一个 flink 应用程序后,打包成 jar 包,然后通过 FLink CLI 或者 Web UI 提交作

    2023-05-25
    131
  • oracle创建触发器(例:当有操作x_yonghu表指定字段并且字段有修改时,插入日志表)

    oracle创建触发器(例:当有操作x_yonghu表指定字段并且字段有修改时,插入日志表)最近总发现用户表一些数据被删了,找不到原因,后面通过创建触发器来排查,当有操作x_yonghu表时,记录下来插入日志表中。 create or replace trigger trg_x_yonghu

    2023-03-25
    152
  • Spyderdebug是什么?

    Spyderdebug是什么?Spyderdebug是一种Spyder IDE的插件,它可以提高Python代码的可调试性。在Spyderdebug的帮助下,开发者可以更容易地理解代码在运行时的行为和状态,并可以更快速地诊断问题。Spyderdebug整合了Python的pdb(Python调试器)和Qt界面,使得开发者可以在Spyder IDE自身干净整洁的界面下完成源代码的编辑、调试和数据观察。

    2024-09-17
    25

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注