20211917 2021-2022-2 《网络攻防实践》第三周作业
1.知识点梳理与总结
1.1实验目标
网络攻防实践第3次实验,主要内容分为两个部分,分别是网络嗅探和网络协议分析。二者通常结合使用来分析截获到的数据。
1.2实验要求
https://edu.cnblogs.com/campus/besti/2021-2022-2-NADP/homework/12566
1.3实验原理
1.3.1网络嗅探:网络嗅探基本介绍
网络嗅探器通过计算机的网路介面,拦截目标是其它电脑的资料讯号,用以侦测资料流中所含有之机密资讯。网络侦听机是一种能够完成网路侦测技术的仪器。拦截后的二值资料往往与网路规约分析技术相配合,用以对侦测网路资料进行解析。网路侦测是黑客常用的网路入侵技术,一般是在攻击端取得网路上的一位网路存取权限后执行。能够无声地被动地嗅探网络中传递的资料。因此,对于网络嗅觉的探测和防御仍然很难。以下是几种基本的探测和预防措施。
- 网络嗅探的检测:例如,查看网卡在混合方式中的状态。还可以从操作系统和协定堆叠中的混合图案的香味类型来判定。
- 网络嗅探的防范:采用了一种安全的交换网络拓扑结构,以静态 ARP取代了动态,避免了明文的传送,并强调了对节点(路由器、交换机等)的保护。
在有线 LAN和 WLAN中,最常用的是以太和 WiFi作为连接层,同时也是监控的重要目标。
- tcpdump为 Ethernet提供了嗅探服务
- kismet能够监控 WiFi
- 这两种不同的网络嗅探器在破解和解析数据包的过程中是没有任何差别的。不同之处在于,无线嗅探器能够根据无线传输协议来读取和分析数据包。
在发动袭击之前,要先了解有关机构或人员的情况。如特定的域名,网络地址的范围,互联网上可以直接存取的 IP地址和网络服务的详细信息。至于个人,则是可以查询自己的身份、联系方式等,这样才能保证以后的黑客入侵。
根据实施方式,网络嗅探器可划分为软件嗅探器和硬件嗅探器。
- 硬件嗅探器是利用特定的网络来获取和分析网络的信息,也被称作协议分析器。
- 软件嗅探器通常是通过网络卡来实现位不同的操作系统类型的应用软件。
1.3.2网络嗅探:原理及实现(以太网)
本节从以太网的工作方式到分享和交换网,并对其在 Unix和 Windows环境下的应用进行了阐述。
- 以太网的工作原理:以太网是以帧为单位传送共用通讯通道的数据,其中包含传送来源的 MAC地址和目的 MAC地址。在网络传输过程中,采用协议堆叠实现 TCP/IP包,并在数据链路层“装配”帧头部和帧尾部,并将其传输到共享的通讯媒体上。通常情况下,网络卡驱动只能接收对应于 MAC地址的数据帧。但混合的网卡将会接受所有的数据框架,这些数据框架可以通过它来连接共享的通讯介质。
1.3.3网络嗅探:嗅探器软件
目前,大多数的网络嗅探程序都是以 BPF和 libpcap为基础的,其中最常见的有 libcap包开发库, tcpdump, wireshark嗅探程序(Unix和 Windows)。
- libpcap抓包开发库:
libpcap
发展的最根本的一步就是打开网络设备,设置过滤规则,捕捉数据,关掉网络设备。请参阅 libpcap的细节说明。(虽然很多程序都是简单的两个指令就能做出来,但还是有很重要的作用。) - tcpdump
tcpdump
是一个带有分组解析的通用指令行网路嗅探协定。从“src192.168.199.200和 tcp dst端口80,可以看到 HTTP网络中的数据传输。在第1个网路介面上,所有透过
tcpdump`都会被监控。 - Wireshark嗅探:一个开放源码的封包分析工具,它的功能是捕捉网路资料,透过协定解析资料,以最大限度地展现细节,并提供使用者更易于阅读的形式。
1.3.4网络协议分析技术
网络嗅探是指以包处理方式组合而成的二元格式的原始包的内容,为了获得它所包含的信息,必须按照 TCP/IP协议协议的规格,将包在不同的协议层面上的协议格式和内容进行恢复。wireshark是当前主流的 Web协议分析工具。
2.实验过程
2.1tcpdump
任务:利用tcpdump对在本机上访问www.tianya.cn网站过程进行嗅探。在访问网站首页时,浏览器将访问多少个web服务器,IP地址是什么?
- 访问“天涯”的主页,用“tcpdump”命令“tcpdump- nn”(tcp 【tcpflags】&tcp-syn!&tcp-ack!和(192.168.3.7)
请解释此指令,并在搜索时指定 IP192.168.3.7
,条件为tcp-syn!=0
和tcp-ack!=0
,也就是一个包,它的 syn不是0, ack不是0。还有很多有关 tcpdump的指示,比如tcpdump hosttianya.cn
,tcpdump src192.168.3.7和 tcp dst port 80
,诸如此类。可以用【Tcpdump的例子】(https://blog.csdn.net/sysprogram/article/details/52200899)学习更多的tcpdump指令。
- 通过观察上图,发现主要经过的Web服务器如下:
124.225.159.113
124.225.214.206
124.225.206.22
2.2动手实践Wireshark
任务:使用wireshark对在本机上以telnet方式登录BBS进行嗅探与协议分析。
1.BBS服务器的IP地址与端口?
2.telnet协议是如何向服务器传送你输入的用户名及登录口令?
3.如何利用wireshark分析嗅探的数据包,并从中获取用户名及登录口令?
- 下面是复旦大学 bbs的例子。首先,打开 Wireshark,在终端上键入" luit- encoding gbk telnetbbs.fudan.edu.cn,登陆复旦 bbs论坛。我们在 Wireshark中找到了它的 IP位址
202.120.225.9
,它的端口是23
。
Telnet
协定使用时明文传送使用者名称和口令,透过跟踪 TCP流程,我们可以看见使用者名称guest
。请从您的主 IP地址:192.168.11.24'到复旦 bs,请输入"202.120.225.9
。
2.3取证分析实践
任务人为构造的到一台蜜罐主机的5次不同类型的端口扫描。
1.攻击主机的IP地址是什么
2.网络扫描的目标IP地址是什么
3.本次案例中是使用了哪个扫描工具发起这些端口扫描?你是如何确定的
4.你所分析的日志文件中,攻击者使用了那种扫描方法,扫描的目标端口是什么,并描述其工作原理
5.蜜罐主机上哪些端口被发现是开放的
6.攻击主机的操作系统是什么
2.3.1攻击主机的IP地址是什么?网络扫描的目标IP地址是什么?本次案例中是使用了哪个扫描工具发起这些端口扫描?
-
我们可以用
snort
来侦测二进制档案。首先,使用sudoapt-get install
安装snort
,并对snort.co nf
可读可写入可执行权限sudo chmod 777/etc/snort/snort.co nf
,并运行sudo snort- c/etc/snort/snort.co nf
是不显示状态报告,- r
为从 pcap格式的文件中读取数据包)。
-
同时,我们还可以使用 Wireshark (在导入一个文件之后,在统计中打开 conversations的观测)。
-
对上述两种软体进行了比较,得出了被攻击的主机 IP为
172.31.4.178
,而网路搜寻则为172.31.4.188
。使用namp
开始的扫描可以从snort
中看到。
2.3.2攻击者的扫描方法,并描述其工作原理。
- 首先,我们在
Wireshark
中过滤ARP
,因为nmap
每一次侦测主机的活动都会在广播域中广播arp request
报文,而nmap
每一次扫描前都会有主机活动侦测。我们在首次与二次试验间没有任何分组,因此可以断定,首次使用的是namp- sP
。
- 在第二次扫描结束后,我们发现攻击机针对单点、 TCP和 UDP的第一个端口,并且使用了许多标记位来触发不同的应答分组,因此很容易就能确定这些通信是被它的' nmap- O`选项所触发的。其具体实施方式是将特定的数据包构建到目标主机,并将其采集到反馈包中的细微"指纹"(不同操作系统的网络协议堆栈的实施方式不同),并将其与一个"指纹"数据库(nmap-os-fingerprints)相比较。
- 然后是第三次,第三次是13 W,估计是六万多个端口,所以,这是一个特定的端口。使用
namp- sS- p-65535
(推测为全部端口扫描),- p
规定了扫描的端口数目。
- 使用命令
tcp. port==23
(23是 telnet端口)对档案资料进行筛选。发现攻击机完成了4次对目标的扫描。很显然,第一、二、三次扫描都是建立了联系,但是到了第四次,却出现了 telnet连接。
- 最后再看一遍,我们发现,每一次都比上一次要长,因此我们可以推测,这是
namp- sV
在侦测网路服务。通过命令 tcp. port==22 (22是 ssh端口)可以看出,第一个、第三个、第四个是 ssh连接,这是针对靶机的 ssh软件。从这一点可以看出,22端口的第3个和第4个扫描器实际上是一个整体,第3个扫描器用于检查22个端口是否开启,第4个扫描器22个端口的软件。所以第四个扫描是 nmap- sV,是对开放的网络业务进行检测。
操作系统和端口
-
利用命令
tcp.flags.syn == 1 and tcp.flags.ack == 1
进行筛选,结果显示目标上的端口为21、22、23、25、53、80、139、445、3306、5432、8009、8180
。
-
先用
nmap-0- r listen. pcap
来检测操作系统类型,然后发现它不正确,就用p0f- r listen. pcap
进行测试,得出以下结果(先用apt-get installp0f安装),是Linux2.6. X
。
3.学习中遇到的问题及解决:
问题一:登陆bbs中文乱码问题
问题一解决方案:首先是从系统的文字开始,找到了修改登录代码的方法。
问题二:要做证据的解析,是要用到大量的知识和手段的,要花费大量的时间
问题二解决方案:持续查询的工具及其原则
4.学习感想和体会
勤加实践,方能提高。这份功课仅仅对专业有一些需求,本人在电脑网路上的认识还很欠缺,还需再进修。