内容简介
Amazon五星级书,rootkit领域的重要著作,计算机安全领域经典。从反取证角度,深入、系统解读rootkit的本质和核心技术,以及如何构建属于自己的rootkit武器。包含大量模块化示例,行文风趣幽默,颇具实战性和可读性。
全书共分四部分。第一部分(第1~6章),全新阐释rootkit
本质、rootkit与反取证关系、安全领域态势,以及反取证技术的策略、应对建议和攻击优势。之后,从硬件、软件(系统)、行业工具和内核空间方面介绍rootkit调查过程和利用反取证技术破坏调查过程的策略,使你对取证和反取证有全新了解。第二部分(第7~8章),主要介绍rootkit如何阻止磁盘分析和可执行文件的分析,而调查人员如何利用有效的工具和策略来分析辅助存储器(例如磁盘分析、卷分析、文件系统分析以及未知二进制分析)中可能留下的rootkit痕迹,并对内存驻留和多级释放器技术及用户态Exec(Userland
Exec)理念进行了深入剖析。第三部分(第9~15章)主要详解攻击者利用rootkit破坏数据收集过程和造成“一切安好”的假象的前沿实用策略:阻止在线取证、内核模式策略、更改调用表、更改代码、更改内核对象、创建隐秘通道和部署带外rootkit。第四部分(第16章),高屋建瓴地重新总结了rootkit的核心策略,以及如何识别隐藏的rootkit、注意事项和如何处理感染等。
目录
译者序
献给“孙悟空”
前言
第一部分基础知识
第1章清空思想 / 1
1.1不速之客 / 1
1.2提炼一个更确切的定义 / 2
1.2.1攻击循环 / 3
1.2.2rootkit在攻击循环中的角色 / 4
1.2.3单级释放器与多级释放器 / 4
1.2.4其他部署方法 / 5
1.2.5确切的学术性定义 / 6
1.2.6不要混淆设计目标与实现 / 7
1.2.7rootkit技术——力量倍增器 / 7
1.2.8金·费尔比式比喻:破坏与毁坏 / 8
1.2.9为何使用隐身技术?rootkit不能被发现吗 / 8
1.3rootkit不等于恶意软件 / 9
1.3.1感染源 / 9
1.3.2广告软件和间谍软件 / 10
1.3.3僵尸网络的兴起 / 10
1.3.4引入:愚人飞客病毒 / 11
1.3.5恶意软件与rootkit / 11
1.4谁在开发和使用rootkit / 12
1.4.1市场营销 / 12
1.4.2数字版权管理 / 12
1.4.3不是rootkit,而是种功能 / 13
1.4.4法律实施 / 13
1.4.5商业间谍 / 14
1.4.6政治间谍 / 14
1.4.7网络犯罪 / 15
1.4.8谁开发了颇具艺术感的rootkit / 16
1.4.9rootkit的道德性 / 17
1.5慑魄惊魂:战场伤员分类 / 17
1.6总结 / 21
第2章反取证综述 / 22
2.1事件响应 / 23
2.1.1入侵检测系统(和入侵防御系统) / 23
2.1.2异常行为 / 23
2.1.3发生故障 / 24
2.2计算机取证 / 24
2.2.1rootkit不是隐身的吗?为什么还要进行反取证 / 24
2.2.2假定糕案例的场景 / 25
2.2.3取证技术分类:第一种方法 / 26
2.2.4取证技术分类:第二种方法 / 26
2.2.5在线取证 / 27
2.2.6当关机不再是种选择 / 28
2.2.7关于拔掉电源插头的争论 / 28
2.2.8崩溃转储或者不进行崩溃转储 / 28
2.2.9事后检查分析 / 28
2.2.10非本地数据 / 29
2.3AF策略 / 29
2.3.1数据销毁 / 30
2.3.2数据隐藏 / 30
2.3.3数据转换 / 31
2.3.4数据伪造 / 31
2.3.5数据源消除 / 31
2.4AF技术的总体建议 / 31
2.4.1使用定制工具 / 31
2.4.2低且慢与焦土策略 / 32
2.4.3避免特定实例攻击 / 32
2.4.4使用分层防御 / 33
2.5不明身份者具有优势 / 33
2.5.1攻击者能够专注于攻击 / 33
2.5.2防御者面临制度性挑战 / 33
2.5.3安全是一种过程(而且还是一种令人讨厌的过程) / 34
2.5.4持续增加的复杂度 / 34
2.6总结 / 35
第3章硬件概述 / 36
3.1物理内存 / 36
3.2IA-32内存模型 / 38
3.2.1平面内存模型 / 38
3.2.2分段内存模型 / 38
3.2.3操作模式 / 39
3.3实模式 / 39
3.3.1案例研究:MS-DOS / 40
3.3.2这不是浪费时间吗?为什么学习实模式 / 42
3.3.3实模式执行环境 / 42
3.3.4实模式中断 / 44
3.3.5分段和程序控制 / 46
3.3.6案例研究:转储IVT / 47
3.3.7案例研究:用TSR记录击键 / 48
3.3.8案例研究:隐藏TSR / 52
3.3.9案例研究:为TREE.COM命令打补丁 / 56
3.3.10小结 / 58
3.4保护模式 / 59
3.4.1保护模式执行环境 / 59
3.4.2保护模式分段 / 61
3.4.3保护模式分页 / 64
3.4.4地址扩展分页 / 66
3.4.5进一步研究页表 / 67
3.4.6进一步研究控制寄存器 / 68
3.5实现内存保护 / 70
3.5.1通过分段实现保护 / 70
3.5.2界限检查 / 70
3.5.3类型检查 / 70
3.5.4特权检查 / 71
3.5.5受限指令检查 / 72
3.5.6门描述符 / 72
3.5.7保护模式中断表 / 75
3.5.8分页保护 / 76
3.5.9总结 / 77
第4章系统概述 / 79
4.1Windows系统下的物理内存 / 80
4.1.1失落的大陆(内存) / 80
4.1.2Windows如何使用物理地址扩展 / 81
4.1.
摘要与插图
第一部分基 础 知 识
第1章?清 空 思 想
各位,抛弃你过去的思想,这是学习本书的起点。沿着本书指明的道路前进吧,很快你将见到美好而可畏的奥兹国。在本章中,我们将总体介绍rootkit相关情况,讨论“rootkit”这个词的词源,以及怎样把rootkit技术运用于攻击循环的基本框架和相应的领域。为了突出rootkit的特征,我们将把该技术和几种恶意软件进行对比,并纠正一些常见的错误观念。
1.1?不速之客
几年前,媒体报道了一位独居在日本福冈市中年男子的故事。该男子几个月以来发现,厨房里的一些食物不见了。这是个有启发意义的教训:如果你感觉什么东西不对,相信自己的直觉。
那么,这个日本单身汉怎么做的呢?他架起一个监控摄像头并把监控图像传到自己的手机上。某一天,摄像头捕捉到一个人在他的公寓里走动。他认为那是小偷,立即打电话报了警,于是警察就冲向他的公寓去抓那个小偷。当警察来到他家后,发现家中所有的门窗紧锁。警察在公寓内搜查后发现一个名叫Tatsuko
Horikawa的58岁妇女蜷缩在衣柜底部。根据警方调查,她无家可归并至少在衣柜里住了半年之久。
该妇女向警察解释道,某一天,当这个单身汉离家而没锁门时,她得以第一次进入这个公寓。日本当局怀疑,为了将被抓获的风险降到,这个妇女只是有时住在这个公寓,并往返于不同的公寓之间居住。当她隐藏在公寓时,一般会洗个澡,然后在她睡的衣柜里铺上垫子,并喝上几瓶水以渡过难关。警方发言人Horiki
Itakura称该妇女“既整洁又干净”。
从某种意义上说,这就是rootkit:一位不速之客,整洁、干净且难以发现。
1.2?提炼一个更确切的定义
虽然将入侵者比喻为既整洁又干净的不速之客的确有助于我们的理解,但还是让我们通过这个词的起源来追踪该词更加确切的定义。按照UNIX领域内的说法,系统管理员账户(即安全限制的用户账户)通常称为root账户。这个特殊账户有时在字面上称为“root”,但是这种叫法更多的是历史习惯而不是规定。
“攻陷”一台电脑并取得该电脑的管理员权限称为root一台机器。取得root账户权限的攻击者就可以称他已经root了该机器。另外一种描述你已经root一台电脑的说法是你own(拥有)了它,这种说法的本意是指你可以对这台电脑为所欲为,因为你已经控制了这台机器。按照因特网上的说法,在标准的计算机键盘上,由于字母p和o毗邻,致使一些人用pwn代替own。
严格地说,你并不需要通过取得管理员账户权限来root电脑。root电脑的目的是取得与管理员同级别的原始访问权限。例如,在安装有Windows系统的机器中,SYSTEM账户表示操作系统本身,实际上SYSTEM账户比管理员组中的账户拥有更高的权限。如果你能攻陷一个运行在SYSTEM账户下的Windows程序,这和拥有管理员权限具有同样的效果(有过之而无不及)。事实上,有些人认为在SYSTEM账户下运行是的,因为追踪一个使用SYSTEM账户的入侵者困难,系统产生的日志条目如此之多,很难区分哪些是由攻击者产生的。
然而,root一台机器与保持访问权限有所区别(如同挣到一百万美元和保管一百万美元的区别)。有一些工具可以由有经验的系统管理员来用于发现入侵者,并将他们踢出被攻陷的机器。一些新取得权限而大肆声张的入侵者将会引起管理员的注意,失去他们的权限。对入侵者来说,关键是进入机器、取得权限、监控机器的状态,然后隐藏起来享受他们的劳动成果。
《计算机行话辞典》 把rootkit定义为“能保持root权限的一套工具”。换句话说,
rootkit是由二进制代码、脚本和配置文件组成的集合体(例如,一套工具),人们能够使用它隐秘地保持对计算