网络协议与攻击模拟_01winshark工具简介

一、TCP/IP协议簇

  • 网络接口层(没有特定的协议)   
    • 物理层:PPPOE宽带拨号(应用场景:宽带拨号,运营商切网过来没有固定IP就需要拨号,家庭带宽一般都采用的是拨号方式)
    • 数据链路层
  • 网络层:IP(v4/v6) ARP(地址解析协议) RARP 、ICMP(internet控制报文协议) IGMP
  • 传输层:TCP(传输控制协议)  UDP(用户数据报协议)
  • 应用层:基于传输层协议的端口,总共0-65535   固定协议端口号0-1023   http-80,https-443
    • DHCP
    • DNS
    • HTTP
    • HTTPS
    • FTP
    • SMTP
    • POP3
    • IMAP
  • 流量抓取工具(winshark)

二、winshark工具简介

1、混杂 and 非混杂

winshark是对主机网卡上的数据流量进行抓取,可以对网卡进行混杂模式和非混杂模式的抓包。

  • 混杂模式:不管目的是否是自己,都接收。
    数据镜像:主机A正常与主机B通信,做数据镜像端口,将F0/0接口镜像到F0/2接口,如果主机C开启混杂模式,就能抓取澳主机A发往主机B的链路流量,反之如果主机C是非混杂模式就会将丢弃该数据。
  • 非混杂模式:默认情况下,主机的网卡处于此模式,不会接收目的非自己的数据


2、winshark软件界面介绍

(1)菜单栏

(2)网卡

winshark可以检测到本地的所有网卡

(3)混杂模式

在菜单栏-捕获->选项进入可以设置混杂模式,默认是开启的。

3、抓取数据

(1)流量

  • No 抓取报文的序号
  • time:时间,抓取这个流量耗费的时间
  • Source:源IP地址
  • Destination:目标IP地址
  • Protocol:协议
  • length:数据报文的长度
  • Info:简要信息

(2)数据包

看报文详细内容,通过TCP/IP 五层来展现的。

  • Frame56:物理层封装的信息(很少去看)
  • Ethernet II :二层封装信息 源MAC 目的MAC Type,下面会显示十六进制的消息

  • Internet Protocol version 4:网络层数据
  • User Datagram protocol:传输层数据
  • Domain Name System(response):应用层数据

(3)追踪流(用的比较多)

追踪流:

Wireshark的跟踪数据流功能可以将捕获的数据包排好顺序使之容易查看,右键捕获的数据包并选择追踪流,假设选择HTTP流,HTTP流就会在一个单独的窗口中显示。

我们可以注意到窗口中的文字以两种颜色显示,红色用来标明从源地址前往目标地址的流量,而蓝色用来区分从目标地址到源地址的流量。以访问www.xiaodi8.com为例。

其中黑底红字的报文是错误报文,根据winshark菜单栏视图->着色规则可知,是Bad TCP

(4)自定义显示的列

我们想快速看报文的某些字段信息,就可以设置应用为列。例如想看报文的Type类型,可以直接右击Ethernet II里面的Type,选择应用为列。

(5)自定义Time列

菜单栏视图->日期时间格式下有很多显示时间的格式,我们可以根据场景来选择显示时间的格式。例如当我们发现某个报文有问题时,可以设置时间格式为日期和时间从而追溯到这个报文是在哪个时间点发的。

  • 日期和时间

  • 自从上一显示分组经过的秒数

  • 自捕获开始经过的秒数:

  • 设置参考时间

针对某一个报文也可以设置参考时间,选中报文,右击,设置/取消设置时间参考,下面报文Time显示的就是针对上面报文的间隔时间。

(6)、名称解析

默认显示Source和Destination都是IP地址的方式,可以设置成名称的显示方式

可以看到MAC地址默认是做了名称解析的,一个MAC地址前24位由厂商来代替,后面24位是厂商的序列号。

勾选网络地址和端口的名称显示后,抓包数据信息就会显示域名和端口,443就直接解析成了https

 4、过滤器

(1)两种过滤器

  • 捕获过滤器:在抓包之前先进行过滤(只抓取某种类型的数据包)

  • 显示过滤器:抓包前抓包后都可以进行过滤,但是不会影响抓取的包

(2)过滤器语法

    A    捕获过滤器语法

  • 类型:host net  port
  • 方向:src dst
  • 协议:ether ip tcp udp http ftp……
  • 逻辑运算:&&与、 || 或  、!非
  • 举个栗子:
    • 抓取源地址是本机且目的端口是80的数据流量
      src host 192.168.2.16 && dst port 80
    • 抓取IP地址为192.168.2.16 或者192.168.2.1
      host 192.168.2.16 || 192.168.2.1
    • 不抓广播报文
      ! broadcast
    • 抓取源IP为192.168.2.16或者192.168.2.0/24,目的TCP端口号在200到10000之间,并且目的位于47.0.0.0/8的数据流量。
      (src host 192.168.2.16 || src net 192.168.18.0/24) && (dst portrange 200-10000 && dst net 47.0.0.0/8)

    B    显示过滤器语法

  • 比较操作符:== (eq)      !=(neq)  >大于(gt)  <小于(lt)    >=大于等于(ge)  <=小于等于(le)
  • IP地址过滤:ip.addr    ip.host    ip.dst
  • 端口过滤:tcp.port       udp.port        tcp.dstport       tcp.flag.syn   tcp.flag.ack
  • 协议过滤:arp   ip   icmp   udp  tcp   http
  • 举个栗子
    • 显示源IP为192.168.2.16并且tcp端口为443
      ip.src ==192.168.2.16 and tcp.port==443
    • 显示源不为192.168.2.16或者目的不为47.75.212.155的
      ip.src!=192.168.2.16 or ip.dst!=47.75.212.155

 三、案例 

1、实验要求

开启winshark抓包,抓取所有的报文

过滤DNS的报文,找到对应的域名解析报文

根据DNS返回的IP地址,找到主机与服务器的TCP交互过程

找到客户机请求服务器的HTTP报文, 追踪HTTP流情况

2、实验过程

(1)关掉已打开的网页

(2)刷新DNS缓存

(3)精确查找

过滤DNS,Ctrl+N,输入域名精确查找

(4)定位请求/响应报文 

(5)找目标IP地址

响应报文Answer中会显示目标IP地址为47.75.212.155

 (6)追踪流分析

如果访问的是https的网站,报文中protocol字段就是TLS,追踪流追踪到的就是加密的内容,看不到网页响应源码。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/303471.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

kettle的基本介绍和使用

1、 kettle概述 1.1 什么是kettle Kettle是一款开源的ETL工具&#xff0c;纯java编写&#xff0c;可以在Window、Linux、Unix上运行&#xff0c;绿色无需安装&#xff0c;数据抽取高效稳定。 1.2 Kettle核心知识点 1.2.1 Kettle工程存储方式 以XML形式存储以资源库方式存储…

【React源码 - Fiber架构之Reconciler】

前言 React16架构可以分为三层也是最核心的三个功能分别是&#xff1a; Scheduler&#xff08;调度器&#xff09;—调度任务的优先级&#xff0c;高优任务优先进入Reconciler(16新增)Reconciler&#xff08;协调器&#xff09;—负责找出变化的组件Renderer&#xff08;渲染…

Android readelf 工具查找函数符号

ELF&#xff08;Executable and Linkable Format&#xff09;是一种执行文件和可链接文件的格式。它是一种通用的二进制文件格式&#xff0c;用于在各种操作系统中存储可执行程序、共享库和内核模块。 Android 开发当中的 so 库本质上就是一种特殊类型的 ELF 文件&#xff0c;…

crash分析ramdump

我们需要在PC机上运行crash,从源码来编译, 可以从Redhat社区下载源码。 解压后&#xff0c;进入目录后使用一下命令&#xff1a; make targetarm64 make install这样就安装好了crash了。 crash介绍 crash主要是用来离线分析linux内核内存转存文件&#xff0c;它整合了gdb…

计算机基础面试题 |17.精选计算机基础面试题

&#x1f90d; 前端开发工程师&#xff08;主业&#xff09;、技术博主&#xff08;副业&#xff09;、已过CET6 &#x1f368; 阿珊和她的猫_CSDN个人主页 &#x1f560; 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 &#x1f35a; 蓝桥云课签约作者、已在蓝桥云…

e2studio开发三轴加速度计LIS2DW12(1)----轮询获取加速度数据

e2studio开发三轴加速度计LIS2DW12.1--轮询获取加速度数据 概述视频教学样品申请源码下载通信模式管脚定义IIC通信模式速率新建工程工程模板保存工程路径芯片配置工程模板选择时钟设置UART配置UART属性配置设置e2studio堆栈e2studio的重定向printf设置R_SCI_UART_Open()函数原…

大数据Doris(五十二):SQL函数之数学函数

文章目录 SQL函数之数学函数 一、abs(double a)

基于多反应堆的高并发服务器【C/C++/Reactor】(中)HttpRequest模块 解析http请求协议

一、HTTP响应报文格式 HTTP/1.1 200 OK Bdpagetype: 1 Bdqid: 0xf3c9743300024ee4 Cache-Control: private Connection: keep-alive Content-Encoding: gzip Content-Type: text/html;charsetutf-8 Date: Fri, 26 Feb 2021 08:44:35 GMT Expires: Fri, 26 Feb 2021 08:44:35 GM…

系列三十五、获取Excel中的总记录数

一、获取Excel中的总记录数 1.1、概述 使用EasyExcel开发进行文件上传时&#xff0c;通常会碰到一个问题&#xff0c;那就是Excel中的记录数太多&#xff0c;使用传统的方案进行文件上传&#xff0c;很容易就超时了&#xff0c;这时可以通过对用户上传的Excel中的数量进行限制…

闰年问题-第11届蓝桥杯选拔赛Python真题精选

[导读]&#xff1a;超平老师的Scratch蓝桥杯真题解读系列在推出之后&#xff0c;受到了广大老师和家长的好评&#xff0c;非常感谢各位的认可和厚爱。作为回馈&#xff0c;超平老师计划推出《Python蓝桥杯真题解析100讲》&#xff0c;这是解读系列的第25讲。 闰年问题&#xf…

swaggerUI不好用,试试这个openapiUI?

1.背景 由于长期使用 swaggerUI 工具&#xff0c;它的轻量风格个人觉得还是不错的&#xff0c;但是它的整体使用体验确实不好&#xff0c;用过的可能都有体会&#xff0c;这里就不一一列举了&#xff08;由于语言表达能力有限&#xff0c;手动&#x1f436;保命&#xff0c;毕…

1.7数算PPT选择汇总,PTA选择汇总,计算后缀表达式,中缀转后缀、前缀、快速排序

PTA选择汇总 在第一个位置后插入&#xff0c;注意是在后面插入&#xff0c;而不是前面&#xff1b;要移动49&#xff0c;为50-I&#xff0c;第25个的话&#xff0c;移25个 如果是插在前面&#xff0c;就移动50&#xff0c;N-I1&#xff0c;注意是插在前面还是后面 删第一个&a…

JS-基础语法(一)

JavaScript简单介绍 变量 常量 数据类型 类型转换 案例 1.JavaScript简单介绍 JavaScript 是什么&#xff1f; 是一种运行在客户端&#xff08;浏览器&#xff09;的编程语言&#xff0c;可以实现人机交互效果。 JS的作用 JavaScript的组成 JSECMAScript( 基础语法 )…

变换器电感饱和以及电流变大电感变小原因分析

电感电流变大电感值变小 在一个DC-DC电源转换器中&#xff0c;电感器的电流与其电感量是有关系的。当电感器的电流增大时&#xff0c;其电感量通常会变小。 电感器的电感量&#xff08;L&#xff09;是指在单位电流变化率下&#xff0c;电感器两端的电压变化的比例。根据电感…

【JAVA GUI+MYSQL]社团信息管理系统

本社团信息管理系统主要实现登录注册、管理员信息管理、社团用户信息管理、用户申请信息管理功能模块。 目录 &#xff11;&#xff0e;系统主要功能介绍 &#xff12;&#xff0e; 数据库概念模型设计 3.具体功能模块的实现 3.1模型类 3.1.1Student.java 3.1.2User .j…

高通平台开发系列讲解(USB篇)Ubuntu 下如何使用模块

文章目录 一、查看VID、PID二、adb添加2.1、在udev下添加模块的VID2.2、重启adb服务三、虚拟串口添加(AT、Diag)沉淀、分享、成长,让自己和他人都能有所收获!😄 📢本篇章主要图解高通平台上位机使用方法 一、查看VID、PID 在ubuntu下使用模块进行AT指令发送,Diag等串…

【QML COOK】- 003-处理鼠标事件

1. 编辑main.qml import QtQuickWindow {width: 800height: 800visible: truetitle: qsTr("Hello World")Image {id: backgroudanchors.fill: parentsource: "qrc:/Resources/Images/arrow.png"}MouseArea {anchors.fill: parentonClicked: backgroud.rot…

docker run 命令详解

一、前言 Docker容器是一个开源的应用容器引擎&#xff0c;让开发者可以以统一的方式打包他们的应用以及依赖包到一个可移植的容器中&#xff0c;然后发布到任何安装了Docker引擎的服务器上&#xff08;包括流行的Linux机器、Windows机器&#xff09;&#xff0c;也可以实现虚拟…

【hcie-cloud】【20】容器详解【容器介绍,容器工作机制、容器常用命令说明】【上】

文章目录 前言容器是什么虚拟化技术的四个特点容器也是一种虚拟化技术容器是怎么实现虚拟化的&#xff1f;容器对比虚拟机有哪些优势&#xff1f;容器对比虚拟机有哪些不足&#xff1f;容器不仅是一种虚拟化技术&#xff0c;更重要的是一种应用打包机制容器提供的是PaaS服务常见…

SSH远程访问出现Permission denied(password)解决方法

首先&#xff0c;这个不是密码输错了的问题&#xff1b; 1、在主机先ping一下服务器 ping XXX.XXX.XX.XXX (服务器ip地址) 如果pin成功了&#xff0c;说明可以进行连接 查看服务器的ip ifconfig2、主机连接服务器 &#xff08;服务器的ip&#xff09; ssh testXXX.XXX.XX.…