在 2025 收官前,看清 Data + AI 的真实走向,点击查看 BUILD 大会精华版 了解详情
写点什么

浅析 TCP 握手欺骗

  • 2015-12-10
  • 本文字数:1230 字

    阅读完需:约 4 分钟

通常来说,TCP 握手就表示通讯双方互相验证了 IP 地址。事实却并非如此,TCP 握手欺骗是一种新型的攻击方式。

假设 A 是客户端,正在连接 B:

A: Hi B, I’m A, send number 5.
B: Hi A, I’m B, 5, send number 3.
A: Hi B, I’m A, 3, send number 6. I’d like example.net.
B: Hi A, I’m B, 6, send number 4. Here comes the data: …

在这之后,A 与 B 将会互发数据。同时为了保证所有数据都能被收到,即通信的可靠性,数字会不断增加。在 1981 年设计 TCP 协议时,安全性没有被优先考虑。ARPANET 给出了一个列表,他们需要一个协议来发送数据,并且不用担心数据重传错误、校验数据完整性、保持数据包序列等等,TCP 解决了这些问题。这些数字被称为序列号(Seq)和确认号(Ack),它们会引发两个问题:

  • 字段不够大(32 位)
  • 由于他们承担了双重责任,为了不破坏连接不正确的数字必须被丢弃。换句话说,你可以发送不正确的 Ack,但只要后续的数据包拥有正确的 Ack 将会被正常接收。

我们来演示一下利用者两个缺陷进行攻击,A 发送数据给 B:

A: Hi B, I’m C, send number 5.
B: Hi C, I’m B, 5, send number 3.
A: Hi B, I’m C, 1, send number 6. I’d like example.net.
B: Hi C, I’m B, that’s incorrect. Close the connection please.
A: Hi B, I’m C, 2, send number 6. I’d like example.net.
B: Hi C, I’m B, that’s incorrect. Close the connection please.
A: Hi B, I’m C, 3, send number 6. I’d like example.net.
B: Hi C, I’m B, 6, send number 4. Here comes the data: …

上面的情形中 B 根本无从知道自己在响应一个伪装的 IP 地址,真正的 C 也根本不知道发生了什么。平均需要花费 120GB 网络流量就能创建一个欺骗连接,这取决于你的运气,不好的话可能需要 200GB,但运气好时只需要 72GB。许多拥有 1gbps 带宽的 VPS 非常便宜,如果你充分利用它,每次攻击平均只要 17 分钟左右。通常如果你想要注入一个有效载荷,例如发送一个命令,它需要被放在现有数据后面,这会增加攻击所需的流量。例如发送“GET / HTTP/1.0\n\n”平均需要 152GB 或者 20 分钟,但这会使得你的连接在对方的 access logs 显示为一个正常的连接。

由于 TCP 协议自身的原因,这种攻击很难解决。虽然可以拒绝大量的不正确的 Ack,并可以以此为理由关闭连接,即便如此,还是会留下巨大的利用空间。如果要互相认证对方,那就需要额外的安全条件,例如使用 TSL。即使证书没有被认证过,由于客户端需要接收额外的数据,任何加密的 TSL 会话都会认证,这样欺骗就无法进行。总之,不要使用基于 IP 地址的认证,不要相信 IP 地址白名单,当你需要安全性的时候使用安全协议认证。


感谢魏星对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群(已满),InfoQ 读者交流群(#2))。

2015-12-10 18:003535
用户头像

发布了 32 篇内容, 共 21.3 次阅读, 收获喜欢 8 次。

关注

评论

发布
暂无评论
发现更多内容

企业如何选型:业务系统带低代码更好,还是不带更好?

星云低代码中间件

低代码 企业系统

OpenAI杀进服装店!ChatGPT指挥RFID看店

斯科信息

ChatGPT 斯科信息 RFID技术 OpenAl RFID相控阵门禁

《2025年,传统企业如何低成本引入AI?》

石头哥谈架构

掘金AI时代计算产业红利的商业伙伴,为什么跟华为组队?

脑极体

AI

小红书商品详情API数据解析(附代码)

tbapi

小红书API 小红书数据采集 小红书商品详情API 小红书数据分析

非传统创新者奖学金:从校园“麻烦制造者”到网络安全领航者

qife122

网络安全 黑客精神

在AI技术唾手可得的时代,挖掘新需求成为创新关键——某知名向量搜索框架需求洞察

qife122

需求分析 AI技术

元图 CAD 插件化革命:突破效率瓶颈,重构智能协作新范式

元图CAD

插件化 场景化解决方案 元图cad 模块化赋能

(CAPP集成CAD)网页CAD二次开发图纸表格提取功能

WEB CAD SDK

网页CAD 在线CAD WEB CAD CAD表格提取

区块链RWA系统的外包开发费

北京木奇移动技术有限公司

区块链开发 软件外包公司 RWA开发

区块链RWA外包开发

北京木奇移动技术有限公司

区块链开发 软件外包公司 RWA开发

仓颉之编译和构建的奇妙旅程

华为云开发者联盟

编译 构建 仓颉 华为开发者空间

大模型那么懂你,为什么(白话篇)

石头哥谈架构

基于Cursor连接华为开发者空间-云开发环境,部署Dify+MaaS构建智能问答助手

华为云开发者联盟

LLM AIAgent DeepSeek 华为开发者空间 cursor

仓颉之I/O 操作的交互奥秘

华为云开发者联盟

I/O 仓颉 华为开发者空间

区块链RWA系统外包开发的周期

北京木奇移动技术有限公司

区块链开发 软件外包公司 RWA开发

当DevOps落地实施撞上技术债务,如何量化债务突破困局

禅道项目管理

DevOps 软件开发 技术债务 效能管理 禅道项目管理软件

小红书商品列表API数据解析(附代码)

tbapi

小红书API 小红书商品列表API 小红书商品数据采集 小红书商品数据分析

对于房企而言,国内最值得选的楼宇对讲品牌有哪些?

新消费日报

什么是海外舆情监测?为什么品牌出海必须拥有海外舆情监测系统?

沃观Wovision

舆情监控 沃观Wovision 舆情监测系统 海外舆情监测

工业数字化 信息化经验总结(5)

万里无云万里天

数字化转型 信息化 工业 工厂运维

当AI有了温度,三星正在重新定义生活的边界

Alter

AI

什么是低代码平台?2025低代码平台选型指南

万界星空科技

低代码 低代码平台 mes 万界星空科技低代码平台 AI低代码MES

对于房企而言,国内最值得选的楼宇对讲品牌有哪些?

新消费日报

工业数字化 信息化经验总结(4)

万里无云万里天

数字化转型 信息化 工业 工厂运维

CST基础教程:如何从SYZ参数提取电容C和电感L --- 单端口

思茂信息

cst cst操作 cst电磁仿真 CST软件 CST Studio Suite

2025年中国楼宇对讲企业排名前十榜单

新消费日报

浅析TCP握手欺骗_安全_百占辉_InfoQ精选文章