《网络攻防技术》
第5章 TCP/IP网络协议攻击
5.1TCP/IP网络协议栈攻击概述
1.网络安全属性与攻击模式
网络安全是指网络系统的硬件、软件及其系统中的数据受到保护,不受偶然的或者恶意的原因而遭到破坏、更改、泄露,系统连续可靠正常运行,网络服务不被中断。
网络安全属性
- 机密性:是指网络中的信息不被非授权实体获取和使用,通常基于加密算法进行保障。
- 完整性:是指信息未经授权不能进行改变的特性,即信息在存储和传输过程中保持不被修改、不被破坏和丢失的特性。
- 可用性:是指被授权实体访问并按需求使用的特性,即当需要时能够正常地存取和访问所需的信息与服务。
- 真实性:是指确保通信对方是它所声称的真实实体,而非假冒实体。
- 不可抵赖性:是指在通信中确保任何一方无法抵赖自己曾经做过的操作的安全特性,包括对自己行为的不可抵赖及对行为发生时间的不可抵赖,有时也被称为不可否认性和可审查性。
网络攻击基本模式
四种基本攻击模式:截获、中断、篡改与伪造。
中间人攻击:
2.TCP/IP网络协议栈安全缺陷与攻击技术
TCP/IP网络协议栈在设计时采用了分层模型,分为了网络接口层、互联层、传输层与应用层,每一层负责不同的功能,各自具有相应的网络协议。在每个层次上的网络协议都存在着一定的安全问题或设计缺陷,目前已经出现相应的攻击技术,如表5-1所示。
3.原始报文伪造技术及工具
实现欺骗技术需要攻击者伪造出特制的网络数据报文,发送给目标主机,使其在接受处理这些伪造报文是遭受攻击。
5.2网络层协议攻击
网络层的主要协议如IP、ICMP和ARP都存在多种攻击方式。
1.IP源地址欺骗
IP源地址欺骗是指攻击者伪造具有虚假源地址的IP数据包进行发送,以达到隐藏发送者身份、假冒其他计算机等目的。
IP源地址欺骗可以实现的根本原因在于:IP协议在设计时只使用数据包中的目标地址进行转发,而不对源地址进行真实性的验证。IP源地址欺骗的示意图如下所示:
2.ARP欺骗
ARP欺骗,有时候也被称为ARP下毒,是指攻击者在有线以太网或无线网络上发送伪造ARP消息,对特定IP所对应的MAC地址进行假冒欺骗,从而达到恶意目的的攻击技术。
ARP协议用于将网络主机的IP地址解析成其MAC地址,然后将局域网内通过MAC地址进行通信。ARP协议完成IP地址到MAC地址映射的过程步骤如下:
3.ICMP路由重定向攻击
ICMP路由重定向攻击是指攻击者伪装成路由器发送虚假的ICMP路由路径控制报文,使得受害主机选择攻击者指定的路由路径,从而进行嗅探或假冒攻击的一种技术。
- ICMP路由重定向机制原理
ICMP报文类型分为两类:差错报文类和控制类。差错报告报文分为三类:目的站不可达、数据报超时、数据报参数错误。控制类报文分为两类:请求/应答类和通知类。其中请求/应答类总是成对出现的:回送请求/应答、地址掩码请求/应答、路由器恳求/通告、时间戳请求/应答,一共8种;通知类有两种:源站控制和重路由定向。
ICMP重定向攻击就是利用ICMP路由重定向报文来改变主机的路由表,向目标机器发送重定向消息,自己则可以伪装成为路由器,是目标机器的数据报发送至攻击机从而加强监听。具体攻击过程一般会和IP源地址欺骗技术结合实施,步骤如下
(1)攻击节点利用IP源地址欺骗技术,冒充网关IP地址,向被攻击节点发送ICMP重定向报文,并将指定的新路由IP地址设置为攻击节点;
(2)被攻击节点在接收到该报文后,会进行限制条件检查,由于该报文并不违背限制条件,因此将被接收,被攻击节点选择攻击节点作为其新路由器(即网关);
(3)攻击节点可以开启路由转发,充当一个中间人,对被攻击节点与外部网络的通信进行全程嗅探监听,达到与ARP欺骗类似的攻击效果;
(4)在转发的过程中,根据ICMP路由重定向机制的设计原理,由于从被攻击节点到外部网络存在更优的路由路径,即直接通过原先的网关进行路由较重定向后的路由路径少一跳,因此攻击节点协议栈可能会被攻击节点发送一个ICMP重定向报文,指定原先网关作为新路由器,这个报文将使欺骗路由路径还原至原先正常状态,这也是ICMP路由重定向攻击中的一个非常有趣的“谎言与真话”现象。
5.3传输层协议攻击
传输层的主要协议TCP和UDP也存在很多种不同攻击方式,例如TCP RST攻击、TCP会话劫持攻击、TCP SYN洪泛拒绝服务攻击和UDP洪泛拒绝服务攻击。
1.TSP RST攻击
TCP RST攻击也被称为伪造TCP重置报文攻击,是指一种假冒干扰TCP通信连接的技术方法。
2.TCP会话劫持攻击
TCP会话劫持则是一项更为复杂的TCP协议攻击技术方法,其目标是劫持通信双方已建立的TCP会话连接,假冒其中一方的身份,与另一方进行进一步通信。
TCP会话劫持攻击的基本过程如下图所示,步骤如下:
(1)Victim主机与telnet服务器进行连接,并通过身份认证建立起会话;
(2)telnet服务器将会向Victim发送响应包,并包含服务器当前序列号(记为SVR_SEQ),以及期望客户端发送的下一个序列号(记为SVR_ACK);
(3)攻击者通过ARP欺骗实施中间人攻击,可以嗅探获得Victim和telnet服务器间的通信内容,然后就假冒Victim的IP地址及身份,向telnet服务器发送数据包,宣称自己就是Victim。
(4)Victim仍然会继续维持与telnet服务器之间的连接会话,但由于与telnet服务器之间的ACK值互相不再匹配产生出“ACK风暴”,即在攻击机注入数据包后,客户端在接收到服务器的响应包后,将会发现ACK值不正确,并向服务器发回含有它所期望ACK值的ACK包,期望重新建立起同步状态,而服务器收到Victim的ACK包后,也会发现它并不符合它的接收条件,因此它再次返回了一个ACK包,这样就构成了死循环,在网络上来回发送ACK,直到其中一个ACK由于网络拥塞或其他原因丢失为止。
TCP SYN Flood拒绝服务攻击
拒绝服务攻击是目前比较有效而又非常难于防御的一种网络攻击方式,它的目的就是使服务器不能够为正常访问的用户提供服务。所以DoS对一些紧密依靠互联网开展业务的企业和组织带来了致命的威胁。
TCP SYN Flood,又称SYN洪泛攻击,是目前最为有效和流行的一种拒绝服务攻击形式。它利用TCP三次握手协议的缺陷,向目标主机发送大量的伪造源地址的SYN连接请求,消耗目的主机的连接队列资源,从而不能够为正常用户提供服务。
SYN 洪泛攻击示意图:
5.4TCP/IP网络协议栈攻击防范措施
由于TCP/IP网络协议栈在设计上的安全缺陷和脆弱性,使得协议栈在各个网络层次上均存在着各种类型的网络攻击技术方法,对互联网及内部网络的安全性造成威胁。
- 监测、预防与安全加固
在网络接口层,主要监测和防御的安全威胁是网络嗅探,可以利用防范网络嗅探的思路,检测出局域网中的监听点,并在网络设计上尽量细分和优化网络结构,尽量消除数据广播的情况,并对关键路径上的网关、路由器等设备进行严格的安全防护,以减少网络嗅探的危害影响。
在互联层上,虽然IP、ICMP、ARP等协议中存在的本质安全缺陷,使得很难完全规避欺骗攻击安全风险,但仍可以采用多种检测和过滤技术来发现和阻断网络中可能出现的欺骗攻击,此外也应增强防火墙、路由器和网关设备的安全策略,对一些用于欺骗攻击的特殊数据包进行过滤,特别是对外部网络进行欺骗攻击的数据包进行出站过滤,只有如此,才能共同维护整个互联网的安全。
在传输层,可以实现基于面向连接和无连接服务的加密传输和安全控制机制,包括身份认证、控制访问等。
应用层可以采用加密、用户级身份认证、数字签名技术、授权和访问控制技术,以及主机安全技术,如审计、入侵检测等。 - 网络安全协议
(1)网络接口层的安全协议
网络接口层的安全协议设计和标准化主要由IEEE802委员会负责推进。
(2)网络互联层的安全协议
网络互联层目前最重要的安全通信协议主要为IPsec协议簇。
(3)传输层的安全协议
传输层上的安全协议主要是TLS,其前身是由Netscape网景公司所开发的SSL。目前最新版本是IETF发布的TLS1.2标准化网络安全协议。
(4)应用层的安全协议
在应用层,安全通信协议的特点是需要针对不同的应用安全需求,设计不同的安全机制,例如HTTP安全、电子邮件、远程控制、电子交易等,在安全协议设计过程中也会尽量地使用底层协议已经提供的安全防护能力。
第6章 网络安全防范技术
6.1安全模型
PDR安全模型是一个基于时间的动态安全模型,以经典的网络安全不等式Pt>Dt+Rt为本质基础,并提出安全性可量化和可计算的观点。
6.2网络安全防范技术与系统
网络安全防范技术对应P²DR中的“防护”环节,设立在被保护主机与外部网络中间。它是被保护主机的屏障,为主机的安全提供最基础的保护。
1.防火墙技术概述
防火墙是目前最为成熟的网络防御技术之一,在网络边界安全防护方面得到了非常广泛的应用。
防火墙的功能:
(1)检查控制进出网络的网络流量
(2)防止脆弱或不安全的协议和服务
(3)防止内部网络信息的外泄
(4)对网络存取和访问进行监控审计
(5)防火墙可以强化网络安全策略并集成其他安全防御机制
防火墙的不足:
作为网络边界防护机制而先天无法防范的安全威胁包括如下:
(1)来自网络内部的安全威胁
(2)通过非法外联的网络攻击
(3)计算机病毒传播
由于技术瓶颈问题目前还无法有效防范的安全威胁包括如下:
(1)针对开放服务安全漏洞的渗透攻击
(2)针对网络客户端程序的渗透攻击
(3)基于隐蔽通道进行通信的特洛伊木马或僵尸网络
2.防火墙技术和产品
在防火墙技术和产品发展过程中,形成和广泛采用的技术主要有包过滤技术、基于状态检测的包过滤技术、代理技术等。
- 包过滤技术
包过滤技术在路由功能基础上进行扩展,通过对网络层和传输层包头信息的检查,根据用户定义的安全策略规则集,确定是否应该转发该数据包,将一些不符合安全策略的数据包阻挡在网络的边界处。包过滤技术的示意图如下图所示: - 基于状态检测的包过滤技术
基于状态检测的包过滤技术是在包过滤技术的基础上开发的,这种技术也被称为动态包过滤。动态包过滤技术维护所有通过防火墙的网络连接记录,并依此确定数据包是否属于一个新建的连接,或是已建连接的一部分,或是一个非法数据包。 - 代理技术
代理技术是一种重要的计算机安全防护功能,允许客户端通过它与另一个网络服务进行非直接的连接,也称“网络代理”。代理技术有利于保障网络安全,防止网络攻击,是一类与包过滤技术完全不同的防火墙技术。根据工作的网络协议栈层次的不同,代理技术包括应用层代理、电路级代理和NAT代理等。
(1)应用层代理技术
(2)电路级代理技术
(3)NAT代理技术
- 防火墙产品
(1)集成包过滤功能的路由器
(2)基于通用操作系统的防火墙软件产品
(3)基于安全操作系统的防火墙
(4)硬件防火墙设备
6.3网络检测技术与系统
在PDR模型中,检测技术在整个模型中扮演了重要的角色。单纯的安全保护措施并不意味着系统的绝对安全。在入侵者攻陷保护措施之前,一个安全的系统需要检测出入侵的行为并采取相应的安全响应措施,所以检测是响应的前提。检测技术主要包括漏洞评估、入侵检测等。
入侵检测技术概述
入侵检测技术的发展过程:
入侵者分类:
(1)外部渗透者:攻破系统的外部边界访问控制机制,渗透进入系统内部的攻击者;
(2)假冒者:未经授权使用计算机系统或突破访问控制机制冒用合法用户账户的攻击者;
(3)违法者:进行了越权操作的合法用户;
(4)秘密用户:对系统具有完全控制能力,并使用此能力绕过访问控制、规避安全审计,从而破坏系统的逻辑控制的内部用户。
6.4网络安全事件响应技术
网络安全事件响应是P2DR模型中相应环节的关键技术手段。所谓网络安全事件,指的是那些影响计算机系统和网络安全的不当行为,这些行为包括传统意义上的对CIA基本属性(即机密性、完整性和可用性)的破坏行为,以及侦察性攻击、抵赖、骚扰性攻击、敲诈、传播色情或非法内容、通过电子方式组织的犯罪活动、在线欺诈和愚弄等其他类型事件。
Kali视频学习(21-25)
21.KaliSecurity - 密码攻击之在线攻击工具
(1)cewl
爬行网站,获取关键信息,创建一个密码字典。
(2)CAT(Cisco-Auditing-Tool)
思科审计工具,扫描思科路由器的一般性漏洞。
(3)Findmyhash
在线哈希破解工具,借助在线哈希网站的接口制作的工具。
(4)hydra
老牌破解工具
hydra -l user -P passlist.txt -F ftp://127.0.0.1:21 破解FTP服务,对单一用户
hydra -L 用户字典文件 -P passlist.txt(密码字典文件) -F ssh://127.0.0.1:22 破解ssh服务,针对未知用户
hydra-gtk对应的图形化界面
(5)Medusa
类似hydra
Medusa [-h host|-H file] [-u username|-U file] [-p password|-P file] [-C file] -M module [OPT]
(6)NCrack
突出功能,RDP(3389)爆破功能。
ncrack -vv -U windows.user -P windows.pwd 192.168.1.101:3389,CL=1 -f
(7)onesixtyone
snmp扫描工具,snmp,community字串
(8)Patator
与hydra类似,Python编写,支持多服务
(9)phrasen|drescher
多线程文件插件式的密码破解工具
(10)THC-PPTP-Bruter
针对PPTP VPN端点(TCP端口1723)的暴力破解工具。
22.KaliSecurity - 密码攻击之离线攻击工具(一)
(1)creddump套件
套件中有cache-dump,lsadump与pwdump,基于Python的哈希抓取工具,
(2)chntpw
修改Windows SAM文件实现系统密码修改,kali作为启动盘时做删除密码的用途
(3)crunch
密码字典生成工具,指定位数生成暴力枚举字典
(4)dictstat
字典分析工具。pack
(5)fcrackzip
zip压缩包密码破解工具。
fcrackzip -b -v -c a -l 1-4 -u 1.zip
(6)hashcat
密码破解工具,系列工具,hashcat只支持CPU破解,oclhashcat和oclgausscrack支持GPU加速。
(7)hashid
判断哈希或哈希文件是何种哈希算法加密的
哈希分析工具
hashid 目标
(8)hash-identifier
(9)John
Linux shadow中账户的密码破解
(10)Johnny
John的图形化界面
23.KaliSecurity - 密码攻击之离线攻击工具(二)
(1)ophcrack
彩虹表Windows密码hash破解工具
对应的命令行版ophcrack-cli
(2)pyrit
无线网络密码破解工具,GPU加速,是WPA2破解更有效率。
使用analyze检查抓到的包
pyrit -r xxx.cap -i yyy.dic -b ssid attack_passthrough
也可以将pyrit与crunch结合使用
crunch 8 8 1234567890 | pyrit -i - -r /file/hack01-cap -b bssid attack_passthrough
纯数字8位密码字典
(3)rcrack
彩虹表密码哈希工具
(4)rcracki_mt
彩虹表哈希破解工具,支持最新格式的彩虹表进行哈希破解
(5)Rsmangler
字典处理工具,生成字典
(6)samdump2与bkhive
Linux下破解Windows哈希的工具
(7)SIPcrack
针对SIP protocol协议数据包的破解工具
(8)SUcrack
借助su命令进行本地账户的密码破解
(9)Truecrack
一款针对truecrypt加密文件的密码破解工具
24.KaliSecurity - 密码攻击之哈希传递攻击
passing the hash,哈希传递攻击,要进行哈希传递攻击,首先要有目标主机的哈希信息,pwdump7可以抓取哈希
(1)pth套件
pth-winexe -U Administrator哈希 //目标地址 cmd 借助哈希执行程序得到一个cmdshell
(2)keimpx
python编写的,通过已有的哈希信息get一个后门shell
-t 目标IP地址
-c 凭据文件 file with list of credentials 即哈希文件
shell后门端口号为2090
(3)metasploit
模块exploit/windows/smb/psexec亦可完成hash传递攻击
25.KaliSecurity - 无线安全分析工具
- (1)RFID/NFC工具
IC卡破解 - (2)软件定义无线电
- (3)蓝牙工具集
- (4)无线网分析工具
BackTrack系列曾以此闻名,包括Aircrack-ng无线网络分析套件等工具。
Aircrack
Aircrack-ng与802.11标准有关的无线网络分析安全软件。
套件内包含:
cowpatty
wpa-psk握手包密码破解工具
EAPMD5PASS
针对EAP-MD5的密码破解工具
图形化的Fern WIFi Cracker
用Python,QT编写
MDK3
无线DOS攻击测试工具
wifite
自动化的无线网审计工具,完成自动化破解。Python编写
Reaver
对开启WPS的路由器的PIN码进行破解
wpar
实践作业
TCP/IP协议栈重点协议攻击实验
该实验上课时已经完成,下面做简要介绍:
ARP缓存欺骗攻击:
先使用命令:arp -a ,查看arp缓存池
之后使用netwox 33号指令进行修改缓存池
SYN Flood攻击
先使用telnet连接到靶机
在靶机上查看连接的端口
使用netwox 76 -i 192.168.11.147 -p 23进行泛洪攻击
查看是否还能连接,发现已经不能连接了