发布时间:2022-02-18 12:18:38
DVWA是由PHP+MySQL编写的一套用于教授和检测常规Web漏洞的Web漏洞测试程序。它包含一些常见的安全漏洞,如SQL注入、XSS和CSRF。其主要目的是帮助安全专业人员在法律环境中测试他们的技术和工具,并帮助开发人员更好地理解如何加强他们开发的网络系统。同时,在教学领域,还可以帮助师生一起讨论和学习Web应用安全知识。它的官方网站是http://www.dvwa.co.uk/.
01安装01DVWA
1.构建PHP环境
要实现DVWA的功能,首先需要在自己的设备上搭建PHP环境。在Windows下构建和配置环境是一件麻烦的事情。使用集成软件phpStudy,更容易在本地构建一个Apache+MySQL+PHP的调试环境。它的组件主要包括PHP、Apache、MySQL、phpMyAdmin、OpenSSL等。
暴力破解是指黑客利用密码字典,采用穷举法来猜测用户密码,是被广泛使用的攻击手段之一。比如前一年轰动全国的12306“撞库”事件,本质上就是暴力袭击。
使用Burpsuite工具和密码字典可以暴力破解账号密码,如图9所示。
图9剧烈开裂
2.命令注入
命令注入是指通过提交恶意构造的参数来破坏命令语句的结构,从而达到执行恶意命令的目的。PHP命令注入攻击漏洞是PHP应用中常见的脚本漏洞之一,而国内著名的Web应用Discuz!和DedeCMS都有这种类型的漏洞。
Windows和Linux系统可以使用&:& amp;执行多个命令,这也为利用漏洞创造了机会。因为只有&:& amp;和“;”,所以“&”不会受到影响。输入“本地主机&网络用户”利用该漏洞。
3.CSRF
跨站点请求伪造是指使用受害者的身份认证信息。)未过期以诱骗其点击恶意链接或访问包含攻击代码的页面,并在受害者不知情的情况下向身份认证信息对应的服务器发送请求,从而完成非法操作。).CSRF和XSS最大的区别是CSRF不偷饼干,而是直接用。
CSRF最基本的用法是直接构建链接:http://lo cal host/dvwa/漏洞/csrf/?password _ new = password & amppassword _ conf =密码& amp变更=变更# .
当受害者点击此链接时,他的密码将被更改为密码。当然,这种攻击模式比较简单,链接显示密码已经被更改,受害者通过点击链接看到下面的页面就知道自己的密码被篡改了,如图10所示。
图10跨站点请求伪造
4.文件包含
文件包含是指当服务器打开allow_url_include选项时,可以通过PHP的一些特性函数来使用url动态包含文件。此时,如果不严格检查文件来源,就会导致任意读取文件或任意执行命令。文件包含漏洞分为本地文件包含漏洞和远程文件包含漏洞。远程文件包含漏洞是由在PHP配置中打开allow_url_fopen选项引起的,如图11所示。
图11文件包含
5.文件上传
通常,由于上传文件的类型和内容没有经过严格的过滤和检查,攻击者可以通过上传木马获得服务器的Webshell权限。因此,文件上传漏洞造成的危害往往是毁灭性的。Apache、Tomcat、Nginx等。暴露了文件上传漏洞。
对文件上传漏洞的利用是有限的。首先当然是要能够成功上传木马文件;其次,上传的文件必须能够执行;最后,必须知道上传文件的路径。
漏洞利用过程简单概括为准备一个特洛伊木马文件并上传它,如图12所示。
图12文件上传漏洞
上传完成后,可以看到返回的上传路径…/…/hacker/uploads/muma.php,如图13所示。
图13上传路径
6.不安全验证码
验证码是完全自动的公共图灵测试的缩写,用来区分计算机和人类。但是这个模块的内容叫做不安全验证过程,比较合适,因为验证过程存在逻辑漏洞。
测试时,您需要注册https://www.google.com/recaptcha来获取recaptcha_public_key和recaptcha_private_key,并将它们填充到DVWA中配置目录下的config.inc.php文件中,您可以看到初始界面,如图14所示。
图14不安全验证过程
7.SQL注入
测试是否有注入点,用户与表单交互的地方,也是常见的SQL注入漏洞存在的地方。正常测试输入1,可以得到如图15所示的结果。
图15 SQL注入
8.SQL注入
所谓盲注,就是当我们输入一些特殊字符时,页面不显示错误信息,只能判断页面是否显示正常。事实上,盲注对渗透率影响不大,输入“'或1=1 #”仍然可以显示所有数据,如图16所示。
图16盲拍
XSS
XSS是一种跨站点脚本攻击,其中恶意攻击者将恶意代码插入网页。当用户浏览页面时,网页中嵌入的代码就会被执行,从而达到恶意攻击用户的目的。
将安全级别设置为低,然后选择XSS反射,在文本框中随机输入用户名,提交后会显示在页面上。从URL中可以看出,用户名是由GET通过name参数提交的,如图17所示。
图17反射XSS
输入基本的XSS陈述: "
图18嵌入结果
10.XSS
与反映XSS的脆弱性相比,存储XSS具有更持久的影响力。如果添加的代码没有经过过滤或者过滤不严格,代码会存储在服务器中,当用户访问页面时会触发代码执行。这个XSS很危险,容易引起蠕虫和窃取Cookie,如图19所示。
图19存储XSS
在名称栏中输入“1”;在消息列中输入以下代码,您可以看到如图20所示的结果。
& lt& gt警报& lt;/& gt;
图20操作结果
欢迎分享转载 →dvwa 网络安全攻防:DVWA