分享
 
 
 

sniffer技术资料

王朝other·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

sniffer中文翻译过来就是嗅探器。是一种威胁性极大的被动攻击工具!使用在个攻击可以监视网络的状态。数据流动情况以及网络上传输的信息,便可以用网络监听到方式来进行攻击,截获网上的信息。所以黑客常常喜欢用他来截获用户口令!

sniffer可以分为两类一个是硬件的一个软件的,今天给大家讲的主要是软件的sniffer.sniffer只能抓取一个物理网段的包,就是说你和监听的目标中间不能有路由(交换)或其他屏蔽广播包的设备,这一点很重要。所以对一般拨号上网的用户来说,是不可能利用sniffer来窃听到其他人的通信内容的!

sniffer属于第二层次的攻击。就是说只有在攻击者已经进入了目标系统的情况下,才能使用sniffer这中攻击手段,以便得到更多的信息。sniffer除了能得到口令或用户名外,还能得到更多的其他的信息,比如一个其他重要的信息,在网上转送的金融信息等等。sniffer几乎能得到任何在以太网上转送的数据包。sniffer是一中比较复杂的攻击手段,一般只有黑客老手才有能力使用他(其实只要了解了也可以去试试我就是常常练习才知道!)而对于一个网络新手来说,即使在一台主机上成功地编译并运行了sinffer,一般也不会得到什么有用的信息。因为通常网络上的信息流量是相当大的,如果不加选绎的接收所有的包,然后要从中找到所需要的信息是非常的困难的,而且如果长时间地进行监听,还有可能把放置sniffer的机器的硬盘撑爆!

现在给大家看一个C程序,它可以完成一般的监听功能,【* *】是注解!

【*下面是包含进行调试用系统和网络的函数的头文件*】

#include

#include

#include【*下面是IP和TCP包头结构*】struct ip {unsigend int ip_length:4; 【*定义IP头的长度*】unsigend int ip_version:4; 【*IP版本,IPV4*】unsigend char ip_tos; 【*服务类型*】unsigend short ip_total_length; 【*IP数据包的总长度*】unsigend short ip_id; 【*鉴定域*】unsigend short ip_flags; 【*IP标志*】unsigend char ip_ttl; 【*IP包的存活期*】unsigend char ip_protocol; 【*IP上层的协议*】unsigend short ip_sksum; 【*IP头校研和*】unsigend int ip_source; 【*源IP地址*】unsigend int ip_dest; 【*目的IP地址*】}struct tcp {unsigend short tcp_source_port; 【*定义TCP源端口*】unsigend short tcp_dest_port 【*TCP目的的端口*】unsigend int tcp_seqno; 【*TCP序列号*】unsigend int tcp_ackno; 【*发送者期望的下一个序列号*】unsigend int tcp_resl:4; 【*下面几个是TCP的标志*】tcp_hlen:4,tcp_fin:1,tcp_syn:1,tcp_rst:1,tcp_psh:1,tcp_ack:1,tcp_urg:1,tcp_res:2,unsigend short tcp_winsize; 【*能接收的最大字节数*】unsigend short tcp_cksum; 【*TCP校研和*】unsigend short tcp_urgent; 【*紧急事件标志*】}【*主函数*】int main(){int sock, bytes_recieved,fromlen;char buffer[65535];struct sockaddr_in from; 【*定义socket结构*】struct ip ip; 【*定义IP和TCP结构*】struct tcp *tcpsock = socket(AF_INET,SOCK,IPPROTO_TCP)【*上面是建立socket连接,第一个参数是地址族类型,用INTERNET类型*】【*第二个参数是socket类型,这里用了SOCK--RAW,它可以绕过传输层,*】【*直接访问IP层的包,为了调用SOCK--RAW,需要有ROOT权限*】【*第三个参数是协议,选IPPROTO--TCP指定可接收TCP层的内容*】while(1){fromlen=sizeof from;bytes_recieved=recvfrom(sock,buffer,sizeofbuffer,0,(struct sockaddr*)&from,&fromlen);【*上面这个函数是从建立的socket连接中接收数据*】【*因为recvfrom()需要一个sockaddr数据类型,所以我们用一个强制类型转换*】printf("\nByets received ::: %4d\n",bytes_recieved); 【*显示出接收的数据字节数*】printf("Source address:::%s\n",inet_ntoa(ftom.sin_addr); 【*显示出源地址*】ip=(struct ip*)buffer; 【*把接收的数据转换为我们预先定义的结构,便于查看*】printf("IP header length:::%d\n",ip->ip_length); 【*显示IP头的长度*】printf("Protocol:::%d\n",ip->ip_potocol); 【*显示协议类型,6是TCP,17是UDP*】tcp=(struct tcp*)(buffer+(4*ip->ip_length);【*上面这句需要详细解释一下,因为接收到的包头数据中,IP头的大小是固定的4字节*】【*所以我们用IP长度乘以4,指向TCP头部分*】printf("Source potr:::%d\n",ntohs(tcp->tcp_source_port) 【*显示出源端口*】prinft("Dest potr:::%d\n",ntohs(tcp->tcp_dest_port) 【*显示出目标端口*】}以上这个C程序是为了说明sniffer的接收原理而列举的一个最简单的列子,它这是完成了sniffer的接收功能,在运行之前我们还需要手工把网卡设置为混杂模式,在root权限下用命令设置:ifconfig eth0 promisc假设eth0是你的以太网设备接口,然后运行编译好的程序清单(就是上面的C程序)就可以看到接受的数据包了!(重要消息:这个程序的功能太简单,只能显示源地址,目标地址和源端口,目标端口等极为简单的信息,对于你来说没有用但是你可以改一下)现在来看看**的sniffer程序sniffit 可以运行在linux Solaris SGI NT等各种平台运行的网络监听软件,他主要针对的是TCP/IP协议的不安全性,对运行该协议的计算机进行监听。安装跟我来一步一步走别跑掉了嘻嘻!跑掉了别怪我呀!1。用tat zvfx sniffit.*.*.*.tgz将下载的sniffit.*.*.*.tgz解压缩到你想要的目的文件夹,如果版本是。0。3。7的话,你会看到该目录下出现一个sniffit。0。3。7的目录。2。打开sniffit。0。3。7的目录3。执行/configure && make命令,只要在个过程中终端上没有意外的错误提示信息出现,就算编译成功了,然后就可以得到一个二进制的sniffit文件,直接运行他即可!4。最后使用make clean命令清除掉临时文件。sniffit的使用方法sniffit的命令选项 作用-V 显示版本信息-t让程序去监听指定流向某IP的数据-s让程序去监听从某IP流出的IP数据包,可以使用@统配符如-t 192.168.@-i 显示出窗口界面,能查出当前 在所属网络上进行连接的机器-l 扩展的交互模式,忽略所以其他选项,比-L强大的多-c利用脚本来运行程序-F强制使程序使用网络硬盘-n 显示出假的数据包,如果使用ARP,RARP或者其他不是IP的数据包也会显示出来-N 只运行plugin时的选项,使其他选项失效使用示列假设在一个子网中有两台主机,一台运行了sniffit,为sniffit.com另一台的IP地址是192.168.0.1我把他称为xxx.com按下列步骤操作!1,检查sniffit能否运行;sniffit~/#sniffit -d -p 7 -t 192.168.0.1并且打开另外一个窗口;sniffit~/$telnet xxx.comsniffit~/#sniffit -p 21 -l 0 -t 192.168.0.1应该可以看到sniffit将远程登陆到对方7号端口echo服务的包捕获。2,截获xxx.com上的用户密码sniffit:~/#sniffit -p 23 -t 192.168.0.1意思就是监听23端口包3,如果xxx.com主机的根用户声称有陌生的FTP连接并且希望记录其动作sniffit:~/3 sniffit -p 21 -l 0 -t 192.168.0.14,阅读所有进出xxx.com的信件sniffit:~/# sniffit -p 25 -l 0 -b -t 192.168.0.1&或者sniffit:~/#- sniffit -p 25 -l0 -b -s 192.168.0.1&5,监听所以从192.168.0.1进出的包,对其行完全监视sniffit:~/# sniffit -P ipicmptcp -p 0 -b -a -d -x -s 192.168.0.16,用more 192*命令读取用下列方式记录的密码:sniffit:~/# sniffit -p 23 -A .-t 192.168.0.1哎好难写呀!现在改给大家一个WIN下的嗅探器了呀!因为win普遍是的吗HOHONetXRayNetXRay的功能主要分为三大类1,接收并分析数据包2,传送数据包功能3,网路管理监看的功能NetXRay的第三个功能是网络管理监看,网络管理功能中一共有7个按钮。现在给大家介绍一下把!DashBoard按钮:将子网下的流量以简要的形式显示出来HostTable按钮:观察子网下每台主机的网络流量情况Matrix按钮:观察子网下主机与主机之间的流量情况History按钮:将网络上的数据以图表的方式显示Protocal Distribution按钮:分析网络上各种通信协议的分布情况Alarm LOG按钮:设定网络状况警告Addree Book按钮:设定主机资料由于时间的问题我就在这里介绍一下DashBoard按钮的用法,(哇绝对又有用说我偷懒了,请大家原谅我还是学生没很多时间接触计算机所以就……等我放假了给大家更好的教材行不!)对于其他的按钮的详细资料大家可以去http://216.239.33.102找找!DashBoard按钮用来以简要的形式显示子网上的流量,单击后会出现一个图形界面很像汽车的油门表一样的东西(没时间给大家抓图了请原谅)其中,Packets行表示到目前为止共有多少数据包,Broadcasts行标称有多少个广播的数据包,Multucasts行表示有多少个播数据包,Bytes行表示共有多少字节的数据在你的子网中传输,Errors行表示网络中错误发生的次数。哎写了这么多关于sniffer的介绍情况,现在大家应该对sniffer有些了解了把!由于我文采不怎么好,或者有什么错误和不足的地方请大家提出建议来

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有