如何通过Wireshark解码SIP / TLS(非默认SIPS端口)数据包?

时间:2012-04-15 13:59:36

标签: sip ssl wireshark

我使用SIP服务器侦听端口5070以获取SIP / TLS请求。我正在尝试跟踪和分析我的拨号器没有通过Wireshark在网络上注册的原因。

我已经在Wireshark的首选项中编辑了所有必需的字段,添加了服务器的私钥,编辑了SIP TCP和TLS端口(5070而不是5061),而我现在得到的只是TLS客户端Hello和服务器响应,但没有出现SIP,只有TCP SYN和ACK。

我已经搜索并尽一切可能,但无济于事 - 任何帮助都会受到高度赞赏。

提前致谢。

//中号

1 个答案:

答案 0 :(得分:2)

TLS会话是否使用具有完美前向保密性的密码套件?如果是这种情况,即使使用服务器私钥,Wireshark也无法解密TLS。检查服务器在ServerHello消息中为子字符串EDHEECDH选择的密码套件,在这种情况下使用完全向前保密。您将在客户端或服务器中配置密码套件,以便不使用任何EDHEECDH套件。使用OpenSSL,使用ALL:-EDH:-EECDH或类似的密码套件设置。

通过完美的前向保密,客户端和服务器将使用Diffie-Hellman(DH)就共享会话密钥达成一致;服务器私钥仅用于签名。如果没有完美的前向保密,则客户端使用服务器的公钥对共享密钥进行加密,因此服务器(和Wireshark)可以使用服务器的私钥对其进行解密(假设服务器使用RSA密钥)。