资源简介
c#实现的网络嗅探器,即sniffer,网络攻防课程大作业,实现了对于tcp,arp,ip等基本协议的捕获分析。
代码片段和文件信息
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
using Tamir.IPLib;
using Tamir.IPLib.Packets;
using Tamir.IPLib.Protocols;
using System.Collections;
namespace sniffer
{
public partial class sniffer : Form
{
PcapDeviceList devices ;
PcapDevice device ;
PcapDevice device1;
Packet pac;
int index=1;
int ipnum = 0;
int icmpnum = 0;
int tcpnum = 0;
int udpnum = 0;
int arpnum = 0;
int sum = 0;
private delegate void ControlDelegate(Packet packet);
public struct Info
{
public int index1;
public DateTime time1;
public int len1;
public int hwtype1;
public int protocoltype1;
public int hwaddresslength1;
public int operation1;
public string srcIp1;
public string dstIp1;
public string srchwaddress1;
public string dsthwaddress1;
public int srcPort1;
public int dstPort1;
public string pr1;
public int version1;
public int ipheaderlength1;
public int sevicetype1;
public int totallength1;
public int flag1;
public int fragflag1;
public int livetime1;
public int protocol1;
public int checksum1;
public long sequencenum1;
public int code1;
public byte[] data1;
}
List array = new List();
public sniffer()//初始化
{
InitializeComponent();
btnstop.Enabled = false;
}
private void btnstart_Click(object sender EventArgs e)//开始按钮响应事件
{
btnstop.Enabled = true;
btnstart.Enabled = false;
if (cmb_netcard.Text == ““)
{
MessageBox.Show(“请选择网卡“);
btnstart.Enabled = true;
btnstop.Enabled = false;
}
else
{
//打开所选网卡接口进行监听
device = devices[cmb_netcard.Items.IndexOf(cmb_netcard.Text)];
device1 = devices[cmb_netcard.Items.IndexOf(cmb_netcard.Text)];
int readTimeoutMilliseconds = 1000;
device.PcapOpen(true readTimeoutMilliseconds);
device1.PcapOpen(true readTimeoutMilliseconds);
if (cmb_fliter.Text.ToString() == “tcp“ || cmb_fliter.Text.ToString() == “udp“ || cmb_fliter.Text.ToString() == “ip“ || cmb_fliter.Text.ToString() == “icmp“ || cmb_fliter.Text.ToString() == “arp“)
{
string filter = cmb_fliter.Text.ToString();
device.PcapSetFilter(f
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2014-10-11 16:47 sniffer\
目录 0 2014-10-10 14:16 sniffer\sniffer\
文件 4286 2014-10-09 18:30 sniffer\sniffer.ico
文件 1223 2014-10-11 16:47 sniffer\sniffer.lnk
文件 284572 2014-10-09 18:27 sniffer\sniffer.png
文件 911 2014-10-06 22:33 sniffer\sniffer.sln
文件 16896 2014-10-06 20:44 sniffer\sniffer.suo
文件 45056 2014-10-12 16:27 sniffer\sniffer.v11.suo
目录 0 2014-10-10 14:16 sniffer\sniffer\bin\
目录 0 2014-10-11 16:47 sniffer\sniffer\bin\Debug\
文件 32256 2014-10-11 16:35 sniffer\sniffer\bin\Debug\sniffer.exe
文件 38400 2014-10-11 16:35 sniffer\sniffer\bin\Debug\sniffer.pdb
文件 21464 2014-10-12 16:07 sniffer\sniffer\bin\Debug\sniffer.vshost.exe
文件 490 2009-08-31 00:40 sniffer\sniffer\bin\Debug\sniffer.vshost.exe.manifest
文件 176128 2014-10-06 20:01 sniffer\sniffer\bin\Debug\Tamir.IPLib.SharpPcap.dll
文件 57635 2014-10-20 16:59 sniffer\sniffer\bin\Debug\test.pcap
文件 24305 2014-10-11 16:37 sniffer\sniffer\Form1.cs
文件 20650 2014-10-10 16:11 sniffer\sniffer\Form1.Designer.cs
文件 14025 2014-10-10 16:15 sniffer\sniffer\Form1.resx
目录 0 2014-10-10 14:16 sniffer\sniffer\obj\
目录 0 2014-10-11 16:35 sniffer\sniffer\obj\Debug\
文件 1229 2014-10-07 08:56 sniffer\sniffer\obj\Debug\DesignTimeResolveAssemblyReferences.cache
文件 6790 2014-10-10 15:03 sniffer\sniffer\obj\Debug\DesignTimeResolveAssemblyReferencesInput.cache
目录 0 2014-10-06 13:39 sniffer\sniffer\obj\Debug\Refactor\
文件 1164 2014-10-12 16:07 sniffer\sniffer\obj\Debug\sniffer.csproj.FileListAbsolute.txt
文件 847 2014-10-10 16:15 sniffer\sniffer\obj\Debug\sniffer.csproj.GenerateResource.Cache
文件 6034 2014-10-06 22:37 sniffer\sniffer\obj\Debug\sniffer.csprojResolveAssemblyReference.cache
文件 32256 2014-10-11 16:35 sniffer\sniffer\obj\Debug\sniffer.exe
文件 38400 2014-10-11 16:35 sniffer\sniffer\obj\Debug\sniffer.pdb
文件 180 2014-10-06 22:37 sniffer\sniffer\obj\Debug\sniffer.Properties.Resources.resources
文件 4852 2014-10-10 16:15 sniffer\sniffer\obj\Debug\sniffer.sniffer.resources
............此处省略14个文件信息
相关资源
- C# 调用win32 api函数-user32.dll详细说明
- C# 调用BarTender打印条码DEMO
- 大型比赛竞赛抽签系统 可打印 c# vs
- C#编写的Gerber查看器
- lua C# .Net4.0 vs2010 LuaInterface
- C#十六进制编辑器
- 明华URF-35H读卡器 C#读写源码 为大家
- C#文件流读取CSV文件
- c#读写PDF文件sql
- C# winform Socket大文件传输
- c#车牌识别系统附30张测试图片
- 《C#面向对象程序设计》源代码(CS)
- 金旭亮《C#面向对象程序设计》教案
- 试题库管理系统毕业论文(C#)源程序
- 学校网站原代码(C#.NET)
- C#-数据库操作技术-员工管理系统
- c#web开发入门经典
- C#与Matlab混合编程的几种方式
- c# 开发与 mysql数据库实现的增删改查
- C#异步操作 异步查询数据库 异步处理
- Basler相机通过IO触发源码
- [源代码] 《领域驱动设计 (C# 2008 实
- 松下PLC与C#通讯串口调试入门教程.z
- USB 继电器控制器 LCUS-1 保证能用 c#
- C# AES加密解密小工具
- C#圆形按钮,非常漂亮动态~~
- [精]C#仿QQ右下角弹出提示框()
- C#进程间通信-共享内存代码
- 有史以来最简单的三层(C#)
- vb调用c#编写的串口DLL文件(vb源码
评论
共有 条评论