1-网络安全概述
1-1 基础概念
1-1-1 计算机网络安全的定义
国际标准化组织 ISO 将计算机网络安全定义为:'为数据处理系统建立和采取的技术与管理的安全保护,保护网络系统的硬件、软件及其系统中的数据不因偶然的或者恶意的原因而遭受到破坏、更改、泄露,系统连接可靠、正常的运行,网络服务不中断。'这一定义强调了安全不仅是技术问题,还涉及管理层面,旨在保障信息的机密性、完整性和可用性。
本文详细介绍了网络安全的基础概念、五大特征及常见威胁。涵盖了网络攻击的分类、潜在攻击者及攻击步骤,重点讲解了被动攻击、主动攻击、社会工程学攻击等类型。深入剖析了数据加密与认证技术,包括对称与非对称加密、Hash 算法、数字签名及 CA 证书。最后总结了端口扫描、ARP 欺骗、拒绝服务攻击(DoS/DDoS)的原理与防护措施,并提出了未来网络安全的发展趋势与纵深防御建议。

国际标准化组织 ISO 将计算机网络安全定义为:'为数据处理系统建立和采取的技术与管理的安全保护,保护网络系统的硬件、软件及其系统中的数据不因偶然的或者恶意的原因而遭受到破坏、更改、泄露,系统连接可靠、正常的运行,网络服务不中断。'这一定义强调了安全不仅是技术问题,还涉及管理层面,旨在保障信息的机密性、完整性和可用性。
网络安全主要包含以下五项核心特征:
所谓网络安全威胁,是指对网络和信息的机密性、完整性、可用性在合法使用时可能造成的危害。
从人为角度分析,威胁包括信息泄露、完整性破坏、拒绝服务攻击、滥用网络等。
常见的表现形式有:窃听、重传、篡改、拒绝服务攻击、行为否认、电子欺骗、非授权访问、传播病毒等。理解这些威胁是构建防御体系的前提。
网络攻击的来源多种多样,主要包括:
根据攻击方式和目的,网络攻击主要分为以下几类:
实现网络安全需要建立完善的安全政策:
例:
明文 meet at tonight 凯撒密码 PHHWDWWRQLJKW
几种简单密码方案:
第一阶段: 古代到 1949 年,这一时期,密码学家往往凭借直觉设计密码,缺少严格的推理证明,这一阶段的密码被称为古典密码。
第二阶段: 1949-1975 年,两大重大事件:
第三阶段: 1976 年至今,1976 年Diffie 和 Hellman发表的**《密码学的新方向》**开创了公钥密码学的新纪元。
密码学的基本目的是使两个在不安全信道上通信的人 A 和 B,以一种他们的敌人 C 不能明白和理解通信内容的方式进行通信。
密码算法是指用于加密和解密的一对数学函数 E(x) 和 D(x)。 为了密码系统的安全,我们需要经常变更密钥,由于种种原因,密码算法往往是不能保密的,所以我们常常假定算法是公开的,真正需要保密的是密钥。像凯撒密码,我可以移动 5 位字母而不是 3 位。这个移动的位数就算是密钥。
对称密钥算法又称为传统密码算法,加密密钥是能够从解密密钥中推算出来的,反过来也成立。 典型的对称加密算法是DES、AES 和 RC5算法。
对称密码算法的特点是计算量小、加密速度快。
对称密码可以按照对明文的加解密方式,分为序列密码(流密码)和分组密码。
序列密码是将明文划分成字符(如单个字母),或其编码的基本单元,逐字符进行加解密。
分组密码是将明文编码表示后的数字序列划分成长度为 m 的组,各组分别在密码的控制下加密成密文。
对称密码的缺点:
公开密钥算法于 1976 年由 Diffie 和 Hellman 提出。这一体制最大的特点是采用两个密钥将加密和解密能力分开:一个公开用于加密;另一个为用户专用,作为解密密钥,通信双方无须先交换密钥就可以进行通信。
密码学包含两个分支-----密码编码学和密码分析学。
密码编码学是对信息进行编码实现隐蔽信息的一门学问。
密码分析学是研究分析破译密码的学问。
攻击类型:
| 攻击类型 | 攻击者拥有的资源 |
|---|---|
| 唯密文攻击 | 加密算法、截获的部分密文 |
| 已知明文攻击 | 加密算法、截获的部分密文和其对应的明文 |
| 选择明文攻击 | 加密算法、加密黑盒子,可加密任意明文得到相应的密文 |
| 选择密文攻击 | 加密算法、解密黑盒子,可解密任意密文得到相应的明文 |
密码分析的方法:
联合国发布的《电子签名示范法》中对电子签名的定义如下:'指在数据电文中以电子形式所含的、所附或在逻辑上与数据电文联系的数据,它可用于鉴别与数据电文相关的签名人和表明签名人认可数据电文所包含的信息。'
电子签名立法: 2000 年 6 月 30 日美国总统克林顿签署《电子签名法案》,被看做是美国迈向电子商务时代的一个重要的标志。 2005 年 4 月 1 日,我国《电子签名法》正式实行。标志着中国首部'真正意义上的信息化的法律'正式诞生。
电子签名模式: 目前电子签名主要有三种模式:
电子签名使用的技术:公开密钥算法(RSA 算法)和报文摘要(HASH 算法)。
数字证书是一种权威性的电子文档,由权威公正的第三方机构,即 CA 中心签发的证书。 因特网的电子商务系统必须保证具有十分可靠的安全保密技术,也就是说,必须保证网络安全的 4 大要素,即信息传输的保密性,交易者身份的确定性,发送信息的不可否任性、数据交换的不可修改性。
网络系统安全主要考虑两个方面:一方面,用密码保护传输的信息使其不被破译;另一方面,防止对手对系统进行主动攻击,如伪造、篡改等。认证则是防止主动攻击的重要技术。
认证的目的有两个方面:
身份认证是指计算机及网络系统中确认操作者身份的过程。 身份认证技术的诞生就是为了解决如何保证从操作者的物理身份与数字身份相对应的问题。 如果没有有效的身份认证手段,访问者的身份就很容易被伪造,使得未经授权的人仿冒有权限人的身份,这样,任何安全防范体系就都形同虚设,所有安全投入就被无情的浪费了。
Hash,一般翻译做'散列',也有的直接音译为'哈希',就是把任意长度的输入(又叫作预映射)通过散列算法变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,也就是说,散列值的空间通常远小于输入的空间,不同的输入可能会散列成相同的输出,而不可能从散列值来唯一地确认输入值。简单的说,就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数。
Hash 算法: 了解了 Hash 的基本定义,就不能不提到一些著名的 Hash 算法。其中 MD5 和 SHA1 可以说是目前应用最广泛的 Hash 算法,而它们都是以 MD4 为基础设计的。
Hash 算法在信息安全方面的应用体现:
常见的攻击方式有 4 类:
1. 攻击准备 进行网络攻击是一件系统性很强的工作,其主要流程是:收集情报、远程攻击、远程登录、确定普通用户的权限、取得超级用户的权限,留下后门、清除日志。主要内容包括目标分析、文档获取、破解密码、日志清除等技术。
(1)确定攻击目标:破坏或者控制。
(2)信息收集:收集尽量多的关于目标的信息,这些信息包括目标的操作系统类型及其版本,目标提供哪些服务,各服务器程序的类型与版本,以及相关的社会信息。
获取目标系统版本的方法:
获知目标提供哪些服务和各服务守护程序的类型、版本同样重要,因为已知的漏洞都是针对某一服务的。这里的提供服务就是指通常我们提到的端口。在不同服务器上提供同一种服务的软件也可以不同,这类软件叫做守护程序。
2. 攻击的实施阶段
(1)获得权限:当收集到足够的信息之后,攻击者就要开始实施攻击行动了。作为破坏型攻击,只需利用工具发动攻击即可。而作为入侵型攻击,往往要利用收集到的信息,找到其系统漏洞,然后利用该漏洞获取一定的权限。有时获得了一般用户的权限就足以达到修改主页等目的了。但作为一次完整的攻击是要获得系统最高权限的,这不仅是为了达到一定的目的,更重要的是证明攻击者的能力。
(2)权限扩大:系统漏洞分为远程漏洞和本地漏洞两种。远程漏洞是指黑客可以在别的机器上直接利用该漏洞进行攻击并获取一定的权限。这种漏洞的威胁性相当大,黑客的攻击一般都是从远程漏洞开始的。但是利用远程漏洞获取的不一定是最高权限,而往往只是一个普通用户的权限,这样常常没有办法做黑客们想要做的事。这时就需要配合本地漏洞来把获得的权限进行扩大,常常是扩大至系统的管理员权限。 只有获得了最高的管理员权限,才可以做网络监听、打扫痕迹之类的事情。完成权限的扩大,不但可以利用已获得的权限在系统上执行利用本地漏洞的程序,还可以放置一些木马之类的欺骗程序来套取管理员密码。例如一个黑客已经在一台机器上获得了一个普通用户的账号和登录权限,那么他就可以在这台机器上放置一个假的 su 程序。当真正的合法用户登录时,运行了该 su 程序并输入了密码,这时 root 密码就会被记录下来,下次黑客再登录时就可以使用 su 程序而拥有 root 权限了。
3. 攻击的善后工作
(1)隐藏踪迹:攻击者在获得系统最高管理员权限之后,就可以随意修改系统上的文件了,包括日志文件,所以黑客想要隐藏自己的踪迹的话,就会对日志进行修改。最简单的方法当然就是删除日志文件了,但这样做虽然避免了系统管理员根据 IP 追踪到自己,但也明确无误地告诉了管理员,系统已经被入侵了。所以最常用的办法是只对日志文件中有关自己的那一部分做修改。
(2)后门:黑客在攻入系统后,一般要不止一次地进入该系统。为了下次再进入系统时方便一些,黑客会留下一个后门,特洛伊木马就是后门的最好范例。
社会工程学攻击主要是利用'社会工程学'来实施的网络攻击行为,主要通过利用人的弱点进行诈骗、威胁等违法行为,获取非法利益。
社会工程学攻击的基本目标与其他网络攻击手段基本相同,都是为了获得目标系统的未授权访问路径,对重要信息进行盗取,或仅仅是扰乱系统和网络的安全与稳定等。
在信息安全技术不断发展的今天,各种安全防护设备与措施使得网络和系统本身的漏洞大幅减少。更多的攻击者转向利用人的弱点(即使用社会工程学方法)来实施网络攻击,黑客入侵事件不断上演。在这些事件中,被攻击者的安全防护意识是一个突出的问题。随意设置简单、易破解的口令、随处留下自己的邮箱地址的行为比比皆是,这些都使得善于利用社会工程学的攻击者能够很轻易地完成对某些目标的入侵。
年少成名的美国超级黑客凯文·米特尼克撰写的《反欺骗的艺术》堪称社会工程学的经典。书中详细地描述了许多运用社会工程学入侵网络的方法,这些方法并不需要太多的技术基础,但可怕的是,一旦懂得如何利用人的弱点,如轻信、健忘、胆小、贪便宜等,就可以轻易地潜入防护最严密的网络系统。目前常见的网络钓鱼(Phishing)攻击就是属于社会工程学攻击的一种。攻击者利用恶意的电子邮件和伪造的 Web 站点来进行诈骗活动,诱骗受攻击者提供一些个人信息,如卡号、账户名和口令等内容,被攻击者往往会在不经意间泄露自己的敏感数据。
社会工程学常见形式:
如何防范社会工程学: 面对社会工程学攻击带来的安全挑战,机构和个人都必须学会使用新的防御方法。
从机构的角度来说,防御措施主要包括以下几种:
对于个人来说,主要需要注重个人隐私保护,社会工程学攻击的核心就是信息,尤其是个人信息。在网络普及的今天,很多论坛、博客、电子邮箱等都包含了个人大量的私人信息。如生日、年龄、E-mail 地址、家庭电话号码等,入侵者根据这些信息再次进行信息挖掘,将提高成功入侵的概率。因此在各个网站注册时,一定要查看这些网站是否提供了对个人隐私信息的保护,是否采用了适当的安全措施,谨慎提供个人的真实信息。
端口扫描的原理:尝试与目标主机的某些端口建立连接,如果目标主机的该端口有回复,则说明该端口开放,即为'活动端口'。
常见的扫描工具包括 X-Port, PortScanner, SuperScan, 流光,X-Scan 等。
防火墙工作原理:首先检查每个到达电脑的数据包,在这个包被机器上运行的任何软件看到之前,防火墙有完全的否决权,可以禁止电脑接收 Internet 上的任何东西。当第一个请求建立连接的包被电脑回应后,一个 TCP/IP 端口被打开;端口扫描时,对方计算机不断地和本地计算机建立连接,并逐渐打开各个服务所对应的 TCP/IP 端口及闲置端口。防火墙利用自带的拦截规则判断,就能够知道对方是否正进行端口扫描,并拦截掉对方发送过来的所有扫描需要的数据包。
互联网的发展很大程度上归功于 TCP/IP 协议运行的高效性和开放性,然而 TCP/IP 协议在实现过程中忽略了对网络安全方面的考虑,致使其存在着较多安全隐患。ARP 协议是 TCP/IP 协议中重要的一员,其功能主要是为局域网内网络设备提供IP 地址向硬件地址的转化,其设计建立在局域网内网络设备之间相互信任的基础上,由此产生了许多 ARP 欺骗攻击方法。许多木马和病毒利用 ARP 协议这一设计上的漏洞在局域网内进行 ARP 欺骗攻击,给局域网的安全造成了严重威胁。
ARP 意为地址解析协议,是根据 IP 地址获取物理地址的一个 TCP/IP 协议中重要的一员。主机发送信息时,将包含目标 IP 地址的 ARP 请求广播到网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后,将该 IP 地址和物理地址存入本机 ARP 缓存中并保留一定时间,下次请求时直接查询 ARP 缓存以节约资源。地址解析协议是建立在网络中各个主机互相信任的基础上,网络上的主机可以自主发送 ARP 应答消息,其他主机收到应答报文时不会检测该报文的真实性就会将其记入本机 ARP 缓存;由此攻击者就可以向某一主机发送伪 ARP 应答报文,使其发送的信息无法到达预期的主机或到达错误的主机,这就构成了一个ARP 欺骗。
ARP 欺骗的危害如下:
防护:
拒绝服务攻击,又称为DoS(Denial of Service 的缩写)攻击。DoS 的攻击方式有很多种,最基本的就是利用合理的服务请求来占用过多的服务资源,从而使合法用户无法得到服务的响应。简单的 DoS 攻击一般是采用一对一方式,当攻击目标 CPU 速度低、内存小或者网络带宽小,它的效果是明显的。随着计算机与网络技术的发展,计算机的处理能力迅速增长,内存大大增加,同时也出现了千兆级别的网络,这使得 DoS 攻击的困难程度加大了。这时就出现了分布式拒绝服务攻击,又称为DDoS(Distributed Denial of Service)攻击。DDoS 攻击采取增加攻击的计算机,多台计算机同时攻击一台目标计算机,从而达到攻击的目的。
DDoS 攻击是基于 DoS 攻击的一种特殊形式。攻击者将多台受控制的计算机联合起来向目标计算机发起 DoS 攻击,它是一种大规模协作的攻击方式,主要瞄准比较大的商业站点,具有较大的破坏性。
DDoS 攻击由攻击者、主控端和代理端组成。攻击者是整个 DDoS 攻击发起的源头,它事先已经取得了多台主控端计算机的控制权,主控端计算机分别控制着多台代理端计算机。在主控端计算机上运行着特殊的控制进程,可以接收攻击者发来的控制指令,操作代理端计算机对目标计算机发起 DDoS 攻击。DDoS 攻击之前,首先扫描并入侵有安全漏洞的计算机并取得控制权,然后在每台被入侵的计算机中安装具有攻击功能的远程遥控程序,用于等待攻击者发出入侵命令。这工作是自动、高速完成的,完成后攻击者会消除它的入侵痕迹,系统的正常用户一般不会察觉。之后攻击者会继续利用已控制的计算机扫描和入侵更多的计算机。重复执行以上步骤,将会控制越来越多的计算机。这些被控制的计算机就叫做'肉鸡'。
死亡之 ping:ICMP(Internet Control Message Protocol,Internet 控制信息协议)在 Internet 上用于错误处理和传递控制信息。最普通的 ping 程序就是这个功能。在 TCP/IP 的 RFC 文档中,对包的最大尺寸都有严格限制规定,许多操作系统的 TCP/IP 协议栈都规定 ICMP 包大小为 64KB,且在对包的标题头进行读取之后,要根据该标题头里包含的信息来为有效载荷生成缓冲区。死亡之 ping 就是故意产生畸形的测试 ping 包,声称自己的尺寸超过 ICMP 限,也就是加载的尺寸超过 64KB 上限,使未采取保护措施的网络系统出现内存分配错误,导致 TCP/IP 协议栈崩溃,最终接收方宕机。
泪滴:泪滴攻击利用 TCP/IP 协议栈信任 IP 碎片中的包的标题头所包含的信息来实现自己的攻击。IP 分段含有指示该分段所包含的是原包的哪一段的信息,某些 TCP/IP 协议栈在收到含有重叠偏移的伪造分段时将崩溃。
UDP 泛洪:如今,Internet 上 UDP(用户数据报协议)的应用比较广泛,很多提供 WWW 和 FTP 服务的设备通常是使用 UNIX 的服务器,它们默认打开一些被黑客恶意利用的 UDP 服务。如 Echo 服务会显示接收到的每一个数据包,而原本作为测试功能的 Chargen 服务会在收到每一个数据包时随机反馈一些字符。UDP Flood 攻击就是利用这两个简单的 TCP/IP 服务的漏洞进行恶意攻击,通过伪造与某一主机的 Chargen 服务之间的一次 UDP 连接,回复地址指向开着 Echo 服务的一台主机,通过将 Chargen 和 Echo 服务互指,来回传送毫无用处且占满带宽的垃圾数据,在两台主机之间生成足够多的无用数据流。这一拒绝服务攻击可飞快地导致网络可用带宽耗尽。
SYN 泛洪:当用户进行一次标准的 TCP(Transmission Control Protocol,传输控制协议)连接时,会有一个 3 次握手过程。首先是请求服务方发送一个 SYN(Synchronize Sequence Number,同步序列号)消息,服务方收到 SYN 后,会向请求方回送一个 SYN-ACK 表示确认,当请求方收到 SYN-ACK 后,再次向服务方发送一个 ACK 消息,这样一次 TCP 连接建立成功。SYN Flood 则专门针对 TCP 协议栈在两台主机间初始化连接握手的过程进行 DoS 攻击,其在实现过程中只进行前 2 个步骤:当服务方收到请求方的 SYN-ACK 确认消息后,请求方由于采用源地址欺骗等手段使得服务方收不到 ACK 回应,于是服务方会在一定时间处于等待接收请求方 ACK 消息的状态。而对于某台服务器来说,可用的 TCP 连接是有限的,即只有有限的内存缓冲区用于创建连接,如果这一缓冲区充满了虚假连接的初始信息,该服务器就会对接下来的连接停止响应,直至缓冲区里的连接企图超时。如果恶意攻击方快速连续地发送此类连接请求,该服务器可用的 TCP 连接队列将很快被阻塞,系统可用资源急剧减少,网络可用带宽迅速缩小。长此下去,除了少数幸运用户的请求可以插在大量虚假请求间得到应答外,服务器将无法向用户提供正常的合法服务。
网络安全是一个持续演进的过程。随着云计算、物联网和人工智能技术的发展,网络攻击面也在不断扩大。未来的网络安全防御将更加依赖于自动化和智能化技术,如 AI 驱动的威胁检测和自动化响应系统。同时,零信任架构(Zero Trust)正在成为新的安全范式,强调'永不信任,始终验证'。
对于企业和开发者而言,建立纵深防御体系至关重要。这包括网络层的安全设备部署、主机层的加固、应用层的代码审计以及数据层的加密保护。此外,定期的安全培训和演练也是提升整体安全水位的关键环节。只有技术与管理并重,才能有效应对日益复杂的网络威胁环境。

微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online
将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online
将 HTML 片段转为 GitHub Flavored Markdown,支持标题、列表、链接、代码块与表格等;浏览器内处理,可链接预填。 在线工具,HTML转Markdown在线工具,online
通过删除不必要的空白来缩小和压缩JSON。 在线工具,JSON 压缩在线工具,online