-
公开(公告)号:CN105389195B
公开(公告)日:2018-08-10
申请号:CN201510707442.4
申请日:2015-10-27
Applicant: 北京理工大学
IPC: G06F11/36
Abstract: 本发明公开了一种基于代码替换和正则表达式的静态分析工具改进方法,静态分析工具采用预处理模块对源代码进行预处理,生成中间代码;采用语法分析模块对中间代码进行语法分析最终获得双向token链表;采用缺陷模式匹配模块用于将双向token链表与缺陷模式进行对比,找到其中匹配的部分,处理获得静态分析结果;在预处理模块中对源代码进行预处理时,将i++替换为(i=i+1)‑1,将++i替换为i=i+1,将i‑‑换为(i=i‑1)+1,将‑‑i替换为i=i‑1;在缺陷模式匹配模块中增加如下正则表达式:if(%var%=%num%);if(%any%&%any%);scanf(%str%,%var%);其中%var%、%num%、%any%、%any%、%str%以及%var%均为变量。本发明可以提高整形溢出问题的准确度,降低漏报率,少人工检查的成本。
-
公开(公告)号:CN107832611A
公开(公告)日:2018-03-23
申请号:CN201710987829.9
申请日:2017-10-21
Applicant: 北京理工大学
Abstract: 本发明公开了一种动静态特征结合的僵尸程序检测与分类方法,基于静态特征信息,进行僵尸程序检测;检测过程中的特征选择采用了采用改进的TF-IDF算法,改进的TF-IDF算法是在TF-IDF算法计算TF-IDF权重时加入类区分度因子GF,用于表征特征项在某一类别中的出现程度与在其他所有类别中出现程度的比例;运行检测的僵尸程序,提取僵尸程序运行的API序列和网路流量信息,处理获得僵尸程序家族分类特征;基于僵尸程序家族分类特征,对僵尸程序进行分类。本发明能够自动进行分类,降低耗时,提高分类效率。
-
公开(公告)号:CN104766016B
公开(公告)日:2018-01-09
申请号:CN201510176839.5
申请日:2015-04-14
Applicant: 北京理工大学
IPC: G06F21/57
Abstract: 本发明公开了一种基于系统调用短序列的软件漏洞检测方法,用于进行软件的漏洞检测和定位,步骤如下:首先建立被测系统的函数调用链CS,存于函数堆栈表中,其索引记为CSV;获取正常行为下的系统调用序列,将每个调用节点i至其后n‑1个节点作为正常短序列;同理获取未知行为下的未知短序列;对于每个未知短序列,将其与正常短序列一一对应元素的调用偏差相加获得序列偏差,获取最小序列偏差值;以元素不匹配个数作为海明距离,找到最小海明距离;当最小海明距离的最大值和最小序列偏差的最大值均超过一定阈值时,找到最近一次未超阈值的未知短序列中调用偏差值最大的调用节点,依据CSV值找到漏洞的位置。该方法提高了检测效率。
-
公开(公告)号:CN106970803A
公开(公告)日:2017-07-21
申请号:CN201710279321.3
申请日:2017-04-25
Applicant: 北京理工大学
CPC classification number: G06F8/71 , G06F11/3604
Abstract: 本发明公开了一种软件系统演化的分析方法和装置。该方法包括:以第一版本软件中的信息资源为节点,以第一版本软件中信息资源之间的关联关系为边,构建第一版本软件的第一软件结构拓扑图;根据代数拓扑复形原理,将第一软件结构拓扑图中的每一个节点表述成一个代数构件,并获取代数构件之间的关系信息;将第一软件结构拓扑图转化为以代数构件为节点,以关系信息为边的第二软件结构拓扑图,并将第二软件结构拓扑图分解为代数构件表达式;输出第一版本软件的代数构件表达式。本发明以代数运算的形式分析该软件系统的演化过程,从整体上对软件系统的演化过程进行掌握,指导软件系统的重构和维护;提高软件系统,特别是大规模软件系统的演化分析效率。
-
公开(公告)号:CN104978416A
公开(公告)日:2015-10-14
申请号:CN201510362467.5
申请日:2015-06-26
Applicant: 北京理工大学
IPC: G06F17/30
CPC classification number: G06F17/30979
Abstract: 本发明公开了一种基于Redis的对象智能检索方法。本发明针对某一对象进行分析,查看在某一时间段内检索过该对象的所有检索者,通过对这些检索者的分析,加以利用Redis系统Sort-Set与List数据结构,按照赋予的权值或设定的排列方法进行时序排序,进而获得针对不同检索者的推荐对象,针对性较强。该过程无需人工录入,自动筛选出符合条件对象。
-
公开(公告)号:CN104766016A
公开(公告)日:2015-07-08
申请号:CN201510176839.5
申请日:2015-04-14
Applicant: 北京理工大学
IPC: G06F21/57
Abstract: 本发明公开了一种基于系统调用短序列的软件漏洞检测方法,用于进行软件的漏洞检测和定位,步骤如下:首先建立被测系统的函数调用链CS,存于函数堆栈表中,其索引记为CSV;获取正常行为下的系统调用序列,将每个调用节点i至其后n-1个节点作为正常短序列;同理获取未知行为下的未知短序列;对于每个未知短序列,将其与正常短序列一一对应元素的调用偏差相加获得序列偏差,获取最小序列偏差值;以元素不匹配个数作为海明距离,找到最小海明距离;当最小海明距离的最大值和最小序列偏差的最大值均超过一定阈值时,找到最近一次未超阈值的未知短序列中调用偏差值最大的调用节点,依据CSV值找到漏洞的位置。该方法提高了检测效率。
-
公开(公告)号:CN104766015A
公开(公告)日:2015-07-08
申请号:CN201510170817.8
申请日:2015-04-10
Applicant: 北京理工大学
IPC: G06F21/57
Abstract: 本发明公开了一种基于函数调用的缓冲区溢出漏洞动态检测方法,包括如下步骤:首先获取被测程序的函数调用指令地址和返回指令地址,构建输入参数、运行被测程序;当函数调用发生,获取基址寄存器中的值EBP_B;在函数调用结束时,获取基址寄存器中的值EBP_A;若EBP_B≠EBP_A,则记录漏洞并报警;若EBP_B=EBP_A,则判断无漏洞;重复上述过程直至被测程序运行结束,继续获取该次运行的函数调用信息,与软件异常行为模型进行匹配,若匹配,记录可能漏洞;若不匹配,则该次输入下程序的行为没有体现出缓冲区溢出漏洞的特征。构造大量输入重复检测。该方法能够进行动态检测,并提高检测效率。
-
公开(公告)号:CN103838671A
公开(公告)日:2014-06-04
申请号:CN201410038963.0
申请日:2014-01-26
Applicant: 北京理工大学
IPC: G06F11/36
Abstract: 本发明提供一种基于复杂网络的软件缺陷度量方法,能够提前预测软件系统中存在的缺陷漏洞,避免日后造成的影响。步骤一、首先根据系统可执行文件逆向生成系统类图;步骤二、根据得到的系统类图转换成软件结构的网络图,其中类代表节点,类之间的关系代表边;步骤三、根据得到的网络图进行复杂网络层面的分析,利用复杂参数进行复杂网络参数中平均最短距离、出入度、聚集系数的计算,得到关于软件的复杂特性度量值;步骤四、根据面向对象层面引入层次度量体系,得到关于软件的面向对象特性度量值;步骤五、对步骤三得到的复杂特性度量值和步骤四得到的面向对象特性度量值与已有标准值进行对比,进而评估,最终得出关于被分析软件的缺陷度量结果预测。
-
公开(公告)号:CN114706780B
公开(公告)日:2024-07-19
申请号:CN202210389330.9
申请日:2022-04-13
Applicant: 北京理工大学
IPC: G06F11/36 , G06N20/20 , G06N20/10 , G06F18/2411 , G06F18/2431 , G06N5/01
Abstract: 本发明提供了一种基于Stacking集成学习的软件缺陷预测方法,本发明不是人工根据先验知识或者搜索算法进行组合,而是通过Stacking集成学习算法将RF、XGBoost和SVM三个基模型作为初级模型,将缺陷数据集样本特征输入到初级模型中训练且得到三个基模型对待测样本预测为缺陷样本的概率值,然后将三个概率值进行特征组合,作为输入次级模型LR的二次特征,最后将二次特征作为LR的输入,对LR模型进行训练,得到基于Stacking集成学习的软件缺陷预测复合模型(XGBoost‑RF‑SVM)‑LR;也就是说,本发明将四个弱分类器组合成为强分类器,在一定程度上提高了预测的精度。
-
公开(公告)号:CN117439768A
公开(公告)日:2024-01-23
申请号:CN202311181867.7
申请日:2023-09-13
Applicant: 北京理工大学
IPC: H04L9/40 , H04L67/1396 , G06F21/56
Abstract: 本发明涉及一种针对分阶段隐写式恶意代码的检测方法与系统,用于对抗网络攻击。具体的,分别检测客户端是否发生了从网上下载图片、从图片中解析出其它文件,以及程序隐蔽执行的行为,如果上述行为均存在,则发现分阶段隐写式恶意代码。本发明针对分阶段隐写式恶意代码各阶段功能模块的特点分别定义相关的行为特征,采用静态分析的方式分析该类型恶意代码在运行过程中所必需执行的关键函数,由此构建自动化的检测流程,最终实现对分阶段隐写式恶意代码的高效和准确检测,为构建网络安全防护体系提供支撑。
-
-
-
-
-
-
-
-
-