【整理】信息安全系统与技术课程复习整理

难得自己整理……

信息系统安全与技术

选择 15
填空 15
名词解释 4*6
简答 6*6
方案设计 10

  • 根据信息流动过程划分的安全威胁:中断威胁、截获威胁、篡改威胁、伪造威胁。
  • CIA安全需求模型:保密性(Confidentiality)、完整性(Integrity)、可用性(Availability)。
  • 信息保障体系的各项安全服务是通过动态体系技术来实现的,PDRR模型: 保护(Protection)、检测(Detection)、响应(Reaction)、恢复(Restore)。
  • 信息安全防护的原则:整体性原则(整体上构思、互相关联、互相补充)、分层性原则(不能依赖单一的保护机制,需要经过良好分层的安全措施)。
  • 环境事故造成的设备故障或损毁:地震等自然灾害、温度、湿度、灰尘、电磁干扰。
  • 旁路攻击:信息会通过“旁路”(Side Channel),如声、光、电磁信号等,也就是能规避加密等常规保护手段的安全漏洞泄露出去。如:分析敲击键盘的声音、针式打印机的噪声、硬盘旋转、LED等或显示器、CPU和总线等部件向外辐射的电磁波等来获取一定的信息。
  • TEMPEST(Transient Electromagnetic Pulse Emanation Surveillance Technology):瞬时电磁脉冲发射检测技术,指对电磁泄漏信号中所携带的敏感信息进行分析、测试、接受、还原以及防护的一系列技术。
  • 可信计算技术的核心是被称为TPM(Trusted Platform Module,可信平台模块)的安全芯片:TPM是一种小型片上系统芯片,实际上是一个拥有丰富计算资源和密码资源,在嵌入式操作系统管理下的,构成的以安全功能为主要特色的小型计算机系统,具有密钥管理、加密解密、数字签名、数据安全存储等功能。
  • 密码编码学(Cryptography):研究把明文信息变换成不能破解或很难破解的的密文的技术;
  • 密码分析学(Cryptanalysis):分析破译密码,将密码变成明文或相关内容。
  • 破解密码的常用方法穷举攻击(蛮力攻击,指密码分析者尝试所有密钥的方法来破译密码)、统计分析攻击(如:凯撒密码,分析英文字母出现的频率来推测密码)、数学分析攻击(针对加密密码的数学依据,通过数学求解来破译)、社会工程攻击(通过威胁、勒索、行贿或者行驶武力直接获得密码)。
  • 密码体制对称密码体制,也称为单钥或私钥密码体制,加密密钥和解密密钥本质上相同,由其中一个很容易推导出另外一个。非对称密码体制,加密密钥和解密密钥不同,两者不存在推导关系。
  • 对称密码体制的缺陷和公钥密码体制的产生:对称密码体制具有一些天然缺陷,其中包括①密码管理的困难性,密钥为发送方和接收方共享,分别用于加密和解密,因此需要特别的保护和安全传递,并且每两个用户之间就需要一个密钥,不同用户间需要使用不同的密钥。②陌生人之间的保密通信,无法保证双方互相信任,也就不能支持陌生人之间的保密通信。③无法达到不可否认服务,由于发送方和接收方使用同一密钥,所以无法辨认是发送方抵赖还是接收方捏造数据。因此,公钥密码系统将加密密钥和解密密钥分开,使所有人可以加密但只有接收方可以解密,或只有发送方可以加密但所有人都可以解密。
  • 公钥密码算法:
    • RSA算法:是一个可以同时加密和解密的算法,基于大整数因子分解的困难性。例如: ①生成两个素数,p=17、q=11。 ②计算n=pq=17×11=187 ③计算k(n)=(p-1)(q-1)=160(欧拉函数) ④选取e,使e和k(n)互质且e < k(n) ,取e=7 ⑤计算d,使de = 1 mod 160 = 1,且d<160,则d=23,因为23×7=161。因此,公钥为{7,187},私钥为{23,187}。
    • 椭圆曲线密码:依据是椭圆曲线点群上离散对数问题的难解性
  • 散列函数
    • 概念h=H(M)h=H(M),是一种明文到密文的不可逆映射,只有加密没有解密,没有密钥。
    • 特性
      • 可以处理任意大小的信息:对同一个源数据执行散列总是能得到相同结果。
      • 不可预见的:产生数据块的大小和原始信息的大小没有任何联系。
      • 完全不可逆的:无法通过散列值推导出源数据。
      • 抗碰撞的:寻找两个输入得到相同的输出值在计算上是不可行的。
    • 常用散列函数:MD5(Message-Digest Algorithm 5,消息摘要算法第5版)、SHA(Secure Hash Algorithm,安全散列算法)。
  • 数字签名
    • 概念数字签名是一种以电子形式存在于数据信息之中,或作为附件,或逻辑上与之有关联的数据,可用于辨别签署人的真实身份,并标明签署人对数据信息内容认可的技术。
    • 特性
      • 不可否认。签署人不能否认自己的签名。
      • 不可伪造。任何人不能伪造数字签名。
      • 可认证。签名接收者可以验证签名的真伪,也可以通过第三方仲裁解决争议。
  • 信息隐藏方法:分为空间域(如:LSB算法,把信息嵌入到图像最不重要的像素位上,如最低几位)和变换域两大类方法。
  • 容灾备份的种类:分为数据容灾(建立一个异地的数据系统,对本地系统关键数据实时复制)和应用容灾(在异地建立一套完整的备份应用系统)。
  • 访问控制的三要素主体(Subject)、客体(Object)、安全访问规则
  • 身份认证技术的常用凭证信息用户所知道的(What you know,如输入用户的口令、密钥或记忆的某些动作)、用户所拥有的(What you have,如USB Key、智能卡等物理识别设备)、用户本身的特征(What you are,如用户的指纹、声音、视网膜等生理特征
  • OTP(One-Time Password,一次性口令)应用示例-使用“验证码”实现一次性口令认证:目前,得到广泛应用的验证码更多是CAPTCHA(全自动区分计算机和人类的图灵测试),这类验证码可以防止口令猜测攻击,也可以防止攻击者对某一用户用特定程序进行不断登录尝试,例如防止刷票、恶意注册、论坛灌水等。实际应用中还有更加复杂的图形验证码、视频验证码、声音验证码等形式。
  • 公钥基础设施(Public Key Infrastructure,PKI)的本质是实现大规模网络中的公钥分发问题,建立大规模网络中的信任基础。它实际中是一套软硬件系统和安全策略的集合,提供一套安全机制,使用户以数字证书为基础,通过一系列信任关系进行网络通信和网络交易。
  • 自主访问控制模型(Discretionary Access Control,DAC):由客体的属主对自己的客体进行管理,由属主自己决定是否将客体的访问权授予其他主体,这种控制方式是自主的,在DAC下,一个用户可以自主选择哪些用户可以共享他们的文件。ACL(Access Control List,访问控制表)是实现DAC策略的最好办法。
  • 基于角色的访问控制模型(Role-Based Access Control,RBAC):在RBAC模型中,系统定义各种角色,每种角色可以完成一定的职能,不同的用户根据其职能被赋予相应的角色,即成为某角色的成员。RBAC的优点是便于授权管理、可根据工作需要分级等,可以灵活地表达和实现组织的安全策略。
  • PMI(Privilege Management Infrasturcture,权限管理基础设施),PMI指能够支持全面授权服务、进行权限管理的基础设施,它建立在PKI提供的可信身份认证服务的基础上,以属性证书(Attribute Certificates,AC)的形式进行授权管理。PKI主要证明用户是谁,而PMI证明这个用户有什么权限、有什么属性,并将用户的属性信息保存在属性证书中,相比之下更加适合用于RBAC。
  • 案例拓展:基于口令的身份认证过程和安全性增强
    • 简单的认证机制的安全问题:用户信息安全意识口令质量不高、攻击者运用社会工程学冒充用户骗取口令、输入密码时被键盘记录器盗用、口令在传输过程中被截获探嗅、数据库存放明文口令。
    • 对简单认证机制的改进措施提高口令质量(增大口令空间、选用无规律的口令、多个口令、在用户使用口令登录的时候采取更严格的控制措施)、保护输入口令(如各大银行网站提示用户安装安全控件)、加密存储口令(对数据库采取访问控制)、口令传输安全口令安全管理(系统管理员初始化系统口令、为用户分配初始口令、用户自己进行记忆口令和周期性改变口令、系统对口令的使用和更改进行审计)
  • 操作系统面临的安全问题网络攻击破坏系统的可用性和安全性、隐蔽信道(Covert Channel,也被称作隐通道)破坏系统的保密性和安全性、用户的误操作破坏系统的可用性和完整性。
  • TCSEC(Trusted Computer System Evaluation Criteria,可信计算机系统评估标准)是任何一个安全操作系统的核心要求。TCSEC把计算机系统的安全分为A、B、C、D四大等级,7个安全级别,由弱到强的排列顺序是D、C1、C2、B1、B2、B3、A1。
  • 数据库的安全需求包括:保密性、完整性、可用性、可控性、可存活性、隐私性。
  • 数据库的安全存取控制分为两层,系统级数据级
  • 数据库的完整性包括数据库物理完整性数据逻辑完整性数据库元素取值的准确性和正确性
  • DBMS产品完整性控制机制中的一些具体的方法包括设置触发器(trigger)、两阶段提交(提交和修改阶段、回滚)、纠错和恢复(冗余纠错技术)、并发控制(读锁和写锁)。
  • 网络攻击的一般过程:隐藏攻击源、信息搜集、掌握系统控制权、实施攻击、安装后门、清楚攻击痕迹。
  • APT攻击
    • 定义:攻击者掌握先进的技术,通过多种途径,在特定组织的信息技术基础设施上建立并转移立足点,以窃取信息、破坏系统或驻留在组织的内部网络,进行后续攻击。A(Advanced),技术高级;P(Persistent),持续时间长;T(Threat),威胁性大。
    • APT攻击的一般过程:信息侦察、持续渗透、长期潜伏、窃取信息。
  • 访问控制列表的配置严策略(接受受信任的IP包,拒绝其他所有IP包),宽策略(拒绝不受信任的IP包,接受其他所有IP包)。
  • 应用代理技术(Application Proxy),P176页,画出双宿主主机型网关(担当防火墙功能的堡垒机充当应用层网关,主机中插入两块网卡,分别连至内网和外网)、屏蔽主机型网关(为了保护堡垒机,在堡垒主机和外网之间设置一个屏蔽路由器)、屏蔽子网防火墙结构(在内外网之间建立一个DMZ,边界网络)的示意图。
  • 入侵检测系统(Intrusion Detection System)
    • 概念入侵检测是指通过对计算机网络或计算机系统中的若干关键点收集信息并对其进行分析,从中发现网络或系统中是否有违反安全策略的行为和被攻击的迹象。
    • 入侵检测技术
      • 异常检测(Anomaly Detection)。建立目标系统和用户的正常活动模型,基于模型进行审计。优点是可以发现新型的入侵行为,漏报少;缺点容易误报。
      • 误用检测(Misuse detection)。关键是模式匹配,优点是针对性地高效建立入侵检测系统,缺陷是只能发现已知的攻击。
  • 入侵防御系统(Intrusion Prevention System,IPS,也有称作Intrusion Detection Prevention,IDP)作为IDS的替代系统诞生了:是一种主动的、智能的入侵检测、防范、阻止系统,设计目的是预先对入侵行为进行拦截,避免任何损失。
  • 统一威胁管理(Unified Threat Management,UTM):这是一类集成了常用安全功能的设备,必须包括传统防火墙、网络入侵检测与防护和网关防病毒功能,并且可能会集成一些其他的安全或网络特性。
  • SSL协议(Security Socket Layer,安全套接层协议)是介于应用层可靠的传输层协议之间的安全通信协议。
    • SSL使用的安全机制:SSL使用公钥密码系统和技术进行客户机和服务器通信实体间身份的认证,和会话密钥的协商,使用对称密码算法对SSL连接上传输的敏感数据进行加密。
  • 网络层安全协议IPSec
    • 概念:IPSec工作在网络层,定义了一种安全、健壮且包容的机制,可用它为IP及其上层协议(如TCP、UDP)提供安全保证。
    • 工作模式:IPSecurity有两种工作模式:传输模式(两台主机端到端)和隧道模式(点到点,对整个IP提供保护)。
  • 恶意代码的概念
    • 计算机病毒:指编制或者在计算机程序中,插入的破坏计算机功能或毁坏数据,影响计算机使用,且能自我复制的一组计算机指令或程序代码
    • 蠕虫:网络蠕虫是一种智能化自动化,综合网络攻击、密码学和计算机病毒技术,不需要计算机使用者干预即可运行的攻击程序或代码,它会扫描和攻击网络上存在系统漏洞的节点主机,通过局域网或因特网从一个节点传播到另一个节点。
    • 特洛伊木马:简称木马,一个有用的或者表面上有用的程序或命令过程,实际上包含了一段隐藏的、激活时会运行的有害代码。
    • 后门:后门是一个模块秘密的、未记入文档的入口。
    • Rootkit:原指攻击者用来修改UNIX操作系统和保持根权限且不被发现的工具,目前通常指一类特洛伊木马后门工具,通过修改现有的操作系统软件,使攻击者获得访问权限并隐藏在计算机中。
  • 缓冲区溢出漏洞,使通过在程序的缓冲区写入超出其长度的内容从而破坏程序的堆栈,使程序执行其他指令,以达到攻击目的。
  • SQL注入漏洞,在输入的查询字符串中注入SQL语句,使服务器以为是正常的SQL指令而执行,造成数据泄露。
  • 软件版权,又称为著作权或作者权,指作者对创作的作品享有的人身权和财产权。
  • 软件侵权行为,包括……对软件的破解是侵权的基础:逆向工程(反编译、反汇编)、程序动态跟踪调试
  • 软件可信验证关键技术特征可信验证(提取恶意软件的特征码)、身份(来源)可信验证(代码签名技术)、能力行为可信验证(对软件行为进行捕获和建立判别规则)、运行环境可信验证(虚拟机恶意软件)。
  • 漏洞检测
    • 黑盒测试也称为外部测试:在不了解任何被测试组织的内部结构和技术的情况下,从远程对其系统进行测试。
    • 白盒测试也称为内部测试:在清楚内部结构和技术细节的情况下进行测试。
    • 黑盒测试和白盒测试组合使用,被称为灰盒测试

热门文章

暂无图片
编程学习 ·

《伸手系列》之分布式锁Redssion入门和源码解析

Redisson简介 Javaer都知道Jedis,Jedis是Redis的Java实现的客户端,其API提供了比较全面的Redis命令的支持。Redission也是Redis的客户端,相比于Jedis功能简单。Jedis简单使用阻塞的I/O和redis交互,Redission通过Netty支持非阻塞I/O。Jedis最新版本2.9.0是2016年的快3年了没…
暂无图片
编程学习 ·

利用OpenJ9大幅度降低JAVA内存占用

OpenJ9 介绍OpenJ9是一种高性能,可扩展的Java™虚拟机(VM)实现,完全符合Java虚拟机规范。在运行时,VM解释由Java编译器编译的Java字节码。VM充当语言与底层操作系统和硬件之间的翻译器。Java程序需要特定的VM才能在特定的平台(例如Linux,z /OS或Windows™)上运行。Open…
暂无图片
编程学习 ·

Leetcode 题解 - 字符串

字符串循环移位包含 编程之美 3.1 s1 = AABCD, s2 = CDAA Return : true给定两个字符串 s1 和 s2,要求判定 s2 是否能够被 s1 做循环移位得到的字符串包含。 s1 进行循环移位的结果是 s1s1 的子字符串,因此只要判断 s2 是否是 s1s1 的子字符串即可。 字符串循环移位 编程之美…
暂无图片
编程学习 ·

动态规划(二)

大佬的第二个视频代码 视频链接 题目一: 题目描述: 在一个数组中(只包含正整数)找出一组不相邻的数,使得其和最大 解题思路: 关键思想: 每个数有选和不选两种选择。按前i个数的最优解来说,如果选这个数,则这个数的前一个数就不能选,因此此时的最优解就是前i-2个数的最…
暂无图片
编程学习 ·

处理服务器cpu 占用高达99%问题

102服务器cpu 占用高达99%,查看服务百度了下这个服务是 swap分区的作用是当物理内存不足时,会将一部分硬盘当做虚拟内存来使用。 kswapd0 占用过高是因为 物理内存不足,使用swap分区与内存换页操作交换数据,导致CPU占用过高。 所以将服务器升级了内存和cpu 然而 服务器扩容…
暂无图片
编程学习 ·

Spring boot的项目文件

1.src–>main–>java 是用来放Java文件2.resources是用来放配置文件 application.properties用来放配置文件的信息3.test用来放一些测试用例4.新建一个Java类5.解决@RequestMapping报Cannot resolve symbol RestController’错误 解决办法: 在错误处按alt+enter 选择a…
暂无图片
编程学习 ·

2-Openwrt ipv6之-pppoev6客户端

pppoe拨号方式上网,ubunut服务器需要有pppoe-server也要有dhcpv6-server,路由器端需要ppp-client,也要odhcp6c指向pppoe-wan端口。1. PPPOEv6客户端启动过程pppoe拨号为wan上面的另一种方式,所以需要将uci里面的上网模式proto 改成pppoe config interface wanoption ipv6 1…
暂无图片
编程学习 ·

日志框架 SLF4j

是什么:SLF4J,即简单日志门面(Simple Logging Facade for Java),不是具体的日志解决方案,它只服务于各种各样的日志系统。按照官方的说法,SLF4J是一个用于日志系统的简单Facade,允许最终用户在部署其应用时使用其所希望的日志系统为什么:在java.util.logging, logback…
暂无图片
编程学习 ·

20北大软微华为实验班——排序题

学习目标:完成10017~10022 共6题(排序算法)中至少3道题。 1.基本排序题输入: 5 3 1 8 6 1 输出: 1 1 3 6 8思路一:冒泡排序(把最大的换到最后面) #include <iostream> using namespace std;int a[500000]={0};int main() {int n;cin>>n;//输入数据for(int …
暂无图片
编程学习 ·

php发送stmp邮件类 给有需要的人

<?php/*** email smtp (support php7)** Modified by: Reson 2019/06** More: http://www.wan0551.com**/class Smtp {/* Public Variables */public $smtp_port;public $time_out;public $host_name;public $log_file;public $relay_host;public $debug;public $auth;pu…
暂无图片
编程学习 ·

CDH Hue连接Hbase报错

问题描述 安装好CDH集群后,在Hue中查看HBase信息时,Hue界面报错如下: Api 错误:TSocket read 0 bytesHue日志报错: exceptions_renderable ERROR Potential trace: [(/opt/cloudera/parcels/CDH-6.3.2-1.cdh6.3.2.p0.1605554/lib/hue/apps/hbase/src/hbase/api.py, 46,…
暂无图片
编程学习 ·

ssm

目录User.javaUserController.javaUserDao.javaUserService.javaIUserService.javaUserMapper.xmlapplicationContext.xmldb.propertiesspring-mvc.xmlapplicationContext.xmlweb.xmlfailure.jspIndex.jspok.jsp pring 1.控制反转-》控制权的转移 2.依赖注入 DI 3.面向切面 aop…
暂无图片
编程学习 ·

设计模式学习——单例模式

一、单例模式的概念1.1 概念单例模式是指 确保一个类在任何情况下都绝对只有一个实例,并提供一个全局访问点。单例模式的特点是隐藏其所有的构造方法。属于创建型模式。1.2 单例模式的适用场景确保任何情况下都绝对只有一个实例。例如ServletContext、ServletConfig、Applicat…
暂无图片
编程学习 ·

软件测试的基本流程

软件测试的基本流程 1. 测试需求分析阶段阅读需求 理解需求 主要就是对业务的学习 分析需求点 参与需求评审会议2. 测试计划阶段主要任务就是编写测试计划 参考软件需求规格说明书 项目总体计划,内容包括测试范围(来自需求文档),进度安排,人力物力的分配,整体测试策略的制…
暂无图片
编程学习 ·

echarts关系图多条连线

最近用echarts做图的关系实现图数据结构连接线会重合,解决办法 import Graph from echarts/lib/data/Graph import echarts from echartsconst Edge = Graph.Edge const Node = Graph.Nodefunction generateNodeKey(id) {return _EC_ + id; }Graph.prototype.addEdge = functi…
暂无图片
编程学习 ·

HDFS架构

五.HDFS架构大多数分布式大数据框架都是主从架构HDFS也是主从架构Master|Slave或称为管理节点|工作节点主叫NameNode,中文称“名称节点”从叫DataNode,中文称“数据节点”5.1 NameNode5.1.1 文件系统file system文件系统:操作系统中负责管理文件、存储文件信息的软件具体地说…
暂无图片
编程学习 ·

记录一下开始搭建springboot+jsp项目遇到的一个问题

记录一下开始搭建springboot+jsp项目遇到的一个问题简述自己搭建项目的过程错误及解决总结加补充 最近刚开始学习搭建springboot项目,用到的ide工具是idea,前端用的是jsp 简述自己搭建项目的过程 直接上图在idea中创建一个springboot项目,选择好自己使用的jdk 刚创建好的项目…
暂无图片
编程学习 ·

python隐秘的角落——笛卡尔之心

随着网剧《隐秘的角落》的热播,让法国数学家、哲学家笛卡尔重回大众视野,他的心形线也在剧情中抢尽风头。 在隐秘的角落剧中,少年宫奥数老师张东升,在课上给同学们讲了这么一个故事: 数学家笛卡尔流落到瑞典,邂逅了美丽的公主克里斯蒂娜。国王知道了这件事后,强行拆散了…