Rootkits: Subverting the Windows Kernel--§1

本书探讨入侵者在成功渗透后的行动,重点介绍rootkit技术及其工作原理。不同于传统的攻击手段讲解,本书侧重于如何在不被发现的情况下维持对系统的控制,并讨论入侵者的动机及隐蔽行动的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

§1 走过不留下任何痕迹 

  狡猾的老手通常都不会留下行动痕迹;象神一样的不可见闻。因此他们通常主宰着敌人的命运。    —SUN TZU

    许多书籍讨论怎样去渗透计算机系统和软件。同时许多作者也已经阐述了怎么去运行黑客脚本,编写缓冲溢出利用程序,以及手工打造shellcode等。其中包括下面基本比较出名的书:Exploiting Software, The Shellcoder's Handbook, 和Hacking Exposed.

  这本书不一样。它将告诉你们攻击者在闯入后怎么都干了些什么而不是前面所说的如何去攻击。与那些辩论性的计算机书籍不同,我们将会花一些篇幅来讨论一次渗透成功后应该做些什么。如果从辩论的角度来讲,这个应该是防御一方的讨论--怎么来检测到入侵以及怎样逆向恶意代码。但是这本书中我们采取了一个从进攻方描述的途径。这本书是关于如何在不被检测到的情况下渗透一个计算机系统。毕竟随着时间的推移,要使渗透获得成功,就不能被检测到。

  在这一章里我们将介绍rootkit技术以及rootkit大概的工作原理。rootkit只是计算机安全的一部分,但是对于那些获得成功的入侵者来说rootkit往往是不可或缺的。

  rootkit自身并不是恶意的。尽管如此,rootkit可能会被恶意程序所使用。了解rootkit技术对于正在抵御现代攻击的你来说是必须的。

§1.1 了解入侵者的动机

  我们称计算机上一个用来进行秘密访问的途径为计算机后门。好来坞的影片中经常会有一些计算机后门。比如通过一个密码或者某个方法来访问高安全级别的计算机系统。但是计算机后门可不是仅仅呆在屏幕上的,他们在现实中可能会被用来窃取数据,管理用户,或者发动更深入的网络攻击等。

  一个入侵者可能会有很多理由在一台被入侵的计算机上留下后门。闯入一个计算机系统是件艰难的差事,所以一旦其成功闯入了,她就想保持这块她刚刚获得的“领土”。她也许还会想利用这台被控制的计算机去发动其他的更深入的网络攻击。

  入侵者渗透计算机的一个主要原因便是收集有用信息。为了达到这一目的,入侵者将要掌握系统的击键事件,观察其某段时间的行为,嗅探网络数据包以及把这些数据通过网络传输给自己。所有这些任务需要在被控制计算机上安装一个后门。入侵者将会在宿主系统上运行一些软件以便来收集和发送这些信息。

  入侵者们也会为了破坏某个计算机系统而对其进行渗透。在这种情况下他们可能会在宿主计算机上留下一个其指定时间爆发的逻辑炸弹。当这个炸弹还没有符合启动条件时,它不能被检测到。即使入侵者不需要再次访问这个系统了,这些遗留下来的软件也不能被检测到。

秘密行动的角色

  为了保证不被检测到,后门程序必须使用隐秘地运行。不幸的是,大部分公开的黑客后门程序都不是十分的隐秘。甚至许多会造成错误。这是因为开发者想把任何功能甚至包括一个厨房也放到后门程序中去。比如说Back Orifice或者NetBus这两款程序,他们罗列有一大串的功能,有些愚蠢到弹出你的光驱。这可能很适合办公室幽默式的玩笑,但是决不应该出现在一个专业的入侵中。如果入侵者不小心,她就可能在网上暴露其行动,整个入侵行动也就泡汤了。正是如此,专业的入侵往往需要特别的自动的后门程序--只实现一个功能。这会给结果带来一个坚实的保证。

  如果计算机用户认为他们的计算机或者网络被渗透了,他们也许会进行调查取证工作,寻找不同寻常的活动的后门程序。最好的逃避取证的方法是隐秘地运行。如果他们没有怀疑到有入侵发生,那么取证调查也就不会应用到宿主系统上。入侵者可能使用一些不同的隐秘的方法。一些可能只是简单地保持网络数据流通量保持最低以及避免在硬盘上存储文件。其他的可能采用一些迷惑手段来存储文件,这使得取证更加困难。如果使用恰当,取证行为也许永远不会被应用到被控制的系统,因为没有检测到任何闯入行为。即使怀疑宿主系统被入侵了,好的迷惑性的存储数据的技巧也会躲开取证的检测。

什么时候不必在意隐秘性

  有些时候入侵者并不需要隐秘地行动。比如如果入侵者想渗透到一个计算机并且只是需要足够多的时间来窃取一些东西,比如一个邮件列表,也许她并不会在意是否会被检测到。

  其他的当入侵者可能只是为了使宿主计算机崩溃的时候,往往也不需要隐秘行动。比如宿主计算机是一个防空控制系统。这种情况下隐秘行动不是必须的。只要使系统崩溃就足以完成目标了。大部分情况下,一次计算机崩溃对于受害人来说是明显(和烦恼)的。如果你想学到更多的关于这种类型的攻击,这本书将不会帮助到你。

  现在你已经对入侵者的意图有了一个基本的了解,我们将在本章余下的小节中大体讨论下rootkit以及此主体的一些背景比如rootkit怎么工作的。 

本书是目前第一本关于rootkit的详尽指南,包括rootkit的概念、它们是怎样工作的、如何构建和检测它们。世界顶级软件安全专家、rootkit.com创始人Greg Hoglund和James Butler向大家详细介绍攻击者是如何进入系统并长期驻留而不会被检测到的,以及黑客是如何摧毁Windows XP和Windows 2000内核系统的,其概念可以应用于现代任何主流操作系统。通过本书,读者可以全面掌握rootkit,提升自己的计算机安全防范能力。 [图书目录]第1章 销声匿迹  1.1 攻击者的动机   1.1.1 潜行的角色   1.1.2 不需潜行的情况  1.2 rootkit的定义  1.3 rootkit存在的原因   1.3.1 远程命令和控制   1.3.2 软件窃听   1.3.3 rootkit的合法使用  1.4 rootkit的存在历史  1.5 rootkit的工作方式   1.5.1 打补丁   1.5.2 复活节彩蛋   1.5.3 间谍件修改   1.5.4 源代码修改   1.5.5 软件修改的合法性  1.6 rootkit与其他技术的区别   1.6.1 rootkit不是软件利用工具   1.6.2 rootkit不是病毒  1.7 rootkit与软件利用工具 . 1.8 攻击型rootkit技术   1.8.1 hips   1.8.2 nids   1.8.3 绕过ids/ips   1.8.4 绕过取证分析工具  1.9 小结 第2章 破坏内核  2.1 重要的内核组件  2.2 rootkit的结构设计  2.3 在内核中引入代码  2.4 构建windows设备驱动程序   2.4.1 设备驱动程序开发工具包   2.4.2 构建环境   2.4.3 文件  2.5 加载和卸载驱动程序  2.6 对调试语句进行日志记录  2.7 融合rootkit:用户和内核模式的融合   2.7.1 i/o请求报文   2.7.2 创建文件句柄   2.7.3 添加符号链接  2.8 加载rootkit   2.8.1 草率方式   2.8.2 正确方式  2.9 从资源中解压缩.sys文件  2.10 系统重启后的考验  2.11 小结 第3章 硬件相关问题  3.1 环0级  3.2 cpu表和系统表  3.3 内存页   3.3.1 内存访问检查   3.3.2 分页和地址转换   3.3.3 页表杏询   3.3.4 页目录项   3.3.5 页表项   3.3.6 重要表的只读访问   3.3.7 多个进程使用多个页目录   3.3.8 进程和线程  3.4 内存描述符表   3.4.1 令局描述符表   3.4.2 本地描述符表   3.4.3 代码段   3.4.4 调用门  3.5 中断描述符表  3.6 系统服务调度表  3.7 控制寄存器   3.7.1 控制寄存器   3.7.2 其他控制寄存器   3.7.3 eflags寄存器  3.8 多处理器系统  3.9 小结 第4章 古老的钩子艺术 第5章 运行时补丁 第6章 分层驱动程序 第7章 直接内核对象操作 第8章 操纵硬件 第9章 隐秘通道 第10章 rootkit检测 本站提供的Rootkits--Windows内核的安全防护 中文 PDF版 [21M] 资源来源互联网,版权归该下载资源的合法拥有者所有。 收起信息返回顶部
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值