网络数据抓包 windows- VC++ 用原始套接字编程,怎样抓取网页响应数据?

问题描述

VC++ 用原始套接字编程,怎样抓取网页响应数据?

在网上找了很多方法,都是只能抓取发出的请求数据,没有响应数据

recv(sock, recvInf, sizeof(recvInf), 0);//接收包

windows环境下,VS2015

解决方案

参考:
http://www.codeproject.com/Articles/17031/A-Network-Sniffer-in-C
http://www.netresec.com/?page=RawCap

解决方案二:

这个是开发给特定用户的,抓取用户访问特定网页的数据,分析回传。现在问题是只抓到了发出的数据。

时间: 2024-10-18 15:18:24

网络数据抓包 windows- VC++ 用原始套接字编程,怎样抓取网页响应数据?的相关文章

python原始套接字编程示例分享_python

下面开始构造HTTP数据包, IP层和TCP层使用python的Impacket库,http内容自行填写. 复制代码 代码如下: #!/usr/bin/env python #-------------------------------------------------------------------------------# Name:     raw_http.py# Purpose:       construct a raw http get packet## Author:  

捕获-Linux 原始套接字发包问题

问题描述 Linux 原始套接字发包问题 用原始套接字 实现了 抓包 协议分析.举个例子现在想通过判断TCP 的数据部分 判断是否含有Host: www.baidu.com之类的 然后返回一个302重定向包 将其请求重定向到另外的一个URL上.但是 发送的包发送不出去 wireshark捕获到 很郁闷. 解决方案 用libpcap等开发包来做呢,提供了现成的 解决方案二: libpcap+libnet已经实现了,但是原始套接字的 还没搞顺溜....

代码-linux的xterm开启的终端里使用原始套接字发送数据包出错,求助

问题描述 linux的xterm开启的终端里使用原始套接字发送数据包出错,求助 xterm下原始套接字可以接收数据包,但是发送数据包时出错,怎么解决? 错误是[error 101]network is unreachable. 代码如下: proto = socket.getprotobyname('tcp') # only tcp sock = socket.socket( socket.AF_INET, socket.SOCK_RAW, proto ) packet_base = sock.

原始套接字 tcp-用原始套接字发送TCP数据包,显示发送成功但是接收不到,求教

问题描述 用原始套接字发送TCP数据包,显示发送成功但是接收不到,求教 我需要自己构建IP数据包,在IP选项部分添加一些数据,因此用原始套接字发送TCP数据包,但是发送成功了,另一台主机接收不到,用的2003系统,不知道哪位好心人能帮助下,万分感激,谢谢 解决方案 你这个问题说的比较笼统,你是用的无连接发送吧,发送成功了,但是主机没收到,可能:1.IP包或者TCP包创建的有问题2.发送过程中,数据有丢失3.服务器的程序,在接受数据的程序上存在一些问题 解决方法:1.在客户端断点检测,查看IP和T

网络编程-原始套接字实现SYN扫描,但用wireshark时始终没有发现发出去的包

问题描述 原始套接字实现SYN扫描,但用wireshark时始终没有发现发出去的包 #include #include #include #include #include #include "WS2TCPIP.H" #pragma comment(lib,"Ws2_32.lib") using namespace std; //SOCKADDR_IN target, source; //sockaddr_in target, source; //int sock;

sock-怎么用python和原始套接字发送一tcp数据包?

问题描述 怎么用python和原始套接字发送一tcp数据包? 这段代码直接把数据packet_base作为ip的载荷了,怎么才能是packet_base作为tcp的载荷呢?谢谢 sock = socket.socket(socket.AF_INET, socket.SOCK_RAW, socket.IPPROTO_TCP) sock.sendto(packet_base, 0, (IP_PACKET_IN, 12321)) sock.close() 解决方案 把你的代码修改成如下就是TCP啦:

Python中利用原始套接字进行网络编程的示例

  这篇文章主要介绍了Python中利用原始套接字进行网络编程的示例,使用sock_raw接受和发送数据包可以避开网络协议的诸多限制,需要的朋友可以参考下 在实验中需要自己构造单独的HTTP数据报文,而使用SOCK_STREAM进行发送数据包,需要进行完整的TCP交互. 因此想使用原始套接字进行编程,直接构造数据包,并在IP层进行发送,即采用SOCK_RAW进行数据发送. 使用SOCK_RAW的优势是,可以对数据包进行完整的修改,可以处理IP层上的所有数据包,对各字段进行修改,而不受UDP和TC

用原始套接字实现网络监听

1.引言 网络监听工具(sinff)是提供给网络管理员的一类管理工具.在以太网中(Ethernet),当网络上连接多台计算机时,某瞬间只能有一台计算机可以传送数据.以太网中,数据是以被称为帧的数据结构为单位进行交换的.通常,在计算机网络上交换的数据结构体的单位是数据包.而在以太网中则称为帧.这种数据包是由记录着数据包发送给对方所必需信息的报头部分和记录着发送信息的报文部分构成.报头部分包含接收端的地址.发送端的地址.数据校验码等信息. 在以太网上,帧(数据包)是被称为带碰撞检测的载波侦听多址访问

原始套接字发送自己封装的TCP/IP包,加线程后速度也上不去是什么原因

问题描述 原始套接字发送自己封装的TCP/IP包,加线程后速度也上不去是什么原因 情况是这样,我需要发送自己构造的数据包,将数据封在TCP包中,然后再封在IP包中,最后再发送出去 现在要尽可能达到最快的发送速度,我的方案是先创建一个字符串数组,用于存放已经构造好的数据包,然后程序运行时先把数据包构造好并保存在数组中,然后在启动发包的线程 我的带宽是1000M,当启动一个线程时,发包速度大约是170M,CPU占用率40%左右,但是加到10个进程时速度也就是190M,cpu 50%---60%,加到