网络安全防护总体架构 网络安全防护工作机制

devtools/2025/3/14 6:39:28/

1 实践内容

1.1 安全防范

为了保障"信息安全金三角"的CIA属性、即机密性、完整性、可用性,信息安全领域提出了一系列安全模型。其中动态可适应网络安全模型基于闭环控制理论,典型的有PDR和P^2DR模型。

1.1.1 PDR模型

信息系统的防御机制能抵抗入侵的时间P,能超过检测机制发现的入侵的时间D和响应机制有效应对入侵的时间R之和。

1.1.2 P^2DR模型

网络安全=根据风险分析制定安全策略(policy)+执行安全防护策略(Procation)+实时监测(Detection)+实时响应(Response)。其中安全策略是核心。

网络安全防护总体<a class=架构 网络安全防护工作机制_网络安全防护总体架构" height="220" src="https://i-blog.csdnimg.cn/img_convert/9e41c5c4f5c8ddccad863bf20311366f.png" width="258" />

图1.1 P^2DR模型

1.2 防火墙

1.2.1概述

防火墙是目前最成熟的网络防御技术之一,属于一种网络上的访问控制机制,通过在不同网络域之间建立起安全控制点,对通过的网络传输数据进行检查,根据具体的安全需求决定是否允许网络访问通过防火墙,达到特定网络安全域免受非法访问和破坏的目标。

防火墙功能有检查进出网络的流量、防止脆弱或不安全的协议和服务、防止内部网络信息外泄、对网络存取和访问进行监控审计、可强化网络安全策略和集成其他网络安全防御机制。

防火墙对于来自网络安全内部的攻击、通过非法外联的网络攻击和计算机病毒传播防御有限。

1.2.2 防火墙技术和产品

包过滤技术是通过网络层和传输层的包头信息检查,根据用户定义的安全策略规则集,确定是否应该转发该数据包,将一些不符合安全策略的数据包阻挡在网络边界处。

基于状态检测的包过滤技术维护所有通过防火墙的网络连接记录,并依此确定数据包是否属于一个新的连接、或是已连接的一部分,或是一个非法数据包。由于根据数据包的上下文进行检查和过滤,数据的合法性得到了更有效的保证,但对网络传输的性能影响较大。

网络安全防护总体<a class=架构 网络安全防护工作机制_数据_02" height="337" src="https://i-blog.csdnimg.cn/img_convert/101726e7fd20f18f63d9ecae9ed33d61.png" width="554" />

图1.2 基于状态检测的包过滤技术

代理技术为客户端首先与代理服务器建立连接,接着发出一个对外部目标服务器的的文件或请求,代理服务器通过与目标服务器连接或从缓存中取得资源,并返回给客户端。网络用户便不直接与外部服务器通信。具体分为应用层代理技术、电路级代理技术和NAT代理技术。

防火墙产品集成包过滤的路由器、基于通用操作系统的防火墙软件产品、基于安全操作系统的防火墙、硬件防火墙设备。

1.3 入侵检测技术

1.3.1 概述

入侵检测技术定义是对入侵行为的检测与发现。两个重要参数是检测率和误报率。信息收集是入侵检测技术的基础。收到信息后最核心的任务是信息分析,两种基本的分析技术是梧误用检测和异常检测。

入侵检测系统的部署位置如图1.3所示:

网络安全防护总体<a class=架构 网络安全防护工作机制_网络安全防护总体架构_03" height="436" src="https://i-blog.csdnimg.cn/img_convert/19cc6dca8992c1ca98d3785b1450b7ae.png" width="554" />

图1.3 入侵检测系统的部署位置

1.3.2 入侵检测系统:snort

snort采用标准的捕获数据包的函数库libpcap,具有数据包嗅探、数据包记录和分析、入侵检测功能。软件基本构架如图1.4所示

网络安全防护总体<a class=架构 网络安全防护工作机制_入侵检测_04" height="243" src="https://i-blog.csdnimg.cn/img_convert/71720b191a1dfc8ca55df380ace61f41.png" width="554" />

图1.4 snort软件基本构架

在snort运行时,首先,将捕获的数据包经过解码器填入到链路层协议的包结构体之中,以便对高层协议解码;然后送入各种各样的预处理插件中,对数据进行检查和操作;随后检测引擎对每个包的信息进行快速模式匹配检测;对之前各个部件产生的报警/日志信息,调出相应的输出插件进行发送和记录。检测引擎与插件是snort入侵的主体模块,包含规则库解析、多模式匹配和规则插件检查三部分。

2 实践过程

2.1 防火墙配置

配置Linux操作系统平台上的iptables,或者Windows操作系统平台上的个人防火墙,完成如下功能,并进行测试。

2.1.1 过滤ICMP数据包,使得主机不接收Ping包

(1)Linux操作系统平台上的iptables

首先,输入指令"iptables -L"查看所有规则,确认是默认的。

网络安全防护总体<a class=架构 网络安全防护工作机制_网络安全防护总体架构_05" height="384" src="https://i-blog.csdnimg.cn/img_convert/220dab74e895dfbb561fcc765b0c0f3d.png" width="554" />

图2.1 所有规则

然后,用攻击机(192.168.200.4)ping靶机(192.168.200.129)。发现可以ping通。

网络安全防护总体<a class=架构 网络安全防护工作机制_IP_06" height="363" src="https://i-blog.csdnimg.cn/img_convert/bc625bb730ed91255a32f152b83b74fb.png" width="554" />

图2.2 ping通

输入指令"iptables -A INPUT -p icmp -j DROP"使得主机不接收ICMP包。

其中各参数的意思是:

-A INPUT:将input规则添加到链尾;

-p icmp:指定icmp协议;

-j DROP:指定对应数据包进行丢弃。

然后再次查看规则:

网络安全防护总体<a class=架构 网络安全防护工作机制_网络安全防护总体架构_07" height="357" src="https://i-blog.csdnimg.cn/img_convert/53015cc9fe34855fd1eb5500078d1505.png" width="554" />

图2.3 再次查看所有规则

可以看出第一行已经变成"anywhere"。

此时用用攻击机(192.168.200.4)ping靶机(192.168.200.129),发现已经不能ping通。

网络安全防护总体<a class=架构 网络安全防护工作机制_IP_08" height="372" src="https://i-blog.csdnimg.cn/img_convert/833e4e94a0765215f9397077dcf6ed83.png" width="554" />

图2.4 ping失败

使用wireshark抓包,可以看到发出了很多icmp数据包。

网络安全防护总体<a class=架构 网络安全防护工作机制_入侵检测_09" height="339" src="https://i-blog.csdnimg.cn/img_convert/ae66700ba7b40c5c4ccca25a1a4e503d.png" width="554" />

图2.5 wireshark抓包

成功后,使用iptables -F清除所有规则。此时,用攻击机(192.168.200.4)ping靶机(192.168.200.129)成功ping通。

网络安全防护总体<a class=架构 网络安全防护工作机制_网络安全防护总体架构_10" height="363" src="https://i-blog.csdnimg.cn/img_convert/dbdbdda488ddcba3c77ce3cf99449d13.png" width="554" />

图2.6 再次ping通

(2)Windows操作系统平台上的个人防火墙

启动WinXPattacker,密码为"mima1234"。用kali ping WinXPattacker(192.168.200.8),可以ping通。

网络安全防护总体<a class=架构 网络安全防护工作机制_网络安全防护总体架构_11" height="442" src="https://i-blog.csdnimg.cn/img_convert/cd527e0af016158ec2a37b75f0924dc5.png" width="554" />

图2.7 ping成功

打开"控制面板"的"Windows防火墙"。

网络安全防护总体<a class=架构 网络安全防护工作机制_网络安全防护总体架构_12" height="318" src="https://i-blog.csdnimg.cn/img_convert/a53a124be7a1840f869a9f1a15dff49e.png" width="554" />

图2.8 控制面板的防火墙

在"高级"→"ICMP设置"中,把"允许传入回显请求"勾掉。

网络安全防护总体<a class=架构 网络安全防护工作机制_IP_13" height="318" src="https://i-blog.csdnimg.cn/img_convert/683a2aad6495f82ac7e9a6d0107caabe.png" width="554" />

图2.9 勾掉允许传入回显请求

此时看到kali就ping不通windowsXP了。

网络安全防护总体<a class=架构 网络安全防护工作机制_入侵检测_14" height="441" src="https://i-blog.csdnimg.cn/img_convert/26a001e5290f8c183e15c182258d337c.png" width="554" />

图2.10 无法ping通

实验完毕,再调回设置,发现可以重新ping通。

网络安全防护总体<a class=架构 网络安全防护工作机制_网络安全防护总体架构_15" height="425" src="https://i-blog.csdnimg.cn/img_convert/62fd3416e1ab0b6bba0a0b6670ce264a.png" width="554" />

图2.11 再次ping通

2.1.2 只允许特定IP地址访问主机的某一网络服务(如FTP、HTTP、SMB),而其他的IP地址无法访问。

本节实验的各主机的IP地址如下:

A:192.168.200.4

B:192.168.200.6

C:192.168.200.7

首先给A安装FTP服务,输入指令"apt-get install vsftpd"。再输入"service vsftpd start"开启FTP服务。

网络安全防护总体<a class=架构 网络安全防护工作机制_入侵检测_16" height="369" src="https://i-blog.csdnimg.cn/img_convert/72be20914562b5d6773870d9b38890fe.png" width="493" />

图2.12 开启FTP服务

然后用B和C访问A的ftp服务均成功。

网络安全防护总体<a class=架构 网络安全防护工作机制_网络安全防护总体架构_17" height="415" src="https://i-blog.csdnimg.cn/img_convert/e4a286ac04c5749e5b4881af97c4c36e.png" width="554" />

图2.13 B成功连接FTP

网络安全防护总体<a class=架构 网络安全防护工作机制_入侵检测_18" height="318" src="https://i-blog.csdnimg.cn/img_convert/36eed659855e00574134fb904bcb19c2.png" width="554" />

图2.14 C成功连接FTP

对A进行设置,输入指令"iptables -P INPUT DROP"拒绝一切数据流入。再输入指令"iptables -A INPUT -p tcp -s 192.168.200.6 -j ACCEPT"只允许B(192.168.200.6)访问主机。

设置好后,用B和C访问A,可见只有B可以成功访问。

网络安全防护总体<a class=架构 网络安全防护工作机制_IP_19" height="415" src="https://i-blog.csdnimg.cn/img_convert/869c654c8af44285e43e2172aca71b8d.png" width="554" />

图2.15 B再次成功连接FTP

网络安全防护总体<a class=架构 网络安全防护工作机制_入侵检测_20" height="318" src="https://i-blog.csdnimg.cn/img_convert/97fcc21eaac51438ffdf518f314955e1.png" width="554" />

图2.16 C连接FTP失败

输入"iptables -F"和"iptables -P INPUT ACCEPT"恢复之前的状态。

2.2 动手实践:Snort

使用Snort对给定pcap文件(第4章中的解码网络扫描任一个pcap文件,之前的实践已经提供了,请在云班课中下载)进行入侵检测,并对检测出的攻击进行说明。在BT4 Linux攻击机或Windows Attacker攻击机上使用Snort,对给定的pcap文件进行入侵检测,获得报警日志。

输入指令"snort -c /etc/snort/snort.conf -r /home/kali/Desktop/listen.pcap -K ascii"从离线的pcap文件读取网络日志数据源。

网络安全防护总体<a class=架构 网络安全防护工作机制_IP_21" height="318" src="https://i-blog.csdnimg.cn/img_convert/04bd25a241ebd15d0f4f31b6640283ae.png" width="554" />

图2.17 读取网络日志数据

通过分析结果可以看出TCP包占绝大多数。

snort会在默认目录"/var/log/snort"生成一个日志文件,输入指令"cd/var/log/snort"查看日志文件。可以看出本次攻击是用nmap发起的。攻击机IP地址是172.31.4.178,靶机IP地址是172.31.4.188,还可以看到端口号等等。

网络安全防护总体<a class=架构 网络安全防护工作机制_网络安全防护总体架构_22" height="318" src="https://i-blog.csdnimg.cn/img_convert/6386e8c92059a8d40a29611bf6ad2904.png" width="554" />

图2.18 相关信息

2.3 分析配置规则

分析虚拟网络攻防环境中蜜网网关的防火墙和IDS/IPS配置规则,说明蜜网网关是如何利用防火墙和入侵检测技术完成其攻击数据捕获和控制需求的。

具体分析配置规则与启动项文件包括:

防火墙(netfilter+IPTables):/etc/init.d/rc.firewall:

入侵检测系统(Snort):/etc/init.d/hflow-snort 与/etc/snort/snort.conf:

入侵防御系统(Snort_inlinc):/etc/init.d/hflow-snort_inline 与/etc/snort_inline/snort. inline.conf

2.3.1 数据捕获

数据捕获是密网的一个重要目的,包括三个层次,分别是防火墙的日志记录、eth0上的嗅探器记录的网络流多和Seek捕获的系统活动;记录的内容主要包括:数据包通过时间、包协议类型、进出的网络接口、源地址、目的地址、源端口、目的端口、包长度等。

蜜罐网关通过三种方式捕获数据:防火墙日志、网络通讯、系统活动。防火墙能够记录所有的进入和外出本网络的连接。所有进出防火墙的日志信息记录在/var /log /messages 文件中。但防火墙能记录的数据是有限的,主要是报头信息,如攻击的时间、源和目的IP地址以及源和目的端口,对于入侵者的击键行为、数据包的载荷等无能为力。

打开密网网关,输入vim /etc/init.d/rc.firewall查看防火墙的文件。看到create_chains函数中新建了许多规则链,包括黑名单、白名单、防护名单等

网络安全防护总体<a class=架构 网络安全防护工作机制_入侵检测_23" height="308" src="https://i-blog.csdnimg.cn/img_convert/64385a37fea0600a5869b2911594ddcd.png" width="554" />

图2.19 防火墙文件

2.3.2 控制需求

Roo的数据控制包含两方面,一是防火墙Iptables对连出(Outbound)的连接数的控制,另一个是网络信息防御系统Snort_inline对连出异常数据的限制,还增加了黑名单、白名单、防护名单的功能。防火墙对源地址或者目的地址属于黑名单的主机,丢弃所有包。对于属于白名单的主机,接受且不记录。对于属于防护名单内的主机,禁止访问某些不希望被访问到的主机。

在蜜罐中,使用iptables -t filter -L命令来查看规则列表。可以看出,默认的规则例如OUTPUT、INPUT、FORWARD都已经被关闭了

网络安全防护总体<a class=架构 网络安全防护工作机制_IP_24" height="308" src="https://i-blog.csdnimg.cn/img_convert/0216d8d69a6109447251489fd8a14410.png" width="554" />

图2.20 蜜罐规则列表

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

3.1 kali的FTP服务

Kali默认没有安装FTP服务。需要先安装后再使用。

3.2 windows允许传入回显请求关

ICMP设置中允许传入回显请求前面的复选框是灰色的,默认勾选,无法取消勾选。需要关掉例外选项,允许传入回显请求前面的复选框就可以关掉了。

4 感想和体会

通过本次实验,我学习到了各种网络安全防范技术的基本原理和方法。熟悉使用Windows的防火墙和linux的iptables的配置。对ICMP数据包有了进一步的认识。学习了使用Snort对给定pcap文件进行分析,找出各种信息。对蜜网网关是如何利用防火墙和入侵检测技术完成其攻击数据捕获和控制需求也有进一步的认识。

网络安全学习路线

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

同时每个成长路线对应的板块都有配套的视频提供:

需要网络安全学习路线和视频教程的可以在评论区留言哦~

最后

给小伙伴们的意见是想清楚,自学网络安全没有捷径,相比而言系统的网络安全是最节省成本的方式,因为能够帮你节省大量的时间和精力成本。坚持住,既然已经走到这条路上,虽然前途看似困难重重,只要咬牙坚持,最终会收到你想要的效果。

黑客工具&SRC技术文档&PDF书籍&web安全等(可分享)

结语

网络安全产业就像一个江湖,各色人等聚集。相对于欧美国家基础扎实(懂加密、会防护、能挖洞、擅工程)的众多名门正派,我国的人才更多的属于旁门左道(很多白帽子可能会不服气),因此在未来的人才培养和建设上,需要调整结构,鼓励更多的人去做“正向”的、结合“业务”与“数据”、“自动化”的“体系、建设”,才能解人才之渴,真正的为社会全面互联网化提供安全保障。

特别声明:
此教程为纯技术分享!本教程的目的决不是为那些怀有不良动机的人提供及技术支持!也不承担因为技术被滥用所产生的连带责任!本教程的目的在于最大限度地唤醒大家对网络安全的重视,并采取相应的安全措施
,从而减少由网络安全而带来的经济损失


http://www.ppmy.cn/devtools/166952.html

相关文章

plantuml画甘特图gantt

使用说明 可以在https://www.plantuml.com/plantuml/uml中进行调试&#xff0c;然后再draw.io中进行画图导出。 语法说明 startgantt 项目开始时间 Project starts the 2017/01/01 关闭语法 saturday are closed sunday are closed 2018/05/01 is closed 2018/04/17 to 2018…

Django系列教程(7)——路由配置URLConf

目录 URLconf是如何工作的? path和re_path方法 更多URL配置示例 URL的命名及reverse()方法 使用命名URL 硬编码URL - 不建议 URL指向基于类的视图(View) 通过URL传递额外的参数 小结 Django的项目文件夹和每个应用(app)目录下都有urls.py文件&#xff0c;它们构成了D…

spring boot+vue项目(免费)

医院管理系统项目地址&#xff1a; https://github.com/WangJingBo1234/hospital_manager 如果可以的话&#xff0c;麻烦大家在github上给我点个星&#xff0c;好人一生平安&#xff01;&#xff01;&#xff01; 该项目技术栈&#xff1a; 后端spring boot整合jwt&#xff0…

程序代码篇---STM32串口通信

文章目录 前言1. 头文件和全局变量2. 串口1初始化函数3. 串口1发送字节函数4. 串口1发送字符串函数5. 串口1发送数字函数6. 重定义fputc函数7. 串口数据解析函数8. 串口2中断服务程序总结 前言 本次将介绍一个基于STM32微控制器的串口通信实现&#xff0c;包含了串口的初始化、…

【算法】数据结构

⭐️个人主页&#xff1a;小羊 ⭐️所属专栏&#xff1a;Linux 很荣幸您能阅读我的文章&#xff0c;诚请评论指点&#xff0c;欢迎欢迎 ~ 目录 持续更新中...数组、链表点击消除环形链表环形链表 II 栈、队列树图 持续更新中… 数组、链表 点击消除 AB5 点击消除 这个题很…

OSPF的LSA详解(报文分析+具体例子)

OSPF LSA 要点掌握: 名称 携带的内容 作用 传播的范围 由谁产生 LSA报头格式 所有的LSA都有相同的报文头 LS age&#xff1a;LSA产生后所经过的时间&#xff0c;以秒为单位。LSA在本路由器的LSDB中会随时间老化&#xff08;每秒钟加1&#xff09;&#xff0c;但在网络的…

中级软件设计师2004-2024软考真题合集下载

中级软件设计师2004-2024软考真题合集下载 &#x1f31f; 资源亮点&#x1f3af; 适用人群&#x1f4a1; 资源使用指南&#x1f4cc; 资源获取方式 &#x1f31f; 资源亮点 「中级软件设计师历年真题及答案解析&#xff08;2004-2024&#xff09;」 是全网最全、最新的备考资料…

【每日学点HarmonyOS Next知识】tab拦截、组件方法做参数、自定义组件链式调用、多次观察者监听、横竖屏切换

1、HarmonyOS Tab组件里的tabBar点击如何拦截&#xff0c;根据情况判断是否允许切换tab&#xff1f; Tab组件里的tabBar点击如何拦截&#xff0c;根据情况判断是否允许切换tab 暂时没有tabBar点击拦截功能实现&#xff0c;可以使用TabsController自定义页签以及并在其中添加事…