教材学习(五六章)
第五章
TCP/IP网络协议攻击
-
网络安全的属性:机密性 、完整性 、可用性 、真实性 、不可抵赖性 。
-
网络攻击的基本模式分为:截获(嗅探 与 监听) 、中断(拒绝服务) 、篡改(数据包篡改) 、伪造(欺骗) 。
-
TCP/IP网络协议栈在设计时采用了分层模型,分为:网络接口层 、互联层 、传输层 、应用层。每一层当中都有针对破坏网络安全属性为目的的攻击技术。每一层所涉及的主要协议:
网络接口层:以太网协议、PPP协议。
互联层:IPv4、ICMP、ARP、DGP。
传输层:TCP、UDP。
应用层:HTTP、FTP、POP3/SMTP、DNS、SMB。 -
在TCP/IP网络协议栈的攻击技术当中,除了网络嗅探与协议分析技术外,最流行的是欺骗技术(Spoofing)。攻击者伪造出特制的网络数据报文,发送给目标主机,使其在接受处理这些伪造报文时遭受攻击。在类UNIX平台和Windows平台上,攻击者都可以通过使用原始套接字(Raw Socket),绕过TCP/IP协议栈的报文封装处理和验证,构造出任意的数据报文。除了自己编程实现伪造报文外,还有一些可以实施各种网络欺骗攻击的工具软件,如:Netwox、Netwag。
网络层协议攻击
IP源地址欺骗
攻击者伪造具有虚假源地址的IP数据包进行发送,以达到隐藏发送者身份,假冒其他计算机的目的。
- IP源地址欺骗原理:只是用数据包中的目标地址进行路由转发而不对源地址进行真实性验证。利用IP源地址欺骗进行IP假冒攻击
- IP源地址欺骗技术的应用场景:普遍应用于拒绝服务中,或网络扫描时,基于IP地址的身份认证等
- 利用netwox进行IP源地址欺骗:从ICMP到TCP/IP都可以伪造,并且可以设置相应的参数。
IP源地址欺骗的防范措施:
- 使用随机化的初始序列
- 使用网络层安全传输协议
- 避免采用基于IP地址的信任策略
- 在路由器和网关上实施包过滤
ARP欺骗
攻击者在有线以太网或无线网络上发送伪造ARP消息,对特定IP所对应的MAC地址进行假冒欺骗,从而达到而已目的地的攻击技术。
- ARP协议欺骗原理:ARP协议用于将网络主机IP地址解析成其MAC地址,然后在局域网内通过MAC地址进行通信。
- ARP欺骗攻击技术原理:ARP协议认为局域网内的所有的用户都是可信的,但是局域网内也可能存在内部攻击者或已渗透进入局域网的外部攻击者或恶意代码。
- ARP欺骗技术应用场景:交换式网络中进行局域网中嗅探,进一步协议分析窃取敏感信息。
- 利用Netwox进行ARP欺骗:工具软件有Arpspoof工具,arposion,Netwox工具等
- ARP欺骗攻击防范措施:静态绑定关键主机IP地址与MAC地址映射关系,使用相应的ARP防范工具,使用VLAN虚拟子网细分网络拓扑,加密传输数据
ICMP路由重定向攻击
攻击者伪装成路由器发送虚假的ICMP路由路径控制报文,是的受害主机选择攻击者指定的路由路径,从而进行嗅探或假冒攻击的一种技术。
- ICMP路由重定向机制原理:IP协议缺少差错和查询机制。ICMP报文类型,差错报告类和控制类。ICMP路由重定向主要用于网络故障是数据包处理,网络拓扑结构发生变化,出现
故障时。 - ICMP路由重定向攻击技术:利用ICMP路由重定向报文来改变主机的路由表,向目标机器发送重定向消息,自己则可以伪装成路由器,使目标机器的数据报发送至攻击机从而加强监
听 - 利用Netwox进行ICMP路由重定向攻击:嗅探网络中的数据包,每嗅探到一个符合要求的数据包,就向该IP地址发送一个ICMP重定向攻击报文,让该IP主机重定向至预先设定的IP地
址。 - ICMP路由重定向攻击防范:根据一些类型过滤一些ICMP数据包,设置防火墙过滤
传输层协议攻击
TCP RST攻击
又称为TCP重置报文攻击,假冒干扰TCCP通信连接的技术。
TCP会话劫持攻击
- TCP会话劫持攻击原理:是更为复杂的TCP协议攻击技术方法,其目标是劫持通信双方已建立的TCP会话连接,假冒其中一方的身份给,与另一方进行通信。
- TCP会话劫持攻击防范措施:禁用主机上的源路由,采用静态绑定IP-MAC映射表可以避免ARP欺骗。
TCP SYN Flood拒绝服务攻击
是目前比较有效而又非常难于防御的一种网络攻击方式,目的是是服务器不能够为正常访问的用户提供服务。TCP SYN Flood又称泛洪攻击,是目前最为有效和流行的一种拒绝服务攻击形式,利用TCP三次握手协议的缺陷,向目标主机发送大量的伪造源地址的SYN连接请求,消耗目标主机的连接队列资源,从而不能为正常用户服务。
SYNFlood攻击原理:攻击主机向受害主机发送大量伪造源地址的TCP SYN报文,受害主机分配必要的资源,然后向源地址返回SYN/ACK包,并等待源端返回ACK包。
利用Netwox进行TCP SYN Flood攻击
SYN Flood攻击防范措施:SYN-Cookie技术和防火墙地址状态监控技术
UDP Flood拒绝服务攻击
向目标主机和网络发送大量UDP数据包,造成目标主机显著地计算负载提升,或者目标网络的网络拥塞,从而使目标主机和网络陷入不可用的状态,造成拒绝服务攻击。
TCP/IP网络协议栈攻击防范措施
- 监测、预防与安全加固
- 网络安全协议。如:网络接口层上的WEP、WPA/WPA2、802.X;网络互联层上的IPsec协议簇;床数层上的TLS;应用层的HTTPS、S/MIME、SET、SSH。
- 下一代互联网协议:IPv6。
第六章——网络安全防范技术
安全模型
动态可适应网络安全模型基于闭环控制理论,典型模型PDR模型以及在其基础上提出的P2DRP2DR模型等。
PDR安全模型是一个基于时间的动态安全模型。P2DRP2DR基本描述为:网络安全=根据风险分析制定安全策略+执行安全防护策略+实时监测+实时响应。
网络安全防范技术与系统
1.防火墙技术概述
防火墙属于一种网络上的访问控制机制,通过在不同的网络安全域之间建立起安全控制点,对通过的网络传输数据进行检查,决定是否允许其通过。
防火墙技术分为:包过滤(网络层),电路级网关(传输层),应用层代理技术(应用层)技术。
防火墙技术能为网络管理员提供如下安全功能:
- 检查控制进出网络的网络流量
- 防止脆弱或不安全的协议和服务
- 防止内部网络信息泄露
- 对网络存取和访问进行监控审计
- 强化网络安全策略并集成其他安全防御机制
防火墙的不足:
- 来自网络内部的安全威胁
- 通过非法外联的网络攻击
- 计算机病毒的传播
2.防火墙技术和产品
- 包过滤技术
- 基于状态监测的包过滤技术
- 代理技术:应用层代理技术、电路级代理技术、NAT代理技术。
防火墙产品:集成包过滤功能的路由器、基于通用操作系统的防火墙软件产品、基于安全操作系统的防火墙、硬件防火墙设备、个人防火墙产品。
防火墙部署方法:包过滤路由器、双宿主堡垒主机、屏蔽主机、屏蔽子网
3.Linux开源防火墙:netfilter/iptables
netfilter/iptables开源防火墙工作原理:在 netfilter/iptables防火墙中,netfilter组件位于Linux内核空间中,实现了静态包过滤和状态报文检查基本防火墙功能,此外也支持灵活可扩展框架支持NAT网络地址转换等其他额外功能。
Iptables为用户配置netfilter规则的命令接口,语法为:iptables [-t table] command [match] [target] /* command部分告诉iptables命令要做什么,例如插入规则 */
netfilter/iptables的NAT机制:IP伪装、SNAT机制、DNAT机制。
4.其他网络防御技术
VPN、内网安全管理、内容安全管理SCM、统一威胁管理
网络检测技术与系统
1.入侵检测技术概述
入侵检测技术评估指标,两个参数:检测率、误报率。
入侵检测技术最核心的任务是信息分析。两个最基本的信息分析技术类型:误用检测和异常检测。
2.开源网络入侵检测系统:Snort
Snort是开源网络入侵检测系统软件。支持LInux,Windows等多平台。
Snort的特性与基本架构,主要由四个基本组成部分:数据包嗅探/解码器(最基本功能)、预处理器/插件、检测引擎/插件、输出模块/插件
预处理器:TCP/IP协议栈模拟,应用层协议解码,规范化,异常检测。
Snort有三种使用模式:嗅探器、数据包记录仪、网络入侵检测系统。
视频学习
Kali密码攻击之密码攻击工具
Cewl
Cewl可以通过爬行网站获取关键信息创建一个密码字典。比如说爬行一个URL,它通过提取返回页面源码中的一些特定标签中的内容,然后把这些内容组合成一个字典。这对管理员密码特定的枚举更高效,字典价值也就更大。
CAT
思科安全审计工具,扫描Cisco路由器的一般性漏洞,例如默认密码,SNMP,community字串和一些老的IOS bug(思科操作系统) 。
Findmyhash
在线哈希破解工具,借助在线破解哈希网站的接口制作的工具。使用方法很简答,如输入命令findmyhash MD5 -h 哈希,连接各个网站的接口测试能否反查到该哈希的原字符串,从而破解MD5的哈希。
Hydra
Hydra支持对各种服务的破解,xhydra 是其图形化页面版本。
Medusa
类似于Hydra的一款工具,使用方法类似。
NCrack
Ncrack是一个高速的网络认证破解工具,突出了RDP(3389)爆破功能。
Onesixtyone
snmp扫描工具,用于找出设备上的SNMP Community 字串,扫描速度非常快。
Patator
全能暴力破解测试工具,采用模块化设计并具有灵活的可用性。
THC-PPTP-Bruter
针对PPTP VPN端点(TCP端口1723)的暴力破解程序。支持最新的MSChapV2验证,对windows和Cisco网关测试通过,用以探测微软的Anti-Brute Force Implementation中存在的一个漏洞,并通过此漏洞,尝试以每秒300个密码进行暴力破解。
密码攻击之离线攻击工具
在线密码攻击在渗透测试中很重要,但对于测试过程中得到的哈希,加密数据,又需要离线破解工具辅助解决。
Creddump套件
Kali Linux下离线攻击工具中的Cache-dump、lsadump与pwdump均为creddump套件的一部分,基于python的哈希抓取工具,项目地址:
http://code.google.com/p/creddump/source/checkout
Crunch
实用的密码字典生成工具,可以指定位数生成暴力枚举字典
- cache-dump:Windows系统将用户信息和密钥存储在系统存档文件和安全存档中。只要提取这些内容,就可以获取用户信息和密码哈希值。
- lsadump:LSA是Windows系统本地安全认证的模块。它会存储用户登录其他系统和服务用户名和密码,如VPN网络连接、ADSL网络连接、FTP服务、Web服务
- pwdump:Windows运行过程中SAM被锁定,不能直接复制或编辑Windows口令,Pwdump可以将Windows口令从SAM文件中提取出来,并存储在指定的文件中。
chntpw
用来修改 Windows SAM 文件实现系统密码修改,亦可在kali作为启动盘时做删除密码的用途。
crunch
实用的密码字典生成工具,可以指定位数生成暴力枚举字典。
fcrackzip
zip压缩包密码破解工具。
Hashcat
Hashcat系列软件是比较强大的密码破解软件,系列软件包括Hashcat、oclHashcat;还有一个单独新出的oclRausscrack。其区别为Hashcat只支持cpu破解;oclHashcat和oclGausscrack则支持gpu加速,oclHashcat则分为AMD版和NIVDA版。
一些参数的介绍如下:
-m (--hash-type=NUM) hash种类,下面有列表,后面跟对应数字
-a (--attack-mode=NUM) 破解模式,下面也有列表
John the ripper
试图破解某个特定的密码散列,常用于Linux shadow 中账户的密码破解。Johnny将John图形化。
Ophcrack
利用彩虹表来破解 Windows密码的工具,对应有命令行版的ophcrack-cli。主要有Load、Delete、Save、Table、Crack、Help 和 Exit 七大主要模块。
Pyrit
Pyrit是一款无线网络密码破解工具,借助GPU加速,可以让WAP2密码破解更效率。
Rcrack
彩虹表密码哈希工具,使用第一代彩虹表(RT格式)。使用彩虹表可以大幅度加速哈希破解的进度,但要有足够容量的彩虹表,这也是所谓用硬盘的空间换取破解的时间。
Rcracki_mt
支持最新格式的彩虹表进行哈希破解。
Rsmangler
字典处理工具,可以生成几个字串的所有可能组合形式,在生成社工字典时亦可用到,可以有选择的关闭某些选项。
Truecrack
针对TrueCrypt加密文件的密码破解工具。
密码攻击之哈希传递
passing the hash,中文一般翻译为hash传递攻击,在windows系统中,系统通常不会存储用户登录密码,而是存储密码的哈希值,在我们远程登录系统的时候,实际上向远程传递的就是密码的hash值。当攻击者获取了存储在计算机上的用户名和密码的hash值的时候,他虽然不知道密码值,但是仍然可以通过直接连接远程主机,通过传送密码的hash值来达到登录的目的。
Passing the hash套件
要进行哈希传递攻击,首先我们要有目标主机的哈希信息,以Pwdump7抓取hash为例,pth套件每个工具都针对win下响应的exe文件,如使用pth-winexe可以借助哈希执行程序得到一个cmdshell。后面是要操控的主机的IP地址,cmd可以得到一个反弹的shell。例如在这个shell中,我们可以看ip地址,看系统信息等等
Keimpx
一款Python编写的哈希传递工具,可以通过已有的hash信息get一个后门shell 。
无线安全分析工具
随着无线网络的兴起,kali Linux下为我们准备了丰富的无线网络攻击套件。由于无线网络攻击测试需要硬件设备支持,故对这些工具我们只在理论上加以介绍。kali下无线安全分析工具包括RFID与NPC工具(与之相关的是IC卡的攻击与破解,生活中形形色色的饭卡,工卡,房卡,水卡都可以成为攻击测试的目标)、软件定义无线电工具、蓝牙Hack工具与常规无线网络分析工具(BackTrack系列曾以此闻名,包括Aircrack-ng无线网络分析套件等工具)。
Aircrack-ng
与802.11标准的无线网络分析有关的安全软件,主要功能有网络侦测,数据包嗅探,WEP和WPA/WPA2-PSK破解。Aircrack-ng可以工作在任何支持监听模式的无线网卡上并嗅探802.11a,802.11b,802.11g的数据。
Cowpatty
知名的WPA-PSK握手包密码破解工具
EAPMD5PASS
针对EAP-MD5的密码破解工具
Fern Wifi Cracker
图形化界面工具。如果有外置的无线网卡,需要在虚拟机中把无线网卡勾选在kali下,就能通过接口扫描周围的无线网,扫描之后可以做进一步的攻击测试。
MDK3
无线DOS攻击测试工具,能够发起Beacon Flood、Authentication DoS、Deauthentication/Disassociation Amok等模式的攻击,另外它还具有针对隐藏ESSID的暴力探测模式、802.1X渗透测试、WIDS干扰等功能。
wifite
自动化的无线网审计工具,可以完成自动化破解,由Python脚本编写,结合Aircrack-ng套件与Reaver工具
Reaver
利用了WPS的一个弱点(WPS功能是路由器与无线设备之间的一种加密方式,它与设备中硬编码保存的一个PIN码绑定在一起)。Reaver对开启WPS的路由器的PIN码进行破解,只要有足够的时间,它就能破解WPA或WPA2的密码。