资源预览内容
第1页 / 共40页
第2页 / 共40页
第3页 / 共40页
第4页 / 共40页
第5页 / 共40页
第6页 / 共40页
第7页 / 共40页
第8页 / 共40页
第9页 / 共40页
第10页 / 共40页
亲,该文档总共40页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
本科毕业设计(论文)基于Windows内核的进程隐藏工具的设计与实现 学 院 软件学院 专 业 软件工程 学生姓名 庞 博 学生学号 201030631589 指导教师 刘孜文 提交日期 2014 年 5 月 20 日摘 要随着计算机技术和互联网技术的快速发展,信息安全技术显得格外重要,其中的rootkit技术在安全领域越来越重要,是21世纪威胁计算机安全的最大挑战之一。rootkit是电脑上存在的持久的难以检测的一组程序和代码,包括隐藏进程,注册表隐藏文件隐藏,后门木马等。其中最重要的是进程隐藏技术,它是rootkit技术中非常典型的一种应用。本文主要介绍Windows系统的内核rootkit的一种,通过直接操作windows内核对象实现进程隐藏。Windows的许多公开的rootkit都是在用户空间实现的,但内核rootkit比较复杂,也最难检测。本文主要的研究环境包括Windows xp,Win7x86和Win7x64,因为这3种系统占据国内大部分的市场份额,比较具有代表性。这3类Windows系统,在运行的时候,会在内存中保留内核对象信息,包括进程对象。每个内核对象的本质就是一个由操作系统分配的内存块。这个内存块是一个数据结构,其成员维护着与内核对象相关的信息,应用程序只能通过调用系统API访问这块内存。最后介绍了Windows为进程对象建立的结构体和链表,阐述了一个常用内核态进程隐藏技术的原理,直接操作内核对象,并使用该技术设计并实现一个基于Windows内核进程隐藏工具,提供可操作界面,进行一系列测试,在实际中能够实现批量隐藏进程。关键词:进程隐藏;rootkit;DKOM;直接操作内核对象;windows内核Abstract With the rapid development of computer technology and Internet technology, information security technology is particularly important where the rootkit technology is increasingly important in the field of security, one of the greatest challenges of the 21st century threats to computer security. A rootkit is a set of procedures and enduring difficult to detect the presence of the code on the computer, including hidden processes, registry hidden files hidden, backdoor Trojans. One of the most important is the hidden process technology, it is rootkit techniques is very typical kind of application.This paper describes a Windows system kernel rootkit through direct manipulation of windows kernel objects hidden process. Many public rootkit Windows are implemented in user space, but the kernel rootkit is more complex, but also the most difficult to detect.In this paper, the main research environment including Windows xp, Win7x86 and Win7x64, because these three systems account for most of the domestic market share, compared with a representative. These three types of Windows systems, at run time, the information will be retained in memory and kernel objects, including the process object. Each kernel object is essentially an operating system from the allocated memory block. This memory block is a data structure that maintains its members with information related to kernel objects, the application can only access this memory by calling the system API.Finally, the structures and processes linked to objects created by Windows, elaborated a common kernel mode processes hiding principle, the direct operating kernel objects, and uses the technology to design and implement a process of hiding the Windows kernel-based tool that provides actionable interface , conducted a series of tests, the batch can be achieved in practice to hide the process. Keyword: Hidden process, rootkit, DKOM, Direct Kernel Object Manipulation,Windows kernel目录摘 要IIAbstractIII第一章 绪 论11.1 引言11.1.1 研究背景及现状11.1.2 研究意义21.2 研究内容31.3 论文结构3第二章 相关背景知识52.1 Windows系统总体架构52.1.1 用户模式和内核模式52.1.2 操作系统分层52.1.3 Win32子系统与应用程序62.1.4 Native API72.1.5 系统服务72.2 Windows相关的系统组件82.2.1 对象管理器82.2.2 进程和线程管理器82.2.3 I/O管理器92.3 Windows常见名词解释92.3.1 NT式和WDM式驱动92.3.2 符号链接92.3.3 IRQL92.3.4 IRP102.3.5 对象名字空间102.4 rootkit进程隐藏技术介绍102.4.1 用户模式rootkit102.4.2 内核模式rootkit112.4.3 操纵硬件rootkit12第三章 内核进程隐藏工具模型133.1 模型概述133.2 EPROCESS 结构133.3 链表 LIST_ENTRY 结构143.4 枚举活动进程153.5 隐藏进程153.6 本章小结17第四章 设计与实现184.1 概述184.2 总体设计184.2.1 设计目标184.2.2 总体框架设计184.3 详细设计194.3.1 通信模块的方式194.3.2 通信模块的设计与实现214.3.3 驱动模块的设计与实现234.3.4 用户模块的设计与实现244.4 设计小结26第五章 测试与实验分析275.1 综述275.2 开发环境275.2 实验环境285.3 单元测试过程285.3.1 内核驱动模块测试285.3.2 用户界面模块测试295.3.3 通信模块测试295.4 集成测试过程305.5 验收测试305.6 测试总结30第六章 结 论336.1 全文总结336.2 未来展望34参考文献35致谢36- 第一章 绪 论1.1 引言1.1.1 研究背景及现状随着计算机的技术的迅猛发展和计算机网络的普及,世界各国的经济、政治、军事以及人们的日常生活都严重依赖计算机,智能家居和智能城市已经开始被人们所接受。信息技术越是普及,信息安全就显得越为重要,试想一下,当未来生活充满智能电子设备,而这些设备中充斥着木马、病毒、后门,那是多么可怕的一件事情。最近几年出现的CSDN论坛、小米论坛、天涯论坛等相继发生泄密的事件。CSDN论坛泄密造成600万用户的个人信息被泄漏,小米论坛被拖库导致超过800万用户信息被泄漏。2007年肆虐中国的熊猫烧香病毒感染了数百万台计算机,2013年3月,中国解放军报报道,美国曾利用“震网”蠕虫病毒攻击伊朗的铀浓缩设备,已经造成伊朗核电站推迟发电。如果我们的生活全部都依赖只能电子设备,而这些设备却被非法份子恶意操控,你还能安心生活吗?rootkit现在的定义,是指持久且无法察觉地存在与计算机之上的一组程序和代码,包括进程隐藏,注册表隐藏,文件隐藏,后门木马等1。其实,嵌入式设备等电子设备,也是有恶习代码的存在。只是现在的这些设备,功能比较单一,与外界交互更少,基本没有接入互联网之中。未来的只能家居、只能城市必定连接互联网,就会给那些不法分子有机可乘,这些设备上的rootkit也会应运而生。rootkit具有隐藏的特性,它本身不具备恶意性质,但恶意程序却可以利用它。rootkit是把双刃剑,不仅可以用于合法的用途,例如法律实施机构可以使用来在监控犯罪嫌疑人中搜集证据,但也可以被黑客利用,非法。Windows上的rootkit主要分为用户态和内核态。用户态就是普通应用程序执行的权限状态,内核一般是驱动、系统内核才拥有的权限。Windows用户态的rootkit实现起来比较容易,主要依赖钩子技术,一是导入地址表钩子,二是内联函数钩子,还可以使用硬件操作技术,把rootkit写入BIOS之中,此外还可以注册为系统服务、远线程注入,替换可执行文件、替换链接库等,缺点就是容易被检测。Windows内核态的rootkit拥有ring0级的权限,能够操作内核代码,实现方式主要有内核钩子直接内核对象操作(DKOM)两种方式。内核钩子有一下三种,系统服务描述表钩子(SSDT Hook)和中断描述符表钩子(IDT Hook),以
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号