【问题标题】:Is it possible to send tcp syn packet with payload by using WFP?是否可以使用 WFP 发送带有有效负载的 tcp syn 数据包?
【发布时间】:2015-08-26 11:52:45
【问题描述】:

我是 Windows 过滤平台的新手。

是否可以使用 WFP 发送带有有效负载的 tcp SYN 数据包?

我要发送的有效载荷将有一些秘密密码。

我的linux服务器会检查SYN包的payload是否有效。

【问题讨论】:

  • 不可能与初始 SYN 一起发送任何内容。在建立连接之前发送数据是无效的。
  • 事实上,我不明白如何使用 WPF 发送任何内容。它是一个拦截框架,而不是发送 API。

标签: c++ windows tcp packet wfp


【解决方案1】:

WFP 或没有 WFP,您“可以”在 SYN 数据包中发送数据,但另一端应该知道这一点。标准不允许或建议这样做。引入 TCP 快速开放时认为人们会适应它很快变得不受欢迎。

在SYN中发送数据,即使你实现了也不是一个好习惯,因为

a) 不可扩展 b) 有一些代理或网关可能会拦截此 TCP 流并丢弃您的数据,仅在它们建立服务器端连接时发送 SYN。 c) 大多数 TCP 会假设 SYN 没有数据,因为尚未建立连接。

这就是人们进行封装以保存来自所有中间盒的数据的原因,您可以在该主体上设计一些东西。

【讨论】:

  • 补充一下,Palo Alto(和其他)之类的公司将过滤包含数据的 SYN 数据包称为一项功能(例如,knowledgebase.paloaltonetworks.com/…)。有一个名为 TCP Fast Open 的特定且紧凑的用例,它确实发送了这样的防火墙旨在允许的小负载 - 但除此之外,你运气不好。
【解决方案2】:

虽然可以使用 SYN 包发送数据,但不建议发送敏感数据。任何截获 SYN 数据包的“坏用户”都可以使用您的密码发起连接。

【讨论】:

  • 谢谢你Pratap @Pratap
  • 怎么可能? RFC 793 中的什么地方是这样说的?
猜你喜欢
  • 2016-10-25
  • 1970-01-01
  • 2023-03-30
  • 1970-01-01
  • 2011-05-17
  • 1970-01-01
  • 2018-08-25
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多