论文部分内容阅读
近年来,网上交易平台发展迅猛,密码被窃取后造成重大经济损失的案件却层出不穷,屡见不鲜。用户普遍具有密码保护意识,通常也都使用了安全软件,可是却在不知不觉中被盗走密码,主要原因是恶意程序大多使用了隐藏技术,隐藏在系统之中却不被发现,因此反隐藏就成为在病毒防护过程中的极为重要的一环。 恶意程序的隐藏手段现在已经衍化出多种技术。在用户态主要有各类注入技术和挂钩技术,在内核态有内核函数挂钩技术和基于多种不同的内核数据和对象的隐藏技术。本文以恶意代码所使用的隐藏技术为研究对象,设计并实现了一个综合内核态与用户态多种方法和手段的进程隐藏检测和分析工具。在用户态,使用基于系统调用行为的分析方法实现了对进程隐藏行为的检测和分析,并针对基于动态调用API的免杀技术提出并实现了一种基于JMP跳转监视的分析方法。在内核态使用基于驱动程序的内核编程技术,对内核中EPROCESS链表,系统服务描述表,PspCidTable句柄表等内核数据和结构进行监视。通过比较多种内核数据的变化,获取恶意隐藏进程在内核态的行为信息,从而检测出恶意隐藏进程并分析得出其所使用的方法。 实验表明,本文提出的基于JMP跳转监视的分析方法是准确有效的。本文所实现的检测分析工具对主流进程隐藏的技术手段如用户态注入技术、系统服务表的挂钩技术、基于内核对象的隐藏技术、基于PspCidTable的隐藏等技术的检测都是正确成功的,具有较好的检测和分析效果。