gpt4 book ai didi

c - 设计 EAP-TLS 客户端问候消息

转载 作者:太空宇宙 更新时间:2023-11-03 23:49:20 25 4
gpt4 key购买 nike

我正在尝试设计启动 EAP-TLS 握手的第一个数据包。这是我的数据包目前的样子:

enter image description here

我通过用相应的信息手动填充 C 中的缓冲区来设计 EAP 部分。我使用 OpenSSL 派生的 TLS 部分如图所示 in this question .然后我去了RFC并在数据包中添加了 4 个八位字节长度字段和 TLS 标志。但是wireshark不接受!我尝试逐字节比较 TLS 数据与通过 TCP 发生的 TLS 连接,我可以看到客户端 hello(十六进制 16)、TLS 版本(0x0301:TLS 1.0)的字段顺序相同。你能帮我找出我哪里出错了吗?谢谢你!另外,如果有人知道可以生成这些消息的客户端以便我可以比较它们,那也会很有帮助。谢谢!

最佳答案

您的 802.1X header 表示数据包为 227 字节。突出显示了 199 个字节,未突出显示了 28 个字节,因此总计为 227。很好。

因此,如果您的整个数据包为 227 字节,那么您的 EAP header 肯定必须小于该字节。除了你的 EAP header 说 EAP 数据也是 227 字节。

您的 EAP header 应如下所示:

+------+------+------------+------+----
| code | ID | length | type | data ...
+------+------+------------+------+----
1 byte 1 byte 2 bytes 1 byte n bytes

RFC2716说:

Length

  The Length field is two octets and indicates the length of the EAP
packet including the Code, Identifier, Length, Type, and Data
fields. Octets outside the range of the Length field should be
treated as Data Link Layer padding and should be ignored on
reception.

所以长度是从 code 开始到数据包结尾的字节数,在这种情况下,我想应该是 227 - 18 = 209 .

继续,我们看到消息类型是 13,所以它是一个 EAP-TLS 数据包。我看到 S 位未设置,这意味着此数据包是片段确认。那是对的吗? (可能不是,但只有你知道)

The S bit (EAP-TLS start) is set in an EAP-TLS Start message. This differentiates the EAP-TLS Start message from a fragment acknowledgement.

获取 EAP-TLS 长度,它告诉我们您的消息的总长度,以防您的有效负载分布在许多数据包中。我们正在查看您的整个 TLS 消息的数据包吗?只有您自己知道您的消息有多长以及它的长度。

TLS Message Length

  The TLS Message Length field is four octets, and is present only
if the L bit is set. This field provides the total length of the
TLS message or set of messages that is being fragmented.

我假设整个消息都是您突出显示的内容,因此它的长度为 199。

即使上面的某些细节对于您的数据包来说是错误的,一般的想法是您的长度有误,也许标志也有误。

资源:

http://www.netcraftsmen.net/resources/archived-articles/429-examining-8021x-and-eap.html

http://www.ietf.org/rfc/rfc2716.txt

关于c - 设计 EAP-TLS 客户端问候消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24702893/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com