winpcap中的URL浏览器原点

时间:2010-02-08 04:52:27

标签: c++ windows browser winpcap

用winpcap和c ++编程时,是否知道某个url / packet的来源(web浏览器)?

2 个答案:

答案 0 :(得分:1)

URL只是一个地址字符串,并不与任何特定的浏览器本身相关联。然而,分组通常由应用程序发送。在HTTP流量的情况下,我们可以安全地假设TCP。 TCP数据包始终有4个寻址字段:始发IP,始发端口,目标IP和目标端口。端口被唯一地分配给单个应用程序。在这种情况下,原始端口将分配给Web浏览器,目标端口将分配给Web服务器。

请注意,目标端口可能是80,静态分配给Web服务器,但原始端口是随机分配的,可以在以后重新分配。因此,您需要立即查找。

答案 1 :(得分:0)

捕获包含HTTP有效负载的tcp数据包后,您需要将HTTP标头隔离为字符串,以便可以使用它。在HTTP有效负载内,您将找到User-Agent关键字(您需要搜索httpHeader字符串)并读取相关值。 我认为您可以通过执行以下操作来隔离HTTP标头

char* httpHeader = pkt_hdr + 14 + sizeof(TCP_header) + sizeof(IP_header)