为了账号安全,请及时绑定邮箱和手机立即绑定

标准差测端口的随机性判定DNS缓存中毒

标签:
大数据

标准差测端口的随机性判定DNS缓存中毒
摘要
端口使用的随机性是评估是否有DNS缓存中毒危险的一个重要标准。
本文主要介绍使用概率论的方法来判断DNS端口使用的随机性,首先将介绍相关的理论知识,然后通过一个43g的DNS解析日志文件作为测试文件,通过hadoop来存储文件,用mapreduce来求解标准差,最后通过java绘制结果来进行DNS源端口的测试。
相关理论
(1)离散均匀分布
若随机变量有n个不同值,具有相同概率,则我们称之为离散均匀分布,通常发生在我们不确定各种情况发生的机会,且认为每个机会都相等,例如:投掷骰子等.
设离散随机变量 X之可能变量有1,2,3….n,若其概率函数为
图片描述 (1)
则称X 服从离散均匀分布.
DNS的源端口使用的是0-25535之间的任意整数,使用具有随机性,所以我们可以将该事件看作一种离散均匀分布
(2)离散均匀分布的数字特征
图片描述 (2)
根据DNS解析日志文件我们可以得到样本的实际标准差,通过
图片描述(3)
求得样本的标准差。
考虑一个样本的标准偏差,我们可以估算样本大小的二进制位数为:
由公式(2) 可得
图片描述 (4)
给出测试的标准,如表 1所示:
表 1 Scoring
Score GREAT GOOD POOR
S Range 10.0 – 13.75 0 – 10.0 0 – 296
bits Range 13.75 – 16.0 3980 – 20,000+ 296 – 3980
数据测试
根据以上分析得到的判断指标对DNS解析日志进行分析,DNS解析日志的格式如表 1所示。
表1 log表
列名 数据类型 允许Null值 说明
Userip Varchar(16)
DNS Varchar(16) DNS
Domain Varchar(40) 域名
Qtype Varchar(7) 请求类型
Flag int 未知
answer Varchar(16) 返回结果
Atype Int 返回类型
Port Bigint 端口号
Time Varchar(16) 时间
根据DNS解析日志的信息按照如图Figure 2所示流程图计算用户端口随机性。
图片描述
测试结果如图
(1) 一个用户的测试结果,如Figure 3所示:
图片描述
(1) 一天中所有用户的计算结果,如Figure 4所示:
图片描述

点击查看更多内容
4人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消