引言
掌握信息安全的四个目标 >保密性:确保信息不被泄露或呈现给非授权的人 >完整性:确保数据的统一性;防止非授权的生成修改毁坏数据 >可用性:确保授权用户能够随时访问和使用信息 >合法使用:确保信息资源仅被授权用户以合法的方式使用
信息系统中常见的威胁有哪些? >(1)基本威胁 >完整性破坏 >拒绝服务 >信息泄漏 >非法使用 >(2)主要的可实现威胁 >渗入威胁:假冒 旁路控制 授权侵权 >植入类型威胁:特洛伊木马 陷门 >(3)潜在威胁 >窃听 流量分析操作人员不慎导致信息泄漏 媒体废弃物导致的泄漏
什么是安全策略?安全策略分几个等级 >安全策略,是指在某个安全域内,施加给所有与安全相关活动的一套规则。 >(1)安全策略目标:是一个机构对于所保护的资源要达到的安全目标而进行的描述。 >(2)机构安全策略:是一套法律、规则及实际操作方法,用于规范一个机构如何管理、保护和分配资源,以便达到安全策略所规定的安全目标。 >(3)系统安全策略:描述如何将一个特定的信息系统付诸工程实现,以支持此机构的安全策略要求
什么是访问控制策略?它有哪些类型?这些访问控制策略有何区别? >访问控制策略隶属于系统级安全策略,它迫使计算机系统和网络自动地执行授权 >基于身份的策略 基于任务的策略 多等级策略 >(1)基于角色的访问控制策略 >(2) 基于任务的策略。它是基于身份的策略的一种变形,它给每一个个体分配任务, 并基于这些任务来使用授权规则。 >(3) 基于对象的访问控制 >(4)强制访问控制(MAC,Mandatory Access Control):由操作系统内核强制实施授权规则(常见于军事和政府机构)。 >(5)自主访问策略(DAC, Discretionary Access Control):用户有权对自己创建的访问对象进行访问,并可将对这些对象的访问权授予其他用户。
什么是安全域?划分安全域原则是什么?如何划分安全域? >所谓安全域,通常是指属于某个组织机构的一系列处理进程和通信资源。这些规则由该安全域中所设立的安全权威机构制定,并由安全控制机构来描述、实施或实现 >等级保护原则 生命周期原则 结构简化原则 业务保障原则 最小权限原则 隔离和独立原则
什么是授权?用户授权有何作用?常用于哪些应用场景? >授权,是指主体(用户、 终端、程序等)对客体(数据、程序等)的支配权利,它等于规定了谁可以对什么做些 什么
安全攻击的分几大类?常见的攻击形式有哪些? >被动攻击:窃听攻击 流量分析 >主动攻击:伪装攻击 重放攻击 消息篡改 拒绝服务 >口令窃取 欺骗攻击 缺陷和后门攻击 认证失效 协议缺陷 信息泄漏 指数攻击—-病毒和蠕虫 拒绝服务攻击
熟记X.800标准中的5类安全服务和8种特定安全机制,并简述安全服务与安全机制之间的关系。
能够理解并画出网络安全模型和网络访问模型
计算机网络基础
熟记OSI的七层参考模型、TCP/IP的四层模型 >OSI 物理层 数据链路层 网络层 传输层 会话层 表示层 应用层 >TCP/IP的四层模型 网络接口层 网际层 运输层 应用层
什么是面向链接的服务?什么是无链接的服务? >面向连接的服务是指在数据传输之前,通信双方需要先建立一个稳定的连接,然后才能开始传输数据。 >无连接的服务是指通信双方不需要建立持久的连接,每个数据包独立传输,彼此之间没有依赖关系
. 必须知道IPv4及IPv6地址的格式及长度
必须知道MAC地址的长度 >48位 6个字节
IP地址与MAC地址转换靠哪个网络协议? >ARP协议
IPv4的地址分哪几类?给定一个IP地址,要能够分析判断出该地址属于哪一类地址
什么是“端口号”?“端口号”在网络通信中起什么作用? >端口号(Port Number) 是一种用于标识计算机上特定进程或服务的虚拟地址。在网络通信中,端口号用于区分同一台计算机上的不同网络服务或应用程序。它是一个16位的无符号整数,范围从0到65535。
Internet协议的安全性
- 熟记http/ftp/telnet/pop3/smtp/imap/ssh/dns等常用通信协议的功能
- http
- 用于客户端与服务器之间传输超文本(如网页)的协议
- FTP
- 主要用于在客户端和服务器之间进行文件的上传和下载
- Telnet
- 允许用户通过网络连接到远程主机,并在本地终端上操作远程主机的系统
- POP3
- 是电子邮件接收协议,客户端(如Outlook、Foxmail等邮件客户端软件)通过POP3协议从邮件服务器上接收电子邮件
- SMTP
- 用于发送电子邮件的协议。当用户通过邮件客户端发送邮件时,邮件客户端会使用SMTP协议将邮件发送到邮件服务器,然后邮件服务器再根据收件人的地址将邮件转发到相应的收件人邮件服务器
- IMAP
- 也是一种电子邮件接收协议,与POP3相比,它提供了更强大的邮件管理和同步功能。用户可以通过IMAP协议在多个设备上访问和管理同一邮箱中的邮件,邮件存储在服务器上,用户在客户端上对邮件的操作(如阅读、删除、标记等)会实时同步到服务器
- SSH
- 用于安全地访问远程计算机和服务器
- DNS
- 主要负责将域名转换为对应的IP地址
- 熟记一些常用网络协议的端口号
协议名称 | 协议类型 | 默认端口号 | 功能描述 |
---|---|---|---|
HTTP | TCP | 80 | 超文本传输协议,用于客户端与服务器之间传输网页资源 |
HTTPS | TCP | 443 | HTTP的安全版本,通过SSL/TLS加密保护数据传输 |
FTP | TCP | 20/21 | 文件传输协议,20端口用于数据传输,21端口用于控制命令 |
SMTP | TCP | 25 | 简单邮件传输协议,用于发送电子邮件 |
POP3 | TCP | 110 | 邮局协议版本3,用于接收电子邮件 |
IMAP | TCP | 143 | 互联网消息访问协议,用于访问和管理电子邮件 |
SSH | TCP | 22 | 安全外壳协议,用于安全的远程登录和管理服务器 |
Telnet | TCP | 23 | 远程终端协议,用于远程登录(安全性较低) |
DNS | TCP/UDP | 53 | 域名系统,用于域名解析服务 |
DHCP | UDP | 67/68 | 动态主机配置协议,67端口为服务器端口,68端口为客户端口,用于IP地址分配等网络配置 |
TFTP | UDP | 69 | 简单文件传输协议,用于简单的文件传输操作 |
NTP | UDP | 123 | 网络时间协议,用于网络设备之间的时间同步 |
SNMP | UDP | 161 | 简单网络管理协议,用于网络设备的管理和监控 |
- 网际层协议有哪些?传输层协议有哪些?应用层协议有哪些?
层 | 协议 |
---|---|
网际层 | IP ICMP ARP |
传输层 | TCP UDP |
应用层 | HTTP HTTPS FTP SMTP POP3 IMAP SSH Telnet DNS DHCP TFTP NTP SNMP |
为什么要进行网络地址转换(NAT)
- IPv4地址资源有限,通过NAT可以将私有IP地址(如192.168.x.x)转换为公网IP地址,使得多个设备可以共享一个公网IP地址访问互联网。
- NAT提供了一定程度的隐私保护,隐藏了内部网络的结构,使得外部网络难以直接访问内部网络的设备。
ARP协议的作用是什么? ARP(地址解析协议)的作用是将IP地址解析为物理MAC地址
为什么UDP比TCP协议更加容易遭到攻击?
- 无连接:UDP是无连接的协议,不需要建立可靠连接,攻击者可以更容易地伪造源IP地址,发送大量UDP数据包,导致目标系统过载。
- 无确认机制:UDP不提供数据包的确认和重传机制,攻击者可以发送大量无效数据包,而目标系统无法通过确认机制来过滤这些数据包。
- 轻量级:UDP协议相对简单,处理速度快,攻击者可以更容易地利用其轻量级特性发起分布式拒绝服务攻击(DDoS)。
IMAP协议与POP3协议相比,它的安全性有哪些提升?
- 数据同步:IMAP支持多设备同步,用户可以在多个设备上访问和管理同一邮箱,而POP3通常将邮件下载到本地后从服务器删除,不利于多设备同步。
- 数据保留:IMAP允许邮件保留在服务器上,用户可以在不同设备上查看和管理邮件,而POP3通常将邮件从服务器删除,一旦本地设备丢失数据,邮件可能无法恢复。
- 加密支持:IMAP支持更广泛的加密机制(如SSL/TLS),确保数据传输的安全性,而POP3的加密支持相对有限。
SSH协议与Telnet协议相比,它的安全性有哪些提升?
- 加密传输:SSH协议对所有传输的数据进行加密,包括用户名、密码等敏感信息,防止数据被窃取,而Telnet以明文形式传输数据,容易被中间人攻击。
- 身份验证:SSH支持多种身份验证方式,包括公钥认证、密码认证等,提供更灵活和安全的认证机制,而Telnet仅支持简单的密码认证。
- 完整性保护:SSH协议提供数据完整性保护,防止数据在传输过程中被篡改,而Telnet不提供这种保护。
什么是ICMP重定向攻击?如何防止此类攻击? ICMP(互联网控制消息协议)重定向消息是一种网络管理功能,用于优化网络路径。攻击者可以伪造ICMP重定向消息,误导目标主机改变其路由选择,将流量重定向到攻击者控制的设备,从而实现中间人攻击或流量劫持。
- 禁用ICMP重定向:在主机和路由器上禁用ICMP重定向功能,防止主机响应伪造的ICMP重定向消息。
- 过滤ICMP消息:在防火墙或路由器上配置规则,过滤掉来自不可信源的ICMP重定向消息。
- 使用加密通信:通过SSL/TLS等加密协议保护数据传输,即使攻击者能够重定向流量,也无法解密数据。
在网络中,为什么不能仅仅靠识别数据包的IP地址,来判断一个数据包就是来自该IP地址的主机?
- IP地址伪造:攻击者可以伪造数据包的源IP地址,使得数据包看起来像是来自某个特定的IP地址,但实际上并非如此。
- 中间人攻击:攻击者可以在数据包传输路径上截获并修改数据包的源IP地址,从而伪装成合法的发送者。
- NAT和代理:网络地址转换(NAT)和代理服务器可以改变数据包的源IP地址,使得数据包的原始发送者难以识别。
单钥密码体制
graph TB A[保密学] --> B[密码编码学] A --> C[密码分析学]
密码体制的语法语义 >明文消息空间 >密文消息空间 >密钥空间 >加密算法 >解密算法 >密钥生成算法
graph TB A[密码体制] --> B[单钥体制] A --> C[双钥体制] B --> D[分组密码] B --> E[流密码]
按照对明文消息的处理方式不同,单钥体制可分为哪两类?
- 流密码:逐比特加密
- 分组密码:数据分组处理
古典密码中的两个常用的变换是什么? 代换和置换。
什么是理论上安全?什么是计算上安全?理论上安全的密码算法有几个?理论上安全的密码是什么密码? 理论上安全:理论上安全意味着即使攻击者拥有无限的计算资源,他们也无法破解加密,因为密文不包含足够的信息来确定唯一的明文。换句话说,没有任何计算上的方法可以用来破解密码,这种安全是绝对的。
计算上安全:计算上安全是指破解加密所需的计算资源如此巨大,以至于在实际时间内完成解密是不切实际的。换句话说,攻击者可能在理论上能够破解加密,但由于需要非常长的时间,实际上是不可行的。
理论上安全的密码有1个,一次一密密码。
什么是同步流密码、自同步流密码?流密码的安全性取决于什么?
- 同步流密码:密钥流生成器内部状态与明文消息无关,即密钥流独立于明文
- 自同步流密码:密钥流生成器内部状态与明文消息有关。
- 流密码的安全性完全依赖于密钥流产生器所生成序列的随机性和不可预测性
DES 分组长度、密钥长度、轮数是多少?1轮加密包括哪些变换? DES 中的非线性变换是什么变换?
- Feistel结构
- 分组长度为64比特、密钥长度为56比特、轮数为16轮
- S盒变换
AES 分组长度、密钥长度、轮数是多少?1轮加密包括哪些变换? AES 中包含的非线性变换是什么变换?
- 分组长度为128比特,密钥长度包括128比特、192比特、256比特三种,对应的轮数分别为10轮、12轮、14轮
- 1轮加密包括字节代换、行移位、列混淆、轮密钥加
- 非线性变换是字节代换。
加密轮数是否越多越好?密钥是否越长越好?将2个算法串联对数据加密,是否一定更安全?
- 增加轮数可以增加加密的复杂性和破解难度,但加密轮数并不是越多越好。过多的轮数会显著增加计算开销(处理时间和资源),且当超过某个阈值,增加轮数的边际安全效益递减,对实际应用不太现实。设定合理的轮数是平衡安全性和性能的关键。
分组密码的5种工作模式是什么?能画出5种工作模式的原理框图。 电码本模式(ECB)、密码分组链接模式(CBC)、密码反馈模式(CFB)、输出反馈模式(OFB)和计数器模式(CTR)
- CBC 解密可以并行但加密无法并行
- CFB 可以处理任意长度的数据,不必是块大小的倍数。 流式加密
- OFB 同上
- CTR 可并行计算
分析5种加密模式中,哪些加密模式没有误码扩展?哪些有误码扩展?如果有误码扩展, 会影响多少个分组?
- 无误码扩展的模式:
- OFB(输出反馈模式)在OFB模式中,一个错误仅影响对应的输出位,不会传播到其他部分。
- CTR(计数器模式)CTR模式下,错误也仅限于影响相应的输出位,不会扩展到其他数据块。
- 解密时有误码扩展的模式:
- ECB(电子密码本模式)1bit –> 1组
- CBC(密码块链接模式)在CBC模式中,一个错误影响两个连续的明文块:错误的密文块会产生错误的明文块,而这个错误的密文块也会影响下一个明文块的解密。
- CFB(密码反馈模式)在CFB模式下,一个密文中的错误会影响n/s+1但是,错误不会再传播到更远的段。
- 无误码扩展的模式:
了解中国商用分组密码算法SM4,知道它的分组长度、密钥长度和加密轮数。 分组长度为128比特,密钥长度为128比特,32轮迭代。
双钥密码体制
- 双钥密码体制是基于数学难题构造的,请列举出目前存在的数学难题。用双钥体制加密时采用谁的公钥?解密时采用谁的私钥?
- 离散对数问题
- 定义:给定一个素数( p ),一个生成元( g )和一个幂( h ),求( x )满足( g^x h p )
- 难点:求解离散对数问题在有限域上被认为是困难的,尤其是当参数( p )足够大时
- 应用:ElGamal加密,DH密钥交换,DSA数字签名
- 多项式求根问题
- 定义:给定一个多项式( P(x) ),求其根,即找到所有( x )满足( P(x) = 0 )
- 难点:一般情况下,求解高次多项式的根是复杂的,尤其是当多项式的次数较高且系数较大时。
- 应用:在某些基于格的密码体制中会涉及到多项式求根问题。
- 大整数分解问题
- 定义:给定一个大整数( n ),求其质因数分解,即找到( n = p_1^{e_1} p_2^{e_2} p_k^{e_k} )
- 难点:对于任意大整数,找到其所有质因数是计算复杂的,特别是当( n )是由两个大素数乘积构成时。
- 应用:RSA加密和数字签名
- 背包问题
- 定义:给定一组物品,每个物品有一定的重量和价值,在总重量不超过一定限制的条件下,选择一组物品使得其总价值最大化。
- 难点:背包问题是一个NP完全问题,通常需要使用启发式算法或近似算法来求解。
- 应用:Merkle-Hellman背包密码系统
- DH问题
- 定义:给定( g^a p ),( g^b p ),求解( g^{ab} p ),其中( p )是一个大素数
- 难点:
- 应用:DH密钥交换协议
- 模n的平方根问题
- 定义:给定一个整数( a )和一个模数( n ),判断是否存在一个整数( x )使得( x^2 a n )
- 难点:
- 应用:Rabin加密算法
- 模n的平方根问题
- 给定一个整数a和一个模数n,找到是否存在一个整数x使得x^2 a n
- 应用:Rabin加密算法