当前位置: 首页 > news >正文

网络协议与攻击模拟_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,追踪流追踪到的就是加密的内容,看不到网页响应源码。

相关文章:

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

一、TCP/IP协议簇 网络接口层&#xff08;没有特定的协议&#xff09; 物理层&#xff1a;PPPOE宽带拨号&#xff08;应用场景&#xff1a;宽带拨号&#xff0c;运营商切网过来没有固定IP就需要拨号&#xff0c;家庭带宽一般都采用的是拨号方式&#xff09;数据链路层网络层…...

【linux学习笔记】网络

目录 【linux学习笔记】网络检查、监测网络ping-向网络主机发送特殊数据包traceroute-跟踪网络数据包的传输路径netstat-检查网络设置及相关统计数据 通过网络传输文件ftp 【linux学习笔记】网络 检查、监测网络 ping-向网络主机发送特殊数据包 最基本的网络连接命令就是pin…...

JUC-线程中断机制和LockSupport

线程中断机制 概念 java提供了一种用于停止线程的协商机制-中断。称为中断标识协商机制。 常用API public void interrupt() 仅仅让线程的中断标志位设置为true。不进行其他操作。public boolean isInterrupted() 获取中断标志位的状态。public static boolean interrupted…...

哈希表与哈希算法(Python系列30)

在讲哈希表数据结构和哈希算法之前&#xff0c;我想先刨析一下数组和python中的列表 首先来讲一下数组&#xff0c;我想在这提出一个疑问&#xff1a; 为什么数组通过索引查询数据的时间复杂度为O(1)&#xff0c;也就是不管数组有多大&#xff0c;算法的执行时间都是不变的。…...

『 C++ 』AVL树详解 ( 万字 )

&#x1f988;STL容器类型 在STL的容器中,分为几种容器: 序列式容器&#xff08;Sequence Containers&#xff09;: 这些容器以线性顺序存储元素&#xff0c;保留了元素的插入顺序。 支持随机访问&#xff0c;因此可以使用索引或迭代器快速访问任何位置的元素。 主要的序列式…...

Python下载安装pip方法与步骤_pip国内镜像

前提&#xff1a;下载安装好 python 打开命令提示符winR->cmd&#xff08;不需要进入 python&#xff0c;直接在终端输入指令执行即可&#xff0c;也可以再 pycharm 终端执行命令&#xff09;加入要安装ipython&#xff0c;需要执行以下命令&#xff1a; pip install **<…...

自动化测试框架pytest系列之基础概念介绍(一)

如果你要打算学习自动化测试 &#xff0c;无论是web自动化、app自动化还是接口自动化 &#xff0c;在学习的道路上&#xff0c;你几乎会遇到pytest这个测试框架&#xff0c;因为自动化编写没有测试框架&#xff0c;根本玩不了 。 如果你已经是一位自动化测试人员 &#xff0c;…...

编码技巧:如何在Golang中高效解析和生成XML

编码技巧&#xff1a;如何在Golang中高效解析和生成XML 引言Golang中的XML基础解析XML文件生成XML文件错误处理和调试高级技巧和最佳实践总结 引言 在当今数据驱动的编程世界中&#xff0c;有效地处理各种数据格式是每个开发人员必备的技能之一。其中&#xff0c;XML&#xff…...

24校招,帆书测试开发工程师一面

前言 樊高读书是帆书的前身&#xff0c;我之前还看过他们的书&#xff0c;缘分闭环了 时间&#xff1a;25min 平台&#xff1a;飞书视频面试 过程 自我介绍为啥从后端转测试&#xff1f;通过实习经历&#xff0c;对测试有什么了解&#xff1f;讲一下游戏测试经历负责什么业…...

Java 方法以及在计算机内部的调用问题

修饰符 返回值类型 方法名( 形参列表 ){ 方法体代码(需要执行的功能代码) return 返回值; } 方法在内种没有先后顺序&#xff0c;但是不能把一个方法定义在另一个方法中。 方法的返回值类型写void&#xff08;无返回申明&#xff09;时&#xff0c;方法内不能使用return返回数…...

【算法与数据结构】343、LeetCode整数拆分

文章目录 一、题目二、解法三、完整代码 所有的LeetCode题解索引&#xff0c;可以看这篇文章——【算法和数据结构】LeetCode题解。 一、题目 二、解法 思路分析&#xff1a;博主做这道题的时候一直在思考&#xff0c;如何找到 k k k个正整数&#xff0c; k k k究竟为多少合适。…...

中级Python面试问题

文章目录 专栏导读1、xrange 和 range 函数有什么区别&#xff1f;2、什么是字典理解&#xff1f;举个例子3、元组理解吗&#xff1f;如果是&#xff0c;怎么做&#xff0c;如果不是&#xff0c;为什么&#xff1f;4、 列表和元组的区别&#xff1f;5、浅拷贝和深拷贝有什么区别…...

Lede(OpenWrt)安装和双宽带叠加

文章目录 一、Lede介绍1. 简介2. 相关网站 二、Lede安装1. 编译环境2. SHELL编译步骤3. 腾讯云自动化助手 三、Lede配置1. 电信接口配置2. 联通接口配置3. 多线多播配置4. 网速测试效果 一、Lede介绍 1. 简介 LEDE是一个专为路由器和嵌入式设备设计的自由和开源的操作系统。 …...

HTML+JS + layer.js +qrcode.min.js 实现二维码弹窗

HTMLJSVUE qrcode.min.js 实现二维码生成 引入qrcode.js创建二维码显示位置编写JS 引入qrcode.js <script type"text/javascript" src"https://static.runoob.com/assets/qrcode/qrcode.min.js"></script>创建二维码显示位置 id 作为 定位标识…...

leetcode 142 环形链表II

题目 给定一个链表的头节点 head &#xff0c;返回链表开始入环的第一个节点。 如果链表无环&#xff0c;则返回 null。 如果链表中有某个节点&#xff0c;可以通过连续跟踪 next 指针再次到达&#xff0c;则链表中存在环。 为了表示给定链表中的环&#xff0c;评测系统内部使…...

电阻表示方法和电路应用

电阻 电阻的表示方法 直标法 直标法是将电阻器的类别及主要技术参数的数值直接标注在电阻器表面上 通常用3位阿拉伯数字来标注片状电阻的阻值&#xff0c;其中第1位数代表阻值的第1位有效数&#xff1b;第2位数代表阻值的第二位有效数字&#xff1b;第3位数代表阻值倍率&…...

论文笔记(三十九)Learning Human-to-Robot Handovers from Point Clouds

Learning Human-to-Robot Handovers from Point Clouds 文章概括摘要1. 介绍2. 相关工作3. 背景3.1. 强化学习3.2. 移交模拟基准 4. 方法4.1. Handover Environment4.2. 感知4.3. 基于视觉的控制4.4. 师生两阶段培训 (Two-Stage Teacher-Student Training) 5. 实验5.1. 模拟评估…...

浅学Linux之旅 day2 Linux系统及系统安装介绍

答案在时间&#xff0c;耐心是生活的关键 ——24.1.15 一、Linux系统介绍 林纳斯.托瓦兹在1991年开发了Linux内核&#xff08;开源免费&#xff09; Linux系统组成 Linux内核 系统库 系统程序 Linux内核和Linux发行版 Linux内核 -> 开源免费&#xff0c;林纳斯开发 Linux发行…...

探索未来餐饮:构建创新连锁餐饮系统的技术之旅

随着数字化时代的发展&#xff0c;连锁餐饮系统的设计和开发不再仅仅关乎订单处理&#xff0c;更是一场充满技术创新的冒险。在本文中&#xff0c;我们将深入研究连锁餐饮系统的技术实现&#xff0c;带你探索未来餐饮业的数字化美食之旅。 1. 构建强大的后端服务 在设计连锁…...

Unity组件开发--AB包打包工具

1.项目工程路径下创建文件夹&#xff1a;ABundles 2.AB包打包脚本&#xff1a; using System.Collections.Generic; using System.IO; using UnityEditor; using UnityEditor.SceneManagement; using UnityEngine; using UnityEngine.SceneManagement;public class AssetBundle…...

边缘计算医疗风险自查APP开发方案

核心目标:在便携设备(智能手表/家用检测仪)部署轻量化疾病预测模型,实现低延迟、隐私安全的实时健康风险评估。 一、技术架构设计 #mermaid-svg-iuNaeeLK2YoFKfao {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg…...

【Linux】C语言执行shell指令

在C语言中执行Shell指令 在C语言中&#xff0c;有几种方法可以执行Shell指令&#xff1a; 1. 使用system()函数 这是最简单的方法&#xff0c;包含在stdlib.h头文件中&#xff1a; #include <stdlib.h>int main() {system("ls -l"); // 执行ls -l命令retu…...

【论文阅读28】-CNN-BiLSTM-Attention-(2024)

本文把滑坡位移序列拆开、筛优质因子&#xff0c;再用 CNN-BiLSTM-Attention 来动态预测每个子序列&#xff0c;最后重构出总位移&#xff0c;预测效果超越传统模型。 文章目录 1 引言2 方法2.1 位移时间序列加性模型2.2 变分模态分解 (VMD) 具体步骤2.3.1 样本熵&#xff08;S…...

JVM暂停(Stop-The-World,STW)的原因分类及对应排查方案

JVM暂停(Stop-The-World,STW)的完整原因分类及对应排查方案,结合JVM运行机制和常见故障场景整理而成: 一、GC相关暂停​​ 1. ​​安全点(Safepoint)阻塞​​ ​​现象​​:JVM暂停但无GC日志,日志显示No GCs detected。​​原因​​:JVM等待所有线程进入安全点(如…...

Unsafe Fileupload篇补充-木马的详细教程与木马分享(中国蚁剑方式)

在之前的皮卡丘靶场第九期Unsafe Fileupload篇中我们学习了木马的原理并且学了一个简单的木马文件 本期内容是为了更好的为大家解释木马&#xff08;服务器方面的&#xff09;的原理&#xff0c;连接&#xff0c;以及各种木马及连接工具的分享 文件木马&#xff1a;https://w…...

springboot整合VUE之在线教育管理系统简介

可以学习到的技能 学会常用技术栈的使用 独立开发项目 学会前端的开发流程 学会后端的开发流程 学会数据库的设计 学会前后端接口调用方式 学会多模块之间的关联 学会数据的处理 适用人群 在校学生&#xff0c;小白用户&#xff0c;想学习知识的 有点基础&#xff0c;想要通过项…...

并发编程 - go版

1.并发编程基础概念 进程和线程 A. 进程是程序在操作系统中的一次执行过程&#xff0c;系统进行资源分配和调度的一个独立单位。B. 线程是进程的一个执行实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。C.一个进程可以创建和撤销多个线程;同一个进程中…...

免费数学几何作图web平台

光锐软件免费数学工具&#xff0c;maths,数学制图&#xff0c;数学作图&#xff0c;几何作图&#xff0c;几何&#xff0c;AR开发,AR教育,增强现实,软件公司,XR,MR,VR,虚拟仿真,虚拟现实,混合现实,教育科技产品,职业模拟培训,高保真VR场景,结构互动课件,元宇宙http://xaglare.c…...

破解路内监管盲区:免布线低位视频桩重塑停车管理新标准

城市路内停车管理常因行道树遮挡、高位设备盲区等问题&#xff0c;导致车牌识别率低、逃费率高&#xff0c;传统模式在复杂路段束手无策。免布线低位视频桩凭借超低视角部署与智能算法&#xff0c;正成为破局关键。该设备安装于车位侧方0.5-0.7米高度&#xff0c;直接规避树枝遮…...

ubuntu22.04有线网络无法连接,图标也没了

今天突然无法有线网络无法连接任何设备&#xff0c;并且图标都没了 错误案例 往上一顿搜索&#xff0c;试了很多博客都不行&#xff0c;比如 Ubuntu22.04右上角网络图标消失 最后解决的办法 下载网卡驱动&#xff0c;重新安装 操作步骤 查看自己网卡的型号 lspci | gre…...