DVWA的使用练习:
今天学习的内容很有意思,也很实用。
DVWA其实本质上就是一个脆弱系统,它需要的是php+mysql的环境,旨在为安全人员提供一个合法的环境用来测试自己的专业技能和工具,并且让web安全工作着深刻的理解漏洞防范和入侵的本质原理,很适合我们这种小白锻炼自己,好废话不多说。。。。。
首先DVWA环境安装:
在下载DVWA之前我们需要一个php+mysql的环境,apache+php+mysql的环境搭建就不过多赘述了,百度帖子就很多,同时这一套环境作为一个安全工作者来说也是必备的,我的环境在虚拟机里,懒到不行。。就直接用了phpstudy做了环境。
去http://www.dvwa.co.uk/下载dvwa的压缩包,将其解压到phpstudy中www文件夹下
然后去config文件下有一个config.inc.php.dist文件,将其后面的.dist删除,形成config.inc.php文件,之后打开更改你数据库的用户名和密码。
图中的地方默认账号密码都是root,更改为你自己MySQL的用户名和密码,之后运行127.0.0.1/DVWA/setup.php就出现了页面,
下面有一个Creat/Reset Datebase 点击后它就自动创建好了数据库,然后登陆,默认账号密码root/password。
以上环境就完全搭建好了,简单。
之后进行实践操作,今天我进行的是file upload 的实践,在这里说一下dvwa环境包含了十个常用模块:
1.Brute Force(暴力(破解))
2.Command Injection(命令行注入)
3.CSRF(跨站请求伪造)
4.File Inclusion(文件包含)
5.File Upload(文件上传)
6.Insecure CAPTCHA (不安全的验证码)
7.SQL Injection(SQL注入)
8.SQL Injection(Blind)(SQL盲注)
9.XSS(Reflected)(反射型跨站脚本)
10.XSS(Stored)(存储型跨站脚本)
同时平台设置了四个难度的等级,low,medium,high,impossible.同时你可以看他们的源代码,对于你的代码审计能力有很大的帮助,每一个等级的过滤机制,实现过程一目了然。
就拿upload(文件上传)来说,每一等级的过滤就很不一样。
首先我们来看low等级的源代码</