DVWA(一) —— 暴力破解

    xiaoxiao2022-06-24  252

    概念

    暴力破解 = 穷举法理论上可以破解任何有规律的隐私信息

    准备

    Firefox、Proxy Switcher、DVWA、OWASP ZAP、JDK

    OWASP ZAP

    需要依赖Java环境用途:可以处理并代理网络端口的数据包官方下载地址:www.owasp.org下载安装JDK,配置环境变量(path添加一个bin目录),验证Java环境(java -version和javac),官网搜索zap下载,启动安装时若弹出找不到JDK目录时,手动选择JDK的bin目录下的java文件

    小知识

    JDK11和JDK12在以前版本基础上,改动有点大,安装后默认是没有JRE的。 【解决方法】:使用bin\jlink.exe --module-path jmods --add-modules java.desktop --output jre命令手动生成jre

    破解过程

    low等级

    打开phpStudy并启动打开zap,本地代理设置在connection里,默认为8080端口打开Firefox浏览器,配置Proxy Switcher,注意把不使用代理(Direct)里的内容删除浏览器里打开DVWA,先把DVWA Security里的安全等级设为Low,点击 submit选择暴力破解页面,输入用户名test和密码test打开zap查看抓取到的包,在请求框里右键选择 Fuzz,remove 掉右侧窗口里默认的值选取左侧窗口里username后的参数和password后的参数,点击右侧 add 输入用户名和密码字典(可以直接在最后一个content里键入所有字典内容)点击最下面的Start Fuzzer开始暴力破解点击响应包列 Size Resp.Body,降序排序,得到破解结果(原理:成功和失败的破解结果是不相同的,通常可以通过响应页面的大小直观判断出来)

    medium等级

    利用DVWA自带的查看源码(view source)功能,发现有代码实现了输入错误停顿一定时间的功能,增加时间成本

    high等级

    抓包发现每次登录参数 user_token 都是动态改变且不可预测的随机字符串下一次的user_token会在上一次的响应包里返回给浏览器破解动作:访问首页,获得user_token参数,发送带user_token的登录数据包需要自己编写python脚本代码破解

    impossible等级

    输入错误三次,锁定15分钟,后面无论输入正确还是错误,都是同一页面,无法判断验证码也可有效防止暴力破解

    修复

    利用验证码技术

    最新回复(0)