发明名称 |
一种基于序列化中间表示的源代码分布式检测系统及方法 |
摘要 |
本发明公开了一种基于序列化中间表示的源代码分布式检测系统及方法,所述系统包括协调节点,确定所述待检测的源代码的编程语言和编译器版本,使用集成编译器对待检测的源代码进行编译以生成中间表示,以代码翻译单元为单位对中间表示进行序列化从而生成关联中间表示文件和独立中间表示文件;代理检测节点,根据检测类型从多个规则库中选择至少一个规则库,并且使用所述至少一个规则库对所述至少一个独立中间表示文件进行检测,以确定至少一个独立代码检测结果;以及关联检测节点,根据所述检测关联关系以及至少一个独立代码检测结果对所述关联中间表示文件进行检测,以确定关联代码检测结果。 |
申请公布号 |
CN106295343A |
申请公布日期 |
2017.01.04 |
申请号 |
CN201610721116.3 |
申请日期 |
2016.08.24 |
申请人 |
北京奇虎测腾科技有限公司;北京奇安信科技有限公司 |
发明人 |
章磊;韩建 |
分类号 |
G06F21/56(2013.01)I |
主分类号 |
G06F21/56(2013.01)I |
代理机构 |
北京工信联合知识产权代理事务所(普通合伙) 11266 |
代理人 |
郭一斐 |
主权项 |
一种分布式源代码检测系统,所述系统包括:协调节点,对待检测的源代码进行识别,以确定所述待检测的源代码的编程语言和编译器版本,使用集成编译器根据所述编程语言和编译器版本对待检测的源代码进行编译以生成中间表示,以代码翻译单元为单位对中间表示进行序列化从而生成关联中间表示文件和至少一个独立中间表示文件,其中在关联中间表示文件中标识关联关系;以及对独立代码检测结果和关联代码检测结果进行汇总分析,以确定分布式源代码检测结果;至少一个代理检测节点,根据检测类型从多个规则库中选择至少一个规则库,并且使用所述至少一个规则库对所述至少一个独立中间表示文件进行检测,以确定至少一个独立代码检测结果;以及关联检测节点,根据所述检测关联关系以及至少一个独立代码检测结果对所述关联中间表示文件进行检测,以确定关联代码检测结果。 |
地址 |
100089 北京市海淀区苏州街29号维亚大厦12层035 |