【问题标题】:How do i catch a SSL/TLS key using python sockets on server side如何在服务器端使用 python 套接字捕获 SSL/TLS 密钥
【发布时间】:2021-08-05 22:07:07
【问题描述】:

客户端在某些网站上发出 GET 请求,例如 https://www.youtube.com。此请求被重定向到我的代理服务器,该服务器获取所有数据。然后我尝试解码('UTF-8')它,但我得到错误

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xfc in position 8: invalid start byte

我想这是因为 SSL/TLS 加密?但是接下来有一个问题 ---> 如何使用 python 套接字捕获 SSL/TLS 密钥?

【问题讨论】:

  • 您是否正在尝试实现 MITM 代理?
  • @AlexeyR。有点,脚本是用python编写的,但重点是“读取为字符串”客户端发送到服务器的https请求。
  • 我用asyncio 写了一些类似的东西。您可以查看here

标签: python https proxy python-sockets


【解决方案1】:

此错误是因为存在非 ASCII 字符且无法编码或解码。 避免这种情况的一种方法是使用encode() 函数。 让你的字符串是x

x.encode('utf-8').strip()

【讨论】:

  • 我想这是我得到的错误的答案,但仍然不清楚 - 我如何将这个“非 ASCII”变成从客户端发送的真实请求字符串?我需要捕获 SSL/TLS 密钥来解密我得到的内容 ---- 所以,问题来了,我如何捕获 ssl/tls 密钥来解密客户端发送给我的内容?
  • @BaronRandom 您最好包装套接字,并允许内置 Python 函数为您处理 SSL/TLS。见here
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-12-18
  • 2013-01-13
  • 1970-01-01
  • 2019-01-11
  • 1970-01-01
  • 2017-02-02
相关资源
最近更新 更多