DVWA (Dam Vulnerable Web Application) DVWA是用PHP+Mysql编写的一套用于常规WEB漏洞教学和检测的WEB脆弱性测试程序。包含了SQL注入、XSS、盲注等常见的一些安全漏洞。本次我们测试使用的是Version 1.9 (Release date: 2015-09-19)。
         今天我们首先完成的是low,也就是最简单的,其后我们会不断提高难度完成所有难度的挑战。在挑战的过程中我们会分析程序的源代码,了解漏洞产生的原理及简单的修复方案。
         安装完成后默认的登录信息为admin/password,安装过程不再讲述。登录后默认的等级为impossible,我们可以通过左侧菜单栏处内的DVWA Security进行设置,本次我们挑战的等级为LOW。
 
攻击模块1:Brute Force(暴力破解)

        暴力破解一般指穷举法,穷举法的基本思想是根据题目的部分条件确定答案的大致范围,并在此范围内对所有可能的情况逐一验证,直到全部情况验证完毕。若某个情况验证符合题目的全部条件,则为本问题的一个解;若全部情况验证后都不符合题目的全部条件,则本题无解。穷举法也称为枚举法。(以上摘自百度百科)通过观察页面发现没有任何防治爆破的验证,所以我们可以通过burpsuite等工具进行枚举。
1.      我们首先配置好burpsuite的本地代理抓取登录表单信息。
2.      将表单进行提交到intruder模块,并将password设置为我们破解的payload。
3.      载入字典文件。
4.      开始枚举,得到密码。
注:关于BurpSuite的详细设置因为不是我们这次的重点,所以没有详细介绍。
 
扩展:
通过观察这个模块的源代码,我们发现这里还有一处可以利用的地方,代码如下
(文件地址:./DVWA/vulnerabilities/brute/source/low.php)
通过简单的分析代码可以看到,这是一个典型的万能密码(有关万能密码请移步:http://bbs.ichunqiu.com/thread-10851-1-1.html)漏洞,当我们输入【'or 1=1 limit 1,1 --  】即可绕过登录验证。
万能密码漏洞
 
/***************************************************
 

攻击模块2:Command Injection(命令注入)

      命令注入攻击的常见模式为:仅仅需要输入数据的场合,却伴随着数据同时输入了恶意代码,而装载数据的系统对此并未设计良好的过滤过程,导致恶意代码也一并执行,最终导致信息泄露或者正常数据的破坏。(以上摘自百度百科)
命令连接符:
command1 && command2   先执行command1后执行command2
command1 | command2     只执行command2
command1 & command2    先执行command2后执行command1
以上三种连接符在windows和linux环境下都支持
如果程序没有进行过滤,那么我们就可以通过连接符执行多条系统命令。
通过连接符&&执行多条命令
 
修复建议:
      过滤用户输入的数据,同时这种调用系统命令的模块能不能最好不用。
/***************************************************
 

攻击模块3:Cross Site Request Forgery(CSRF跨站脚本伪造)

..........................................................................................略;

 

DVWA 1.9 通关秘籍的更多相关文章

  1. pwnable.kr详细通关秘籍(二)

    i春秋作家:W1ngs 原文来自:pwnable.kr详细通关秘籍(二) 0x00 input 首先看一下代码: 可以看到程序总共有五步,全部都满足了才可以得到flag,那我们就一步一步来看 这道题考 ...

  2. 【面试题】2018年最全Java面试通关秘籍汇总集!

    [面试题]2018年最全Java面试通关秘籍汇总集!(转载于互联网)   前几天在交流群里有些小伙伴问面试相关的试题,当时给出了一些问题,苦于打字太累就没写下去了,但觉得这是一个很不负责任的表现,于是 ...

  3. 【面试题】2018年最全Java面试通关秘籍第五套!

    [面试题]2018年最全Java面试通关秘籍第五套! 原创 2018-04-26 徐刘根 Java后端技术 第一套:<2018年最全Java面试通关秘籍第一套!> 第二套:<2018 ...

  4. 【面试题】2018年最全Java面试通关秘籍 四套!(无答案)

    http://mp.weixin.qq.com/s/RQMQUufCbwlkAK62y57DAw 第一套:<2018年最全Java面试通关秘籍第一套!> 第二套:<2018年最全Ja ...

  5. DVWA Command Injection 通关教程

    Command Injection 介绍 命令注入(Command Injection),对一些函数的参数没有做过滤或过滤不严导致的,可以执行系统或者应用指令(CMD命令或者bash命令)的一种注入攻 ...

  6. DVWA File Upload 通关教程

    File Upload,即文件上传.文件上传漏洞通常是由于对上传文件的类型.内容没有进行严格的过滤.检查,使得攻击者可以通过上传木马获取服务器的webshell权限,因此文件上传漏洞带来的危害常常是毁 ...

  7. DVWA XSS (Reflected) 通关教程

    XSS 介绍XSS,全称Cross Site Scripting,即跨站脚本攻击,某种意义上也是一种注入攻击,是指攻击者在页面中注入恶意的脚本代码,当受害者访问该页面时,恶意代码会在其浏览器上执行,需 ...

  8. DVWA XSS (Stored) 通关教程

    Stored Cross Site Scripting 存储型XSS,持久化,代码是存储在服务器中的,如在个人信息或发表文章等地方,加入代码,如果没有过滤或过滤不严,那么这些代码将储存到服务器中,用户 ...

  9. DVWA File Inclusion 通关教程

    File Inclusion 介绍File Inclusion,即文件包含(漏洞),是指当服务器开启allow_url_include选项时,就可以通过php的某些特性函数:include(),req ...

随机推荐

  1. ELK-Elasticsearch 安装启动

    系统版本:Centos7 Elasticsearch:5.3.1 1:关闭SELinux [root@es local]# sed -i 's/SELINUX=enforcing/SELINUX=di ...

  2. node.js 从入门到。。。

    本人安装环境为 mac ,所以只记录了 mac 下的操作步骤 1.安装 node node的国内下载地址:http://nodejs.cn/download/ 安装之后,在终端输入指令 node -v ...

  3. K3精益版给物料添加属性,并在BOM中新增字段引用该属性

    1.给物料新增属性 打开“系统--基础资料--公共资料--核算项目管理”,然后双击物料,弹出核算项目类别-修改对话框.再点新增按钮: 输入你想新增字段的类型,长度,想要放置的位置. 相关属性里面选的是 ...

  4. windows server 2012 远程桌面不好使

    下面的文章里讲的比较详细 http://www.hfkehu.cn/thread-4382-1-1.html 我遇到的问题是第一种,因为是刚装的机器,刚连上网时,选择如下设置时,因为鼠标一点别的地方, ...

  5. Kubernetes节点维护

    1.设置节点为不可调度 kubectl cordon $NODENAME 2.使用kubectl drain优雅的结束节点上的所有 pod 并同时标记节点为不可调度 kubectl drain $NO ...

  6. window环境下修改postgrep密码

    本机window7 64位系统,安装的PostgreSQL 9.3 默认安装是没有设置密码的,使用pgAdmin III登陆需要登陆密码. 我们使用默认安装的工具 SQL Shell 来操作. 我们依 ...

  7. LD的-rpath,-rpath-link

    http://blog.chinaunix.net/uid-24709751-id-3563351.html http://songzhangzhang.blog.163.com/blog/stati ...

  8. LOJ-10091(强连通分量)

    题目链接:传送门 思路: 多少头牛收到所有牛头牛的喜欢,喜欢具有传递性,所以将互相喜欢的牛视为一个点,就是有向图的 缩点,收到所有牛的喜欢要求这个“点”没有出度,所以缩点之后统计所有没有出度的点就是结 ...

  9. centos7下安装mysql会遇到的问题集合

    1.mysqld_safe提示 command not found 解决方法 https://blog.csdn.net/lampqiu/article/details/79138961 2.Mysq ...

  10. 将n个东西分成n1,n2,n3,n4,....nr 共 r组分给r个人有多少种分法。

    (n!/(n1! *n2! *n3!..nr!) )   * r!/( 同数量组A的数量! 同数量组B的数量!....) 比方20个东西分成2,2,,2,2   3,3,3,3 8组分给8个人有多少种 ...