论文部分内容阅读
网络侦听是网络安全和网络管理中的重要技术。Unix和Linux通常都提供了用户级别的网络侦听功能,允许用户程序通过系统调用直接访问未经高层协议程序处理的原始网络流量数据。而在Windows环境下由于其自身的封装性,很难直接对其网络低层进行编程,严重地制约了在Windows环境下网络检测、分析安全工具的开发。WinPcap是一个自由且开放了源代码的开发包,它是基于Windows操作系统的包捕获应用系统。目前,基于Libpcap函数库与WinPcap实现以太网侦听的产品有很多,但主要是基于共享式以太网环境下工作的,无法实现交换以太网下的数据侦听。在DugSong开发的dsniff套件包中,虽然包含一个实行ARP欺骗的arp spoof模块,实现了交换以太网下的侦听,但dsniff对数据包的过滤及解码过于繁琐,在数据显示上比较杂乱。而且上述几个程序都出现了数据包重复捕获的问题。本文分析了交换式以太网下网络侦听的基本原理,介绍了ARP欺骗技术的细节。阐述了一种利用ARP欺骗技术进行交换环境下的网络侦听,实时捕获用户Telnet及FTP操作的方法。最后讨论了侦听过程中的相关显示、记录问题及解决方案,并给出了Linux+gcc环境下的编程实现。