《网络安全基础:应用与标准》知识点笔记
文章目录
1. 计算机安全的三个关键目标(核心内容)
- 机密性:维持施加在数据访问和泄露上的授权限制,包括保护个人隐私信息和私有信息的措施
- 完整性:防范不当的信息修改和破坏,包括保证信息的认证和授权
- 可用性:保证及时且可靠地获取和使用信息
2. 计算机安全挑战(原因)
- 安全机制可能非常复杂,理解它们可能涉及相当深奥的论证推理
- 开发安全机制或算法时,必须时刻考虑潜在攻击。成功的攻击往往从不同方式观察问题,利用机制未预料的弱点。
- 鉴于上述原因,用来提供特定服务的程序通常是违反直觉的。只有考虑各种威胁,设计的安全机制才有意义
- 对已设计的安全机制,决定这些机制的使用场合是非常必要的,无论是物理位置还是逻辑意义。
- 安全机制通常不止一种算法或协议。存在通信协议的信任问题,使开发安全机制的任务复杂化。
- 计算机和网络安全本质上是攻击者和安全人员的一场智力较量。攻击者只要发现一个弱点,设计者要发现和堵塞所有弱点。
- 用户和管理者的天然倾向,直到灾难发生前总觉得安全的投入无利可图
- 安全需要定时或经常监控,对于今天的短期性和超负荷环境困难
- 安全仍是一种事后考虑,不是作为设计的一部分在设计时加以考虑
- 很多用户(甚至安全管理者)认为,强化安全对一个信息系统或信息的使用而言,在有效性和易操作性方面是一个障碍
3. 安全攻击包括被动攻击和主动攻击
被动攻击的两种形式:消息内容泄露攻击和流量分析攻击
如果对消息进行了加密,攻击者仍可能观察到这些消息的模式。攻击者可以推测出通信双方的位置和身份,观察到交换信息的频率和长度。这些信息对推测发生的通信的一些性质有帮助。
被动攻击难以检测,因为不改变数据。对付的重点是防范而不是检测。
主动攻击分为四类:假冒、重放、改写信息和拒绝服务
防范主动攻击困难,要检测主动攻击
4. 基本安全设计准则
- 机制的经济性
- 默认的安全失效
- 完全仲裁
- 开放设计
- 权限分离
- 最小权限
- 最不常见机制
- 心理可接受性
- 隔离
- 封装
- 模块化
- 分层
- 最小惊讶准则
5. 对称加密原理
对称加密的原理是数据发送方将明文(原始数据)和加密密钥一起经过特殊加密算法处理后,使其变成复杂的加密密文发送出去。接收方收到密文后,若想解读原文,则需要使用加密密钥及相同算法的逆算法对密文进行解密,才能使其恢复成可读明文。
对称分组加密算法:DES、三重 DES、AES
流密码 RC4
6. 安全散列函数
散列函数的目的是为文件、消息或其它数据块产生“指纹”。
散列函数 H 必须具有下列性质:
- H 可适用于任意长度的数据块
- H 能产生固定长度的输出
- 对于任意给定的 x,计算 H(x)相对容易,并且可以用软/硬件方式实现
- 对于任意给定值 h,找到满足 H(x)=h 的 x 在计算上不可行。满足这一特性的散列函数称为具有单向性,或具有抗原像攻击性
- 对于任意给定的数据块 x,找到满足 H(y)=H(x)的 y≠x 在计算上是不可行的。满足这一特性的散列函数被称为具有抗第二原像攻击性,有时也被称为具有抗弱碰撞攻击性
- 找到满足 H(x)=H(y)的任意一对(x,y)在计算上是不可行的。满足这一特性的散列函数被称为具有抗碰撞性,有时也被称为抗强碰撞性
7. 公钥密码思想
非对称加密的原理是甲方首先生成一对密钥同时将其中的一把作为公开密钥;得到公开密钥的乙方再使用该密钥对需要加密的信息进行加密后再发送给甲方;甲方再使用另一把对应的私有密钥对加密后的信息进行解密,这样就实现了机密数据传输。
步骤:
- 每个用户都生成一对密钥用来对消息进行加密和解密
- 每个用户把两个密钥中的一个放在公共寄存器或其他可访问的文件里,这个密钥便是公钥,另一个密钥自己保存。每个用户都收藏别人的公钥
- 如果 Bob 希望给 Alice 发送私人消息,则他用 Alice 的公钥加密消息
- 当 Alice 收到这条消息,她用私钥进行解密。因为只有 Alice 知道她自己的私钥,其他收到消息的人无法解密消息
8. 公钥密码算法
- RSA
生成密钥 |
---|
选择 p、q p 和 q 都是素数,且 p≠q 计算φ(n)=(p-1)(q-1) 选择整数 e gcd(φ(n),e)=1;1<e< φ(n) 计算 d de mod φ(n) = 1 公钥 KU = {e, n} 私钥 KR = {d, n} |
加密 |
明文 M 密文 C = M e ( m o d n ) C=M^{e}\pmod{n} C=Me(modn) |
解密 |
密文 C 明文 M = C d ( m o d n ) M=C^d \pmod{n} M=Cd(modn) |
- Diffie-Hellman 密钥交换
公开值:q ,q 的本元根 α \alpha α
A 选择 X A X_A XA<q,计算 Y A = α X A m o d q Y_A=\alpha^{X_A} \mod q YA=αXAmodq
B 选择 X B X_B XB<q,计算 Y B = α X B m o d q Y_B=\alpha^{X_B} \mod q YB=αXBmodq
计算密钥:
A: K = ( Y B ) X A m o d q K=(Y_B)^{X_A} \mod q K=(YB)XAmodq
B: K = ( Y A ) X B m o d q K=(Y_A)^{X_B} \mod q K=(YA)XBmodq
9. RSA 数字签名算法
RSA 数字签名算法的本质是使用 RSA 加密要签名的消息的哈希值。
RSA-PSS(RSA 概率签名方案)步骤:
- 从被签名的消息 M 生成哈希值或消息摘要,mHash。
- 使用常量值 p a d d i n g 1 padding_1 padding1 和伪随机值 salt 填充 mHash 形成 M’。
- 从 M’生成哈希值 H
- 生成常量值 p a d d i n g 2 padding_2 padding2和 salt 组成的 DB 块
- 使用掩码生成函数 MGF,它从与 DB 相同长度的输入 H 产生随机输出
- 通过用十六进制常量 BC 与 H 和 DB 的异或值来填充 H 从而创建编码消息 (EM) 块
- 使用签名者的私钥和 RSA 加密算法加密 EM
10. 公钥证书及格式
公钥证书由公钥加上公钥所有者的用户 ID 以及可信的第三方签名的整个数据块组成。
11. 证书链
证书链由两个环节组成—信任锚(CA 证书)环节和已签名证书环节。自我签名的证书仅有一个环节的长度—信任锚环节就是已签名证书本身。
组 成:信任锚环节和已签名证书环节
特 点:可以有任意环节的长度
什么是证书链?
证书链由不同证书颁发机构(CA)创建的证书序列组成,其中每个连续的证书都是由一个CA颁发的证书,用于证明链中下一个CA的公钥。
12. 网络访问控制系统的组成元素
- 访问请求者(AR)
- 策略服务器
- 网络访问服务器 (NAS)
13. 网络访问强制措施
- IEEE 802.1X
- 虚拟局域网(VLAN)
- 防火墙
- 动态主机配置协议(DHCP)管理
14. “三种传播”“四种载荷”
三种恶意软件传播机制:
- 传染-感染内容-病毒
- 传播-漏洞利用-蠕虫
- 传播-社会工程-垃圾邮件和特洛伊木马
描述恶意载荷的四种类型:
- 载荷-系统破坏
- 载荷-攻击代理-僵尸病毒与机器人
- 载荷-信息窃取-键盘监测器、网络钓鱼与间谍软件
- 载荷-隐身-后门与隐匿程序
15. 高级持续性威胁
APT
P254-255
16. 分布式拒绝服务攻击
DDoS 攻击试图消耗目标设备的资源,使其不能够提供服务。(详见 P276-278)
17. 反射 DDoS 攻击
向攻击机制中加入另一个层。在这种攻击方式中,从僵尸会构造要求回应的封包,封包的 IP 头中包含有以目标 IP 作为源 IP 的地址。这些封包被发送到未感染机器中。之后,这些未被感染的机器作为反射体,会根据封包的要求对目标机器做出回应。
反射 DDoS 攻击可以简单地使更多机器和更多网络流量卷入,因此破坏性更大。
攻击来自广泛分布的未被感染的机器,回溯攻击源或者过滤攻击封包也变得更加困难。
18. 蜜罐
蜜罐技术是入侵检测技术的一次革新。蜜罐是一个诱骗系统,用来把潜在的攻击者从重要系统中引诱开。
蜜罐设计的目的:
- 转移攻击者对重要系统的访问
- 收集关于攻击者活动的信息
- 鼓励攻击者停留在系统中足够长时间以便管理员做出反应
蜜罐系统中填满了看起来有价值的虚假信息,但系统的合法用户不会访问这些信息。因此,任何访问蜜罐的行为都是可疑的。蜜罐系统装备了敏感监测器和事件登录器用来检测对蜜罐系统的访问行为并收集攻击者的活动信息。由于对蜜罐系统的任何攻击在攻击者看来是很成功的,管理员有足够时间来调度、登录继而跟踪攻击者,甚至无需暴露系统。
蜜罐是一个没有生产价值的资源,没有任何合法的理由能让任何网络之外的任何人跟蜜罐进行交互。因此,任何系统进行交流的尝试很有可能是一次探测、扫描或者攻击。反过来,如果蜜罐启动出站通信,那么系统有可能已经被攻破了。
三个位置的蜜罐:
- 外部防火墙之外的蜜罐:位于这个位置的蜜罐没有增加内部网络的风险。因为蜜罐吸引了很多潜在的攻击者,所以减少了防火墙或内部 IDS 传感器发布的警报数量,降低了管理负担。坏处是无法捕捉内部攻击者。
- DMZ(非军事化区)蜜罐:管理者必须确保 DMZ 中其他系统对于有蜜罐产生的任何活动都是安全的。坏处是典型的 DMZ 并不是完全可疑访问的,防火墙一般会阻挡那些尝试访问不需要的服务的到 DMZ 的流量。
- 完全内部的蜜罐:可以捕捉内部攻击。可以检测配置错误的防火墙。缺点是如果蜜罐被攻破,就可以攻击其他内部系统。而且防火墙配置要更复杂。
19. 防火墙的设计目标
- 所有入站和出站的网络流量都必须通过防火墙
- 只有经过授权的网络流量,防火墙才允许通过
- 防火墙本身不能被攻破
20. 防火墙访问策略
防火墙访问策略可用于过滤流量的一系列特征,包括
- IP 地址和协议值:根据源或目标地址和端口号,入站和出站流方向以及其他网络和传输层特征来控制访问
- 应用程序协议:根据授权的应用程序协议数据控制访问
- 用户身份:根据用户身份控制访问,通常用于使用某种形式的安全身份验证技术(如 IPSec)识别自身的内部用户。
- 网络活动 :根据时间或请求等因素控制访问。
21. 包过滤防火墙
P314-317
22. 代理服务器(应用层网关)
应用层网关,也称为代理服务器,起到了应用层流量缓冲器的作用。用户使用 TCP/IP 应用程序,比如 Telnet 或 FTP,连接到网关,同时网关要求用户提供要访问的远程主机名。当用户应答并提供一个有效的用户 ID 和认证信息,网关会联系远程主机并在两个端点之间转播包含应用程序数据的 TCP 段。如果网关不包含某种服务的代理实现机制时,该服务将不会得到网关的支持,并且对服务器的请求不能通过防火墙。网关可以被设置为只支持应用程序中网络管理者认为可接受的那部分特性,拒绝应用其他的特性。
应用层网关往往比包过滤器更安全。应用层网关并不需要判断大量的 TCP 和 IP 层上的连接是允许通过的或禁止通过的,而只需要细查少数可以允许的应用程序。另外,在应用层上很容易记录和审计所有的入站流量。
应用层网关的最大缺点是带来了对每个连接的额外处理开销。实际上,在两个末端用户之间建立连个两个接合的连接,在接合点有网关,并且网关必须对所有双向的流量进行检查和传送。
23. 虚拟私有网(VPN)
虚拟私有网(VPN)是指建立在公共网络上的专用网络。虚拟私有网(VPN)是一个通信隧道,它可以在不可信的中间网络上提供身份验证和数据通信的点对点传输。大多数 VPN 使用加密技术来保护封装的通信数据。VPN 在不安全的或不可信的中间网络上提供了机密性和完整性,但是并不提供和保证可用性。