企业要求:会使用打印机
考试:打印机概念,打印机历史,打印机原理,过时打印机....
写在前面:本文基于考试的要点进行的梳理,在信息加密内容中有着java对于其的实现和使用代码样例。
名词对应表
名词 | 中文 | 含义 |
---|---|---|
DES | 数据加密标准 | |
IDEA | 国际数据加密标准 | |
PKI | 公开密钥基础设施 | 一个公钥密码算法原理和技术提供安全服务的通用性基础平台。CA是数字签证机构是PKI的核心 |
NAPT | 网络地址端口转换 | NAT技术中用的最多的 |
IDS | 入侵检测技术 | |
DAC | 自主访问控制 | |
MAC | 强制访问控制 | |
RBAC | 角色访问控制 |
计算机网络安全绪论
- 计算机网络实体是什么
计算机网络中的关键设备,包括各类计算机、网络和通讯设备、存储数据的媒体、传输路线…等
- 典型的安全威胁有哪些 ★ ⋆ \bigstar\star ★⋆
- 窃听(敏感信息被窃听)
- 重传(被获取在传过来)
- 伪造(伪造信息发送)
- 篡改(被修改在传)
- 非授权访问(非法获取系统权限)
- 拒绝服务攻击(让其不能正常工作)
- 行为否认(否认发生的行为)
- 电测/射频截获(从无线电中获取)
- 人员疏忽
- 黑客刺探指定目标的通常动机
- 获取机密或敏感数据的访问权
- 窃取财务或服务
- 免费使用资源
- 向安全机制进行技术挑战
- 追踪或监听目标系统的运行
- 扰乱目标正常的运行
从信息系统方面看有3个目标
1.访问信息2.修改或破坏3.使系统拒绝服务
- 网络安全的目标/需求分析
★
★
★
\bigstar\bigstar\bigstar
★★★
可以和威胁对应起来记。
- 保密性:网络中传输的数据可能包含敏感信息,如个人身份信息、商业机密等,需要采取加密措施保护其机密性,防止被非法获取和窃取。(窃听、重传、伪造、非授权访问、电测/射频截获)
- 完整性:网络中传输的数据可能会被篡改或损坏,需要采取数据完整性保护措施,确保数据在传输过程中不被篡改或损坏。(篡改)
- 可用性:网络中传输的数据可能会被拒绝服务攻击(DDoS)等攻击手段影响其可用性,需要采取措施保证数据的可用性,确保网络服务正常运行。(拒绝服务攻击)
- 不可否认性:提供向第三方证明该实体参与了那次通讯的能力(行为否认)
- 可控性:对信息传播及内容具有控制能力,保证信息或信息系统的授权认证和监控管理,确保某个实体身份的真实性,也可以确保执法者对社会的执法管理能力(人员疏忽)
-
网络安全模型
发送消息的安全转换(加密、保密、身份验证)
收、发方共享的某些秘密信息(加密密钥) -
P2DR模型结构 ⋆ ⋆ \star\star ⋆⋆
P2DR模型是动态网络安全体系的代表模型,包括四个主要部分:Policy(安全策略)、Protection(防护)、Detection(检测)和 Response(响应)。防护、检测、响应组成了一个完整的、动态的安全循环。
安全策略:模型的核心,是整个网络的安全依据。
防护:通过采用一些传统的静态安全技术和方法来实现,主要有防火墙、加密、认证等方法
检测:是动态响应和加强防护的依据
响应:在安全系统中占最重要地位,是解决潜在安全问题的最有效方法
- 时间安全要求
pt(防护时间)>Dt(入侵花费时间) + Rt(响应恢复时间)
et(系统暴露时间) = dt+rt
物理安全
- 物理安全内容包括 ⋆ \star ⋆
- 机房环境安全
- 通讯线路安全
- 设备安全
- 电源安全
- 保障通信线路安全的主要技术措施有哪些
- 电缆加压技术
通信电缆密封在塑料套管中, 并在线缆的两端充气加压。线上连接了带有报警器的监示器,用来测量压力。如果压力下降,则意味电缆可能被破坏了,技术人员还可以进一步检测出破坏点的位置,以便及时进行修复。 - 光纤通讯技术
- Modem通讯安全
信息加密
- 密码学的发展阶段
- 古典加密方法(隐藏,如藏头)
- 古典密码(文字替换是主要加密思想)
常用方法:
2.1. 单表代替密码
2.2. 多表代替密码
2.3. 转轮密码 - 近代密码(钥)
-
密码学五元组
明文、密文、密钥、加密算法、解密算法 -
加密技术的原理
加密技术是通过对原始数据进行加密,使得除了拥有密钥的人之外,其他人无法读取数据的技术。 -
常用的加密体制和其代表算法
单钥:DES和IDEA
双钥:RSA算法和ElGamal算法 -
一般密码系统示意图
- 双钥保密和认证体制
k1公开
k2保密
- 凯撒加密
★
★
\bigstar\bigstar
★★
对字母进行移位,如k=3,那么就是移动3位
a → d a \rarr d a→d
- 数据加密标准DES
是一个分组加密算法。
密钥长度为64位,56位有效长度,8位是校验码
置换是将明文进行置换得到乱序的64位。
分组为2个32位,进行16次迭代
扩展:
在java种javax.crypto包下Cipher类是专门用于加密和解密提供密码功能
// Cipher封装的算法包括对称加密算法和非对称加密算法,如:AES、DES、DESede、RSA等
Cipher c = Cipher.getInstance("DES/CBC/PKCS5Padding");
// CBC,数据分组模式
// PKCS5Padding,数据按照一定的大小进行分组,最后分剩下那一组,不够长度,就需要进行补齐
-
国际数据加密算法IDEA
不想看了应该不考 -
双钥加密算法RSA算法
- 生成密钥
1.1 给定p、q2个素数
1.2 n = p ∗ q n = p*q n=p∗q
1.3 φ ( n ) = ( p − 1 ) ∗ ( q − 1 ) \varphi(n)=(p-1)*(q-1) φ(n)=(p−1)∗(q−1) - 生成 e e e ,满足 e e e 和 φ \varphi φ 互质
- 密钥 d d d 因为 d ∗ e m o d φ = 1 d * e \mod \varphi = 1 d∗emodφ=1 通过逆元求得 d
- 加密过程
对每一个明文进行 E ( m ) = m e m o d n = c E(m) = m^e \mod n = c E(m)=memodn=c计算 - 解密
对每一个密文进行 D ( c ) = c d m o d n D(c) = c^d \mod n D(c)=cdmodn计算
如
p
=
3
,
q
=
11
p = 3,q = 11
p=3,q=11则
n
=
p
∗
q
=
33
n = p * q = 33
n=p∗q=33 那么
φ
(
n
)
=
2
∗
10
=
20
\varphi(n) = 2*10 = 20
φ(n)=2∗10=20 取
e
=
3
e = 3
e=3(因为只是演示,实际上不可能这么小。小只是方便我们来进行计算,只要满足互质就可以了),计算d,也就是求逆元。
e
d
m
o
d
φ
(
n
)
=
1
⇒
e
d
≡
1
(
m
o
d
φ
(
n
)
)
ed \mod \varphi(n) = 1 \Rightarrow ed \equiv1 (\mod \varphi(n))
edmodφ(n)=1⇒ed≡1(modφ(n))
也就是
3
∗
d
m
o
d
20
=
1
3*d \mod 20 = 1
3∗dmod20=1
利用欧几里得算法
e
d
≡
1
(
m
o
d
φ
(
n
)
)
⇒
e
∗
d
−
φ
∗
x
=
1
ed \equiv1 (\mod \varphi(n)) \Rightarrow e*d - \varphi*x = 1
ed≡1(modφ(n))⇒e∗d−φ∗x=1(x为无关数未知数)
也就是求
3
d
−
20
x
=
1
3d - 20x = 1
3d−20x=1
我这有2种方法。
- x从0开始一直向上加直到d为整数
如 x = 0 , d = 1 / 3 x = 0,d = 1/3 x=0,d=1/3
x = 1 , d = 7 x = 1,d = 7 x=1,d=7
所以就是7 - 用取余
1 ◯ 3 d − 20 x = 1 \textcircled 13d - 20x = 1 1◯3d−20x=1用大数mod小数 20 20%3 = 2 20
2 ◯ 3 d − 2 x = 1 \textcircled 2 3d - 2x = 1 2◯3d−2x=1用取余数代替大数。
3 ◯ d − 2 x = 1 \textcircled 3 d - 2x = 1 3◯d−2x=1直到d活着x系数为1.我们令x等于0,那么d=1带入到第二个式子 3 ∗ d − 2 x = 1 3*d - 2x = 1 3∗d−2x=1那么 x = 1 x = 1 x=1代入1式子得到d=7
在java中RSA keys must be at least 512 bits long
别问咋知道了,本来想用api算的。
- RSA签名方法和RSA加密方法对密钥的使用有什么不同
- 加密方法:RSA加密方法使用公钥加密数据,然后使用私钥解密数据。因此,公钥用于加密,私钥用于解密。
- 签名方法:RSA签名方法使用私钥对数据进行签名,然后使用公钥验证签名。因此,私钥用于签名,公钥用于验证签名。
- 目的不同:RSA加密方法的目的是保护数据的机密性,确保只有授权人员能够访问数据。RSA签名方法的目的是确保数据的完整性和真实性,确保数据没有被篡改或伪造。
- 密钥管理不同:RSA加密方法需要管理公钥和私钥对,以确保数据的安全性。RSA签名方法需要管理私钥和公钥对,以确保签名的真实性和完整性。
-
ElGamal算法
RSA算法是基于素数因子分解的双钥密码。
ElGamal则是基于离散对数问题的另一种类型的双钥及密码。可以用于加密也可以用于签名 -
同态加密特点
先计算后解密等价于先解密后计算 -
数字签名技术
是一种实现消息完整性认证和身份认证的重要技术
-
消息认证技术
通过对消息或消息信息相关信息进行加密或签名变换进行的认证。
包括消息内容认证、消息源和宿认证、消息的序号和操作时间认证
杂凑函数:
可以将任意长的消息得到一个固定长度的杂凑值
分为带密钥的杂凑函数和不带密钥的杂凑函数
应用:数字签名、认证、消息摘要等
常见的有:MD5、SHA-256、SM3
不属于加密算法。需要分开。
就像在java中想要调用MD5算法需要的类是MessageDigest.
几乎是不可逆的,只能靠暴力破解。
用处在于。可以在发送前进行一次md5得到a
接收方在对接收的进行md5得到b
如果a和b一样则没有被修改。这就是消息内容认证
消息内容认证
消息发送方在消息中加入一个鉴别码经加密后发送给接收者,接收者用约定算法解密后进行鉴别运算,若获得的鉴别码与原鉴别码一样则接收否则拒绝。
MessageDigest md = MessageDigest.getInstance("MD5");// 生成一个MD5加密计算摘要
String hashedPwd = new BigInteger(1, md.digest(pwd.getBytes())).toString(16);// 16是表示转换为16进制数
- 数字签名和消息认证的区别
数字签名可以实现消息认证的功能,区别在于消息认证可以帮助接收方验证消息发送方的身份,以及消息是否被篡改。但当存在利害冲突的时候,单纯靠消息认证技术就无法解决纠纷,就需要数字签名来辅助更有效的消息认证。
消息认证无法确认是谁发的,只能知道消息是否被修改
数字签名,签名是可以鉴定签名者是谁的
- 公开密钥基础设施PKI
(名词解释)PKI是一个公钥密码算法原理和技术提供安全服务的通用性基础平台。 - PKI认证技术的组成
包括认证机构CA、证书库、密钥备份、证书作废处理系统和PKI应用接口系统
CA是数字签证机构是PKI的核心
防火墙技术
- 防火墙功能
- 过滤进、出网络的数据
- 管理进、出网络的访问行为
- 封堵某些禁止的业务
- 记录通过防火墙的信息内容和活动
- 对网络攻击进行检测和告警
- 防火墙体系结构和特点
(需要认识图,知道对应的图是什么)
-
双重宿主主机体系结构
该体系结构使用两台主机来提供防火墙保护。其中一台主机作为防火墙,另一台主机作为受保护的内部网络。其主要特点是具有较高的安全性和可靠性,但也存在较高的成本和复杂性。
-
屏蔽主机体系结构
该体系结构使用一台主机来提供防火墙保护,并将其放置在内部网络和外部网络之间。其主要特点是具有较低的成本和较简单的配置,但也存在较低的安全性和可靠性。
-
屏蔽子网体系结构
该体系结构使用一组防火墙来保护内部网络。其中,内部网络被划分为多个子网,并在每个子网和外部网络之间放置一个防火墙。其主要特点是具有较高的安全性和可靠性,但也存在较高的成本和复杂性。
-
双重和屏蔽主机安全性对比
多数情况下,屏蔽主机体系结构比双重宿主主机系统结构更好的安全性和可用性
(保护路由器比保护主机更容易实现) -
防火墙具体实现技术
- 包过滤技术
- 代理服务技术
- 状态检测技术
- NAT技术
- 包过滤防火墙工作机制和包过滤模型
它会检查数据包的源地址、目的地址、协议类型和端口号等信息(也就是对包的头部进行检测而不会差内容),并与预定义的规则进行匹配,以确定是否允许通过该数据包。
- 代理防火墙的工作原理,和其优缺点
通过代理服务器来代替客户端与外部网络进行通信,从而实现对网络流量的控制和过滤。具体来说,代理服务器会对客户端发起的请求进行解析和检查,然后再将请求转发给外部网络,并将响应报文返回给客户端。在这个过程中,代理服务器可以根据预定义的规则和策略对网络流量进行过滤和控制,从而提供更加精细和有效的安全保护。
代理防火墙的优点主要包括:
- 代理易配置
- 能生成各项记录
- 代理能灵活、完全的控制进出流量和内容
- 能过滤数据内容
- 能为用户提供透明的加密机制
- 可以方便的与其他手段集成
代理防火墙的缺点主要包括:
- 代理速度较路由慢
- 对用户不透明
- 每项服务代理可能要求不同的服务器
- 不能保证所有协议弱点的限制
- 代理不能改进底层协议的安全性
这个用的主要是翻墙吧,如clash代理,会慢一些的。
-
电路层网关防火墙
通过电路层网关中继TCP连接
一般采用自适应代理技术
基本要素:1. 自适应代理服务器 2. 动态包过滤器 -
NAT技术(工作原理)
内部节点与外部网络进行通信时,在网关处将内部私有IP翻译为共有网络IP地址的技术
(除了ip外还会修改端口)
一般一个家庭只有一个外网IP地址。
这个应该就算内网和公网的区别了吧,内网IP不能直接访问。
对内可以用自己的IP,但是在路由的时候对外全部都是使用的一个路由器网关的IP
- NAT类型(理解如何转换IP)
- 静态NAT(1对1不变的)
- 动态NAT(私有转共有,是随机的不确定的)
- 网络地址端口转换NAPT(用的最多,内网所有的共享一个外部IP,端口可以一样也可以不一样)
NAPT设备接收来自内部网络的数据包,并记录源IP地址、源端口号和目标IP地址。
NAPT设备将源IP地址和源端口号替换为自己的公共IP地址和一个唯一的端口号,并记录映射关系。
NAPT设备将修改后的数据包发送到公共网络。
当公共网络返回数据包时,NAPT设备根据记录的映射关系将目标IP地址和端口号替换为内部网络的对应IP地址和端口号,并将数据包发送到内部网络。
入侵检测技术
-
什么是入侵检测技术 IDS
入侵检测技术是用于检测任何损害或企图损害系统的保密性、完整性或可用性的一种网络技术 -
基本原理
通过监视受保护系统的状态和活动,检测发现非授权或恶意的系统及网络行为,防范入侵行为提供有效手段。 -
就检测理论分类和其实现方法
- 异常检测
1.1 Denning的原始模型
1.2 量化模型
1.3 统计度量
1.4 非参数统计度量
1.5 基于规则的方法 - 误用检测
2.1 条件概率预测法
2.2 产生式/专家系统
2.3 状态转换方法
-
2种方法的优缺点
-
snort技术是如何检测分布式拒绝服务攻击的(ai生成的答案)
- 可以基于流量进行分析检测,例如检测到大量的TCP连接请求、UDP数据包或ICMP数据包等。
- 对行为进行分析检测,例如检测到大量的HTTP请求或DNS查询等。
- 规则匹配,Snort可以使用预先定义的规则来检测DDoS攻击,例如检测到特定的IP地址或端口号被大量访问。
- 基于黑名单/白名单的检测:Snort可以使用黑名单/白名单来检测DDoS攻击,例如将已知的攻击者IP地址添加到黑名单中,或者将允许的IP地址添加到白名单中。
- snort规则
详细规则
alert icmp 发送ip 发送端口 -> 接收ip 接收端口 (logto:"记录的文件名";msg:"描述";sid:100000003)
操作系统和数据库安全
-
访问控制技术
访问控制是实现既定安全策略的系统安全技术,它可以显式的管理着对所有资源的访问请求。 -
访问控制和认证的区别
认证是建立用户身份标识,验证用户身份
访问控制是防止未授权的人员或系统进入或访问受保护的资源或系统。
访问控制是总是假定用户身份已经被确认了,而认证是负责身份确认的。 -
传统的访问控制分为几类,区别,以及优缺点
传统的访问控制可以分为2类:自主访问控制(DAC)、强制访问控制(MAC)。
- 自主访问控制(Discretionary Access Control,DAC)
自主访问控制是指由某个主体显式的来控制对资源的访问权限,即资源的控制权交给了用户。
DAC 的优点在于其灵活性,用户可以自由地控制自己的资源访问权限
缺点:主体权限太大,无意间就可能泄露信息;无法防备特洛伊木马的攻击访问控制表;资源分散,系统规模大时,授权列表很庞大,不易维护
- 强制访问控制(Mandatory Access Control,MAC)
强制访问控制是指由系统管理员或安全策略来控制对资源的访问权限,即资源的控制权不在用户手中。
MAC 的优点在于其安全性高,可以防止资源的滥用或误用
而缺点在于其灵活性有限,因为用户无法自由地控制自己的资源访问权限。
- 新型访问控制技术分为几类以及优缺点(优缺点随便吧感觉没必要)
- 角色的访问控制RBAC
优点:
1. 安全性高
2. 灵活性强
缺点
1. 管理复杂
2. 实现难度大
3. 不够成熟
-
基于任务的访问控制TBAC
基于任务的访问控制是指根据用户需要完成的任务来控制对资源的访问权限。
优点在于其1.灵活性高,可以根据用户需要完成的任务来动态地控制资源的访问权限2.安全性高
而缺点:1,管理复杂2.其实现较为复杂,需要对用户任务进行精细的管理。 -
基于组机制的访问控制GBAC
基于组机制的访问控制是指根据用户所属的组来控制对资源的访问权限。
优点在于其实现简单,易于管理,安全性高
而缺点在于其灵活性有限,无法根据用户个性化的需求来控制资源的访问权限。
- 访问控制的实现技术
- 访问控制表(以文件访问为中心,记录文件的访问用户名和访问权隶属关系)
- 能力关系表(以用户为中心,记录用户可访问的文件名和访问权限)
- 权限关系表(建立用户和文件的隶属关系)
计算机病毒
- 计算机病毒是什么
计算机病毒是指编制或者在计算机程序中插入的破坏计算机功能或数据,影响计算机使用,并能自我复制的一组计算机指令或程序代码 - 计算机病毒的特性
- 非授权可执行
- 隐蔽性
- 潜伏性
- 表现性或破坏性
- 可触发性
- 计算机病毒的分类
按照病毒进攻类型
- 攻击dos系统
- windows
- unix
- 移动终端
- 工业控制
攻击机制
- 攻击微型计算机 2. 攻击小型计算机 3. 工作站 4. 移动终端 5. 工业设备
链接方式
- 源码型病毒 2. 嵌入 3. 外壳 4. 操作系统
破坏情况
- 良性计算机病毒 2.恶型
寄生方式
- 引导性病毒 2.文件型 3. 复合型
传播媒介
- 单机病毒 2.网络病毒
- 计算机病毒的一般构成和各个模块的作用和作用机制
- 引导模块
争夺系统控制权,引导病毒的其他部分工作 - 传染模块
由一个系统扩散到另一个系统 - 发作模块
完成病毒的表现和破坏