网络安全问答题总结
网络安全问答题总结
网络安全如何建立
从主机安全技术,身份认证技术,访问控制技术,密码技术,防火墙技术,安全审计技术,安全管理技术入手
威胁的根源怎么产生
内因:信息系统的复杂性
- 过程/结构/应用 复杂
外因:人为和环境
- 威胁与破坏
安全体系结构
风险分析 -> 安全策略设计(基础) -> 安全服务与安全机制设计 -> 安全服务与安全机制关系 -> 安全服务部署
安全服务
认证 / 访问控制 / 机密性 / 完整性 / 非否认(不可抵赖性)
安全机制
加密机制 / 数字签名机制 / 访问控制机制 / 数据完整机制 / 认证交换机制 / 业务填充机制 / 路由控制 / 公证机制
安全模型
PDR模型:Protection(防护)Detection(监测)Response(响应)
\(P^2DR\) 模型:Policy(策略)Protection(防护)Detection(监测)Response(响应)
网络威胁有哪些
非授权威胁;信息泄漏:破坏数据完整性;拒绝服务攻击;恶意代码
主动攻击 & 被动攻击的特点并列举现象
主动攻击:攻击者通过网络线路将虚假信息或计算机病毒传入信息系统内部,破坏信息的完整性以及系统服务的可用性,即通过假冒、重放、篡改和拒绝服务造成信息破坏,使系统无法正常运行
被动攻击:攻击者非法截获、窃取通信线路中的信息,使信息保密性受到破坏信息泄漏而无法察觉,给用户带来巨大的损失
黑客攻击思路
预攻击阶段:信息收集(whois,ping,traceroute,http,netcraft),端口扫描(nmap,superscan,sl),漏洞扫描(Nessus,X-Scan)
攻击阶段:缓冲区溢出攻击,口令猜测,SQL注入
后攻击阶段:特洛伊木马,嗅探,密码破解
拒绝服务攻击
原理:攻击者用某种手段,使目的主机或网络停止向合法用户提供正常的访问或服务(攻击可用性)
目的:破坏正常运行;使服务器瘫痪,以便冒充黑客;强制服务器重启,以便启动木马程序
基本模式:资源消耗型(消耗网络带宽,磁盘空间,CPU,内存资源);配置修改型;基于系统缺陷型;物理实体破坏
典型DoS攻击:
- land:使目标主机开启一个源地址和目标地址都是自身的空连接,持续的自我应答,消耗系统资源直至崩溃
- ping of death:改变分片偏移量,使报文长度超过最大值,导致内存分配错误,死机
- teardrop:向攻击目标发送多个分片重叠的IP包
- SYN Flood:伪造大量IP欺骗,发送第一次握手请求,受害者响应后不回应,让受害者一直处于创建连接的半连接状态
- Smurf:找出网络中会回应ICMP Echo request路由器;以受害者IP向路由器发送ping包;路由器广播该ping包到相应子网;收到广播的设备同时向受害者应答;受害者主机会被这些大量的应答包淹没
防御策略:路由器防火墙配置得当;入侵检测系统,检测异常行为;升级系统,打上必要的补丁;关掉不必要的服务和网络组件
DDoS攻击
原理:入侵并控制若干存在安全漏洞的计算机联合起来作为攻击平台;主控程序可在几秒内激活成百上千代理程序的运行,成倍地提高拒绝服务的攻击威力
攻击过程:发展团队,攻占代理主机;协同向目标发起攻击
防御策略:本地防御,云清洗服务;源头治理(网络出口禁止IP欺骗)
缓冲区溢出攻击
缓冲区:存放用户输入数据、临时数据的内存空间
缓冲区溢出漏洞:程序不对输入缓冲区的数据长度做限制;超出的数据将覆盖程序为其他数据分配的内存空间
原理:利用目标程序缓冲区漏洞,向缓冲区写入超其长度的内容,造成缓冲区溢出,覆盖并修改函数返回地址指向ShellCode
攻击步骤:首先准备攻击代码;其次修改程序控制流程,重定向到攻击代码;最后一步完成代码植入和流程控制
防御技术:
- 使用类型安全的编程语言(Java、Python),使用相对安全的库函数(strncpy(),strncat(),sprintf())
- 修改编译器:增强边界检查能力的C/C++编译器;返回地址的完整性保护
- 内核补丁:将堆栈及数据段标志为不可执行
- 静态分析方法:遍历源程序,查找不安全的库函数和系统调用
- 动态分析方法:向程序提供不同输入,检查是否溢出或内存越界
- 基于硬件的防御技术
ARP欺骗
原理:ARP协议是实现IP到MAC的查询,ARP缓存是实现IP到MAC的绑定。如果缓存中查不到某一IP对应的MAC地址,则会进行广播询问IP对应的MAC地址,发送方和接收方均会更新自己的ARP缓存。存在问题:接受方会更新发送方所有的ARP Request到自己的缓存中,如果该Request是错误的,即会污染缓存表;同时主动的ARP Reply也会被视为有效消息被接受。攻击者伪造ARP Reply报文伪造成其他主机,如果有发送到受害者主机的消息将会全部发送给攻击者
防范方法:利用ARP工具,将主机中ARP缓存表中网关记录类型设置为静态
对称密码体制的原理和特点
原理:发送者和接受者拥有相同的密钥K,发送者发送信息时用密钥K加密,接收者收到密文后用密钥K解密
特点:加密算法和解密算法互为逆运算;加密密钥和解密密钥相同;保密性强但公开性差;需要有可靠的密钥通道传输密钥
对称密码存在问题
适用于封闭系统,用户间彼此信任,故需要防范系统外攻击
密钥使用一段时间后需更换,传输密钥需要可靠通道
对称密钥量多,管理困难
无法满足不相识的人之间的加密通信
密钥不带有个人特征,不能进行数字签名
公开密码体制的原理和特点
原理:每个人都有两个密钥:公钥和私钥,私钥自己保存,公钥公开于众。可用公钥加密,私钥解密;也可用私钥加密,公钥解密。发送方用对方公钥加密明文,接收方用自己私钥解密密文
特点:具有两个密钥的加密解密算法,一个密钥保密,一个密钥公开。根据应用的需求,发送方可以用接收方公钥加密消息,也可用自己的私钥签名信息
DES
使用乘积密码,采用n个函数复合,交替使用代换和置换
首先生成16轮子密钥:对64位初始密钥压缩置换成56位,分两组,每组循环左移,进行第二次压缩置换成48位的第一轮子密钥。在上一轮循环左移的基础上再次循环左移,然后压缩置换,得到第二轮子密钥。重复16次,生成16轮子密钥
通过16轮的迭代加密:对明文进行IP置换,分成两组,然后与f函数进行16轮操作,最后进行IP逆置换
f函数:首先对一个分组进行扩展置换,然后与子密钥异或,然后进行s置换最后进行p置换
算法主要步骤
- 对64位明文进行初始置换
- 分两组,每组32位
- 进行16轮迭代,算法:\(L_i=R_{i-1},R_i=L_{i-1}\oplus f(R_{i-1},K_{i})\)
- 逆初始置换
- 输出
子密钥生成步骤
- 将64位密钥压缩置换,去除8位奇偶校验位,变为56位
- 分两组,每组28位
- 循环左移
- 合并左右两部分,压缩置换,变为48位,得到子密钥\(K_i\)
加密函数f的生成过程
- 将上一轮的右32位扩展置换位48位
- 与子密钥异或
- 进行S盒置换:分8组,每组6位,输入8个S盒中,每个S盒产生4位输出,共输出32位
- 进行P盒置换得到结果
对称密码体制 & 非对称密码体制
对称密码体制适用于大量数据加密
优点:计算开销小,算法简单,密钥较短,加密速度快
缺点:规模复杂,通信前需安全密钥交换,无法鉴别,无法签名
非对称密码体制适用于少量数据加密
优点:密钥数量少,密钥发布不成问题,可用于数字签名
缺点:密钥尺寸大,加解密速度慢
RSA
RSA算法的安全是基于 分解两个大素数的积 的困难
序列密码 & 分组密码
序列密码:对明文中以位为单位进行加解密的密码
分组密码:把明文分割成块,逐块加密和解密。块的长度由算法设计者预先确定
MD5
MD是消息摘要算法,是当前最普遍的Hash算法,MD5是第5个版本。该算法以一个任意长度的消息作为输入,生成128位消息摘要作为输出,输入消息按照512位长度分组处理
数字签名
原理:发送方首选计算出报文的hash值,然后用自己的私钥对hash值加密,加密后的hash值连同报文一起发送给接收方;接收方接收到报文后,首先计算其hash值,同时使用发送方的公钥对加密的hash值解密,对比两个hash值是否相同
作用:验证发送者身份;验证消息未被修改
PKI
PKI利用公钥概念和加密技术为网络通信提供一套安全基础平台
PKI可以为各种不同需求的用户提供不同的网络安全服务所需的密钥和证书,包括:身份认证,数据保密性,数据完整性,不可否认,时间戳服务,从而达到保证网上传递信息的安全、真实、完整和不可抵赖的目的
无访问控制
消息认证
验证消息真实性和完整性的过程和技术
散列函数 Hash
特点:任意输入,固定输出;单向函数:正向计算简单,反向困难;改变消息的任意一位或多位,散列值将改变
身份认证
证实主体的真实身份与其所声称的身份是否相符的过程
分类:单向 / 双向认证
消息认证 & 身份认证 区别
消息认证是验证消息真实性和完整性的过程和技术
身份认证是证实主体的真实身份与其所声称的身份是否相符的过程
区别:
- 身份认证实时,消息认证不提供实时
- 身份认证只证实实体的身份,消息认证要证实消息的合法性和完整性
- 数字签名是实现身份认证的有效途径
- 消息认证函数(消息加密函数,消息认证码,散列函数)是实现消息认证的方法
对抗重放攻击
口令序列
挑战/回答
时间戳
Needham-Schroeder 协议
角色:Trent,Alice,Bob
\(K_a\):Trent 和 Alice 的共享密钥
\(K_b\):Trent 和 Bob 的共享密钥
\(R_a\):Alice 的随机数
\(R_b\):Bob 的随机数
\(K\):Alice 和 Bob 的密钥
原理:
- A -> Trent:\(A,B,R_a\)
- Trent -> A:\(E_a[R_a,B,K,E_b[K,A]]\)
- A -> B:\(E_b[K,A]\)
- B -> A:\(E_K[R_b]\)
- A -> B:\(E_K[R_b-1]\)
- A -> B:\(E_K[M=\{xxxxxx\}]\)
问题:
- 破译以前的密钥 K,重放第三个报文
- 假冒 Alice 用旧的 K 和 Bob 通信
- Bob 不记录使用过的密钥,不抗重放
改进:添加时间戳
- Trent -> A:\(E_a[R_a,B,K,E_b[K,A,T]]\)
- A -> B:\(E_b[K,A,T]\)
访问控制
实现机制和方法
- 访问控制表:每个客体附加一个可以访问它的主体的明细表
- 访问能力表:每个主体附加一个可以访问的客体的明细表
- 访问控制矩阵
- 授权关系表
- 访问控制安全标签
策略:自主访问控制 / 强制访问控制 / 基于角色访问控制
防火墙
类型:包过滤防火墙;应用代理防火墙;电路级网关;状态检测包过滤防火墙
作用:创建一个阻塞点;实现安全策略(用户/行为/方向/服务控制);记录网络活动;限制网络暴露;安全功能实现平台
包过滤
在网络层中根据事先设置的安全访问策略(过滤规则),检查每一个数据包的源IP地址,目的IP地址,IP分组头部的其他标志信息(协议,服务类型等),确定是否允许该数据包通过防火墙
规则:
- 按规则存储顺序检查每一个数据包
- 若一条规则拒绝传输或接收,则丢弃
- 若一条规则允许传输或接收,则接收
- 若规则未命中任何数据包,则继续处理下一条数据包
- 若包不满足任一条规则,则继续处理下一条数据包
入侵检测
步骤:信息收集 -> 信息分析 -> 结果处理
-
信息收集:系统或网络的日志文件;网络流量;系统目录和文件的异常变化;程序执行中的异常行为
-
信息分析方法:异常检测(统计分析);误用检测(模式匹配);完整性分析
-
结果处理:被动响应(记录等);温和主动响应(断开连接,隔离IP);严厉主动响应(警告/攻击/跟踪 攻击者)
异常入侵检测:首先统计系统对象正常行为,描述出系统对象正常轮廓;对当前网络或系统对象的行为与正常轮廓进行比较,当行为与正常轮廓有较大偏差的时候,就视为入侵
误用入侵检测:收集非正常行为,建立数据库;当监测用户行为和系统行为与特征库中的形象一致时,即视为入侵
区别:异常入侵建立正常行为数据库,误用入侵建立非正常行为数据库
云计算
问题
-
云计算平台导致的安全问题:云计算平台聚集了大量用户和数据资源,更容易吸引黑客攻击,而故障一旦发生,其影响范围多,后果更加严重。此外,其开放性对接口的安全也提出了更高的要求
-
虚拟化环境下的技术及管理问题:传统的基于物理安金边的防护机制难以有效保护基于共享虚拟化环境下的用户应用及信息安全。另外,云计算的系统如此之大,而且主要是通过虚拟机计算,一旦出现故障,如何快速定位问题所在也是一个重大挑战
-
如何界定用户与服务商责任的问题:云计算这种全新的服务模式将资源的所有权、管理权及使权进行了分离,因此用户失去了对物理资源的直接控制,会面临与服务商协作的一些安全问题
措施
- 对不同用户数据进行虚拟化的逻辑隔离,使用身份认证及访问控制,从而保障静态数据和动态数据的保密性,完整性,真实性
人工智能
问题
人工智能的广泛应用,将导致摄像头、拾音器、定位设备、感温器、人体体征检测设备、感光器等无数个各式各样的传感器遍布于人们的工作和生活的各个角落
连接密集,节点增多,导致非法入侵的触点也大大增加,“后门”无处不在,信息安全风险因之增大黑客不只是可以通过侵入网络系统中的计算机来获取数据,还可以将智能电表、智能手环、家庭婴儿监控镜头、智能冰箱等作为进攻目标众多的节点同时还使得信息安全遭到破坏的隐蔽性进一步增强,破坏者利用某个环节非法获取信息或破坏信息后,系统的运作丝毫不受影响,而破坏者已经从其破坏行为中大受其益
数据密集导致信息量增大,随之而来的是,一旦发生信息安全问题,产生的后果也更为严重

浙公网安备 33010602011771号