gpt4 book ai didi

python - 在python中解密ssl加密数据

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

我正在使用 dpkt 分析使用 python 捕获的数据包。应用层是用ssl加密的。我想解密 ssl 数据(即 tcp 有效负载)。我有私钥,所以我应该可以使用私钥来解密数据。这是我的脚本:

#!/bin/python
import sys
import dpkt

def main():

if not len(sys.argv) == 2:
print "need a pcap file"
return 1

filename = sys.argv[1]
f = open(filename)
pcap = dpkt.pcap.Reader(f)

framenum = 1
for ts, buf in pcap:

if framenum == 123:
eth = dpkt.ethernet.Ethernet(buf)
ip = eth.data
tcp = ip.data
ssl = tcp.data

# decrypt ssl

framenum += 1



if __name__ == '__main__':
sys.exit( main() )

我可以用什么来代替“解密 ssl”注释来获取解密的 ssl 字节?我猜应该有一些库可以为我做这件事,但我对 ssl 和 python 的所有搜索都提供了有关编写可以接收 ssl 连接的套接字程序的信息。我对此不感兴趣。相反,我需要解密使用 ssl 加密的数据。

谢谢!

最佳答案

您不太可能找到现成的库来执行此操作。从数据包转储中解密相当复杂,我相信目前功能最好的工具仍然是 Wireshark .

请注意,您还需要捕获整个 TLS session ,从握手开始。此外,如果连接使用提供前向保密的临时模式(任何具有 DHE 或 ECDHE 的模式),则无法解密数据。

关于python - 在python中解密ssl加密数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20432770/

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