栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Wireshark的简单使用

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Wireshark的简单使用

1.写在前面

前面的博客已经介绍完了HTTP的协议,但是HTTP协议我们经常需要使用Wireshare工具进行抓包,我们先看下网络爬虫。

2.网络爬虫Web crawler
  • 网络爬虫模拟人类使用浏览器浏览、操作页面的行为,对互联网的站点进行操作

  • 网络爬虫获取到一个页面后,会分析出页面里所有的URI,沿着这些URI路径递归的遍历所有页面,因此被称为爬虫(Web crawler)、蜘蛛(Spider)、网络机器人(spiderbot)

    对待网络爬虫的2种态度:欢迎常光临

    • SEO(Searche Engine Optimization),搜索引擎优化
      • 合法的优化:sitemap、title、keywords、https等
      • 非法的优化:利用PageRank算法漏洞

    对待网络爬虫的2种态度:拒绝访问

    • 为了对抗网络爬虫而生的图形验证码
    • 为了对抗图形验证码而生的"打码平台"
    • 升级图形验证码

网络爬虫如何抓取数据

  • 模拟浏览器渲染引擎,需要对JavaScript文件分析执行、发起Ajax请求等
  • 爬虫爬取数据的速度VS互联网生成信息的速度
    • 爬虫执行速度快,许多爬虫可以并行执行
    • 互联网生成信息的速度大于爬取速度
  • 优先爬取更重要的页面

爬虫常见的请求头部

  • User-Agent:识别是哪类爬虫
  • From:提供爬虫机器人管理者的邮箱地址
  • Accept:告知服务器爬虫对那些资源类型感兴趣
  • Referer:相当于包含了当前请求的页面URI

robots.txt:告知爬虫那些内容不应爬取

  • Robots.txt文件内容

    • User-agent:允许那些机器人

    • Disallow:禁止访问特定目录

    • Crawl-delay:访问间隔秒数

    • Allow:抵消Disallow指令

    • Sitemap:指定站点地图的URI

3.HTTP协议的基本认证

HTTP基本认证

  • RFC7235,一种基本的验证框架,被绝大部分浏览器所支持

  • 明文传输,如果不使用TLS/SSL传输则由安全问题

认证请求

认证响应

4.Wireshark的基本用法

如何捕获报文

  • 点击捕获->选项,打开捕获窗口

    • 网卡设备/流量/捕获过滤器,点击"开始"按钮开始抓包
    • 输出(指定缓存文件)/选项(显示、名称解析、自动停止抓包条件)面板
  • 点击捕获->停止,停止抓包

Wireshare面板

快捷方式工具栏

数据包的颜色(视图->着色规则)

设定时间显示格式

数据包列表面板的标记符号

四种流跟踪

  • TCP
  • UDP
  • SSL
  • HTTP

文件操作

  • 标记报文Ctrl+M
  • 导出标记报文(文件->导出特定分组)亦可按过滤器导出报文
  • 合并读入多个报文(文件->合并)

如何快速抓取移动设备的报文

  1. 在操作系统上打开WiFi热点
  2. 手机连接WiFi热点
  3. 用Wireshark打开捕获->选项面板,选择WiFi热点对应的接口设备抓包
5.如何通过DNS协议解析域名?

什么是DNS

  • 一个用于将人类可读的域名与服务器的IP地址进行映射的数据库

  • 递归查询

    • 根域名服务器
    • 权威服务器

DNS域名结构

递归查询

DNS报文:查询与响应

  • query:查询域名

  • response:返回IP地址

DNS报文

Questions格式

  • QNAME编码规则

    • 以.分隔为多段,每段以字节数打头
      • 单字节,前2比特必须为00,只能表示2^6-1=63字节
    • 以ASCII编码每段字符
    • 以0结尾
  • QTYPE常用类型

    值类型意义
    1AIPv4地址
    2NS权威域名服务器
    5CNAME别名
    15MX邮件交换
    16TXT文本字符串
    28AAAAIPv6地址
  • QCLASS:IN表示Internet

Answer格式

  • NAME:前2位为11,接引用QNAME偏移
    • 在DNS头部的字符偏移数
  • TTL:Time To Live
  • RDLENGTH:指明RDATA的长度
  • RDATA:查询值,如IP地址,或者别名
    • 别名遵循QNAME编码规则

6.Wireshark过滤器
  • 捕获过滤器
    • 用于减少抓取的报文体积
    • 使用BPF语法,功能相对有限
  • 显示过滤器
    • 对已经抓取到的报文过滤显示
    • 功能强大

BPF过滤器:Wireshark捕获过滤器

  • Berkeley Packet Filter,在设备驱动级别提供抓包过滤接口,多数抓包工具都支持此语法
  • expression表达式:由多个原语组成

Expression表达式

  • primitives原语:由名称或数字,以及描述它的多个限定词组成
    • qualifiers限定词
      • Type:设置数字或者名称所指示类型,例如host www.baidu.com
      • Dir: 设置网络出入方向,例如dst port 80
      • Proto:指定协议类型,例如udp
      • 其他
  • 原语运算符
    • 与:&&或者and
    • 或:|| 或者or
    • 非:! 或者not
  • 例如:src or dst portrange 6000-8000 && tcp or ip6

限定词

Type:设置数字或者名称所指示类型

  • host、port
  • net、设定子网、net 192.168.0.0 mask 255.255.255.0 等价于 net 192.168.0.0/24
  • portrange,设置端口范围,例如 portrange 6000-8000

Dir:设置网络注入方向

  • src、dst、src or dst、src and dst
  • ra、ta、addr1、addr2、addr3、addr4(仅对IEEE 802.11 Wireless LAN 有效)

Proto:指定协议类型

  • ether、fddi、tr、wlan、ip、ip6、arp、rarp、decnet、tcp、udp、icmp、igmp、igrp、pim、ah、esp、vrrp

其他

  • gateway:指明网关IP地址,等价于ether host ehost and not host host
  • broadcast:广播报文,例如 enther broadcast 或者 ip broadcast
  • multicast: 多播报文,例如 ip multicast或者ip6 multicast
  • less、greater:小于或者大于

基于协议域过滤

  • 捕获所有TCP中的RST报文

    • tcp[13]&4==4
  • 抓取HTTP GET报文

    • Port 80 and tcp[((tcp[12:1]&0xf0)>>2):4]=0x47455420

    • 注意:47455420是ASCII码的16进制,表示"GET"

    • TCP报头可能不止20个字节,data offset提示承载数据的偏移,但它以4字节为单位

7.Wireshark的显示过滤器

显示过滤器的过滤属性

  • 任何在报文细节面板中解析出的字段名,都可以作为过滤属性

    • 在视图->内部->支持的协议面板里,可以看到各字段名对应的属性名

      • 例如,在报文细节面板中TCP协议头中的Source Port,对应着过滤属性为tcp.srcport

过滤值比较符号

过滤值类型

  • Unsigned integer:无符号整型,例如ip.len le 1500
  • Signed integer:有符号整型
  • Boolean:布尔值,例如tcp.flags.syn
  • Ethernet address:以:、-或者.分隔的6字节地址,例如eth.dst == ff:ff:ff:ff:ff:ff
  • IPv4 address:例如ip.addr == 92.169.0.1
  • IPv6 address:例如 ipv6.addr == ::1
  • Text string:例如http.request.uri = = “https://www.wireshark.org/”

多个表达式间的组合

其他常用操作符

可用函数

显示过滤器的可视化对话框

8.写在最后

本篇博客主要介绍了Wireshark的简单的使用,以及我们如何通过DNS协议解析域名?后面的博客我们会继续介绍WebSocket的相关的协议,还有就是HTTP2协议,以及TLS/SSL协议,TCP协议,IP协议。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/964804.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号