Page 168 - 软件工程与项目管理
P. 168

软件工程与项目管理
             Software Engineering & Project Management



            的字段格式并通过计算来自多个会话中的目标应用层协议中基于统计学的相关性
            来推断它们的类型。这里所说的统计相关性是指在不同的协议消息或者协议元数
            据之间的关联,如消息长度、客户端 IP 地址或者服务端 IP 地址等。FieldHunter
            系统首先对众所周知的协议进行评估,以识别字段边界并推断协议类型,重点专
            注于识别消息类型,例如在 DNS 协议中的标志位、HTTP 中的 GET/POST 请求参数、

            消息长度、主机标志符、cookie 字段、序列号、通用计数器和时间戳等。在这个
            过程中,文本和二进制协议都采用常见的统计属性和启发式技术来推断消息类型,
            这个推断步骤是发现整个协议格式和协议有限状态机的潜在步骤,缺陷在于没有

            进行协议状态机推断。但 FieldHunter 的优点在于它不但对公开协议进行测试,
            还对未公开协议规范的 SopCast 协议基于恶意软件 Ramnit 进行测试,取得了良好
            的效果。
                 ReFormat 基于统计函数片段中数学指令和逻辑指令在所有指令中所占百分
            比来精确定位协议字段边界,从而对协议进行解密。高君丰等人为解决 ReFormat

            中编码函数的特征差别较大、统计特征更是不明显、识别率较低的问题,提出了
            一种基于编码协议的污点回溯逆向方法,将网络输出数据与编码前的内存数据作
            为污染源,通过减少计算空间、节省计算环境、并从客户端的存储空间中定位污

            染源以应对多种类型的编码功能分析要求,解决了之前方法应用范围窄的问题。
            在该方法中首先使用动态调试的方法确定网络输出接口函数与最小执行轨迹区
            间,然后通过内存快照方法保存线程上下文信息,通过对应用程序的指令集插桩
            分析执行轨迹,最后采用回溯方法定位污染源。实验通过包含三种编码方式(加
            密、压缩、校验)的三类软件完整性检测证明了其方法的有效性,可解析多类型

            的编码协议。但该方法缺陷在于需要调试和加载目标程序,若应用具有反调试机
            制,则无法进行逆向分析。






                            第三节 软件逆向工程技术的应用


                 一、3D 打印与逆向工程技术在文物保护中的应用

                 文物是历史的见证、文明的果实,具有极大研究价值,而文物在见证历史



             158
             158
   163   164   165   166   167   168   169   170   171   172   173