对口令的攻击:
-
联机攻击:联机反复尝试口令进行登录
-
脱机攻击:截获口令密文后进行强力攻击
(1) 直接明文存储口令
- 风险大
任何人只要得到存储口令的数据库,就可得到全体人员(包括最高管理员)的口令。
- 多用于权限提升
(2) Hash散列存储口令
-
口令 x 的散列值 F(x) 又叫通行短语(Pass phrase)
-
散列函数为文件、报文或其他数据产生“数字指纹”
认证方法:
-
系统的口令文件中存储每个用户的账号和口令散列值对;
-
用户登录时输入口令 x,系统计算出 F(x);
-
系统将它与口令文件中相应的散列值比对,成功即允许登录。
(3) 加盐的Hash散列存储口令
加盐的作用:避免由于相同的明文口令对应相同的口令散列而造成多个用户的口令同时被破解。
盐(salt):散列口令前与口令相结合的长为 12bit 的随机常数 —— 即使两个用户口令相同,只要salt 值不同,口令散列将不同。
例如:lijie
和 wangfeng
口令都为 password
/etc/shadow 文件中的口令散列为:
lijie:qdUYgW6vvNB.
wangfeng:zs9RZQrI/0aH2
基于口令认证方式的安全性
(1)即使黑客或管理员得到口令文件,由散列值计算出明文口令很难,所以比口令明文的认证安全。
(2)基于口令明文或散列(静态口令)认证是单因素认证,而用户多选择易记忆、易被猜测的口令,同时窃取口令文件后也可进行字典式攻击。
(3)在计算机网络和分布式系统中使用更不安全。
双因素认证方式:所知道的东西(PIN)和所拥有的东西(智能卡)。
-
每个用户的智能卡存储用户秘密信息,身份认证服务器也存放该信息;
-
用户输入PIN,智能卡识别PIN是否正确;
-
若正确则读出智能卡中的秘密信息,并利用它与主机进行认证。
硬件加密的安全性高;即使PIN或智能卡被窃取,用户仍不会被冒充。
图像处理和模式识别:抓图/抽取特征/比较/匹配
-
生物统计学的生物特征
-
计算机强大计算功能
-
网络技术
(1) 生物识别系统捕捉生物特征的样品;
(2) 提取唯一特征数据并转化为数字符号(存储成该人的特征模板);
(3) 登录时人们同生物特征识别系统交互来进行身份认证,以确定匹配与否。
基于生物特征认证方式的安全性
-
特征因人而异和随身携带 —— 他人模仿难
-
识别速度相对慢
使用代价高
使用面窄
不适合在网络环境中使用
在网络上泄露也不好更新
有误报(False Positives)和漏报(False Negatives)
================================================================================
网络环境下身份认证的困难性:
-
明文口令:易被嗅探,也容易受到字典攻击。
-
口令散列:直接“重放” 就可以假冒合法用户登录,并不需要解密得到口令本身。
不能使用静态口令,而必须使用一次性口令。
一次性口令技术的发展:
-
1980年代首次提出利用散列函数产生一次性口令
-
1991年贝尔通信提出挑战/应答(Challenge /Response)式动态密码身份认证系统S/KEY
-
开发基于 MD5 散列算法的动态密码认证系统
-
RSA 实验室提出基于时间同步的动态密码认证系统 RSA SecureID
一次性口令的两个因子:
-
固定因子:用户的口令散列(双方共享)
-
变动因子:产生变动的一次性口令
1)基于时间同步认证技术
2)基于事件同步认证技术
3)挑战/应答方式的变动因子:由认证服务器产生的随机序列 Challenge,不需要同步。
最初的 S/KEY 的安全性分析:
-
合法用户容易通过身份认证,而攻击者即使截获一次性口令,也得不到用户口令散列。
-
服务器对同一用户每次发出的挑战中 seed 值相同。
-
而 seq 值递减,使攻击者不知用户口令散列时,不能预测出下一次的一次性口令,因而不能重放成功。
S/KEY 认证协议的优点:
-
并未传送用户口令明文和口令散列。
-
每次的一次性口令不同。
-
根据截获的一次性口令破解出口令散列/明文难。
-
实现原理简单,Hash函数还可用硬件实现。
-
服务器只需存储用户口令散列。
S/KEY 认证协议的缺点:
-
安全性依赖于Hash函数的不可逆性。
-
seq 值递减使得挑战使用一定次数后必须初始化。
-
会话内容本身没有保密。
-
循环使用以前的一次性口令。
-
维护一个很大的一次性口令列表很麻烦。
改进的 S/KEY 的安全性分析:
只有 seed、seq 和一次性口令在网上传播,seed 是不可预测的,而 seq 每次可相同可不同:
-
用户很容易求出正确的一次性口令,采用一次性口令的匹配通过服务器的身份认证;
-
攻击者即使截获一次性口令,也不能破解出用户口令散列;
-
攻击者不能预测下一次一次性口令,也不能重放成功。
S/KEY 协议的应用和安全性:
- Windows 2000之后的 NTLM 认证就使用了这个经过改进的 S/KEY 认证协议。
安全性:
-
能够避免监听和重放,但不能防范拦截和修改数据包、会话劫持等攻击。
-
网络系统的安全仅等同于使用的最弱散列算法的安全强度。
-
没有完整性保护机制,也无法防范内部攻击。
-
不能对服务器的身份进行认证。
===================================================================================
网络层安全协议 IPSec —— 保证连接的客户端合法
服务器只能对合法用户提供服务 —— Kerberos
-
Kerberos 基于可信第三方 KDC,提供不安全分布式环境下的双向用户实时认证。
-
它的认证和数据保密传输使用对称加密 DES,后来也可用其他算法的独立加密模块。
-
Windows 2000 之后都默认 Kerberos 为其认证方法。
Kerberos的发展
以 N-S 密钥分配 和 双向鉴别协议 为基础发展起来,并引入时间戳。
-
Kerberos v1 - v3 都只在麻省理工学院内部发行
-
1980年末发布的 Kerberos v4 主要是针对 Project Athena
-
1993年发布的 v5 克服了 v4 的局限性和安全问题
Kerberos 实现AAA:认证(Authentication)、授权(Authorization)、审计(Audit)。
认证(Authentication)、授权(Authorization)、审计(Audit)、机密性(confidentiality)、完整性(integrality)、不可否认性、可用性
本人从事网路安全工作12年,曾在2个大厂工作过,安全服务、售后服务、售前、攻防比赛、安全讲师、销售经理等职位都做过,对这个行业了解比较全面。
最近遍览了各种网络安全类的文章,内容参差不齐,其中不伐有大佬倾力教学,也有各种不良机构浑水摸鱼,在收到几条私信,发现大家对一套完整的系统的网络安全从学习路线到学习资料,甚至是工具有着不小的需求。
最后,我将这部分内容融会贯通成了一套282G的网络安全资料包,所有类目条理清晰,知识点层层递进,需要的小伙伴可以点击下方小卡片领取哦!下面就开始进入正题,如何从一个萌新一步一步进入网络安全行业。
学习路线图
其中最为瞩目也是最为基础的就是网络安全学习路线图,这里我给大家分享一份打磨了3个月,已经更新到4.0版本的网络安全学习路线图。
相比起繁琐的文字,还是生动的视频教程更加适合零基础的同学们学习,这里也是整理了一份与上述学习路线一一对应的网络安全视频教程。
网络安全工具箱
当然,当你入门之后,仅仅是视频教程已经不能满足你的需求了,你肯定需要学习各种工具的使用以及大量的实战项目,这里也分享一份我自己整理的网络安全入门工具以及使用教程和实战。
项目实战
最后就是项目实战,这里带来的是SRC资料&HW资料,毕竟实战是检验真理的唯一标准嘛~
面试题
归根结底,我们的最终目的都是为了就业,所以这份结合了多位朋友的亲身经验打磨的面试题合集你绝对不能错过!
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!