c#写的ARP发包器arpsender

时间:2012-01-16 20:04:16
【文件属性】:

文件名称:c#写的ARP发包器arpsender

文件大小:200KB

文件格式:RAR

更新时间:2012-01-16 20:04:16

c# arp

ArpSender是C#写的ARP发包器,写的初衷是想试下什么样的ARP包才会引起ARP攻击,构造一些包可能会导致别人上不了网。至于包怎么填,发挥大家的想象吧,嘿嘿。 ArpSender用了SharpPcap这个开源API,有兴趣的到网上查下,用起来挺简单的。编程过程中最大的问题就是线程的问题。发包的代码中用了BackgroundWorker控件,因为参数只能传一个,并且线程是不允许直接调用主窗口控件,后来用了一个结构体struct ArpPac来传,感觉还是很麻烦啊!不过还好在BackgroundWorker的RunWorkerCompleted可以直接操作主窗口控件了,能把结果显示到主窗口上。 在编写获取IP的MAC地址部分,一开始还是用BackgroundWorker,在获取存在的IP地址MAC时可以正常工作,可是当IP不存在是,DOWORK方法一直没结束。因为里面一个Resolve方法一直没返回,也没超时设定,线程就一直卡在那不动了。也不知道该怎么结束这个线程。于是改用了Thread,传参数用了个object数组,嘿嘿,所有参数都封起来。到了那边再解封,很好用。后来才发现,线程是没有返回值的。。又不能直接操作窗体控件。。没办法,只好设个全局变量来保存结果了。获取MAC部分还用了个Timer控件,1秒钟如果还没得到返回的MAC,直接结束该线程。。。 BackgroundWorker 用起来简单也很好用,如果有个abort方法的话。。。


【文件预览】:
ArpSender
----ArpSender.as(339B)
----bin()
--------Debug()
--------Release()
----obj()
--------ArpSender.csproj.FileList.txt(502B)
--------Debug()
--------Release()
----MainForm.resx(6KB)
----ArpSender.suo(14KB)
----ArpSender.sln(812B)
----MainForm.cs(11KB)
----ArpSender.csproj(2KB)
----说明.txt(1KB)
----MainForm.Designer.cs(21KB)
----Tamir.IPLib.SharpPcap.dll(172KB)
----AssemblyInfo.cs(1KB)

网友评论

  • 代码简洁,很好。
  • 毕业设计用到的,有帮助
  • 很不错啊,网络调试的时候需要自定义发送各种报文
  • 希望能有帮助,接下来就是运行效率的问题了。
  • 不错的材料,能很好的认识ARP
  • 很厉害,简洁强大
  • 不错的材料,能很好的认识ARP
  • 很好用 有許多可以借鉴的地方 感謝分享
  • 不错,可以借鉴,谢谢分享
  • 很好用,赞一个!
  • 代码运行正确,很好的学习例子
  • 还有两种不同的运行模式,真好。
  • 作为一款专业小工具,简洁的同时功能很强大,感谢分享
  • 通过源代码可以自己进行编译,很好。谢谢。
  • 有很全面地源代码,推荐
  • 带源代码的,可以学习,也可以自己来修改!
  • 普通——没有.exe的执行文件,不太方便使用啊 .
  • 以我的渣水平看起来挺不错的,对我来说很有参考价值。 另外回楼上,有可执行文件的,在bin/Debug或bin/Release里面
  • 还得自己编译,多不方便啊!
  • 带源码的,可以作为学习例程,不错! 多谢了!