1.1网络嗅探技术概述网络嗅探,是监听流经本机网卡数据包的一种技术,嗅探器就是利用这种技术进行数据捕获和分析的软件。编写嗅探器,捕获数据是前置功能,数据分析要建立在捕获的基础上。以太网与WiFi是目前网络嗅探器主要监听对象网络嗅探器按照实现形式可以分为软件嗅探器和硬件嗅探器
1.2网络嗅探器的原理与实现1.2.1以太网卡工作模式常用的以太网卡支持以下工作模式:广播模式、多播模式、直接模式和混杂模式。
广播模式(BroadCastModel):它的物理地址(MAC)地址是0Xffffff的帧为广播帧,工作在广播模式的网卡接收广播帧。它将会接收所有目的地址为广播地址的数据包,一般所有的网卡都会设置为这个模式。多播传送(MultiCastModel):多播传送地址作为目的物理地址的帧可以被组内的其它主机同时接收,而组外主机却接收不到。但是,如果将网卡设置为多播传送模式,它可以接收所有的多播传送帧,而不论它是不是组内成员。直接模式(DirectModel):工作在直接模式下的网卡只接收目地址是自己Mac地址的帧。只有当数据包的目的地址为网卡自己的地址时,网卡才接收它。混杂模式(PromiscuousModel):工作在混杂模式下的网卡接收所有的流过网卡的帧,信包捕获程序就是在这种模式下运行的。网卡的缺省工作模式包含广播模式和直接模式,即它只接收广播帧和发给自己的帧。如果采用混杂模式,网卡将接受同一网络内所有主机发送的数据包。利用网卡混杂模式的特性,就可以到达对于网络信息监听捕获的目的。
1.2.2共享式网络与交换式网络中的嗅探共享式网络主要使用集线器连接,而交互式网络主要使用交换机组建集线器的工作模式决定了其中任一主机都能够嗅探整个集线器上的全部网络流量交换式网络中数据帧只转发到目标主机的特定端口,减少了网络数据被嗅探的风险网络嗅探攻击常用技术手段有以下三种:
1.2.3类UNIX平台的网络嗅探技术实现类UNIX平台的网络嗅探技术主要通过内核态的BPF和用户态的libpcap抓包工具库实现类UNIX平台的BPF与libpcap所嗅探捕获的数据包将保存在pcap记录文件中,而pcap记录文件也成为了类UNIX平台上存储网络数据包的标准格式1.2.4Windows平台的网络嗅探实现技术内核态的NPF和用户态的WinPcap
1.3网络嗅探器软件类UNIX平台网络嗅探器软件:libpcap抓包开发库、tcpdump、wiresharkWindows平台网络嗅探器软件:winpcap、windump、wireshark
1.4网络嗅探的检测在linux平台中,可以构造MAC地址无效而IP地址有效的ICMPEcho请求,看目标主机是否返回应答包,如果目标主机返回应答包,说明目标主机未检查MAC地址,处于混杂模式,正在执行嗅探在Windows平台下,在混杂模式下,检查一个包是否为以太网广播包时,只要看MAC地址的前八位是否为0xff,基于该项特性可以实现针对Windows平台上网络嗅探的检测
1.5网络嗅探的防范措施采用安全的网络拓扑用静态ARP或者MAC-端口映射表代替动态机制重视网络数据传输的集中位置点的安全防范避免使用明文传输口令或敏感信息的网络协议
2.1网络协议分析技术网络协议分析的典型过程包括以下几个步骤:
网络嗅探得到原始二进制数据对以太网数据帧进行结构分析,确定网络层协议类型进一步对IP数据包进行分析,确定是TCP或者UDP协议根据TCP或者UDP端口确定应用层协议根据应用层协议对数据进行恢复整合,得到世纪传输的数据
任务:利用tcpdump对在本机上访问www.tianya.cn网站过程进行嗅探。在访问网站首页时,浏览器将访问多少个web服务器,IP地址是什么?
由图可以看到,系统主要访问了
人为构造的到一台蜜罐主机的5次不同类型的端口扫描1.攻击主机的ip地址是什么2.网络扫描的目标ip地址是什么3.本次案例中使用了哪个扫描工具,如何确定4.你所分析的日志文件中,攻击者使用了哪种扫描方法,扫描的目标端口是什么,并描述其工作原理。5.蜜罐主机上哪些端口被发现是开放的6.攻击主机的操作系统是什么
2.3.4.由于我们已经确定了这些扫描是由nmap所发起的,而nmap在发起端口扫描之前总是先通过Ping扫描和针对80端口的探测确定目标主机是否活跃。通过过滤器搜索icmp,可以定位ICMP协议对应的Ping扫描,实现两次Ping扫描。在数据包中存在大量SYN请求包,这是攻击机57738端口向目标主机进行的TCPSYN扫描,目的是用于扫描目标主机的端口是否活跃,如果活跃则目标主机会反馈一个SYN|ACK包,攻击机端口会立刻发送一个RST包关闭这个链接,目标端口不活跃则会反馈RST|ACK包,指令可能为nmap-sS-pXXX端口172.31.4.188。
2.3.6.通过p0f/home/kali/listen.pcap可以查询到攻击主机的操作系统为linux2.6.x
这周的实践作业感觉对理论技术上的要求比较高。“分析日志文件”的那个小实践一直没搞明白,更别说弄清楚工作原理了,感觉对计算机或者网络协议方面的知识要求比较高,需要自己课后再多学习。