Windows恶意代码动态通用脱壳方法研究
DOI:
作者:
作者单位:

作者简介:

通讯作者:

中图分类号:

TP309.7

基金项目:

国家重点研发计划(2016YFB0800605,2016QY06X1205);国家科技重大专项(2015ZX01040101-002);四川省软科学计划(2016ZR0087)


Research of dynamic general unpacking methods for Windows malware
Author:
Affiliation:

Fund Project:

  • 摘要
  • |
  • 图/表
  • |
  • 访问统计
  • |
  • 参考文献
  • |
  • 相似文献
  • |
  • 引证文献
  • |
  • 资源附件
  • |
  • 文章评论
    摘要:

    加壳技术为程序保护提供了一种新的思路,但同时也成为恶意代码的保护伞.恶意软件通过加壳可以批量、快速的生成海量变种,给分析人员带来了极大的困扰.因此,研究脱壳技术成为解决该问题的一种有效方法. 传统的脱壳方法如UPX、ASProtect等针对的是特定种类的壳,因其不能应付壳的版本与种类的变化而逐渐无法适用,研究一种通用的动态脱壳方法是极为必要的.根据加壳程序执行时都要在内存中还原原始代码的特点,在动态二进制分析平台的基础上提出了一种基于内存标记的动态通用脱壳方法.实验表明:该方法无需先验知识就可以有效地定位加壳程序的原始入口点,提取出程序的原始代码,具有较好的脱壳效果.

    Abstract:

    Code packing brings a new conception to protect software, but it also serves as an umbrella for malicious code. It has been intensified that malware using packing techniques to evade detection and it troubles analysts due to the massive variants of malware produced by code packing. Traditional unpacking methods based on feature matching gradually become inapplicable because they can’t cope with the change of shell version and type, so a general unpacking method would be very useful. In this paper, we proposed a common unpacking method based on dynamic binary analysis platform, according to the property that packer will restore the original code during the process of executing. The experimental results show that our method can effectively locate the original entry point of the program, extract the code that has been hidden, and can get the accurate image size of the process in the memory, which can effectively realize dynamic unpacking of the shell code.

    参考文献
    相似文献
    引证文献
引用本文

引用本文格式: 郭文,王俊峰. Windows恶意代码动态通用脱壳方法研究[J]. 四川大学学报: 自然科学版, 2018, 55: 283.

复制
分享
文章指标
  • 点击次数:
  • 下载次数:
  • HTML阅读次数:
  • 引用次数:
历史
  • 收稿日期:2017-06-12
  • 最后修改日期:2017-06-12
  • 录用日期:2017-07-19
  • 在线发布日期: 2018-03-13
  • 出版日期:
通知
自2024年3月6日起,《四川大学学报(自然科学版)》官网已迁移至新网站:https://science.scu.edu.cn/,此网站数据不再更新。
关闭