流量分析

发布时间 2023-12-21 01:39:44作者: 楚颖i

流量分析


pcap文件修复

pcapfix - online pcap / pcapng repair service (f00l.de)


smtp

SMTP(Simple Mail Transfer Protocol):简单邮件传输协议。端口号:tcp25

文章:Wireshark对SMTP抓包分析 - 知乎 (zhihu.com)

摘要:

1、响应代码220表示连接建立成功,后面的Anti-spam是一种用于过滤和阻止垃圾邮件的技术

2、服务端返回220代码之后,客户端继续发送请求,发送EHLO或者是HELO命令来声明身份,EHLO要更加安全

3、服务端接收到客户端的EHLO请求之后,返回了一个250代码并且附带了支持的身份验证方式,客户端使用AUTH命令进行身份验证,身份验证成功后会返回235的成功代码

4、客户端MAIL FROM命令声明邮件的发件人,RCPT TO命令声明邮件的收件人,服务器返回250代码确定操作成功

5、客户端使用DATA命令,告知服务器要开始传输邮件的正文内容,服务端返回354代码,告知邮件的内容结束以<CR><LF>.<CR><LF>为标记,客户端接收到354代码后,开始传输邮件内容

6、客户端发送完邮件内容之后,还会接着发送一个QUIT命令来表示结束这次的SMTP传输,服务器在接受到数据之后会返回250代码表示接受成功并且再返回221代码表示结束本次SMTP传输。


smtpflag.pcap

在建立连接后有user和pass,base64解密


smtp_cotent.pcapng

smtp明文传输,直接追踪tcp流


smtp_attachment.pcapng

追踪tcp流,和上面一样,解一下出现的base64,发现最后一个是base64加密后的文件,解密保存,打开结束


http_smtp.pcapng

导出http对象,下载加密zip,追踪smtp对应tcp流,找到解压密码


ftp-smtp.pcapng

和上题一样,换成导出ftp-data对象


FTP

与 FTP 协议相比,SFTP 在客户端与服务器间提供了一种更为安全的文件传输方式

TFTP协议不需要验证客户端的权限,FTP需要进行客户端验证

FTP-DATA:在服务器和客户端之间传输文件数据的数据连接

FTP(File Transfer Protocol)文件传输协议,端口:TCP20,21

主动模式:服务端发起数据连接。客户端使用随机端口连接,服务器主动向客户端的随机端口进行连接

被动模式:客户端发起数据连接。 客户端和服务端都是随机端口,客户端向服务器的随机端口进行连接,服务器被动连接


Response code: Service ready for new user (220),意思是FTP返回码220,FTP服务做好了用户登录的准备

客户端发送USER 用户名,服务器返回331状态码,要求用户传送密码,PASS 密码,最后服务器返回230状态码登录成功

后面的SITE,PWD,PASV等是ftp命令

FTP.pcap

如上图,密码


traffic-5.pcap

题目说为什么不是sftp,先想着搜索sftp流量,发现没有,那应该意思是说该流量是ftp(批评不用sftp的意思)

上面的流量是ftp的登录和一些命令,下面是向服务器请求zip压缩包,

找到该zip,下载,打开拿到flag(记得追踪流,分多个包发送的)


leakage.pcap

首先修复文件,两个途径发现key.zip

导出ftp-data对象,下载key.zip,得到73686b696b7475,十六进制解码


ftp-data.pcapng

导出ftp-data对象,下载txt,结束


ssPacket.pcapng

导出ftp-data对象,下载了一个加密的zip,依题目找解压密码

找了追踪了tcp流,无果,都是些命令

发现有http,筛选一下



http/https

HTTP(Hypertext Transfer Protocol):请求-响应协议


http.pcap

导出对象

导出http流的对象,(看各种东西更方便)

可疑主机和文件,点击选中它,并点中间保存按钮保存php文件


Forensics-Four Eyes.pcap

由题目可知:1、监控http流量,2、登录www.2dehands.be的密码

导出对象并筛选该主机

这个最特别

保存并访问,拿下密码


online_game.pcap

由题目知:网站-->http流量,具体筛选网站:tribalwars

保存第二个


Espionage-sniffed_updated.pcap

导出http对象后,文件大小排序

下载压缩包,一段音频隐写,左边选择频谱图


data.pcap

题目找密码,直觉导出http对象,发现

密码base64解密


ispy.pcapng

筛选了一下http,结果第一个图片就是flag,蒙圈


john-in-the-middle.pcap

题目意思明显,导出http对象,发现html网站和对应的js文件,还有很多张图片,对logo进行图片隐写


lolteam.pcapng

题目:找密码,筛选(本身以为这个是假的,结果。。。),结束


fixed_weird_shark.pcap

导出http对象,pdf文档


http_header.pcapng

由题目知:http流量头,追踪一下http流,base64解密


fpcap.pcapng

简短的流量,筛选个http,登录-->访问php文件,下载zip

追踪的http流中有密码123@pass,解密zip,结束


SString.pcapng

导出http对象,一个html,追踪smtp的tcp流,另一个html

写出解密函数

function decode($str)
{
    $string = str_rot13($str);
    $string = strrev($string);
    $string = base64_decode($string);
    $ans = '';
    for ($i = 0; $i < strlen($string); $i++) {
        $char = substr($string, $i, 1);
        $ordChar = ord($char) - 1;
        $char = chr($ordChar);
        $ans = $ans . $char;
    }
    return strrev($ans);
}

flag{603d7237fa0d52977}


fileUpload.pcapng

题目:登录网站:http流

导出对象php文件,base64解码


找数值怪(大or小)

net_....b.pcap

没啥思路,随便导出了http流量,发现有个特别大的文件,得到密码,不是密码佬,直接跑路


intercept.pcap

题目:找密码

没意思,从http流量中可以看出,他父亲登录第一次错误,第二次密码才正确


SSL/TLS

HTTPS使用了SSL/TLS协议,SSL是 TLS 的前身,TLSv1.2则是1.2版本,保证信息安全的要素

文章:

流量包超细致分析:Wireshark 抓包理解 HTTPS 请求流程_wireshark导入密钥还是encrypt alert-CSDN博客

TLSv1.2介绍及Https协议SSL建立过程分析(OpenSSL源码)-CSDN博客

摘要:

tcp建立连接后,客户端发送client hello包给服务器(包含支持的TLS版本、随机数、支持的加密算法)

服务器响应server hello包,证书,公钥交换,hello结束等,之后就是加密数据的传输


dump.pcap

题目找罪魁祸首-->找人

筛选ssl流量后,找到服务器响应包里的证书颁发者(issuer)


greatescape.pcap

首先找ssc.key,查找ssc.key,发现是ftp传输,导出ftp-data对象,下载

wireshark中->编辑->首选项->Protocols->SSL->edit->+号->Key File->输入ssc.key->OK(SSL不行就改成TLS)

第一种:导出对象

第二种:http contains "FLAG"

http contains 'FLAG'

http contains FLAG,哪种行,用哪种


client.pcap

给了秘钥,直接用,发现两个http,一看就是key了


telnet

Telnet(teletype network):远程登录服务

是Internet远程登陆服务的标准协议和主要方式,基于传输层的TCP协议且通过telnet协议实现的传输的所有数据都是明文形式,包括用户名和密码,利用这一特性我们可以直接跟踪TCP数据流

networking.pcap


TELNET.pcap

题目提示找会话账号和密码

一个一个分析,左下角可能是telnet一些会话的东西(maybe)

可以一个一个翻下来,也可以分组详情搜索login,然后追踪字节流


telnet_cmd.pcapng

追踪tcp流,telnet分多个传输一个字节,追踪流一下看出来


SSH

SSH 和 telnet 之间的主要区别在于 SSH 提供完全加密和经过身份验证的会话。而telnet缺少安全的认证方式,而且传输过程采用TCP进行明文传输

ssh协议简单介绍-CSDN博客

摘要:SSH工作过程

1、版本号协商

2、密钥和算法协商

3、SSH客户端向服务器端发起认证请求, 服务器端对客户端进行认证

4、客户端向服务器端发送会话请求

5、服务器端同意请求后和客户端进行信息的交互


WebSocket 主要用于实时通信,适合于需要实时性的 Web 应用场景,而 NFS 则主要用于文件共享和存储访问

nfs.pcapng

在这里的nfs是websocket,不知道为什么,追踪tcp流



dns

DNS(domain name system)域名系统,端口:udp53

tips

一般是在域名前(低级域名)处添加信息


筛选dns,发现访问不可访问域名,筛选

保存文件,不是脚本小子,就只能一个一个复制粘贴了,最后解码


USB

参考:

CTF流量分析常见题型(二)-USB流量_ctf usb流量分析-CSDN博客

USB流量分析-CSDN博客


USB协议数据部分在Leftover Capture Data域中

鼠标流量

数据长度为四个字节

第一个字节代表按键

当取0×00时,代表没有按键
当取0×01时,代表按左键
当取0×02时,代表当前按键为右键

第二个字节可以看成是一个signed byte类型,其高位为符号位

值为正时,代表鼠标水平右移多少像素
值为负时,代表鼠标水平左移多少像素

第三个字节与第二字节类似,代表垂直上下移动的偏移。

值为正时,代表鼠标上移多少像素位
值为负时,代表鼠标下移多少像素位

键盘流量

数据长度为八个字节

键盘击键信息集中在第三个字节中



电话

RTP

voip.pcap

播放音频得到flag(不知道在讲什么鸟语,直接wp启动)


shell工具

菜刀

菜刀数据包.pcapng

菜刀是常见的连接webshell的工具,连接webshell会有明显的GET或POST请求。所以我们只需要找数据包的HTTP请求就行了

一个一个看下来,上面应该是菜刀在不断找upload路径,找到hello.rar,(->|.....|<-)或X@Y是菜刀流量包的特征

一些特殊流量结构:Shell管理工具流量分析-上(菜刀、蚁剑、冰蝎2.0流量分析)&入侵检测、应急响应资料整理_冰蝎2.0流量特征_OceanSec的博客-CSDN博客

下一个流量包89504E47,明显png图,保存


caidao.pcapng

筛选http流量,分析POST包,发现这三个POST包是提交要执行菜刀想执行的代码,第一个POST包执行后,返回了目录列表,第二个返回php一句话木马,第三个返回乱码

转码一下第三个包,猜测文件是以压缩形式返回,提出乱码包的字节流,删去前三个和后三个菜刀流量特征值,然后选择压缩形式


pcap.pcap

随便追踪了个http流,发现是打dvwa靶场(并没卵用)

随便往下翻了一点,发现请求的很多目录都是404,一直翻到底,发现开始访问shell.php,发现菜刀特征流量标识,且知道是以base64加密,搜索ZmxhZ3(flag base64加密串)


哥斯拉

文章:

哥斯拉还原加密流量_ctf misc 哥斯拉流量解密脚本-CSDN博客

【原创】哥斯拉Godzilla加密流量分析 - FreeBuf网络安全行业门户

摘要:

密码:和蚁剑、菜刀一样,密码就是POST请求中的参数名称。例如,密码为pass时,哥斯拉提交的每个请求都是pass=xxxxxxxx这种形式

密钥:用于对请求数据进行加密,不过加密过程中并非直接使用密钥明文,而是计算密钥的md5值,然后取其前16位用于加密过程

哥斯拉连接

第一个请求包包含PHP_XOR_BASE64(可能是其他的算法)加密的shell代码,服务器返回phpsession(后期请求带上cookie)


第二个请求测试连接命令test,返回少量数据(即ok

解密后的请求格式{‘methodName’: ‘test’.........}可能还有其他参数


第三个请求为各种命令,如获取服务器基础信息的命令getBasicsInfo,返回服务器基础信息

解密后的请求格式{‘methodName’: ‘getBasicsInfo’}

之后就是各种命令执行


PCTF wyz大战哥斯拉

https://www.cnblogs.com/xhzccy/p/17880921.html

哥斯拉总结

对于PHP_XOR_BASE64:

对于MethodName的请求包,丢到第一个解密算法

请求命令包丢到第二个解密算法

response包先删前16个字符,再删后16字符,得到和命令包一样的结构后,丢到第二个解密算法



其他

追踪流

irc.pcap

追踪tcp流后,原本想直接搜flag,结果满屏的flag,flag{又搜不到,我就往下一直看,发现交流的内容有说分组发送

原来直接搜ctf{就行


passwd.pcap

题目要求找密码,搜索pass,并追踪流

直接提交password发现不对,想到wireshark里面乱码字符都用.替代,可能这几个点有问题

右下角hex转储,会显示十六进制,ascll码和原数据,7f是del键,0d是换行

三个del将00R删了,一个del将a删了,最后backdoorm8te


pcap.pcapng

啥信息没有,看wp说搜password,然后追踪流咯


easycap.pcap

全是tcp包,简单看一下几个包

发现每个包返回一字节数据,追踪一下流,结束,真题目easy了


first_contact.pcap

追踪一下tcp流

37 14'06"N 115 48'40"W


problem.pcap

不想说了,一个包