首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏_春华秋实

    三次握手示例

    专业知识 HTTP 的三次握手是一个非常重要的面试和考试考点,但是今天早上看书上的一幅图和三段话将近看了半个小时,于是来总结一下。 ?                  HTTP 的三次握手使用的是 TCP 协议,所以先看一下 TCP 的报文段首部,三次握手需要注意到的是用红线括起来的部分。 ? 抓示例 ? Wirshark 追踪某个 HTTP 流  示例分析 192.168.1.11 为客户端 A,42.121.252.58 为服务器 B。 面试问题 为什么使用三次握手? 参考文章  TCP 三次握手 TCP为什么需要3次握手与4次挥手 Wireshark基本介绍和学习TCP三次握手 我的博客即将搬运同步至腾讯云+社区,邀请大家一同入驻:https://cloud.tencent.com

    61540发布于 2018-08-17
  • 来自专栏小白抓包软件分享

    5G隐藏WiFi握手新手抓测试

    本文使用小白抓软件演示5G隐藏WiFi的抓方法。百度网盘下载:https://pan.baidu.com/s/1Q9oWrHF_nKgwOtKyVcb7IQ? 如果没有网卡,或网卡不支持抓,可按文档推荐购买(需注意mt76x2u这个芯片虽然支持抓,但经常识别错误,本软件目前使用不了)。 程序会默认将有客户端连接的WiFi都置于顶部,没有客户端连接的WiFi是半透明的,方便观察和抓。点击“抓”,等待程序自动捕获完毕。 若检测捕获到了客户端连接过程中的握手信息,则抓完成(如果WiFi是隐藏的,还会显示出WiFi名称)。程序内置了几个简单的小字典,可做简单的弱密分析。点击旁边的钥匙按钮可以对抓到的握手进行跑。 一般密码是比较复杂的(如手机号),可以点击“下载”将握手包下载,点击菜单栏上字典下载地区手机号或使用其他大字典配合专业跑软件(EWSA、WiFiPR或hashcat)做进一步跑分析。

    74821编辑于 2025-09-20
  • 来自专栏清菡软件测试

    Wireshark抓分析SSL握手的过程

    用Wireshark抓进行详细的讲解。抓的是某机构腾讯课堂的首页。 (因为网页有变动,所以实际抓抓到的内容与图片不符。但是图片中抓到的是正确的,讲解的技术也是正确的。) 一、就能看到完整的SSL交互的过程: 上面是TCP三次握手,三次握手之后就进入SSL握手的过程。 二、SSL握手过程 1.第一个SSL握手是客户端向服务器发起的Client Hello消息。 TLS协议里面是这样的类型:是一个握手协议,并且是个Client Hello。 支持TLS1.0,TLS1.2。 TLS是SSL协议的一个版本。 这个是为了保证数据完整性的一个信息: 从抓内容来看,客户端发完之后,这个过程完成了。(抓包工具将交互的过程简化了,都放一起了。如果看分开的具体过程就是上篇文章图片画的过程。) 三、握手结束,后面就开始发送HTTP数据包了。 可以看到这个HTTP数据是加过密的: http-over-tls意思是:是在tls基础上发的一个HTTP交互报文,是加密的。

    4.4K50编辑于 2022-06-21
  • 来自专栏ZMH

    TCP三次握手、糊涂窗口、粘问题

    .^) 关于TCP/IP的三次握手: 当服务端的状态为LISTEN,客户端的状态为CLOSED时,客户端发起连接 客户端发送有SYN字段报文,此时状态为SYN_SENT状态 服务端接收该报文时,状态处于 大量发送含有少量数据的报文(极端情况一个报文只有一字节数据),因为在协议层中对数据是层层封装的过程,因此对于数据来说有大量的协议头,传输开销过大;或接收端在缓存区接受数据过慢; 解决方法: 发送端使用Nagle算法,当发送长度小于 关于粘问题: 因为要解决糊涂窗口而使数据积攒发送,或收端不及时接受缓存区数据而同时接收多个,会导致发送的原数据接收后拼接在一起无法分离。 解决方法: 当数据传输是一次交互后立即断开(多个Client与一个Server)时,数据无结构时(文件传输,一方发另一方收),使用UDP时(有消息边界)不会产生粘问题; 发送端设置强制数据立即发送,不必等待缓存区满

    32120编辑于 2022-07-17
  • 来自专栏清菡软件测试

    Wireshark抓:详解TCP三次握手报文内容

    一、抓 通过Wireshark这个抓包工具演示下正常能抓到tcp三次握手,能看到的内容是不是和上篇文章tcp三次握手中用图画出来的内容是一样的呢? 现在就抓个详细得讲解下。 随意看下某个tcp连接,它的三次握手的过程。 我就看这个,怎么过滤出来这一个连接呢? 二、详解tcp3次握手 第1个报文,请求连接消息:syn: 显示出来这是个syn: syn用来发起连接请求的,客户端向服务器发起连接请求,syn标志位置1。看下标志位置1是什么样子的。 双击它,点开看下: syn,ack与syn对比: 第3个报文,确认消息:ack 客户端发给服务器的: seq=1,是因为syn,ack中确认号是1,表示我希望你收到下一个的序列号是1。 第4个,http报文: 三次握手之后,直接是个http的报文: 传输层已经建立完tcp连接,那应用层才能去在它的这个连接基础上面,去发送http的请求。 以上就是tcp3次握手的过程。

    6K30编辑于 2022-03-30
  • 来自专栏FreeBuf

    无需四次握手破解WPA&WPA2密码

    using PMKID 根据Hashcat官方论坛文章介绍,作者在研究WPA3安全标准时,意外发现的使用PMKID破解WPA预共享密钥的方法,与现有的其它破解方法不同,该方法不再需要抓取完整的EAPOL四次握手 该方法注意的优势如下: 1.攻击者直接与AP通信,无需普通用户参与(即“无客户端”攻击); 2.无需等待普通用户与AP完成四次握手; 3.无需重传EAPOL帧(重传可能导致无法破解); 4.无需普通用户发送无效密码 相关工具 该攻击方法需要用到以下几个工具: 1.hcxdumptool v4.2.0 or higher; 2.用于抓并保存为Hashcat破解可用的格式; 3.支持的无线网卡: USB ID 148f 、AP的MAC地址及基站的MAC地址拼接组成,计算公式如下: PMKID = HMAC-SHA1-128(PMK, "PMK Name" | MAC_AP | MAC_STA) 因为PMK和普通的四次握手中的相同 如果AP接受到攻击端的协商请求并支持发送PMKID,过一会儿将看到“FOUND PMKID”的提示。 ?

    7.8K40发布于 2018-08-21
  • 来自专栏技术碎碎念

    HTTPS握手

    握手过程中采用非对称加密,得到一个对称加密的秘钥。数据传输的过程中,采用对称加密。 握手: 对称加密秘钥的生成: 握手期间,client与server两次往来。会生成三个随机数,由这三个随机数组成对称加密的秘钥。 数据传输: http报文的内容都会经过TLS层进行对称加密,秘钥是握手时生成的。发送使用秘钥加密,接收时使用秘钥解密。 前两个随机数可以被抓拿到,但是第三个随机数已经使用非对称加密算法加密过,所以最终生成的秘钥是保密的。 现在的问题就是,对称秘钥的安全靠第三个随机数的不可破解来保证。 但是为了足够安全,我们可以考虑把握手阶段的算法从默认的RSA算法,改为 Diffie-Hellman算法(简称DH算法)。 下面是DH算法握手的过程: ?

    94070发布于 2018-04-11
  • 来自专栏LukaChen Blog

    tcpdump 观察3次握手4次挥手过程与分析 http

    机器 A 192.168.75.119 场景1:抓取网卡 80 端口数据,观察3次握手4次挥手过程 命令 tcpdump -nn -i venet0:0 port 80 命令解释 -nn 两个 n 表示不解析域名和端口 方便查看 IP 和端口号 -i 要抓取的接口,上述命令抓取 venet0:0 网卡 port 端口过滤器 机器 A 执行抓命令,另开一个终端执行 curl 百度,以下为机器 A 抓的输出 xxx@root 18.699755 IP 180.101.49.12.80 > 192.168.75.119.43670: Flags [R], seq 3139177705, win 0, length 0 3 次握手过程 方便查看 IP 和端口号 -s0 获取报文全部内容 -A 以ASCII格式打印每个数据,方便查看数据内容 -i 要抓取的接口,上述命令抓取 venet0:0 网卡 port 端口过滤器 机器 A 执行抓命令 [mss 1460,sackOK,TS val 3113475661 ecr 0,nop,wscale 7], length 0 E..<..@.@.....Kw.e1....P..^.......9.

    49730编辑于 2023-10-22
  • 来自专栏算法channel

    Python常用,可以学学这9

    最近汇总了平时常用到的9个很好的Python,它们能极大的提高我们的工作效率,安装它们,然后逐步熟练使用它们。 若有用,可以收藏这篇文章。 Scrapy提供了易于使用的方法和,可以使用HTML标记或CSS类提取信息。 5 click命令行工具 click是一个Python,可用于创建命令行接口,相当漂亮的命令行,相当丝滑。 尽管它是用Java编写的,Python提供对几乎所有Selenium函数的类似API的访问。 9 图像处理Pillow 很多时候,需要以某种方式修改图像,使其更适合,例如模糊细节、组合一个或多个图像或创建缩略图。

    1.3K20编辑于 2022-03-28
  • 来自专栏云头条

    9 亿 IT 大单、20 个标

    标的1:电网管理平台(资产域V2.0)建设项目 预算 29299.2 万元 (1)标1:电网管理平台(资产域V2.0-安全监管、系统运行)建设项目,预算 3588.49 万元 本项目依托南方电网公司云平台 (2)标2:电网管理平台(资产域V2.0-电网规划、基建管理等)建设项目,预算 8493.55 万元 本项目依托南方电网公司云平台、全域物联网平台、人工智能平台、南网智瞰服务、项目中心、数据中心等技术平台 (3)标3:电网管理平台(资产域V2.0-输变电管理、配网透明化管理、防灾减灾应用)建设项目,预算 6239.45 万元 本项目依托南方电网公司云平台、全域物联网平台、人工智能平台、南网智瞰服务、项目中心 (2)标2:文件转换迁移系统和OFD版式阅读软件采购,预算 90 万元 采购文件转换迁移系统一套,采购OFD版式阅读软件系统一套。 建设单位:公司总部。 标的9:2022年南网智瞰运营实施项目 预算 1300.73 万元 围绕南网智瞰平台建立运营组织体系,开展运营支撑、用户分析推广、需求分析管理、活动运营策划、分子公司辅助运营、数据制作等常态化运营工作。

    71420编辑于 2022-05-10
  • 来自专栏从零开始学自动化测试

    Fiddler抓9-保存会话(save)

    前言 为什么要保存会话呢?举个很简单的场景,你在上海测试某个功能接口的时候,发现了一个BUG,而开发这个接口的开发人员是北京的一家合作公司。你这时候给对方开发提bug, 如何显得专业一点,能让对方心服

    2.1K50发布于 2018-04-08
  • 来自专栏作图丫

    CRISPRCas9 screen 数据绘图R

    细菌的防盗系统拥有多种切除外来病毒基因的功能,科学家们掌握了对一种蛋白Cas9的操作技术,并先后对多种目标细胞DNA进行切除。这种技术被称为CRISPR/Cas9基因编辑系统。 简要介绍 MAGeCK (Wei Li and Liu. 2014)和MAGeCK- vispr 刘小乐团队在开发了MAGeCK 和MAGeCK- vispr 用于分析CRISPR/Cas9 screen 该的下游分析包括鉴定必要的、非必要的和目标相关的基因,并对这些基因进行生物学功能类别分析、通路富集分析和蛋白复合物富集分析。该还以多种方式可视化基因,有利于用户探索筛选数据。 分析模式 该R可以进行两种模式的分析,一种是“quick”模式,一种是“step by step”模式。 Quick模式 01 加载R library(MAGeCKFlute) library(ggplot2) 02 加载数据 #MAGeCK分析结果数据-gene file1 = file.path(system.file

    4.8K31编辑于 2022-03-29
  • 来自专栏全栈程序员必看

    tcp握手失败怎么办_TCP协议握手

    这些异常场景共分为两大类,第一类是 TCP 三次握手期间的异常,第二类是 TCP 四次挥手期间的异常。 TCP 三次握手期间的异常 我们先来看看 TCP 三次握手的过程。 当第五次超时重传后,会继续等待 32 秒,如果服务端仍然没有回应 ACK,客户端就不再发送 SYN ,然后断开 TCP 连接。 第二次握手的 SYN-ACK 报文其实有两个目的 : 第二次握手里的 ACK, 是对第一次握手的确认报文; 第二次握手里的 SYN,是服务端发起建立 TCP 连接的报文; 所以,如果第二次握手丢了,就会发送比较有意思的事情 因为第二次握手报文里是包含对客户端的第一次握手的 ACK 确认报文,所以,如果客户端迟迟没有收到第二次握手,那么客户端就觉得可能自己的 SYN 报文(第一次握手)丢失了,于是客户端就会触发超时重传机制, 因为这个第三次握手的 ACK 是对第二次握手的 SYN 的确认报文,所以当第三次握手丢失了,如果服务端那一方迟迟收不到这个确认报文,就会触发超时重传机制,重传 SYN-ACK 报文,直到收到第三次握手

    1.3K50编辑于 2022-10-03
  • 来自专栏高并发

    TCP协议三次握手和四次挥手抓分析

     TCP协议在双方建立连接的时候需要三次握手,首先客户端发送SYN标志为1的TCP数据,然后服务器端收到之后,也会发送一个SYN标志置位,并且带有ack应答的数据,最后客户端再发送给服务端一个应答, > 0xc571), seq 1, ack 1, win 229, length 0,发现没了选项字段,说明在默认情况下,选项字段是在三次握手中前两次握手时确定了双方的各种属性。 而抓结果是第二和第三也就是服务端发送的ack和FIN合并成了一个报文。 .@.GK....     0x0010:  c0a8 000a d9b0 22b7 eb37 8c84 f7c4 7c80  ......"..7....|.     0x0020:  8011     0x0000:  4500 0034 8211 4000 4006 374e c0a8 000a  E..4..@.@.7N....     0x0010:  c0a8 000a 22b7 d9b0

    73341编辑于 2022-06-23
  • 来自专栏运维猫

    TCP协议三次握手和四次挥手抓分析

    finis ['faɪnɪs] 终结 2、三次握手连接 ? 注 1.连接开始时,连接建立方(Client)发送SYN,并包含了自己的初始序号x; 2.连接接受方(Server)收到SYN以后会回复一个SYN,其中包含了对上一个x 的回应信息ACK,回应的序号为下一个希望收到的序号 ,即x+1,然后还包含 了自己的初始序号y; 3.连接建立方(Client)收到回应的SYN以后,回复一个ACK做响应,其中包含了下一个希望收到的序号即y+1。 4、使用tcpdump抓查看tcp三次握手过程 4.1建立连接 [root@docker-01 ~]# yum install tcpdump [root@docker-01 ~]# ssh root RSA key fingerprint is MD5:5a:05:f9:bb:02:3d:05:55:cd:9a:14:0d:07:33:47:39.

    1.7K30发布于 2019-10-31
  • 来自专栏Linux

    Rocky Linux 9 源码安装php8

    Rocky Linux 9 源码安装php8大家好,我是星哥!今天咱们不聊yum一键安装的“快餐式”部署,来点儿硬核的——源码编译安装PHP 8.3。为什么要折腾源码? 话不多说,跟着星哥一步步把PHP 8.3.3 在Rocky Linux 9上从0到1跑起来,顺便把性能榨干! 快速安装Rocky Linux 9系统中源码安装php8.3.3 并且使用phpfpm安装目录为:/data/app/php8.3用户为 www 端口自定义为 8300需要PHP安装扩展zipopenssllibmemcachedphpredispcntlamqprabbitmqswoole .安装依赖# 清理缓存并更新软件列表dnf clean alldnf makecachednf install -y wget libxml2-devel sqlite-devel bzip2-devel devel/x86_64/os/Packages/l/libzip-devel-1.7.3-8.el9.x86_64.rpmdnf -y install libzip-devel-1.7.3-8.el9

    33810编辑于 2025-07-15
  • 来自专栏武军超python专栏

    2018年9月25日TCP三次握手和四次挥手

    TCP三次握手和四次挥手: SYN: 表示建立连接 FIN: 表示关闭连接 ACK: 表示响应 PSH: 表示有 DATA数据传输 RST: 表示连接重置。 seq: 数据本身的序列号 ack:是对收到数据的确认以及期望对方继续发送的下一个数据的序列号。 TCP的几次握手就是通过这样的ACK表现出来的。但SYN与FIN是不会同时为1的,因为前者表示的是建立连接,而后者表示的是断开连接。RST一般是在FIN之后才会出现为1的情况,表示的是连接重置。 一般地,当出现FIN或RST时,我们便认为客户端与服务器端断开了连接;而当出现SYN和SYN+ACK时,我们认为客户端与服务器建立了一个连接。 ? TCP连接的断开(四次挥手) ?

    38630发布于 2019-02-25
  • 来自专栏Linux

    Rocky Linux 9 源码安装php7

    Rocky Linux 9 源码安装php7大家好!我是星哥。尽管现在 PHP 版本已迭代至 8.x,但有时为了兼容遗留系统或特定应用需求,我们仍需部署特定版本的 PHP。 环境纯净: 避免了包管理器可能带来的不必要的依赖,保持系统环境的精简。 快速安装Rocky Linux 9系统中源码安装php7.3 phpfpm,shell脚本安装目录为:/data/app/php7.3 、用户为 www 、端口自定义为 7300 。 _9_Install_PHP7_3_PHPFPM.sh1.新建用户和用户组groupadd $USERuseradd -g $USER $USER2.安装编译 PHP 依赖# 清理缓存并更新软件列表 源码安装php7完成。

    43900编辑于 2025-07-17
  • 来自专栏Linux

    Rocky Linux 9 源码安装Mysql8

    Rocky Linux 9 源码安装Mysql8大家好我是星哥,之前介绍了,Rocky Linux 9 源码安装Mysql5.7。 高度定制化:您可以选择性地编译所需的存储引擎、功能模块,去除不必要的功能,减小安装体积,降低潜在的安全风险。 Linux 9系统中源码安装 mysql8mysql安装的目录:/data/app/mysql8/installmysql数据库目录:/data/app/mysql8/datamysql数据库配置目录 /9/AppStream/x86_64/os/Packages/r/rpcgen-1.4-9.el9.x86_64.rpm # 安装依赖 rpm -ivh libtirpc-devel-1.3.3 -9.el9.x86_64.rpm rpm -ivh rpcgen-1.4-9.el9.x86_64.rpm 然后再安装MySQL8.0.39需要的gcc工具集,安装前,需要升级软件

    74811编辑于 2025-07-05
  • 来自专栏大宇笔记

    App Thinning Xcode9选择

    6月9日结束的苹果WWDC15大会上,苹果公司推出了多个新技术,不过对于手游开发者们来说,可能最具有革命意义的是库克在发布会现场都没有提到的应用瘦身功能(App Thinning),它是其Xcode 7 3.Xcode会为选定设备类型生成变体,提高调试销量并允许你在本地设备进行变体测试。 4.创建应用档案并为特定设备输出对应的变体应用9.测试者们通过TestFlight在你的应用所支持的设备上安装测试版本,TestFlight会根据用户设备的不同而下载特定的变体应用。 On-Demand资源指的是寄存在App Store并与应用下载分离的应用内容,使用On-demand资源可以让应用体更小,安装时间更短。 On-Demand资源的循环周期 带有标签的资源使用流程大致如下: 带标签的资源被存储在App Store里-应用通过标签请求使用资源-系统下载资源-保存资源-使用完成后系统释放资源

    89320编辑于 2022-05-06
领券