网络安全
1. 网络安全基本概念
在网络环境中,需要被保护的对象有哪些?
- 计算机硬件安全
- 数据存储安全
- runtime安全
- 数据传输安全
- …
网络安全的首要目标
- 机密性(Confidentiality):信息应该仅对适当的人员可见。
- 完整性(Integrity):只能通过适当的人员或流程更改信息。
- 可用性(Accessibility):信息只应在需要的时候才可见和可供访问。
在网络安全上下文中,这通常是指机密性、完整性、可用性 (CIA) 模型。
2. 加密
常见的加密方式
- 对称加密
对称加密指的是加密、解密双方使用同样的密钥,使用对称加密的问题和难点在于:密钥的分发。此外,对称加密还会导致密钥激增的问题,需要加密沟通的人数越多,需要的密钥的增长是指数的。 - 非对称加密
非对称加密指的是,加密和解密双方使用的不是同样的密钥。加密、解密双方都分别有自己的公钥和私钥。公钥是公开给所有人的,私钥需要好好保存,只能自己知道。数据加密方使用接收方的公钥对数据进行加密,然后接收方用自己的私钥解密,这样就可以解决对称加密中的密钥分发问题。非对称加密的底层数学原理是大整数的质因子求解,生成密钥和从公钥反推私钥的难度差距很大,所以目前主流的加密算法基本上都是非对称加密。
在哪些地方需要用到加密?
- Web浏览
在使用浏览器浏览网页时,基本上现在都是基于https协议访问网站,https简单来说就是http加密版 - 设备加密
- 消息传递应用
- 移动通信
3. 数字签名
在一些场合下,人们除了传输的内容对第三方保密之外,还需要保证传输的内容不被篡改,应对这样的需求,基于Hash算法的数字签名可以很好的响应需求。
4. 身份验证和授权
关于身份验证和授权的一个比喻,身份验证就像用身份证或护照证明自己的身份,验证后方可进入;授权则是,在拿到自己的登机牌后,凭借登机牌,拿到进入对应航班的授权。
常见的身份验证的方式
- 已知内容
- 用户名+密码
- PIN
- 密保问题
- …
- 已有内容
- 身份证
- USB密钥
- 手机
- …
- 自身特征
- 指纹特征
- 声音特征
- 虹膜特征
- 针对身份验证,通常会有以下的攻击方式:1. 暴力破解;2. 字典攻击(也是一种暴力破解方式);3.凭据填充:很多用户在多处使用同样的密码,在一些站点被攻击,暴露了用户密码后,攻击者可能会用这些密码去尝试填充其他网站的密码;4. 键盘记录:有些恶意软件可以去获取用户键盘的输入,这样的攻击在一些公共的机器中比较常见。
授权安全技术
在获得身份验证时,安全系统也会根据这个身份以及对应的权限来决定你可以访问哪些位置和哪些资源。
数据和资源的访问级别:
- 条件性访问
如果你符合条件,那么可以获得访问权限;如果不符合,那么就无法获得访问权限。
这种级别通常会在以下情况中使用:公司内服务器存储的员工薪资等机密信息,员工在公司内部的安全环境下符合访问条件,可以获得授权。但是员工如果在家里,完成身份验证后,由于所处环境不符合田间,所以访问将被拒绝。 - 最小特权访问
最小特权的概念是向用户授予他们所需的最小权限。 此概念适用于任何与安全相关的设置
例如,对于一份资源,如果大部分员工都不应该去更改它,那么就应该给这些员工分配“只读”权限 - 横向移动
对系统内进行分层,并增加额外的分层安全机制,能够减少出现入侵者获得系统访问权限后,然后在系统内横向移动,破坏其他资源安全性的情况 - 零信任
零信任模型假定自己所在的环境是不安全的,需要对所有身份、访问等进行验证。对比传统安全模型更严格。