【问题标题】:Openssl (Or other libs) - Tls client helloOpenssl(或其他库) - Tls 客户端你好
【发布时间】:2014-12-24 08:34:57
【问题描述】:

我有一个库来处理 http 客户端和网络服务器之间的连接。

我想拦截 http 连接以查看用户尝试访问的服务器。

在许多情况下,客户端会尝试连接到 https 服务器/资源,因此我想拦截流并检查内部以提取用户尝试访问的服务器。 tls 协议 v1.2 中有一个扩展允许这样做。

所以问题是,是否有任何库(包括 openssl)允许在不使用任何套接字的情况下进行 tls 解析?我想只使用解析器来提取信息,这与wireshark的方式非常相似。

提前致谢。 马丁

编辑 我找到了一个代理实现,它完全符合我的要求。

https://github.com/dlundquist/sniproxy/tree/master/src

【问题讨论】:

    标签: ssl openssl


    【解决方案1】:

    所以我想截取流...

    无需拦截流。 ClientHello 是纯文本,因此即使是被动攻击者也可以使用。

    您可能需要为会话恢复 0-RTT 等事情保留离线数据(但话又说回来,您可能无法使用会话恢复 0-RTT 中使用的令牌或 cookie)。

    tls 协议 v1.2 中有一个扩展允许这样做。

    是的。它是服务器名称指示器 (SNI) 扩展。它在 TLS 1.0 及更高版本中可用。

    那么问题是,是否有任何库(包括 openssl)允许在不使用任何套接字的情况下进行 tls 解析?

    想到了一个 Wireshark 的解剖器。但我不确定它们是否可以作为图书馆使用。以下内容可能对 Wireshark 站点有所帮助:How to compile dissector to DLL or shared library?。另请参阅 Stack Overflow 上的 Wireshark tcap dissector inside my program

    【讨论】:

    • 感谢您的帮助,是的,我知道这是纯文本,只是想知道是否有一个小的 api 或库来解析扩展。我会看看你提到的解剖器。
    猜你喜欢
    • 2015-07-11
    • 2014-01-29
    • 2014-10-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多