E053-web安全应用-Brute force暴力破解初级

课程分类:

web安全应用

实验等级:

中级

任务场景:

【任务场景】

小王接到磐石公司的邀请,对该公司旗下的网站进行安全检测,经过一番检查发现该论坛的后台登录页面上可能存在万能密码漏洞,导致不知道账号密码也能登录后台,造成用户的隐私信息的泄露、网页被篡改、网页被挂马、服务器被远程控制,服务器被安装后门等风险。为了让公司管理人员更好的理解并修补漏洞,小王用DVWA情景再现。

任务分析:

【任务分析】

登录是先通过表单获取到值,再对应到数据库里去查询,如果有对应的值则登录成功,如果没有则登录失败。但是如果Web管理员在设计上没有对一些关键字进行过滤的话,就会导致'且'运算或者'或'运算带入到数据库里查询,那么当php语言执行为真的时候,就会绕过验证程序直接进入后台。

预备知识:

【预备知识】

And逻辑运算结果:真-真=真、假-真=假、真-假=假、假-假=假

Or逻辑运算结果:真-真=假、假-真=真、真-假=真、假-假=假


任务实施:

E053-web安全应用-Brute force暴力破解初级

任务环境说明:

服务器场景:p9_kali-2(用户名:root;密码:toor)

服务器场景操作系统:Kali Linux 192.168.32.123

服务器场景:p9_ws03-3(用户名:administrator;密码:123456)

服务器场景操作系统:Microsoft Windows2003 Server 192.168.32.190


网络结构

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

实战复现:

打开火狐浏览器,在地址栏输入靶机的地址访问网页,使用默认用户名admin密码password登录:

在DVWA页面点击"DVWA Security" 选择难易程度为"Low" ,然后点击"Submit" 提交:

在导航栏点击Brute Force进入登陆框页面:

查看登录框的源代码:

select * from user where username='username' and password ='password'

可以看到Username登录点的参数会传输到$username

Password登录点的参数会传输到$password

那么我们可以构造一个简单的Payload语句进行注入,在账号里输入:admin' and 1=1 #,密码为空:

显示登录成功:

登录成功了,为什么不需要输入密码就能登录?

把Payload语句放到这段代码分析

复制代码
$sql = select * from user where username|'and password='$password';

在账号地方输入admin' and 1=1 #后SQL语句变成

复制代码
$sql = select * from user where username='admin' and 1=1 #|' and password='$password';

输入admin'使用单引号闭合让admin成一个字符串,后面跟一个逻辑运算把admin判断为真,再用一个"#"号注释掉后面的代码,也就是接收密码的那一段代码,就达到万能密码绕过程序验证的效果了。

那么根据运算符,再测试几组


And逻辑运算符,真-假=假

复制代码
admin' and 1=2#

And逻辑运算符,假-真=假

复制代码
admin' and 2=1#

Or逻辑运算符,真-假=真

复制代码
admin' or 1=2 #

Or逻辑运算,假-真=假

复制代码
admin' or 2=1 #

实验结束,关闭虚拟机。

相关推荐
网络安全工程师老王1 小时前
Java Agent 注入 WebSocket 篇
websocket·网络安全·信息安全·渗透测试
世界尽头与你1 小时前
【安全扫描器原理】网络扫描算法
网络·安全
AI拉呱_2 小时前
医院行业等保2.0案例
安全·web安全
艾厶烤的鱼2 小时前
架构-计算机网络
计算机网络·架构
冰^2 小时前
MySQL VS SQL Server:优缺点全解析
数据库·数据仓库·redis·sql·mysql·json·数据库开发
2301_810154552 小时前
纯真社区IP库离线版发布更新
web安全
中云时代-防御可测试-小余3 小时前
高防IP是如何防护DDoS攻击和CC攻击的
运维·服务器·tcp/ip·安全·阿里云·ddos·宽度优先
帅云毅5 小时前
文件上传--解析漏洞和编辑器
笔记·学习·安全·web安全·编辑器·php
wt_cs5 小时前
身份证实名认证接口数字时代的信任基石-node.js实名认证集成
开发语言·node.js·php
樽酒ﻬق5 小时前
深度解析 Kubernetes 配置管理:如何安全使用 ConfigMap 和 Secret
安全·贪心算法·kubernetes