研究当今恶意程序的发展趋势,系统比较了在注册表隐藏和检测方面的诸多技术和方法,综合分析了它们存在的不足,提出了一种基于注册表Hive文件来进行恶意程序隐藏检测的方法,使得针对恶意程序的检测更加完整和可靠。实验表明,该方法可以检测出当前所有进行了注册表隐藏的恶意程序。
关 键 词 Hive文件; 恶意程序; 注册表隐藏和检测; RootKit程序
恶意程序,尤其是间谍软件和Rootkit,已经成为了计算机安全领域重点防范的对象。从恶意程序的发展来看,具备一定的信息隐藏功能已经成了一种趋势。隐藏的信息中包括了注册表、进程和端口等。这些信息的隐藏在延长恶意程序的生存周期,加大检测它们难度的时候,也暴露了恶意程序的踪迹。与此同时,针对恶意程序的检测技术也在不断的提高中并形成了理论体系。常见的恶意程序的检测方法包括了启发式分析法和特征码比较法等。但随着恶意程序隐藏技术的提高,使得对它们的检测越发困难,传统的方法和技术已经不能适应发展的需要。 [1][2][3]
本文的研究表明,就现有的恶意程序实现而言,不管其如何隐藏,其最终实现依然是在操作系统框架内并且依赖于系统提供的某些功能。在Windows系统下,恶意程序的存在和运行大都离不开系统注册表中的相关信息。恶意程序也常常隐藏于注册表,因此不可能真正删除它们。但可以通过获取系统注册表的可靠原始信息检查隐藏项,进而获知恶意程序的存在,并最终清除恶意程序。[4]
1 注册表隐藏及检测
注册表是Windows系统存储关于计算机配置信息的数据库,包括了系统运行时需要调用的运行方式的设置,是系统的核心。操作系统是用特殊的文件(Hive文件)[5]来存储注册表的内容,并提供给用户相关的编程接口(APIs)来进行注册表的操作,例如Advapi32.dll中的Registry Functions(如:RegEnumKey)。同时,在Windows操作系统中,函数的调用有着极其规范的层次结构,图1所示是系统实现RegEnumKey函数的调用体系图。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !