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

news2025/1/23 17:54:13

课程分类:

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 #

实验结束,关闭虚拟机。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1101966.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Windows消息 队列

1、 Windows消息机制 Windows是一个消息驱动的操作系统,消息是用一个常量标识符来标记,并且有两个32Bit的消息附加信息。单击鼠标、敲击键盘,都会通过电脑外设向系统发送特定的中断信号,这个中断信息在操作系统中会转化为一个消息…

leetcode每日一题复盘(10.16~10.22)

leetcode 501 二叉搜素树中的众数 对二叉搜索树的性质还不是很熟悉,不懂得利用其性质,做题没有方法论,这是暴露出来的问题,明天重做一下98,530,501这三个题,再进行总结

33 机器学习(一):特征工程

文章目录 机器学习需要用到的包的介绍机器学习做什么深度学习做什么常见的概念 数据介绍数据类型数据的来源数据的构成 特征工程one-hot编码接口集特征提取DictVectorizerCountVectorizerTfidfVectorizer 特征处理归一化 MinMaxScaler标准化 StandardScaler标准化和归一化的对比…

mmdetection及mmengine源码结构

python中的装饰函数 所谓的函数修饰符,就是在函数外面再套一层函数, 装饰函数可以接受不同的参数类型的函数传入,对其进行装饰加工; 在需要装饰的函数前面装饰函数即可; 这样子做的好处在于代码的复用,比…

使用interrupt()中断线程

示例一 : public class Test01 extends Thread {Overridepublic void run() {while (true) {}}public static void main(String[] args) {Test01 t new Test01();t.start();try {Thread.sleep(3000);} catch (InterruptedException e) {e.printStackTrace();}System.out.prin…

家用洗地机哪个牌子最好用?质量最好的洗地机推荐

提到家务清洁,相信应该是很多宝妈头疼的事儿,不仅工作量打,耗时又耗力,拥有一款完美的清洁工具,那讲大大的提升幸福指数,而洗地机便是当下的智能清洁神器之一。那么家用洗地机哪个牌子最好用,质…

竞赛 深度学习YOLO图像视频足球和人体检测 - python opencv

文章目录 0 前言1 课题背景2 实现效果3 卷积神经网络4 Yolov5算法5 数据集6 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 深度学习YOLO图像视频足球和人体检测 该项目较为新颖,适合作为竞赛课题方向,学长非…

使用Nginx实现采集端和数据分析平台的数据加密传输

1. 需求描述 目前鸿鹄暴露出来的重要ports如下表: 在实际的生产环境中,结合我司的使用场景,需要在鸿鹄前端安装proxy,用以解决如下两个问题: 1.1 实现http到https的强制跳转 企业环境中,一般会关闭http 80端…

精准定位——MySQL日志学习的一天【错误、二进制、查询、慢查询】

MySQL 日志是记录 MySQL 数据库服务器运行过程中的各种活动和事件的文件。它们对于监控、故障排查、性能优化和数据恢复等方面都非常重要。 回顾一下Linux中查看文件的指令操作 cat 命令: cat 命令用于将文件的内容一次性输出到终端。它的主要功能是将文件连接起来…

在全志R128上启用USB ADB以及无线ADB配置方法

首先在FreeRTOS的环境下,选择r128_c906_pro: source envsetup.sh lunch_rtos r128s2_pro_c906USB ADB的配置比较常规,注意以下几个驱动的勾选 usb device驱动adb gadget驱动adbd应用 运行menuconfig,选择对应的驱动以及软件包&…

Docker安装ES7.14和Kibana7.14(无账号密码)

一、Docker安装ES7.14.0 1、下载镜像 docker pull elasticsearch:7.14.0 2、docker安装7.14.0 mkdir -p /usr/local/elasticsearch/config mkdir -p /usr/local/elasticsearch/data chmod 777 -R /usr/local/elasticsearch/ echo "http.host: 0.0.0.0" >> /u…

linux下 u2net tensorrt模型部署

TensorRT系列之 Windows10下yolov8 tensorrt模型加速部署 TensorRT系列之 Linux下 yolov8 tensorrt模型加速部署 TensorRT系列之 Linux下 yolov7 tensorrt模型加速部署 TensorRT系列之 Linux下 yolov6 tensorrt模型加速部署 TensorRT系列之 Linux下 yolov5 tensorrt模型加速…

搭建Redis哨兵集群

目录 一、集群结构二、准备实例和配置三、启动四、测试 一、集群结构 这里我们搭建一个三节点形成的Sentinel集群,来监管之前的Redis主从集群。如图: 三个sentinel实例信息如下: 节点IPPORTs1192.168.239.1027001s2192.168.239.1027002s3…

RS232协议、RS485协议

RS232、RS485总线并不是单独的协议,这两种是依赖于串口的协议,这可以让他的抗干扰能力更强、提升传输速度。统一了接口标准。编程不受影响 2.RS232协议 RS232->TTL电平 常用电平转换芯片Max232 3.RS485协议 RS485采用差分信号进行传输&#xff0…

MyBatis进行单表多表查询以及其中的${}涉及的SQL注入

目录 回顾: 参数占位符#{}和${} ${}唯一使用地方 使用${}造成的SQL注入漏洞 like查询 mapper中接收结果的参数 resultType和resultMap​编辑 多表查询 回顾: 参数占位符#{}和${} #{} 占位符语法通常用于模板引擎或动态查询语句中。它是一种更加安全的…

C++产生未定义的行为的原因分析

前言 最近一直在做QT开发,编程环境是VS2017和QT5.11.2 经常遇到的问题就是,在VS中调试程序,前面都是正常运行的,但是当关闭窗口,退出程序的时候,VS会抛出一个异常 “未加载ntdll.pdb,触发了一…

Nmap渗透测试指南之防火墙/IDS逃逸、信息搜集

Nmap渗透测试指南之防火墙/IDS逃逸、信息搜集 一. 防火墙/IDS逃逸本章知识点本章选项一 .关于防火墙/IDS二. 报文分段三. 指定偏移大小四. IP欺骗五. 源地址欺骗六. 源端口欺骗七. 指定发包长度八. 目标主机随机排序九. MAC地址欺骗二. 信息收集本章知识点本章脚本一. 信息搜集…

iOS代码混淆工具推荐:IPA Guard详细介绍

iOS代码混淆工具推荐:IPA Guard详细介绍 目录 摘要: 引言 正文 1. IPA Guard概述 2. IPA Guard的功能特性 3. IPA Guard的混淆模式 4. 支持的语言 5. 使用场景 总结 参考资料 总结 参考资料 摘要: 了解并选择合适的iOS代码混淆工…

python 深度学习 解决遇到的报错问题7

目录 一、ValueError: unsupported pickle protocol: 5 二、报错protobuf 三、AttributeError: The vocab attribute was removed from KeyedVector in Gensim 4.0.0 四、ModuleNotFoundError: No module named cartopy 五、ImportError: cannot import name COMMON_SAFE_A…

c语言小白如何入门?

c语言小白如何入门? 作为过来人,我觉得刚开始,先按照课本把每个知识点都弄懂,有不懂的地方,先尝试自己理解或借助互联网先搜一下,还是理解不了,就可以去找学得比较好的同学, 最近很…