网络安全总结

前言 

本文内容主要摘抄网络规划设计师的教材和腾讯-SUMMER课堂,主要对网络安全进行简单梳理和总结

OSI安全体系

X轴表示8种安全机制,Y轴表示OSI7层模型,Z轴表示5种安全服务,图中X是水平,Y轴竖直,Z轴向外延申。 

安全服务:认证服务,访问控制服务,数据保密性服务,数据完整性服务,防止否认性服务

安全机制:认证机制,访问控制机制,加密机制,数据完整性机制,数字签名机制,业务流填充机制,路由控制机制,公正机制。

安全机制于安全服务

加密机制:主要提供数据保密服务, 防止窃听嗅探等被动攻击。加密算法分为对称加密算法,如DES,3DES,AES,国密的SM1等,非对称加密算法RSA

数字签名机制:主要对应认证服务和防止否认服务。常见如RSA,DSA,国密SM2

访问控制机制:主要对应访问控制和认证服务。常见有用户名和口令验证,访问控制列表ACL

数据完整性机制:对应数据完整性服务,防止数据被非法篡改。常见有,MD5,SHA,国密SM3

认证机制:主要对应认证服务,分为源认证和身份认证。源认证是验证收到信息是否来自期望的发送方,主要实现是数字签名,身份认证可以通过用户名/口令或证书等方式,验证对方身份,只有通过认证合法用户才能访问对应资源。

业务流填充机制:对应数据保密访问,在数据传输过程种填充随机数等方式,加大数据破解难度,提高数据安全性。

路由控制机制:主要对应访问控制服务,预先设定安全通信路径,避免通过不安全的信道传送数据。

公证机制:主要对应防止否认机制。主要对应PKI体系。

扩展-国密算法:

  • SM1、SM4、SM7、祖冲之密码(ZUC)是对称算法。
  • SM2、SM9是非对称算法。
  • SM3是哈希算法。
  • SM1、SM7算法不公开,调用该算法时,需要通过加密芯片的接口进行调用。 

网络攻击和防御

攻击类型:

安全攻击可以划分为,主动攻击和被动攻击。

被动攻击:典型代表嗅探,监听和流量分析,最难被检测,重点是预防,主要手段是加密。

主动攻击:假冒,重放,欺骗,消息篡改和拒绝服务等,重点是检测而不是预防,主要手段是防火墙,IDS技术。

信息安全三大属性

CIA属性,保密性-Confidentiality,完整性-Integrity,可用性-Availability。

保密性:信息保密性又称信息机密性,是指信息不泄露给非授权的个人和实体,或供其使用的特性。信息机密性针对信息被允许访问对象的多少而不同。一般通过访问控制阻止非授权用户获得机密信息,通过加密技术阻止非授权用户获知信息内容。

完整性:信息完整性是指信息在存储、传输和提取的过程中保持不被修改、不延迟、不乱序和不丢失的特性。一般通过访问控制阻止篡改行为,通过信息摘要算法来检验信息是否被篡改。

可用性:信息可用性指的是信息可被合法用户访问并能按要求使用的特性。典型的DoS/DDoS攻击主要破坏信息的可用性。保证系统可用性,最常用的方法是冗余配置和备份。

计算机病毒分类

类型关键字特征典型代表
蠕虫病毒前缀为worm通过网络或者系统漏洞进行传播,可以向外发送带病毒邮件或者阻塞网络冲击波(阻塞),小邮差病毒(发送带毒邮件),震网病毒
特洛伊木马前缀为Trojan,黑客病毒前缀为Hack通过网络或者漏洞进入系统并隐藏起来,木马辅助入侵用户计算机,黑客通过木马进行远程控制游戏木马TroJan.Lmir.PSW60
宏病毒前缀为Macro特殊脚本病毒,感染word和excelMacro.word97
ARP病毒关键词ARP发送虚假ARP欺骗网关或主机ARP网关欺骗,ARP路由欺骗
震网病毒关键词Stuxnet主要攻击工控系统,比如某国的核设施就遭遇了震网病毒攻击本质上是蠕虫病毒
勒索病毒关键词WannaCry加密用户文档或者锁住浏览器,交赎金后方可解密本质上是蠕虫病毒

端口扫描

扫描分类解释
全TCP连接这种扫描方法使用三次握手,与目标计算机建立标准的TCP连接。这种古老的扫描方法很容易被目标主机记录
半打开式扫描(SYN扫描)在这种扫描技术中,扫描主机自动向目标计算机的指定端口发送SYN数据段,表示发送建立连接请求。
由于扫描过程中全连接尚未建立,所以大大降低了被目标计算机记录的可能性,并且加快了扫描的速度。
FIN扫描发送FIN=1的TCP报文到一个关闭的端口时,该报文会被丢掉,并返回一个RST报文。如果当FIN报文到一个活动的端口时,该报文只是简单地丢掉,不会返回任何回应。从FIN扫
描可以看出,这种扫描没有涉及任何TCP连接部分,因此,这种扫描比前两种都安全,可以称之为秘密扫描。
第三方扫描又称“代理扫描”,这种扫描是利用第三方主机来代理

拒绝服务攻击与防御

拒绝服务攻击(Denial of Service,Dos)通过消耗主机CPU,内存,磁盘,网络等资源,让主机不能向正常服务提供服务。

分布式拒绝服务攻击(Distributed Denial Of Service,DDoS)是攻击者首先侵入一些计算机,然后控制这些计算机同时向一个特定的目标发起拒绝服务攻击。传统的拒绝服务攻击有受网络资源的限制和隐蔽性差两大缺点,而分布式拒绝服务攻击克服了传统拒绝服务攻击的这两个致命弱点。

DDoS结构

DDoS一般采用三级结构:
• Client(客户端):运行在攻击者的主机上,用来发起和控制DDoS攻击。
• Handler(主控端):运行在已被攻击者侵入并获得控制的主机上,用来控制代理端。
• Agent(代理端,也叫肉鸡):运行在已被攻击者侵入并获得控制的主机上,从主控端接收命令,负责对目标实施实际的攻击。

 防御的方法

(1)加强对数据包的特征识别。攻击者在传送攻击命令或发送攻击数据时,虽然都加入了伪装甚至加密,但是其数据包中还是有一些特征字符串。通过搜寻这些特征字符串,就可以确定攻击类型、攻击服务器和攻击者的位置。

(2)设置防火墙监控本地主机端口的使用情况。对本地主机中的敏感端口进行监控,如UDP 
31335、UDP 27444、TCP 27665,如果发现这些端口处于监听状态,则系统很可能受到攻

(3)对通信数据量进行统计也可获得有关攻击系统的位置和数量信息。例如,在攻击之前,目标网络的域名服务器往往会接收到远远超过正常数量的反向和正向的地址查询。在攻击时,攻击数据的来源地址会发出超出正常极限的数据量。

(4)尽可能地修复已经发现的问题和系统漏洞。

(5)购买安全设备(如防火墙、抗DDoS设备)和流量清洗服务。

(6)其他:CDN、增加带宽/服务器。

常见DoS/DDoS攻击

攻击类型攻击原理防御思路
同步包风暴(SYN Flooding)攻击者大量向攻击目标发送SYN数据包,而不返回
ACK,导致服务端有大量半开连接,耗尽目标资源,
不能为其他正常用户提供服务。
(1)通过修改注册表防御SYN Flooding攻击。
(2)防火墙上开启SYN防范功能。
UDP Flooding攻击者大量发送UDP数据,耗尽网络带宽,导致目标
主机不能为正常用户提供服务。
(1)购买流量清洗设备或服务。
(2)限时单个用户带宽。
Ping of Death利用操作系统规定的ICMP数据包最大尺寸不超过64KB这一规定,使TCP/IP堆栈崩溃、主机死机。(1)修改注册表防御ICMP攻击。
(2)升级系统,打补丁
消耗CPU和内存资源的DOS利用目标系统的计算算法漏洞,构造恶意输入数据集,导致目标系统的CPU或内存资源耗尽,从而使目标系统瘫痪,如Hash DoS。
Teardrop泪滴攻击分段攻击,伪造数据报文向目标主机发送含有重叠偏移的数据分段,通过将各个分段重叠来使目标系统崩溃或挂起。
Winnuke攻击针对windows139端口,只要向该端口发送1字节的TCPOOB数据(TCP连接的一种特殊数据,设置了URG标志,优先级更高),就可以使windows系统出现蓝屏错误,并且网络功能完全瘫痪
Land攻击利用三次握手的缺陷进行攻击,将SYN数据包的源地址和目的地址都设置为目标主机的地址,目标主机向自己回以SYN+ACK包,导致自己又给自己回一个ACK并建立自己与自己的连接,当这种无效连接达到一定的数量,
目标主机将会拒绝新的连接请求

网络流量清洗技术原理

原理

网络流量清洗系统的技术原理:通过异常网络流量检测,而将原本发送给目标设备系统的流量牵引到流量清洗中心,清洗完毕后,再把留存的正常流量转送到目标设备系统。包含三个步骤:
• 流量检测。利用分布式多核硬件技术,基于深度数据包检测技术(DPI)监测、分析网络流量数据,快速识别隐
藏在背景流量中的攻击包,以实现精准的流量识别和清洗。
• 流量牵引与清洗。当监测到网络攻击流量时,如大规模DDoS攻击,流量牵引技术将目标系统的流量动态转发到
流量清洗中心来进行清洗,从而使得恶意流量无法影响到目标系统。
• 流量回注。将清洗后的干净流量回送给目标系统,用户正常的网络流量不受清洗影响。

作用

1.畸形数据报文过滤。利用网络流量清洗系统,可以对常见的协议畸形报文进行过滤,如LAND、
Fraggle、Smurf、Winnuke、Ping of Death、Tear Drop和TCP Error Flag等攻击。
2.抗拒绝服务攻击。利用网络流量清洗系统,监测并清洗对目标系统的拒绝服务攻击流量。
3.Web应用保护。利用网络流量清洗系统,监测并清洗对Web应用服务器的攻击流量。常见的网站攻击流量包括HTTP Get Flood、HTTP Post Flood、HTTP Slow Header/Post、HTTPS Flood攻击等。
4.DDoS高防IP服务。DDoS高防IP通过代理转发模式防护源站服务器,源站服务器的业务流量被牵引到高防IP,并对拒绝服务攻击流量过滤清洗后,再将正常的业务流量回注到源站服务器

缓冲区溢出攻击与防御

缓冲区溢出攻击原理:通过往程序的缓冲区写超出其长度的内容,造成缓冲区溢出,从而破坏程序的堆栈,使程序转而执行其他预设指令,以达到攻击目的的攻击方法。

缓冲区溢出攻击防御思路如下:
(1)系统管理上的防范策略:关闭不需要的特权程序、及时给程序漏洞打补丁。
(2)软件开发过程中的防范策略。
a) 编写正确的代码,确保目标缓冲区中数据不越界。
b) 程序指针完整性检查,如果程序指针被恶意改动,程序拒绝执行。
c) 改进C语言中存在缓冲区溢出攻击隐患的函数库。
d) 利用编译器将静态数据段中的函数地址指针存放地址和其他数据的存放地址分离。

SQL注入攻击

SQL注入攻击:黑客从正常的网页端口,进行网站访问,通过巧妙构建SQL语句,获取数据库敏感信息,或直接向数据库插入恶意语句。


 SQL注入攻击防范的主要方法如下:
• 对用户输入做严格检查,防止恶意SQL输入。
• 部署DBS数据库审计系统、WAF防火墙,进行安全阻断。

XSS跨站脚本攻击

跨站脚本攻击(Cross Site Script,为了区别于CSS简称为XSS)指的是恶意攻击者往Web页面里插入恶意html代码,当用户浏览该页之时,嵌入其中Web里面的html代码会被执行,从而达到恶意用户的特殊目的。

攻击实例

有些用户会利用这个漏洞窃取用户信息、诱骗人打开恶意网站或者下载恶意程序等,看个最简单的例子:利用XSS窃取用户名密码。

当然这个示例很简单,几乎攻击不到任何网站,仅仅看看其原理。我们知道很多登陆界面都有记住用户名、密码的功能方便用户下次登录,有些网站是直接用明文记录用户名、密码,恶意用户注册账户登录后使用简单工具查看cookie结构名称后,如果网站有xss漏洞,那么简单的利用jsonp就可以获取其它用户的用户名、密码了。

防范思路

XSS跨站脚本攻击核心都是利用了脚本注入,因此解决办法其实很简单:
• 部署WAF网页应用防火墙,自动过滤攻击报文。
• 对用户输入进行过滤,对特殊字符如”<”,”>”转义,可以从根本上防止这一问题。

ARP欺骗

ARP欺骗原理:攻击者发送恶意ARP应答信息,刷新被攻击者ARP缓存,让对方不能进行正确的二层
封装。ARP欺骗的防范措施如下:
• (1)在主机上进行ARP静态绑定。例如:arp -s 10.0.0.254 00-11-d8-64-6b-bc。
• (2)主机和服务器采用双向绑定的方法解决并且防止ARP欺骗。
• (3)使用ARP服务器。通过该服务器查找自己的ARP转换表来响应其他机器的ARP广播。确保这台ARP服务器不
被攻陷。
• (4)安装ARP防护软件,或在交换机上启动DAI等安全防护功能。

DNS欺骗

DNS欺骗首先是冒充域名服务器,然后把查询的IP地址设为攻击者的IP地址,用户上网只能看到攻击者的主页,而不是用户想要取得的网站的主页。
 DNS欺骗其实并不是真的“黑掉”了对方的网站,而是冒名顶替、招摇撞骗罢了。根据检测手段的不
同,将DNS欺骗的检测分为被动监听检测、虚假报文探测和交叉检查查询三种

参考文献:

网络规划师教材

腾讯SUMMER课堂

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/127433.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Redis 获取、设置配置文件

以Ubuntu 为例 redis配置文件 cd /etc/redis sudo vim redis.conf 获取配置文件、修改配置文件

VS2022+qt5.15.2+cmake3.23.2配置VTK9.1.0版本

VS2022qt5.15.2cmake3.23.2VTK9.1.0 尝试了好多次&#xff0c;终于成了~ 软件安装 先把需要的软件都安装好&#xff01; VS2022安装教程: https://blog.csdn.net/qq_44005305/article/details/132295064 qt5.15.2安装教程&#xff1a;https://blog.csdn.net/Qi_1337/article…

在Unity使用自定义网格生成一个球体

1.在Unity场景中新建一个空物体&#xff0c;在空物体上添加MeshRenderer和MeshFilter组件。 2.新建一个C#脚本命名SphereMesh,将脚本挂载到空物体上&#xff0c;如图&#xff1a; 运行场景就可以看到生成一个球体 全部代码如下&#xff1a; using UnityEngine;public class S…

leetcode42 接雨水

题目 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图&#xff0c;计算按此排列的柱子&#xff0c;下雨之后能接多少雨水。 示例 输入&#xff1a;height [0,1,0,2,1,0,1,3,2,1,2,1] 输出&#xff1a;6 解释&#xff1a;上面是由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的高…

Transformer预测 | Pytorch实现基于Transformer的时间序列预测(含单步与多步实验)

文章目录 效果一览文章概述模型描述程序设计单步实验多步实验参考资料效果一览 文章概述 Transformer预测 | Pytorch实现基于Transformer的时间序列预测(含单步与多步实验) Transformer-singlestep.py 包含单步预测模型 Transformer-multistep.py 包含多步预测模型 这是单步预…

BJT晶体管

BJT晶体管也叫双极结型三极管&#xff0c;主要有PNP、NPN型两种&#xff0c;符号如下&#xff1a; 中间的是基极&#xff08;最薄&#xff0c;用于控制&#xff09;&#xff0c;带箭头的是发射极&#xff08;自由电子浓度高&#xff09;&#xff0c;剩下的就是集电极&#xff0…

HashMapConcurrentHashMap

文章目录 1、HashMap基础类属性node容量负载因子hash算法 2、数组链表/树为什么引入链表为什么jdk1.8会引入红黑树为什么一开始不就使用红黑树&#xff1f;HashMap的底层数组取值的时候&#xff0c;为什么不用取模&#xff0c;而是&数组的长度为什么是2的次幂如果指定数组的…

算法-排序算法

0、算法概述 0.1 算法分类 十种常见排序算法可以分为两大类&#xff1a; 比较类排序&#xff1a;通过比较来决定元素间的相对次序&#xff0c;由于其时间复杂度不能突破O(nlogn)&#xff0c;因此也称为非线性时间比较类排序。 非比较类排序&#xff1a;不通过比较来决定元素间…

【AI视野·今日NLP 自然语言处理论文速览 第四十五期】Mon, 2 Oct 2023

AI视野今日CS.NLP 自然语言处理论文速览 Mon, 2 Oct 2023 Totally 44 papers &#x1f449;上期速览✈更多精彩请移步主页 Daily Computation and Language Papers Efficient Streaming Language Models with Attention Sinks Authors Guangxuan Xiao, Yuandong Tian, Beidi C…

Ubuntu MySQL

在安装前&#xff0c;首先看你之前是否安装过&#xff0c;如果安装过&#xff0c;但是没成功&#xff0c;就要先卸载。 一、卸载 1.查看安装 dpkg --list | grep mysql 有东西&#xff0c;就说明您之前安装过mysql。 2.卸载 先停掉server sudo systemctl stop mysql.servic…

KUKA机器人通过直接输入法设定负载数据和附加负载数据的具体操作

KUKA机器人通过直接输入法设定负载数据和附加负载数据的具体操作 设置背景色: 工具负载数据 工具负载的定义: 工具负载数据是指所有装在机器人法兰上的负载。它是另外装在机器人上并由机器人一起移动的质量。需要输入的值有质量、重心位置、质量转动惯量以及所属的主惯性轴。…

C语言之共用体、枚举类型、typedef

共用体 共用体的所有成员共享同一个内存地址 插入一个知识点&#xff1a;字符串不可以直接赋值&#xff0c;要不就在定义的时候赋值&#xff0c;要不就只能使用scanf函数赋值或者<string>中的strcpy赋值 证明 如果要同时访问联合体中多个成员的值...... 则会出现以下情…