口令构造PCFG算法
来源:互联网 发布:网页扒图软件 编辑:程序博客网 时间:2024/05/12 17:16
论文中研究的PCFG(概率上下文无关算法)的核心是将口令分为字母段L,数字段D和特殊字符段S,例如将口令“qing123!”表示为L4D3S1。在训练阶段,统计出口令模式频率表(L4D3S1在全部口令中的频率)和字符组件频率表(”qing”在L4中的频率),利用两个表生成一个带频率猜测的集合,来模拟现实中口令的概率分布。例如P(qing123)=P(L4D3S1)*P(qing)*P(123)*P(!)。这样就能够获得每个字符串的概率,按照概率递减排序可获得一个猜测集。
这种漫步攻击(trawlingattacking)是指攻击者不关心具体的攻击对象,唯一目标是在允许的猜测的次数下,猜测出越多的口令越好。
相关论文链接:https://www.researchgate.net/publication/305654413_Targeted_Online_Password_Guessing_An_Underestimated_Threat
Targeted Online Password Guessing: AnUnderestimated Threat
1. 前提
将个人信息分为三类:
1、用户个人信息PII(姓名、性别等)半公开信息(仅相关人员知晓);
2、用户识别凭证(用户名、密码等),部分公开信息;
3、与密码构造无关的个人信息。
PII分为两类:
1、 生日、姓名等可以作为构造密码的一部分;
2、 性别、受教育程度等影响用户密码生成规则。
2. 安全模型:假设攻击者能够通过一些途径得到用户信息,并且得到一个相似网站的密码。
3. 密码生成时的用户行为分析。
语言和服务网站都影响用户常用密码选择。
对不同网站的用户密码进行重用分析,重用度高但是无法对用户的部分重用进行建模。
经过测试,在复杂环境下(语言、服务种类、约束条件等),不均匀的变换规则和高度复杂的个人信息使得自动化完成密码重用构造非常困难。
4. TarGuess:定向在线猜测框架
TarGuess选择了四种典型在线定向猜测场景:(1)、知道1类PII(2)、知道一个相似网站的密码(3)、结合(1)(2)(4)、结合(3)和2类PII。
TarGuess-1:
基于Weir的PCFG算法,添加了个人信息数据PII,包括email、account name、name和birthday等,不同于按照长度分类(例如N3-3位数的姓名相关字符串),本文基于type分类,例如,type-based 将name分类为N1-姓名全拼,N2-姓名缩写,N3-姓全拼等等。学习分类算法与PCFG相同,可以随意添加新标签,标签不一定不为空(姓名项不知道则为空)。
测试结果,在且仅在添加PII中email、account name、name和birthday信息能够提高测试准确性,利用12306的用户邮箱、用户名、姓名和生日信息,在10^2猜测次数内,成功率达到20%。
TarGuess-2:
已知一个相似网站的密码,将密码变换分为6种:添加(abc-a1bc),删除(abc123-abc),大写,leet(password-passw0rd),子字符串移动(abc123-123abc)和逆转(abc123-321cba)。经过学习,获取每种变换的概率,在猜测阶段,将复合变换拆解成子变换计算出最后的概率。
TarGuess-3:
添加TarGuess-1中的PII信息标签,训练和猜测算法与TarGuess-2相同。测试结果表明,相比TarGuess正确率要高。
TarGuess-4:
将2类PII也加入考虑范围,经过公式变换,能够通过类似TarGuess-2中的概率计算的方法计算出最后的概率。测试结果表明,正确率相比较TarGuess-3要高,表明2类PII信息确实会影响密码生成。
- 口令构造PCFG算法
- PCFG
- 句法分析算法PCFG学习
- PCFG parser及实现
- VSS的口令破解算法的思路
- PHP实现OATH动态口令算法
- JavaScript实现OATH动态口令算法
- 概率上下文无关文法PCFG
- 斯坦福 stanford coreNLP 中的PCFG parser-lexparser
- 平衡树构造算法
- TSP 路径构造算法
- 哈夫曼树的构造算法
- 构造哈夫曼树的算法
- 构造算法的思维过程
- 构造回文(算法题)
- 设计一个User类,并定义类的三个构造方法,类中有三个变量有用户名、口令、记录用户个数
- 口令加密
- 动态口令
- golang/protobuf 学习
- 设计模式--工厂模式
- javascript获取以及设置光标位置
- 探索Android 7.1 app快捷方式(App Shortcuts)
- MAC OSX 多文件编译链接
- 口令构造PCFG算法
- 老罗推荐的讯飞语音,有这些 know-how
- html5与css3学习笔记-day01
- 欢迎使用CSDN-markdown编辑器
- Android自定义View实战(会波动的View)
- Android之EditText控件的使用
- sock5系列之模拟tcp请求sock5服务器!(三)
- Linux 中断学习之一
- 第十二周 爬楼梯