gpt4 book ai didi

java - 使用 jNetPcap 在服务器上解码 HTTPS 请求负载

转载 作者:行者123 更新时间:2023-12-01 10:21:07 29 4
gpt4 key购买 nike

在讨论这个问题之前,我想先分享一下我的网络的结构。我有 3 台计算机,其中 1 台充当服务器,其余计算机充当客户端。服务器连接到互联网并与其他两台机器共享。我一直在尝试使用 Jnetpcap 库记录服务器上的所有 HTTPS 请求。我已经很轻松地记录了来自 HTTP 的所有请求。但是,无法控制 HTTPS 请求。

我的 PacketHandler 片段是:

 PcapPacketHandler<String> jpacketHandler = new PcapPacketHandler<String>() {

public void nextPacket(PcapPacket packet, String user) {

System.out.printf("Received packet at %s caplen=%-4d len=%-4d %s\n",
new Date(packet.getCaptureHeader().timestampInMillis()),
packet.getCaptureHeader().caplen(), // Length actually captured
packet.getCaptureHeader().wirelen(), // Original length
user // User supplied object
);
}
};

作为响应,它返回

youtube.com.https ......Blah Blah

但是,没有返回我愿意捕获的 YouTube 视频 ID。

最佳答案

问题出在“HTTPS”中的“S”。

HTTP 请求和回复都是纯文本。 HTTPS 是 HTTP-over-{SSL,TLS},并且在这些请求和回复中发送的纯文本几乎总是加密的。您必须解密它,这并不容易 - Wireshark 的代码有时可以做到这一点,如果您提供了正确的信息,但是,如 the Wireshark Wiki entry for SSL表明,并且查看用于解密的 Wireshark 代码就会发现,涉及大量工作。

关于java - 使用 jNetPcap 在服务器上解码 HTTPS 请求负载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35613756/

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