20212805 2021-2022-2 《网络攻防实践》第三次(第五周)作业

一、知识点梳理与总结

1.网络嗅探与协议分析

1.1 网络嗅探基本介绍

网络嗅探是指为了监听数据流中所包含的私密信息,利用计算机的网络接口截获目的地址为其他计算机的数据报文的技术;

网络嗅探器:实现网络嗅探技术的工具;

通过网络嗅探器可以截获到经过封包的二进制数据,通过网络协议分析技术可以解析嗅探到的数据;

网络嗅探是常用的内网渗透技术,攻击者在获得内网中的主机访问权后即实施;可以静默地、被动地嗅探网络上传输的数据。

1.1.1 防范手段:

  • 网络嗅探的检测:1、检查网卡是否运行在混杂模式下;2、通过操作系统和协议栈对混杂模式的不同特性来判断。

  • 网络嗅探的防范:1、采用安全的网络拓扑(交换式网络);2、用静态ARP代替动态;3、避免明文传输;4、重视网络集中节点的保护(路由器,交换机等)。

1.2 网络嗅探原理及实现

    • 共享式网络嗅探:使用集线器连接,集线器上任意一台主机都能够嗅探整个集线器上的全部网络流量。

    • 交互式网络嗅探:通过MAC地址映射表来发送数据。通常有三种方式实现嗅探:
      (1)MAC地址泛洪攻击:向交换机发送大量含有虚构MAC地址和IP地址的数据包,使映射表溢出无法处理,交换机进入类似集线器的工作方式。
      (2)MAC欺骗:通常用于突破基于MAC地址的局域网访问控制。
      (3)ARP欺骗:利用IP地址与MAC地址之间进行转换时的协议漏洞,达到MAC欺骗,这里推荐详细参考ARP欺骗窃听秘密及实现。

    • 类Unix网络嗅探技术实现:通过内核态的BPF和用户态的libpcap抓包工具库实现。BPF是数据链路层上的原始接口,提供原始链路层封包的收发功能。如果网卡处于混杂模式,将会收到网络上所有包。libpcap与内核态BPF包嗅探与过滤机制想配合,为类Unix平台上的应用程序提供标准的网络嗅探接口,网络数据包的标准格式为pcap。

    • Windows网络嗅探技术实现:Windows操作系统内核不提供标准的网络嗅探与抓包接口。NPF是一个内核态虚拟设备驱动程序,功能是过滤数据包,将数据包原封不动传给用户模块。WinPcap包括packet.dll和wpcap.dll两层模块的标准抓包接口。

1.3 网络嗅探器软件

  • libpcap抓包开发库:libpcap开发的基本步骤是打开网络设备、设置过滤规则、捕获数据、关闭网络设备。
  • tcpdump:tcpdump是通用的命令行网络嗅探器与数据包分析协议。通过src 192.168.199.200 and tcp dst port 80可以查看源主机向外连接的HTTP网络流量的情况。通过tcpdump将监视第一个网络接口上所有流过的数据包。
  • Wireshark嗅探器软件:是一款开源数据包分析工具,主要作用是捕获网络数据包,对于数据包进行协议分析以尽可能显示详细的情况,并以更容易理解的格式呈现给用户。

1.4 网络协议分析技术

  • 网络嗅探得到的原始数据是在链路层传输的二进制数据包。
  • 对帧结构进行分析,得到帧头各字段结构,根据帧头字段确定网络层的协议类型,并提取包含网络层数据的内容。
  • 进一步对IP数据包进行分析,确定传输层协议类型,提取传输层数据内容。
  • 根据TCP或UDP目标端口确定确定具体的应用层协议,得到应用层特定协议的应用交互内容。
  • 依据相应应用层协议对数据进行整合恢复,得到实际传输数据。

二、具体实践

Question1:动手实践tcpdump

  • 将Kali-Linux虚拟机网络模式改变成桥接模式,使它能够连上网络。

  • 查询本机IP地址为192.168.11.231 

  • 打开Kali-Linux虚拟机终端 输入命令:sudo tcpdump -n src 192.168.31.149 and tcp port 80 and "tcp[13] & 18 =2"

  • 在浏览器中打开网址《天涯论坛》

  • 监听结果进行分析

 

 观察发现,发现主要访问的Web服务器如下:

124.225.206.22
111.206.209.249
124.225.214.214
18.66.212.4

Question2:动手实践Wireshark

  • 本地打开 Wireshark,并开启捕获。

  • 打开Kali-Linux虚拟机终端,并输入luit -encoding gbk telnet bbs.fudan.edu.cn(指定编码格式)访问复旦大学 BBS 服务器,发现其IP地址为202.120.225.9

  • guest访问

  • 通过Wireshark进行抓包,以telnet为筛选条件,发现其端口为23

 

  • 追踪TCP流发现,用户名以明文方式传输,且每个字符都变成了原来的两倍

Question3:取证分析实践

  • 下载云班课资源库里的listen.pacp文件,复制到kali中,用Wireshark打开该文件,发现攻击机的IP为172.31.4.178, 网络扫描的目标IP为172.31.4.18

  • 安装snort
  • sudo susudo apt-get install snort安装snortsudo chmod 777 /etc/snort/snort.conf给予snort.conf可读可写可执行权限→运行指令sudo snort -A console -q -u snort -c /etc/snort/snort.conf -r listen.pcap

  • 打开wireshark,用wireshark打开listen.pcap
  • 筛选条件:arp + ip == 172.31.4.178,查看攻击机攻击了几次。

  • 5、7、2071、1332204轮次攻击

  • 第一次攻击猜测为nmap -sP 172.31.4.188  //靶机活跃检测
  • 第二次攻击猜测为nmap -O 172.31.4.188   //通过构造标志位,触发响应包,看靶机的反应,判断操作系统
  • 第三次攻击猜测为nmap -sS 172.31.4.188 //全端口扫描
  • 第四次攻击猜测为nmap -sV 172.31.4.188 //开放服务扫描
  • tcp.flags.syn==1 and tcp.flags.ack==1 and ip.src==172.31.4.188为条件进行报文筛选:
  • 在Info看到开放的端口号:3306、139、23、80、25、22、53、21、445、3632、5432、8009、8180、139、8009
  • 使用p0f -r listen.pcap进行操作系统类型的探测 发现系统为 Linux 2.6X

 

posted @ 2022-04-01 09:58  20212805  阅读(77)  评论(0编辑  收藏  举报