[发明专利]一种工控协议逆向分析方法及装置在审
申请号: | 202010532058.6 | 申请日: | 2020-06-11 |
公开(公告)号: | CN112311755A | 公开(公告)日: | 2021-02-02 |
发明(设计)人: | 石凌志 | 申请(专利权)人: | 北京威努特技术有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06 |
代理公司: | 北京三聚阳光知识产权代理有限公司 11250 | 代理人: | 林韵英 |
地址: | 100085 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 协议 逆向 分析 方法 装置 | ||
1.一种工控协议逆向分析方法,其特征在于,包括:
获取待分析报文集合;
将所述待分析报文集合中所有报文分解为字节数组,将分解后的所有报文合成二维协议矩阵,每一个报文分解得到的所有字节数组为所述二维协议矩阵的一行,各报文处于同一位置的字节数组组成所述二维协议矩阵的一列;
结合各所述报文的报文时间对所述二维协议矩阵中每一列中的字节数组进行多序列比对,确定每一列中的字节数组的字段类型,其中,不同的字段类型对应的字节数组的变化规律不同;
基于每一列中的字节数组的字段类型和所述每一列中的字节数组的数值确定每一列中的字节数组对应的协议内容;
按顺序将所有的字节数组对应的协议内容组合,得到该类报文对应的工控协议。
2.根据权利要求1所述的工控协议逆向分析方法,其特征在于,在获取待分析报文集合之后,将所述待分析报文集合中所有报文分解为字节数组之前,还包括:
将所述待分析报文集合中的报文与先验知识库进行比对,判断所述待分析报文集合中的报文是否符合已知工控协议,其中,所述先验知识库为预先建立的包含已知工控协议的数据库;
当所述待分析报文集合中的报文符合已知工控协议时,则输出该类报文对应的工控协议;
当所述待分析报文集合中的报文不符合已知工控协议时,执行将所述待分析报文集合中所有报文分解为字节数组,将分解后的所有报文合成二维协议矩阵的步骤。
3.根据权利要求1所述的工控协议逆向分析方法,其特征在于,所述获取待分析报文集合的步骤,包括:
采集不同业务的多个初始报文;
去除所述多个初始报文的通信协议报文头,得到多个原始报文;
按照所述原始报文的报文方向和报文长度,对所述多个原始报文进行聚类,得到多个待分析报文集合。
4.根据权利要求3所述的工控协议逆向分析方法,其特征在于,所述字段类型包括渐变字段;
所述基于每一列中的字节数组的字段类型和所述每一列中的字节数组的数值确定每一列中的字节数组对应的协议内容的步骤,包括:
将所述二维协议矩阵中字段类型为渐变字段的字节数组和该字节数组前N1列的字节数组进行组合,形成第一组合字节集合,所述N1大于等于1,所述第一组合字节集合中包括多个第一组合字节;
计算所述第一组合字节集合中任意两个所述第一组合字节的数值的差值,以及任意两个所述第一组合字节对应的报文时间的差值;
若任意两个所述第一组合字节的数值的差值和所述报文时间的差值相同,则判定所述字段类型为渐变字段的字节数组为用于表示时间的时间字段。
5.根据权利要求3所述的工控协议逆向分析方法,其特征在于,所述字段类型包括多变字段,所述多变字段表示对应列的字节数组的数值无规律变化;
所述基于每一列中的字节数组的字段类型和所述每一列中的字节数组的数值确定每一列中的字节数组对应的协议内容的步骤,包括:
将所述二维协议矩阵中字段类型为多变字段的字节数组和该字节数组前N2列的字节数组进行组合,形成第二组合字节集合,所述N2大于等于1,所述第二组合字节集合中包括多个第二组合字节;
若所述第二组合字节集合中任意所述第二组合字节的数值与任意第二组合字节对应的报文的报文长度相同,则判定所述字段类型为多变字段的字节数组为用于表示报文长度的长度字段。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京威努特技术有限公司,未经北京威努特技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010532058.6/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种祛皱修护的护肤品
- 下一篇:一种盐敏感絮凝剂的制备方法以及使用方法