0%

计算机网络系列(七):计算机网络中的安全

1. 网络安全攻击有哪些 ★★

  • 被动攻击:攻击者窃听监听数据传输,从而获取到传输的数据信息。被动攻击主要有两种形式:消息内容泄漏攻击流量分析攻击。由于攻击者没有修改数据,使得这种攻击累死你个很难被检测到
  • 主动攻击:攻击者修改传输的数据流或者故意添加错误的数据流,例如用假冒用户身份从而得到一些权限,进行权限攻击,除此之外,还有重放改写拒绝服务等主动攻击方式

2. ARP 攻击概述 ★★★

  • 概念

    • 在 ARP 的解析过程中,局域网上的任何一台主机如果接收到一个 ARP 应答报文,并不会去检测这个报文的真实性,而是直接记入自己的 ARP 缓存表中。并且这个 ARP 表是可以被更改的,当表中的某一列长时间不使用就会被删除
    • ARP 攻击就是利用了这一点,攻击者疯狂发送 ARP 报文,其源 MAC 地址为攻击者的 MAC 地址,而源 IP 地址为被攻击者的 IP 地址。通过不断发送这些伪造的 ARP 报文,这样所有发送给被攻击者的信息都会发送到攻击者的主机上,从而产生 ARP 欺骗
  • 分类

    • 洪泛攻击:攻击者恶意向局域网总的网关、路由器和交换机等发送大量 ARP 报文,设备的 CPU 忙于处理 ARP 协议,而导致难以响应正常的服务请求,其通常表现为:网络中断或者网速很慢
    • 欺骗主机:这种攻击方式也叫仿冒网关攻击。攻击者通过 ARP 欺骗使得网络内部被攻击主机发送给网关的信息实际上都发送给了攻击者,主机更新的 ARP 表中对应的 MAC 地址为攻击者的 MAC 地址。当用户主机箱网关发送重要信息时,该攻击方式使得用户的数据存在被窃取的风险
    • 欺骗网关:该攻击方式和欺骗主机的攻击方式类似,不过这种攻击的欺骗对象是局域网的网关,当局域网中的主机向网关发送数据时,网关会把数据发送给攻击者,这样攻击者就会源源不断获得局域网中用户的信息,该攻击方式同样会造成用户数据外泄
    • 中间人攻击:攻击者同时欺骗网关和主机,局域网的网关和主机发送的数据最后都会到达攻击者这边。这样,网关和用户的数据就会泄漏
    • IP 地址冲突:攻击者对局域网中的主机进行扫描,然后根据物理主机的 MAC 地址进行攻击,导致局域网内的主机产生 IP 冲突,使得用户的网络无法正常使用

3. 对称加密和非对称加密的区别,非对称加密有哪些 ★★★★

  • 加密和解密的过程不同:对称加密和解密过程使用同一个密钥;非对称加密中加密和解密采用公钥私钥两个密钥,一般使用公钥进行加密、使用私钥进行解密
  • 加密和解密的速度不同:对称加密和解密速度较快,当数据量比较大时适合使用;非对称加密和解密时间较长,速度相对较慢,适合少量数据传输的场景
  • 传输的安全性不同:采用对称加密方式进行通信时,收发双方在数据传送前需要协定好密钥,而这个密钥还有可能被第三方窃听到,一旦密钥泄漏,之后的通信就完全暴露给攻击者了;非对称加密采用公钥加密私钥解密的方式,其中私钥是基于不同的算法生成的随机数,公钥可以通过私钥通过一定的算法推导得出,并且私钥到公钥的推导过程是不可逆的,也就是说公钥无法反推出私钥,即使攻击者窃听到传输的公钥也无法正确解出数据,所以安全性较高
  • 常见的非对称加密算法:RSA、Elgamal、背包算法、Rabin、D-H 算法等

4. AES 过程概述 ★★

  • AES 概念

    • AES(Advanced Encryption Standard) 即密码学的高级加密标准,也叫做 Rijndeal 加密法,是最为常见的一种对称加密算法,和传统的对称加密算法大致流程类似,在发送端需要采用加密算法对明文进行加密,在接收端需要采用与加密算法相同的算法进行解密。不同的是,AES 采用分组加密的方式,将明文分成一组一组的,每组长度相等,每次加密一组数据,直到加密完整个明文。在 AES 标准中,分组长度固定为 128 位,即每个分组为 16 个字节(每个字节有 8 位)。而密钥的长度可以是 128 位,192 位或者 256 位,并且密钥的长度布偶通过,对接加密的轮数也不同
    • 以 128 位密钥为例(加密轮次为 10),已知明文首先需要分组,每一组大小为 16 个字节并形成 4 * 4 的状态矩阵(矩阵中的每一个元素代表一个字节)。类似地,128 位密钥同样用 4 * 4 的字节矩阵表示,矩阵中的每一列称为 1 个 32 位的比特字。通过密钥编排函数该密钥矩阵被扩展成一个由 44 个字组成的序列,该序列的前四个字是原始密钥,用于 AES 的初始密钥加密过程,后面 40 个子分为 10 组,每组 4 个字节分别用于 10 轮加密运算中的轮密钥加
  • 加密过程步骤

    • 字节代换:AES 的字节代换其实是一个简易的查表操作,在 AES 中定义一个 S-box 和一个逆 S-box,我们可以将其简单地理解为两个映射表,在做字节代换时,状态矩阵中的每一个元素(字节)的高四位作为行值,第四位作为列值,取出 S-box 或者逆 S-box 中对应的行或者列作为输出
    • 行位移:就是对状态矩阵的每一行进行位移操作,其中状态矩阵的第 0 行左移 0 位,第 1 行左移 1 位,以此类推
    • 列混合:列混合变换是通过矩阵相乘来实现的,经位移后的状态矩阵与固定的矩阵相乘,从而得到混淆后的状态矩阵。其中矩阵相乘中涉及到的加法等价于两个字节的异或运算,而乘法相对复杂一些,对于状态矩阵中国的每一个 8 位二进制来说,首先将其与 00000010 相乘,其等效为将 8 位二进制数左移一位,若原二进制数的最高位是 1 的话再左移后的数与 00011011 进行异或运算
    • 轮密相加:128 为密钥通过密钥编排函数被扩展成 44 个字组成的序列,其中前 4 个字用于加密过程开始时对原始明文矩阵进行异或运算,而后 40 个字中每四个一组在每一轮中与状态矩阵进行异或运算(共计 10 轮)
  • 解密过程步骤:和加密过程步骤一样,只是用逆变换代替原理的变换

5. RSA 和 AES 算法有什么区别 ★★★

  • RSA:采用非对称加密的方式,采用公钥进行加密、私钥解密的形式。其私钥长度一般较长,除此之外,由于需要大数的乘幂求模等运算,其运算速度较慢,不适合大量数据文件加密
  • AES:采用对称加密方式,其密钥长度最长只有 156 个比特,加密和解密速度较快,易于硬件实现。由于是对称加密,通信双方在进行数据传输前需要获知加密密钥
  • 基于上述两种算法的特点:一般使用 RSA 传输密钥给对方,再使用 AES 进行加密通信

6. DDoS 有哪些,如何防范 ★★★

  • DDoS 为分布式拒绝服务攻击,是指处于不同位置的多个攻击者同时向一个或数个目标发动攻击,或者一个攻击者控制了不同位置上的多台机器并利用这些机器对受害者同时实施攻击。和单一的 DoS 攻击相比,DDoS 是借助数百台或者数千台已被入侵并添加了攻击进程的主机一起发起网络攻击
  • DDoS 攻击主要有两种形式:流量攻击资源耗尽攻击。前者主要针对网络带宽,攻击者和已受害主机同时发起大量攻击导致网络带宽被阻塞,从而淹没合法的网络数据包;后者主要针对服务器进行攻击,大量的攻击包会使得服务器资源耗尽或者 CPU 被内核应用程序占满从而无法提供网络服务
  • 常见的 DDoS 攻击主要有:TCP 洪泛攻击(SYN-Flood)放射性攻击(DrDoS)CC 攻击(HTTP-Flood)
    • 针对 DDoS 中的流量攻击,最直接的方法是增加带宽,理论上只有带宽大于攻击流量就可以了,但是这种方法成本非常高。在有充足带宽的前提下,我们应尽量提升路由器、网卡、交换机等硬件设施的配置
    • 针对 DDoS 中的资源耗尽攻击,我们可以升级主机服务器硬件,在网络带宽得到保证的前提下,使得服务器能有效对抗海量的 SYN 攻击包。我们也可以安装专业的抗 DDoS 防火墙,从而对抗 SYN-Flood 等流量型攻击。此外,负载均衡CDN 等技术都能有效对抗 DDoS 攻击
-------------------- 本文结束感谢您的阅读 --------------------