本书揭示了使用微型低功耗设备进行渗透测试的技术。那些我们常见的小装置、小设备以及各种计算机外设已成为渗透网络的工具。本书通过演示攻击设备如何飞行接近目标,证明了天空也不再是攻击禁区。这些装置并不是未来的幻想,甚至也不是DARPA才有的高大上装备。作者将向你全面展示如何利用廉价的零件和这本书来构建自己的网络武器。
Foreword 推 荐 序
亲爱的读者,在这篇序文中,我首先要提醒你当心此刻你手中所拿的这本书威力巨大!这本书不仅是一本教材,它定义了一个决定性的时刻。从此,无论是公司、组织还是各行各业的人都要重新审视它们的网络安全状况。长久以来,我们一直说服自己,在线交互的风险十分有限,风险仅当具有IP地址,并进行互联网连接时才存在。可是,从此刻起一切都变了!作者为我们揭露了无情的现实——没有物理安全就没有在线安全。本书展示了那些常见的小装置、小设备以及各种计算机外设如何成为渗透网络的工具。本书通过演示攻击网络的设备如何飞向目标,证明了天空也不再是攻击禁区。这些装置并不是未来的幻想,甚至也不是DARPA才有的高大上装备。作者将全面展示如何利用廉价的零件和这本书来构建自己的网络武器。曾经只有国家才能拥有这种力量的网络战黄金时代已经一去不复返了。感谢作者的辛勤努力,他把这种专业知识和技术传授给了普通大众!应该让每一位CIO、CEO(确切说,任何头衔带“C”的领导)都看到这本书,以便让他们意识到身处其中的威胁。我曾经说过:“如果我能骗过你的前台接待员,就不必劳神去搞你的防火墙了。”这不,作者以浅显易懂的方式精彩地展现了如何轻松做到这一点。
这不是一本为那些害怕发现漏洞(或审视其当前的信息安全策略和流程)的人准备的书!这本书是为这样的人准备的,他们敢于提问:“为什么那个电源插座上边带了一个网线?”也从不怕提出:“这是干什么用的?”这不是一本打发阴雨的星期天下午的休闲读物,而是需要拿着电烙铁、开着笔记本电脑,旁边再放点创可贴以备不测的书籍!前进吧,读者,去领略把鼠标变成武器、把玩具机器人变得比“终结者”更恐怖的美妙奇境吧!
我是认真的,这是本了不起的书,我从中学到了真正不同寻常的东西!
阅读愉快!
Jayson E. Street译 者 序?The Translator’s Words2001年,我在handhelds.org上第一次看到iPAQ掌上电脑,H3630屏幕上显示着企鹅图标和Linux内核启动信息,当时眼前一亮,隐约觉得这样的嵌入式设备会有很多非常规的、有趣的(或许还是有用的)玩法。去年一个深冬的下午,在安天微电子与嵌入式安全研发中心,我和同事正在做某个智能设备的拆解和固件提取,望着工作台上被肢解得七零八落的各种智能手机、4G网卡,突然感慨,这些主频上亿赫兹,内存数亿字节的设备,每个都是一个小宇宙,蕴藏着惊人的能量……Philip Polstra博士的这本书展示了小型嵌入式系统的奇妙应用。作为安全专家,他向我们展示了这些工作在安全研究应用中的非凡作用;作为硬件极客,他带我们感受了有趣的DIY过程。所以,无论是寻求实用技术的工程师还是从兴趣出发的玩家,都会发现本书内容具有足够的吸引力。
早在2009年我就接触和应用过BeagleBoard,还曾基于BeagleBoard制作了便携式U盘杀毒和擦除器,所以对于书中的很多想法和做法颇感心有戚戚焉。读完这本书,我还是不由得感叹作者在BeagleBoard应用方面的丰富经验,以及本书对软硬件介绍的系统性和全面性。书中每部分的决策考量与实现方法又都与实际的渗透测试应用密切结合,娓娓道来,也足见作者软硬件功力深厚,实践经验丰富。
本书翻译工作得到了很多人的支持和帮助。除了我之外,翁睿和阮鹏也参与了本书的翻译工作。感谢华章公司吴怡编辑的细致耐心指导。由于经验不足,能力有限,翻译的不当之处还请读者批评指正。
桑胜田(esoul@antiy.cn)安天微电子与嵌入式安全研发中心总经理Acknowledgements?致 谢首先,我要感谢我的妻子和孩子让我花时间写这本书——也被称为“爸爸的又一篇学位论文”。如果没有他们的支持,就不可能完成这本书。
感谢技术编辑Vivek Ramachandran给予我信息安全和写作上的宝贵建议,我对他能在百忙之中同意做这本书的技术编辑而感激不尽。
感谢和我一起创作的搭档T.J. O’Connor和Jayson Street,感谢他们在这本书构思之中提供的建议和对我的鼓励。
最后,要感谢高档安全会议的组织者们,是他们提供了论坛,让我能与他人分享信息安全方面点点滴滴的奇思妙想。特别要感谢44CON会议的 Steve Lord和Adrian from,GrrCON 会议的Chris和 Jaime Payne允许我这个当初一文不名的毛头小子登台演讲,后来又给予我特殊的关照,让我多次在他们的会议上发言。
About the AuthorPhilip Polstra博士(他的伙伴称他为Phil博士)是世界著名的硬件黑客。他在全球多个国际会议上展示过研究成果,包括:DEF CON、 BlackHat、44CON、GrrCON、MakerFaire、ForenSecure以及一些其他会议。Polstra博士是USB取证专家,在这方面发表了多篇文章。
在美国中西部的一所私立大学担任教授和专职黑客期间,Polstra博士开发了数字取证和道德黑客学位课程。他目前在布鲁斯伯格大学教授计算机科学和数字取证。除了教学之外,他还以咨询的方式提供训练和进行渗透测试。工作之外,他在驾驶飞机、制造飞行器、鼓捣电子方面也很有名气。访问他的博客http://polstra.org可以了解他近的活动,也可以在推特上关注他:@ ppolstra。
推荐序
译者序
致谢
作者简介
第1章 初识Deck 1
1.1 引子 1
1.2 Deck 2
1.2.1 运行Deck的设备 3
1.2.2 渗透测试工具集 3
1.2.3 操作模式 5
1.3 本章小结 9
第2章 认识Beagle系统板 10
2.1 引子 10
2.2 德州仪器公司的设备 11
2.2.1 BeagleBoard-xM 11
2.2.2 BeagleBone 13
2.2.3 BeagleBone Black 16
2.3 本章小结 18
第3章 安装一个基础操作系统 20
3.1 引子 20
3.1.1 非Linux选择 20
3.1.2 基于Linux方案的选择 23
3.2 渗透测试Linux发行版本所需的功能特性 32
3.3 基于Ubuntu方案的选项 33
3.3.1 Ubuntu变种 33
3.3.2 内核的选择 34
3.4 创建一个microSD卡 34
3.5 本章小结 35
3.6 本章附录:深入分析安装脚本 35
第4章 打造工具箱 44
4.1 引子 44
4.2 添加图形桌面环境 44
4.3 以简单方式添加工具 50
4.3.1 使用软件仓库 50
4.3.2 使用软件包 53
4.4 以复杂方式添加工具 57
4.4.1 本地编译 58
4.4.2 简单的交叉编译 58
4.4.3 基于Eclipse的交叉编译 59
4.4.4 自动化源码构建 66
4.4.5 安装Python工具 69
4.4.6 安装Ruby 70
4.5 入门级工具集 70
4.5.1 无线破解 70
4.5.2 密码破解 72
4.5.3 扫描器 73
4.5.4 Python工具 73
4.5.5 Metasploit 74
4.6 本章小结 76
第5章 为Deck供电 77
5.1 引子 77
5.2 电源需求 78
5.3 电源 80
5.3.1 市电供电 81
5.3.2 USB供电 82
5.3.3 电池供电 83
5.3.4 太阳能供电 85
5.4 降低功耗 86
5.5 使用单个攻击机的渗透测试 88
5.5.1 连上无线 89
5.5.2 看看能找到什么 91
5.5.3 寻找漏洞 93
5.5.4 漏洞利用 95
5.5.5 攻击密码 98
5.5.6 检测其他安全问题 101
5.6 本章小结 101
第6章 输入和输出设备 102
6.1 引子 102
6.2 显示方式的选择 102
6.2.1 传统显示器 103
6.2.2 直接连接的显示设备 103
6.3 键盘和鼠标 105
6.4 IEEE 802.11无线 105
6.5 IEEE 802.15.4无线 106
6.6 网络集线器和交换机 107
6.7 BeagleBone Cape扩展板 108
6.7.1 XBee Mini-Cape 109
6.7.2 XBee Cape 112
6.8 用单个远程攻击机进行的渗透测试 118
6.8.1 连上无线网络 118
6.8.2 看看能找到什么 123
6.8.3 寻找漏洞 125
6.8.4 漏洞利用 127
6.8.5 攻击密码并检测其他安全问题 128
6.9 本章小结 128
第7章 组建机器战队 129
7.1 引子 129
7.2 使用IEEE 802.15.4组网 130
7.2.1 点对多点网络 130
7.2.2 网状网络 132
7.3 配置IEEE 802.15.4猫 133
7.3.1 系列XBee猫的配置 135
7.3.2 系列XBee猫的配置 136
7.4 简单的远程控制方式 140
7.5 用Python远程控制 141
7.6 降低能耗 156
7.7 提高安全性 158
7.8 扩大控制范围 161
7.8.1 IEEE 802.15.4路由器 161
7.8.2 IEEE 802.15.4网关 161
7.9 用多个攻击机进行渗透测试 161
7.9.1 Phil’s Fun and Edutainment公司介绍 162
7.9.2 规划攻击 162
7.9.3 配置设备 163
7.9.4 执行测试攻击 164
7.10 本章小结 174
第8章 隐藏机器战队 175
8.1 引子 175
8.2 隐藏设备 176
8.2.1 把设备藏到自然界物体里 176
8.2.2 在建筑的里边和周围隐藏设备 177
8.2.3 用玩具和装饰物隐藏设备 182
8.3 安装设备 185
8.3.1 最初的安装 186
8.3.2 维护设备 188
8.3.3 移除设备 188
8.4 本章小结 188
第9章 增加空中支援 189
9.1 引子 189
9.2 构建AirDeck 189
9.2.1 选择飞行平台 190
9.2.2 单一路由功能方案 191
9.2.3 全功能的攻击机和路由器 192
9.3 使用空中攻击机 193
9.3.1 单路由功能的使用 193
9.3.2 使用AirDeck 194
9.3.3 节约电能 194
9.4 其他飞行器 196
9.4.1 四旋翼直升机 197
9.4.2 进一步改进飞行器 197
9.5 本章小结 198
第10章 展望未来 199
10.1 引子 199
10.2 Deck系统的最新进展 199
10.3 关于Cape的想法 200
10.4 Deck向其他平台的移植 200
10.5 用单片机实现超低功耗 201
10.6 结束语 201