20169305 2016-2017-2 《网络攻防技术与实践》第6周学习总结
一、教材学习内容总结
本周学习《网络攻防技术与实践》5、6章的内容,主要学习了TCP/IP网络协议攻击和 网络安全防范技术两章节的内容,主要内容如下:
第五章
TCP/IP网络协议攻击###
-
TCP/IP网络协议攻击概述
网络安全的属性(CIA):机密性、完整性、可用性,ITU还定以其他两个属性:真实性、不可抵赖性。
网络攻击的基本模式:截获、中断、篡改、伪造四种。
TCP/IP网络协议栈在设计时采用了分层模型,分为:网络接口层、互联层、传输层、应用层 -
网络层协议攻击
1、IP源地址欺骗。根本原因在于IP协议在设计时只使用数据包中的目标地址进行路由转发,而不对源地址进行真实性验证。它最普遍应用于拒绝服务攻击当中;
防范措施有:(1)使用随机化的初始序列号(2)使用网络层安全传输协议如IPsec(3)避免采用基于IP地址的信任策略,以基于加密算法的用户身份认证机制来替代这些访问控制策略(4)在路由器和网关上实施包过滤;
2.ARP欺骗:根源在于ARP协议在设计时认为局域网内部的所有用户都是可信的,是遵循协议涉及规范的。它的应用场景很多,比如在交换是网络中利用ARP欺骗技术进行局域网的嗅探,并通过进一步的协议分析窃取敏感信息或是利用ARP协议进行中间人攻击;
防范措施:(1)静态绑定关键主机IP地址与MAC地址映射关系(2)使用相应的ARP防范工具(3)使用VLAN虚拟子网细分网络拓扑并加密传输数据以降低ARP欺骗攻击的危害后果;
3.ICMP路由重定向攻击:就是利用ICMP路由重定向报文来改变主机的路由表,向目标机器发送重定向消息,自己写可以伪装成为路由器,使目标机器的数据报发送至攻击机从而加强监听,具体过程会与IP源地址欺骗技术结合实施;
防范措施:根据类型过滤一些ICMP数据包,设置防火墙过滤,对于ICMP重定向报文判断是不是来自本地路由器等。
- 传输层协议攻击
1.TCP RST攻击。也称作TCP重置报文攻击,是指一种假冒干扰TCP通信连接的技术方法。
2.TCP会话劫持攻击。目标是劫持通信双方已建立的TCP会话连接,假冒其中一方(通常是客户端)的身份,与另一方进行进一步通信。由于TCP会话劫持为攻击者提供了一种绕过应用层身份认证的技术途径,因此得到了较高水平攻击者的青睐。目前比较普遍的方法是结合ARP欺骗来进行TCP会话劫持。防范措施:(1)禁用主机上的源路由(2)采用静态绑定IP-MAC地址表以避免ARP欺骗(3)引用和过滤ICMP重定向报文(4)采用网络层加密机制,即IPsec协议。
3.TCP SYN Flood 拒绝服务攻击。利用TCP三次握手协议的缺陷,向目标主机发送大量的伪造源地址的SYN连接请求,消耗目标主机的连接队列资源,从而不能够为正常用户提供服务。防范措施:(1)SYN-Cookie技术(2)防火墙地址状态监控技术。
4.UDP Flood拒绝服务攻击。利用UDP协议天然的无状态不可靠属性,通过向目标主机和网络发送大量的UDP数据包,造成目标主机显著的计算负载提升,或者目标网络的网络拥塞,从而使得目标主机和网络陷入不可用状态,造成咀拒绝服务供给。防范措施:(1)禁用或过滤监控和响应服务(2)禁用或过滤其他的UDP服务(3)网络关键位置使用防火墙和代理机制用来过滤一些非预期的网络流量。 - TCP/IP网络协议栈攻击防范措施
1.监测、预防与安全加固。
2.网络安全协议。
3.下一代互联网协议。
第六章
- 安全模型
-为了保障被称为“信息安全金三角”的CIA安全属性,即机密性、完整性和可用性,信息安全领域提出一系列的安全模型来指导信息安全体系建设,以增强信息系统的安全性。动态可适应网络安全模型基于闭环控制理论,典型的是PDR模型及在其基础上的P2DR。 - 网络安全防范技术与系统
防火墙的功能:控制在计算机网络中不同信任程度网络域之间传送的数据流。通常为网络管理员具体提供如下安全功能:(1)检查控制进出网络的网络流量(2)防止脆弱或不安全的协议和服务(3)防止内部网络信息的外泄(4)对网络存取和访问进行监控审计(5)防火墙可以强化网络安全策略并集成其他防御机制;
威胁包括以下方面:(1)网络内部的安全威胁(2)通过非法外联的网络攻击(3)计算机病毒传播(4)针对开放服务安全漏洞的渗透攻击(5)针对网络客户端程序的渗透攻击(6)基于隐蔽通道并进行通信的特洛伊木马或僵尸网络。
防火墙技术:包过滤技术、基于状态检车的包过滤技术、代理技术(应用层代理技术、电路级代理技术、NAT代理技术)
防火墙部署方法:包过滤路由器、双宿主堡垒主机、屏蔽主机、屏蔽子网
- 网络检测技术与系统
1.入侵检测技术:对入侵行为进行检测与发现,它是防火墙之后的第二道安全屏障。分为误用检测和异常检测。入侵检测系统可分为基于主机的入侵检测系统(HIDS)和基于网络的入侵检测系统(NIDS),这两者可以互相补充成为分布式入侵检测系统(DIDS)。
2.Snort主要部件是:数据包嗅探与解码器、预处理器与插件、检测引擎与插件、输出模块与插件。
教材学习中的问题和解决过程
主要是一些概念的理解和具体是实现问题
视频学习中的问题和解决过程
视频21-25的主要内容是对一些工具的介绍,具体的实际操作较少,部分工具的使用如下:
1、Findmyhash 在线哈希破解工具,我们测试一下MD5的如下:
接下来我们破解一下本地的用户名和密码:
首先我们看一下ssh是否打开,通过执行命令很容易发现kali虚拟机中的ssh并没有运行:
针对上述情况,我们要将ssh服务打开(具体可参见博客:http://lisiyun.blog.51cto.com/2779132/1713418):
首先我们使用命令vim /etc/ssh/sshd_config,将#PasswordAuthentication no的注释去掉,并且将NO修改为YES将#PermitRootLogin yes的注释去掉,如下图所示:
将上述的内容修改完成后,保存退出即可,在命令窗口执行启动服务命令:
将ssh服务启动后,接下来我们通过vim编辑器编辑一个.txt格式的字典文件,起名为1.txt,在文件中我们可以输入任何的字符和数字,但是必须要包含kali虚拟机的开机密码(我使用的虚拟机密码为123456):
编辑完成后保存退出,在命令窗口输入相对应的命令hydra -l root -P ~/1.txt -F ssh://127.0.0.1:22,我们很容易发现其中的绿色字体部分用户名为root,密码为123456:
2、xhydra,这里是一个图形化界面的工具,在这个工具里可以进行很多的操作
3、crunch 使用的密码字典生成工具,可以指定位数生成暴力枚举字典。比如我们生成1~3位指定的字串,我们选择生成abc试看一下:
4、hashidntfier 在窗口处直接输入即可,我们可以得到一次额最可能的结果:
5、john the ripper 老牌的密码破解工具,常用于linux shadow中账户的密码破解
我们对本机的进行破解:首先看一下本机的shadow文件:
在这里面我们可以得到用户名后面的哈希内容,接下来使用cat /etc/shadow > ~/johnshadow命令,然后使用John Johnshadow 就可以暴力枚举哈希的内容,由于之前已经得到过密码,可以直接使用--show进行查看,所有演示结果如下:
6、rsmangler 字典处理工具,可以生成几个字串所有的可能性组合。
我们先用nano写一个名为m的文件,输入相应字符串内容为test和root:
然后使用rsmangler -f ~/m把所有可能字串输出,得到如下结果,:
7、keimpx 使用Python编写的哈希传递工具,可以通过已有的哈希信息get一个后门的shell
学习进度条
学习目标(本学期)
1、本学期学习计划
完成网络攻防课程的学习,动手实践相关内容
2、本周完成内容
课本第五、六章内容的学习,学习了视频21-25的内容
参考资料
《网络攻防技术与实践》《计算机网络(第六版)》