2019-2020-2 《网络攻防实践》第六周作业

1. 实践内容


网络安全防范技术


1.1安全模型

PDR安全模型:基于时间的动态安全模型,以经典的网络安全不等式P(t)>D(t)+R(t)为本质基础,并提出安全性可量化和可计算的观点。
P2DR安全模型:基于PDR安全模型,增加了根据风险分析制定安全策略,并以此为核心。所有的防护、检测、响应都是依据安全策略实施的。

1.2网络安全防范技术与系统

  • 防火墙技术通过有机结合各类用于安全管理与筛选的软件和硬件设备,帮助计算机网络于其内、外网之间构建一道相对隔绝的保护屏障,以保护用户资料与信息安全性的一种技术。

  • 防火墙技术的功能主要在于及时发现并处理计算机网络运行时可能存在的安全风险、数据传输等问题,其中处理措施包括隔离与保护,同时可对计算机网络安全当中的各项操作实施记录与检测,以确保计算机网络运行的安全性,保障用户资料与信息的完整性,为用户提供更好、更安全的计算机网络使用体验。

  • 但是防火墙作为网络边界访问控制机制的先天不足,以及目前技术方面存在的瓶颈,使得防火墙技术并不能一劳永逸。

名称 内容
包过滤技术 指网络设备(路由器或防火墙)根据包过滤规则检查所接收的每个数据包,做出允许数据包通过或丢弃数据包的决定。包过滤规则主要基于IP包头信息设置,包括TCP/UDP的源或目的端口号;协议类型:TCP、UDP、ICMP等;源或目的IP地址;数据包的入接口和出接口
基于状态检测的包过滤技术 也称动态包过滤。除了使用静态规则进行安全进行安全策略匹配,还进行数据包的网络连接的上下文关系探测,来确定是否允许通信。这种技术相比较传统的包过滤技术安全性更高,数据合法性得到了更有效的保障(对网络性能有一定的影响)
代理技术 允许客户端通过代理与网络服务进行非直接的连接,也称“网络代理”。主要是客户端与代理服务器连接,代理服务器再与目标服务器连接。代理技术包括应用层代理(工作在应用层)、电路级代理(工作在传输层)和NAT代理(工作在网络层)等

Linux开源防火墙netfilter/iptables介绍

  • netfilter组件位于Linux的内核空间,实现了静态包过滤和状态报文检查的基本防火墙功能。iptables工作在Linux用户空间中的防火墙配置工具,通过命令行方式允许用户为netfilter配置各种防火墙过滤和管理规则。

  • netfilter/iptables中有三个基本规则表:处理包过滤的filter、网络地址转换nat、特殊目的包修改的mangle。

  • iptables的命令的语法为:“iptables -t [table] command [match] [target]”。其中-t指定配置规则所在的表,缺省表包括filter、nat、mangle、raw等。command就是告诉iptables要做什么,比如-A就是在链末尾插入规则。[match]就是规则匹配条件,满足规则才会被触发。[target]是满足条件之后的目标操作,比如ACCEPT、DROP、REJECT等等。

其他网络防御技术

  • VPN虚拟专用网
    • 利用大规模网络上的公共网络链路代替企业内部专线构建的安全专用网络
    • 主要包括IPsec VPN,SSL VPN MPLS VPN
  • 内网安全管理
    • 分为终端安全管理、终端运维管理、终端补丁分发管理和系统日志管理
  • 内容安全管理SCM
    • 主要关注网络中传输内容的安全,深入分析传输数据包的内容
  • 统一威胁管理UTM
    • 指由硬件、软件和网络技术组成的具有专门用途的设备。
    • 将多种安全特性集成在一个硬件设备里,构成一个标准的统一管理平台

1.3网络检测技术与系统

  • 1.入侵检测技术
    • 评估指标:检测率(系统捕获到的攻击行为与全部攻击行为比值)和误报率(对正常行为的误报数与全部报警数的比值)。
    • 技术类型:特征检测(匹配特征库)、异常检测(检测与正常用户在统计方面的差别)。二者通常结合使用,提高入侵检测系统的整体检测性能。同时,基于这两种技术,也可以对入侵检测系统进行分类。
    • 入侵防御系统:也叫内嵌式入侵检测,即对检测到的异常行为或者与特征库匹配的行为直接进行阻断,断开访问。
  • 2.snort基本介绍
    • Snort是一个强大的网络入侵检测系统。它具有实时数据流量分析和记录IP网络数据包的能力,能够进行协议分析,对网络数据包内容进行搜索/匹配,可以检测各种不同的攻击方式,对攻击进行实时报警等。
    • 四大模块:
      • 数据包嗅探模块
      • 预处理模块(用相应的插件来检查原始数据包)
      • 检测模块(检测引擎依据预先设置的规则检查数据包)
      • 报警/日志模块(经检测引擎检查后的Snort数据输出)。

2. 实践过程

实践一:防火墙配置


任务:配置Linux平台上的iptables,完成如下功能并测试
(1)过滤ICMP数据包,使主机不接受ping包
(2)只允许特定IP地址访问主机的某一网络服务,而其他IP地址无法访问


这里选用SEED-Ubuntu为服务器,kali为信任主机,Linux-MetaSploitable作为不可信任主机,用kali访问SEED-Ubuntu,联网后记录三台机器的IP地址

主机 IP地址
Kali-linux 192.168.200.2
Linux-MetaSploitable 192.168.200.125
SEED-Ubuntu 192.168.200.4
(1)过滤ICMP数据包,使主机不接受ping包
  1. 首先在SEED Ubuntu上通过iptable -L查看规则,发现都是默认规则
  2. 通过指令iptable -A INPUT -P icmp -j DROP指令使得主机不接受icmp的数据包。
    其中-A是追加一条规则,INPUT表示数据包入口(规则),-p用于匹配协议,-j用于指定如何处理。
  3. 然后通过kalipingSEED Ubuntu时失败,回到SEED再次查看规则,可看到一条icmp针对任何位置不允许访问的规则

  4. 通过指令iptables -F删除自定义规则,实验完毕

(2)只允许特定IP地址访问主机的某一网络服务,而其他IP地址无法访问

  1. 首先需要确认kali和meta都可进行telnet登录

  2. 接下来使用iptebles -P INPUT DROP指令拒绝一切的数据包流入(修改的是默认规则-p),此时应该两台电脑都无法访问
    3.使用指令iptable -A INPUT -P tcp -s 192.168.200.2 -j ACCEPT开启kali对SEED的tcp服务,并用iptables -L查看规则
  3. 重复步骤1,发现kali可以正常访问telnet服务,而meta不可以

  4. 执行iptables -Fiptebles -P INPUT ACCEPT恢复到初始状态,实验完毕。

实践二:snort

任务:使用Snort对给定的pcap文件进行入侵检测,并对检测出的攻击进行说明


  1. 通过指令snort -r /home/kali/listen.pacp -c /etc/snort/snort.conf -K asciilisten.pacp进行入侵检测,其中-K ascii主要是为了指定输出log文件的编码为ASCII,然后得到对于数据包的检测
  2. /var/log/snort目录下,可查看日志文件alert


实践三:分析蜜网网关的防火墙和IDS/IPS配置规则

任务:说明蜜网网关是如何利用防火墙和入侵检测技术完成其攻击数据捕获和控制需求
(1)上述脚本是如何实现蜜网的数据捕获和数据控制
数据捕获:通过三个层次,防火墙的日志记录、eth1上的嗅探器记录的网络流、sebek捕获的系统活动
数据控制:一个是防火墙iptables对连出的连接数的控制,一个是网络信息防御系统snort_inline对连出异常数据的控制。并在防火墙内容规则上增加了黑名单,白名单,防护名单等功能。
(2)获取iptables的实际规则列表、snort和sonrt_inline的实际执行参数
通过指令iptables -t filter -L来查看规则表可发现默认的规则都被关闭了,如output\input\forward


(3)蜜网网关开机后,防火墙、NIDS、NIPS是如何启动的?
通过指令chkconfig --list | grep来查看当前服务是否开启,chkconfig命令主要用于检查,设置系统的各种服务。若0-6全部为off,则不自动启动。
可以看到防火墙和NIPS(snort_inline)是跟随系统启动的,并且开机自动配置刚才的脚本文件。NIDS不会自动启动

(4)snort实际执行参数
通过指令vim /etc/init.d/snortd可查看,snortd是snort启动的脚本文件,snort.conf是具体预警的规则设定,默认使用snort.conf规则,默认监听网卡为eth0,默认存储日志路径为/var/log/snort等等。


(5)snort_inline实际执行参数
通过指令vim /etc/init.d/hw-snort_inline打开snort_inline脚本,可以看到一些默认信息

(6)Snort规则如何自动升级
在/etc目录下使用命令vim honeywall.conf打开honeywall配置文件,这个里面可以看到一些,如我们配置的IP地址、子网掩码等等。
snort规则默认是不自动更新的。Oinkmaster是自动更新的软件。


3. 学习中遇到的问题及解决

问题1:关于实践三分析蜜网网关的防火墙和IDS/IPS配置规则,许多指令都无法正常执行。
问题1解决方案:提权,学习相关指令操作。

4. 实践总结

看一遍书,再结合同学的博客,前两个实验的逻辑十分简单清晰,很好操作。最后一个实践的操作步骤还有文件都没看明白,可能是自己对于linux的一些指令还是不熟悉,网上也挺少关于蜜网的资料,总之实践三做的很失败,期待课上老师同学们的讲解。

参考资料

posted @ 2020-04-06 16:39  考完了改名了  阅读(472)  评论(0编辑  收藏  举报