目录

一、暴力破解原理

二、实验环境

三、实验步骤

安全等级:LOW

安全等级:Medium

暴力破解的四种方式

安全等级:High

安全等级:Impossible

防止暴力破解的有效手段


一、暴力破解原理

暴力破解的原理就是使用攻击者自己的用户名和密码字典,一个一个去枚举,尝试是否能够登录。因为理论上来说,只要字典足够庞大,枚举总是能够成功的!

但实际发送的数据并不像想象中的那样简单——“ 每次只向服务器发送用户名和密码字段即可!”,实际情况是每次发送的数据都必须要封装成完整的 HTTP 数据包才能被服务器接收。但是你不可能一个一个去手动构造数据包,所以在实施暴力破解之前,我们只需要先去获取构造HTTP包所需要的参数,然后扔给暴力破解软件构造工具数据包,然后实施攻击就可以了。

Web暴力破解通常用在已知部分信息,尝试爆破网站后台,为下一步的渗透测试做准备。

二、实验环境

1、DVWA服务器:Windows Server 2003(192.168.247.129),启动phpStudy

2、测试机:物理机Windows 10,远程登录DVWA;安装BurpSuite

三、实验步骤

安全等级:LOW

查看源码

源码分析

源码分析

针对用户输入的用户名和密码,服务器没有进行过滤操作;

没有任何的防爆破机制,存在明显的sql注入漏洞,可利用SQL注入漏洞登录(使用空密码登录)

万能密码:

  • admin' or '1'='1
  • admin' #

安全等级:Medium

查看源码

源码分析:

  • mysql_real_escape_string() 函数转义 SQL 语句中使用的字符串中的特殊字符;如果不进行转义,意味着任何用户无需输入合法的密码即可登陆。使用该函数来预防数据库攻击,基本防止了SQL注入;
  • 同时,$pass做了MD5校验,杜绝了通过参数password进行sql注入的可能性;
  • 但依然没有加入有效的防爆破机制,只是不能采用SQL注入的方式登录;

1、使用任意账号密码尝试进行登录,并使用BurpSuite进行拦截。

2、将该数据包导入intruder

3、清空参数

在Positions选项中设置需要破解的变量。Burpsuite会自动设置许多变量,单击 ' Clear ' 按钮,把默认变量全部清除。

4、添加所选参数

选中用户名admin和密码123,单击 ' Add ' 按钮将之设为需要破解的变量。使用Sniper攻击类型。

5、添加字典

  • Add:手动输入字典
  • Load:加载外部字典,需选择加载路径
  • Add from list:Burp Suite自带的字典

6、爆破。请求长度不同的可能为正确密码(用户名或者密码输入错误的情况下)

7、用破解的密码尝试登录

暴力破解的四种方式

  • 1、一个字典,两个参数,先匹配第一项,再匹配第二项【sniper】
  • 2、一个字典,两个参数,同用户名同密码【battering ram】
  • 3、两个字典,两个参数,同行匹配,短的截止【pitch fork】
  • 4、两个字典,两个参数,交叉匹配,所有可能【cluster bomb】

使用Cluster bomb爆破类型进行破解

1、抓包

2、导入intruder

3、清空参数

4、添加所选参数,使用Cluster bomb攻击方式(两个字典,两个参数,交叉匹配,所有可能)

5、添加字典

6、爆破

7、用破解的密码尝试登录

安全等级:High

查看源码

源码分析:

  • mysql_real_escape_string() 函数转义 SQL 语句中使用的字符串中的特殊字符;
  • stripslashes() 函数删除由 addslashes() 函数添加的反斜杠,可用于清理从数据库中或者从 HTML 表单中取回的数据。

  • 通过抓包可以看到,登录验证时提交了四个参数:username、password、Login以及user_token,增加了爆破的难度。
  • 这就要求我们发送的每个请求包中都包含随机生成的token值,因此无法简单地使用Burpsuite进行暴力破解。可以尝试使用python脚本,使用爬虫将服务器每次返回的user_token抓取到。

无法破解密码。

安全等级:Impossible

查看源码

源码分析:

  • Impossible级别的代码加入了可靠的防爆破机制,当检测到频繁的错误登录后,系统会将账户锁定,爆破也就无法继续;
  • 同时采用了更为安全的PDO(PHP Data Object)机制防御sql注入,这是因为不能使用PDO扩展本身执行任何数据库操作,而sql注入的关键就是通过破坏sql语句结构执行恶意的sql命令;

防止暴力破解的有效手段

1、限制尝试次数

2、验证码(验证码存在被技术的破解风险,仅用于增加每次尝试的成本)

3、PDO技术

Kali渗透测试之DVWA系列2——Brute Force(暴力破解)相关推荐

  1. dvwa brute force(暴力破解)

    介绍 暴力破解其实没有什么神秘的,也是大家都有的一个四位方式,比如说我们有时候会忘记我们的手机密码,这个时候我们就会从我们之前使用的密码中一个个去试着解锁,这就是暴力破解的精髓所在了,也就是枚举猜解. ...

  2. DVWA之Brute Force(暴力破解)

    目录 Low Medium High Impossible 暴力破解是指使用穷举法,举出所有的可能的结果,然后逐一验证是否正确! Low 源代码: <?php if( isset( $_GET[ ...

  3. DVWA靶场Brute Force 暴力破解审计通关教程

    如果你想搭建靶场可以购买蓝易云服务器搭建

  4. 渗透测试实验_使用BurpSuite暴力破解DVWA密码 BurpSuite四种暴力破解类型 安全等级Low Medium High

    文章目录 暴力破解 1. Brute Force(暴力破解) 原理 2. BurpSuite 四种暴力破解类型 3. Low等级 Sniper(狙击手)类型 Battering ram(撞击物)类型 ...

  5. DVWA通关攻略之暴力破解

    目录 1.Brute Force 暴力破解 2.漏洞场景 3.实验演示 low Medium High Impossible 4.暴力破解防御 1.Brute Force 暴力破解 暴力破解或称之为穷 ...

  6. Kali渗透测试之端口扫描1——UDP、TCP、僵尸扫描、隐蔽扫描

    端口扫描 每个服务器上面都会跑很多应用,每个应用都会侦听某些端口,通过侦听端口接收来自客户端或其他用户对应用程序的访问.所以在发现目标主机存活后,我们需要知道目标主机上都开放了那些端口,应用程序的漏洞 ...

  7. Kali渗透测试之主动侦查和被动侦查以及maltego的使用

    Kali渗透测试之maltego注册和使用 一.注册maltego 1.打开命令行终端,可以在kali桌面右键打开,也可以使用快捷键Ctrl+Alt+T打开 kali本身应该已经自带maltego,但 ...

  8. dvwa_Brute Force(暴力破解) _Medium

    dvwa_Brute Force(暴力破解) _Medium 首先,进入DVWA Security 改impossible为Medium并提交.返回Brute Force 点击View Source, ...

  9. 小白日记5:kali渗透测试之被动信息收集(四)--theHarvester,metagoofil,meltag,个人专属密码字典--CUPP

    1.theHarvester theHarvester是一个社会工程学工具,它通过搜索引擎.PGP服务器以及SHODAN数据库收集用户的email,子域名,主机,雇员名,开放端口和banner信息. ...

最新文章

  1. 小米新机将搭载鸿蒙,小米新機將搭載鴻蒙係統?還得等鴻蒙進一步的消息!
  2. wifi模块 服务器通讯协议,模块之间通信协议
  3. SAP Spartacus 当购物车里添加的商品个数过多后引起的性能问题以及解决方案
  4. 情感分析朴素贝叶斯_朴素贝叶斯推文的情感分析
  5. 高斯模糊java代码_OpenCV3 Java图形图像上的高斯模糊(Imgproc.GaussianBlur)
  6. docker 打包镜像_Spring Boot2 系列教程(四十一)部署 Spring Boot 到远程 Docker 容器
  7. 拖拽功能-jquery
  8. USACO-Section1.3 Palindromic Squares (进制转换和回文数)
  9. Vue学习--前后端交互
  10. 点击按钮返回上一个页面_零基础跟老陈一起学WordPress 《第四课》用WP半小时建一个商业网站...
  11. fltk和glog在mac下的安装与编译
  12. 软件项目管理随谈(2)——项目合同问题
  13. 使用EXCEL计算并绘制RSI指标
  14. java map 空指针异常_Java8使用Collectors toMap,当value为null时报空指针异常
  15. CTF题库奇妙的音乐
  16. Intel系统编程指南第八章——8.4 多处理器(MP)初始化
  17. 国内外十大ERP软件系统排名!
  18. 365天挑战LeetCode1000题——Day 049 非递增顺序的最小子序列 贪心
  19. VsCode 如何设置背景图以及字体颜色
  20. 专题2:弹性力学中平面问题的基本理论(2-4 几何方程及刚体位移 2-5 斜方向的应变及位移)...

热门文章

  1. android 启动音乐播放器,无法启动android默认音乐播放器与开始活动
  2. c语言 raii 用法日志,RAII 妙用之 ScopeExit
  3. WP8.1 Study17:网络之后台下载/上传及HttpClient
  4. 微信浏览器点击选择图片报错 WeiXinJSbridge is not defined
  5. 机器学习漫游(1) 基本设定
  6. 什么是ASPICE?
  7. 基于百度智能云的语音控制系统
  8. 工程训练:生意专家:03 注册的实现
  9. Python glob() 函数 秒懂
  10. OneDrive修改默认路径