发明名称 |
一种ShellCode检测方法和装置 |
摘要 |
本发明提供一种ShellCode检测方法和装置,包括:建立包含ShellCode特征序列的ShellCode指令序列特征库;载入待检测文件,对所述待检测文件进行解析,形成解析文件;对所述解析文件进行指令的模拟执行和分析,记录可疑指令序列并与所述ShellCode指令序列特征库中的ShellCode特征序列进行对比,判断所述解析文件中是否包含ShellCode;输出检测结果。本发明能够在ShellCode执行之前即进行检测,防止了ShellCode对系统造成的影响,及时阻止了其进行恶意篡改的可能性。 |
申请公布号 |
CN104008336B |
申请公布日期 |
2017.04.12 |
申请号 |
CN201410191246.1 |
申请日期 |
2014.05.07 |
申请人 |
中国科学院信息工程研究所 |
发明人 |
喻民;姜建国;李敏;刘超;仇新梁;黄超;王菲飞;王冉晴;赵双;刘坤颖;高翔;胡波 |
分类号 |
G06F21/56(2013.01)I |
主分类号 |
G06F21/56(2013.01)I |
代理机构 |
北京路浩知识产权代理有限公司 11002 |
代理人 |
李迪 |
主权项 |
一种ShellCode检测方法,其特征在于,包括:建立包含ShellCode特征序列的ShellCode指令序列特征库;载入待检测文件,对所述待检测文件进行解析,形成解析文件;对所述解析文件进行指令的模拟执行和分析,记录可疑指令序列并与所述ShellCode指令序列特征库中的ShellCode特征序列进行对比,判断所述解析文件中是否包含ShellCode;输出检测结果;所述对所述解析文件进行指令的模拟执行和分析,记录可疑指令序列并与所述ShellCode指令序列特征库中的ShellCode特征序列进行对比,判断所述解析文件中是否包含ShellCode,包括:步骤S1:初始化可疑指令序列步长;步骤S2:将所述解析文件作为二进制串进行指令的模拟执行和分析,当检测到可疑指令时,执行步骤S3,否则,执行步骤S6;步骤S3:将所述可疑指令序列步长加1;步骤S4:比较所述可疑指令序列步长是否达到所述ShellCode指令序列特征库中的ShellCode特征序列的阀值,如果达到阀值,执行步骤S5,否则,执行步骤S6;步骤S5:判定所述解析文件数据中包含ShellCode,记录告警信息;步骤S6:判断是否对所述解析文件中的所有数据完成检测,如果完成了所有数据检测,判定所述解析文件中不包含ShellCode,否则,回到步骤S2。 |
地址 |
100093 北京市海淀区闵庄路甲89号 |