发送arp欺骗报文(Microsoft Visual Studio 2010)

,,,,,,,,由于局域网的网络流通不是根据IP地址进行,而是根据MAC地址进行传输。所以,MAC地址在一个上被伪造成一个不存在的MAC地址,这样就会导致网络不通,一个不能Ping通C !这就是一个简单的ARP欺骗。

在每台安装有TCP/IP协议的电脑里都有一个ARP缓存表,表里的IP地址与MAC地址是一一对应的,在命令提示符下,输入“ARP——”就可以查看ARP缓存表中的内容了发送ARP欺骗报文(Microsoft Visual Studio 2010)

,注:用“arp - d”命令可以删除arp表的内容,用“arp - s”可以手动在arp表中指定IP地址与MAC地址的对应。

配置及代码如下:

项目,在* *属性(alt + F7)
配置属性,在C/c++,祝辞常规——祝辞附加包含目录——祝辞(是把头文件所在的文件路径(包括)添加到附加目录中C: \ WpdPack \包括)


项目,在* *属性(alt + F7)
配置属性,在链接器——在常规——祝辞附加库目录——祝辞(是把Packet.lib; wpcap.lib所在目录(自由)添加到附加库目录中C: \ WpdPack \ Lib)


项目,在* *属性(alt + F7)
配置属性,在链接器——在输入——祝辞附加依赖项——在补充”;Packet.lib wpcap。自由”

项目,在* *属性(alt + F7)
配置属性,在C/c++,祝辞预处理器——在预处理器定义,在补充”;HAVE_REMOTE”

//WinpCap测试。cpp:定义控制台应用程序的入口点。
//
# include“stdafx。h”
# include & lt; pcap.h>

int _tmain (int命令行参数个数,_TCHAR * argv [])
{
,,,pcap_if_t * allAdapters;//适配器列表
,,,pcap_if_t *适配器;
,,,pcap_t ,,* adapterHandle;//适配器句柄
,,,u_char ,,,,包[1020];//待发送的数据封包
,,,char errorBuffer [PCAP_ERRBUF_SIZE];//错误信息缓冲区

,,,如果(pcap_findalldevs_ex (PCAP_SRC_IF_STRING、零和allAdapters errorBuffer)==1)
,,,{//检索机器连接的所有网络适配器
,,,,,,,流(stderr,“错误pcap_findalldevs_ex功能:% s \ n”, errorBuffer);
,,,,,,,返回1;
,,,}

,,,如果(allAdapters==NULL)
,,,{//不存在任何适配器
,,,,,,,printf (" \ nNo适配器发现!确保WinPcap安装。\ n”);
,,,,,,,返回0;
,,,}

,,,int crtAdapter=0;

,,,(适配器=allAdapters;适配器!=零;适配器=适配器→下)
,,,{//遍历输入适配器信息(名称和描述信息)
,,,,,,,printf (" \ n % d。% s”、+ + crtAdapter适配器→名称);
,,,,,,,printf (" % s \ n”,适配器→描述),
,,,}
,,,printf (" \ n ");

,,,//选择适配器
,,,int adapterNumber;
,,,printf("输入1和% d之间的适配器数量:”,crtAdapter);
,,,scanf_s (“% d”, adapterNumber);

,,,如果(adapterNumber & lt;1 | | adapterNumber祝辞crtAdapter)
,,,{
,,,,,,,printf (" \ nAdapter数量范围。\ n”);,,,,,,,
,,,,,,pcap_freealldevs (allAdapters);//释放适配器列表
,,,,,,,返回1;
,,,}

,,,适配器=allAdapters;
,,,(crtAdapter=0;crtAdapter & lt;adapterNumber - 1;crtAdapter + +)
,,,,适配器,适配器=?

,,,//打开指定适配器
,,,adapterHandle=pcap_open(适配器→名称//适配器名称
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,65536年,,,,,,,,,//部分的数据包捕获
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,//65536保证整个
,,,,,,,,,,,,,,,,,,,,,,,,,//包将被捕获
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,PCAP_OPENFLAG_PROMISCUOUS,//混杂模式
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,1000年,,,,,,,,,,,,,null

发送arp欺骗报文(Microsoft Visual Studio 2010)