---恢复内容开始---

前言

做流量分析很长时间了但是一直没有系统的去总结过这类题目的做法和思路以及wireshark的使用方法,这次做题的时候突然发现了一个总结的特别好的博客,因此想趁机做个笔记总结一下。

参考链接:https://mp.weixin.qq.com/s?__biz=MzU1ODg3NTMyMQ==&mid=2247489263&idx=1&sn=d9060114d924266ed2bdf4311ca030dd&source=41#wechat_redirect

https://jwt1399.top/2019/07/29/ctf-liu-liang-fen-xi-zong-jie/#toc-heading-4

Wireshark的使用

wireshark的基本使用方法有数据包筛选、数据包搜索、数据包还原、 数据提取四个部分。

1.数据包筛选

1.1筛选ip

源筛选ip

ip.src == ip 地址

或者手动操作

点击任意一个符合筛选条件的数据包,找到IPv4下的Source字段。

右键点击Source字段,作为过滤器应用 – 选中。

目的ip筛选

ip.dst == ip地址

或者手动操作:
点击任意一个符合筛选条件的数据包,找到IPv4下的Destination字段,右键点击Destination字段,作为过滤器应用 – 选中。

  1.2  mac地址筛选:

eth.dst ==A0:00:00:04:C5:84 筛选目标mac地址

eth.addr==A0:00:00:04:C5:84 筛选MAC地址

  1.3  端口筛选:

tcp.dstport == 80  筛选tcp协议的目标端口为80 的流量包

tcp.srcport == 80  筛选tcp协议的源端口为80 的流量包

udp.srcport == 80  筛选udp协议的源端口为80 的流量包

  1.4  协议筛选:

tcp  筛选协议为tcp的流量包

udp 筛选协议为udp的流量包

arp/icmp/http/ftp/dns/ip  筛选协议为arp/icmp/http/ftp/dns/ip的流量包

   1.5  包长度筛选:

udp.length ==20   筛选长度为20的udp流量包

tcp.len >=20  筛选长度大于20的tcp流量包

ip.len ==20  筛选长度为20的IP流量包

frame.len ==20 筛选长度为20的整个流量包

   1.6   http请求筛选

请求方法为GET:http.request.method==“GET”筛选HTTP请求方法为GET的  流量包

请求方法为POST:http.request.method==“POST”筛选HTTP请求方法为POST的流量包

指定URI:http.request.uri==“/img/logo-edu.gif”筛选HTTP请求的URL为/img/logo-edu.gif的流量包

请求或相应中包含特定内容:http contains “FLAG” 筛选HTTP内容为/FLAG的流量包

2.数据包搜索

在wireshark界面按“Ctrl+F”,可以进行关键字搜索:

Wireshark的搜索功能支持正则表达式、字符串、十六进制等方式进行搜索,通常情况下直接使用字符串方式进行搜索。

搜索栏的左边下拉,有分组列表、分组详情、分组字节流三个选项,分别对应wireshark界面的三个部分,搜索时选择不同的选项以指定搜索区域:

搜索栏的左边下拉,有分组列表、分组详情、分组字节流三个选项,分别对应wireshark界面的三个部分,搜索时选择不同的选项以指定搜索区域

这是分组列表

这是分组详情:

分组字节流:

3.  数据包还原

在wireshark中,存在一个交追踪流的功能,可以将HTTP或TCP流量集合在一起并还原成原始数据,具体操作方式如下:

选中想要还原的流量包,右键选中,选择追踪流 – TCP流/UPD流/SSL流/HTTP流。

可在弹出的窗口中看到被还原的流量信息:

4. 数据提取

Wireshark支持提取通过http传输(上传/下载)的文件内容,方法如下:

选中http文件传输流量包,在分组详情中找到data或者Line-based text data:text/html层,鼠标右键点击 – 选中 导出分组字节流。

如果是菜刀下载文件的流量,需要删除分组字节流前开头和结尾的X@Y字符,否则下载的文件会出错。鼠标右键点击 – 选中 显示分组字节…

在弹出的窗口中设置开始和结束的字节(原字节数开头加3,结尾减3)

最后点击save as按钮导出。

CTF-流量分析笔记的更多相关文章

  1. CTF流量分析题大全(掘安攻防平台)

    突然想做一下流量分析题,记得掘安攻防实验室上面有很多的流量分析题目,故做之 流量分析题一般使用的都是wireshark,(流量分析工具中的王牌 夺取阿富汗 说了分析http头,所以直接过滤http协议 ...

  2. CentOS下使用Iptraf进行网络流量的分析笔记

    CentOS下使用Iptraf进行网络流量的分析笔记 一.概述 Iptraf是一款linux环境下,监控网络流量的一款绝佳的免费小软件. 本博客其他随笔参考: Centos安装流量监控工具iftop笔 ...

  3. CTF MISC-USB流量分析出题记录

    USB流量分析 USB接口是目前最为通用的外设接口之一,通过监听该接口的流量,可以得到很多有意思的东西,例如键盘击键,鼠标移动与点击,存储设备的明文传输通信.USB无线网卡网络传输内容等. 1.USB ...

  4. 【迎圣诞,拿大奖】+流量分析+Writeup分享

    太菜了太菜了,刚见到jsfuck时竟然不知道什么东西,自己都不敢说自己做过实验吧上的那道jsfuck题了. 进入正题: 首先解压发现两个文件,一个流量分析包,哇哇哇,我正好刚学了几天wireshark ...

  5. Bugku流量分析题目总结

    flag被盗 题目链接:https://ctf.bugku.com/files/e0b57d15b3f8e6190e72987177da1ffd/key.pcapng 解题思路: 这个题目是比较基本的 ...

  6. 3.View绘制分析笔记之onLayout

    上一篇文章我们了解了View的onMeasure,那么今天我们继续来学习Android View绘制三部曲的第二步,onLayout,布局. ViewRootImpl#performLayout pr ...

  7. 4.View绘制分析笔记之onDraw

    上一篇文章我们了解了View的onLayout,那么今天我们来学习Android View绘制三部曲的最后一步,onDraw,绘制. ViewRootImpl#performDraw private ...

  8. 2.View绘制分析笔记之onMeasure

    今天主要学习记录一下Android View绘制三部曲的第一步,onMeasure,测量. 起源 在Activity中,所有的View都是DecorView的子View,然后DecorView又是被V ...

  9. 1.Android 视图及View绘制分析笔记之setContentView

    自从1983年第一台图形用户界面的个人电脑问世以来,几乎所有的PC操作系统都支持可视化操作,Android也不例外.对于所有Android Developer来说,我们接触最多的控件就是View.通常 ...

随机推荐

  1. APP脱壳方法三

    第一步 手机启动frida服务 第二步 手机打开要脱壳的app 第三步编辑hook代码 agent.js /* * Author: hluwa <hluwa888@gmail.com> * ...

  2. sql左连接查询+右表带有条件的实现

    select * from A表 a left join B表 b on a.id=b.a_id and b.字段='/*条件*/' ; 可查出左表所有数据 select * from A表 a le ...

  3. Python语言应用解析,如何入门学Python?

    Python在机器学习人工智能领域非常流行,可以说是算法工程师的标配编程语言.Python语言广泛应用在web开发.大数据开发.人工智能开发.机器学习.后端开发等领域之中,近几年Python语言的趋势 ...

  4. Tensorflow学习笔记No.8

    使用VGG16网络进行迁移学习 使用在ImageNet数据上预训练的VGG16网络模型对猫狗数据集进行分类识别. 1.预训练网络 预训练网络是一个保存好的,已经在大型数据集上训练好的卷积神经网络. 如 ...

  5. oracle 1day

    1.主流数据库: 2.项目选择数据库的原则: 3.oracle 常用用户sys (sysdba系统管理员),system(sysoper系统操作员),scott(密码tiger) sys login: ...

  6. Java 第四课 对象 类

    1.构造方法可以为private public 2.抽象类可以有构造方法,但是必须在子类中调用(super.构造方法)

  7. RxJava用法

    首先导入依赖: implementation 'io.reactivex.rxjava2:rxjava:2.2.9'implementation 'io.reactivex.rxjava2:rxand ...

  8. mock.js 学习

    安装 npm install mockjs 使用 // 引入 import Mock from 'mockjs' Mock.setup({ timeout: '200 - 400' }) const ...

  9. Linux 系统编程 学习:06-基于socket的网络编程1:有关概念

    Linux 系统编程 学习:006-基于socket的网络编程1:有关概念 背景 上一讲 进程间通信:System V IPC(2)中,我们介绍了System IPC中关于信号量的概念,以及如何使用. ...

  10. 如何快速在windows上创建你的第一个odoo项目

    一.什么是Odoo Odoo 是一系列开源商业应用程序套装(ERP企业管理系统),此套装可满足贵公司的一切应用需求,例如,企业基本的进销存.采购.销售.MRP生产制造.品保质量保障.企业招聘.员工合同 ...