- 首先搭建dvwa环境************下载地址************</br>
-
下面是mac下平台的配置(mac+apache+mysql+php=mamp):
-
然后是平台配置文件../config/config.inc.php:
</br>
- 平台账号/密码:admin/password
首次访问install.php
然后观察各项配置是不是绿色权限通过,如发现不是就进入目录设置一下文件权限和php配置即可。最后安装数据库。
然后登入后把security等级调到low
我们看注入测试的练习
首先一些基础的sql语句可以上这边获知:********click-me********
下面我们看下select的一个非常容易理解的特性,也就相当于某些程序语言的echo:</br>
-
这个时候应该使用select比之前更加性感了对不!
我们开始一些基础查询先了解下dvwa的数据库:</br>
-
我们开始测试:</br>
-
这里我们输入“1”,看到他返回三行,一行是id,一行是first name,一行是username</br>
-
这时候的url栏变成了如下:
-
那么我们手动修改这个id=2的时候,url和页面变成了:
-
那么很显然可以推测,这里传入数据库查询的参数“id”是可控的不?所以这边当前状态我们可以疑似发掘了一个注入点,我们提交单引号看下结果:
-
那么这个php页面的查询语句我们也来追根溯源看一下:
- 他的语句是:
select first_name,last_name from users where user_id='';
</br>那么我们提交的"1'"就会变成:select first_name,last_name from users where user_id='1'';
</br>显然多了一个单引号造成了不闭合,查询自然出错了。</br>这里我们在普及几个查询语句的tip:
-
不用多说,“臭名昭著”的联合查询。</br>再来个关于 order by:</br>
-
那么结合联合查询的union 我们想到通常会有注入语句 order by来定位字段数:</br>我们先看下user表中有哪些字段
-
然后我们使用通常的注入语句order by来尝试猜解字段数:
-
我们发现猜解1和2的时候页面正常,3的时候就报错了,但是我们字段数显然有8个,所以这里再来张图大家对比观察下:</br>
</br>
- 注意观察我select的字段数量,大家发现上图我select了3个字段,所以order by的时候3是正确4是错误。那么我们改成*试试?</br>
很显而易见,1没有问题,8 没有问题,9没有问题,然后在入侵步骤中我们接下来顺理成章地就使用union select
了。</br> -
现在当我们发现单引号出错的时候,为了让我们的恶意语句插入数据库继续执行,我们需要闭合单引号或者注释掉它。方法有三个:</br>
</br>
这里注意了“--”后面有一个空格。在url当中,我们需要使用“+”来代替“--”后面的空格。</br> -
那么这个时候我们就可以在中间添加语句进行注入了,也还是通常思路,首先order by 一下:
-
这里说3个就出错了,原因很简单,咱们看下代码文件并结合之前我们铺垫的order by的小知识点看下:
-
原文件select了2个字段,所以显然我们只可能order by 到2。</br>接下来联合查询注入:</br>
- 语句为
"1' union select 1,2#“和“1' union select user(),version()#"
</br>通过这里我们知道可以在1和2的地方爆出我们所需要的信息,然后我们就可以正常构造查询语句了。这里又有一个tip,因为在mysql版本>5.0以后会有一张系统表叫做information_schema。</br>相关知识点见这里********Click-me********</br> - 我们可以通过他来对不知道表名和字段的情况下进行联合查询。</br>
1' union select table_name,2 from information_schema.tables where table_schema= 'dvwa'#
</br>这里的数据库 dvwa我们可以在上图中替换函数user()为database()就行。
-
1' union select column_name,2 from information_schema.columns where table_schema= 'dvwa' and table_name= 'users'#
-
1' union select user,password from users#
********至此,注入完成!********
无标题文章
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- Spark SQL, DataFrames and Datasets Guide Overview SQL Dat...
- 这篇帖子主要介绍怎么创建VR UI。 VR UI设计的一般标准(以Oculus Rift为准): 用户界面最好做...