KaliLinux大揭秘:深入掌握渗透测试平台pdf下载pdf下载

KaliLinux大揭秘:深入掌握渗透测试平台百度网盘pdf下载

作者:
简介:本篇主要提供KaliLinux大揭秘:深入掌握渗透测试平台pdf下载
出版社:电子工业出版社
出版时间:2018-08
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

产品特色

编辑推荐

适读人群 :无论您是老将还是绝对的n00b,这是开始安全专业人士选择的平台Kali Linux的最佳选择。

如果想迅速入门信息安全领域并精通相关知识,《Kali Liunx大揭秘:深入掌握渗透测试平台》毫无疑问就属于你闭着眼睛也可以买买买的图书之一,绝不会后悔。

本书由Kali Linux的官方团队撰写,相比市面上其他图书,内容上几乎无可挑剔。

除了可以帮助读者轻松入门,本书更能提高读者对系统的整体认识:它完全从实战出发,对从环境搭建到渗透测试的全过程 、主流工具的使用,均有丰富的示例进行深入阐述。这些内容,将成为你深入探索Kali Linux的正确起点!

学习Kali Linux,当然选《Kali Linux大揭秘:深入掌握渗透测试平台》。

内容简介

Kali Linux 是设计用于数字取证和渗透测试的操作系统,《Kali Linux大揭秘:深入掌握渗透测试平台》是官方出版的仅有的一本著作。在《Kali Linux大揭秘:深入掌握渗透测试平台》中,重点介绍了Kali Linux 平台本身,并详细论述了如何来理解和大限度地使用Kali。

《Kali Linux大揭秘:深入掌握渗透测试平台》首先引导读者了解Kali Linux 的功能和基础知识,并解释了基本的Linux 命令和概念。然后介绍了常见的Kali Linux 安装方案,并探讨了如何配置、分析和保护Kali Linux。随后介绍了强大的Debian软件包管理器,在这部分中,介绍了如何安装和配置软件包,如何更新和升级Kali 安装,以及如何创建自定义软件包,并介绍了如何在大型企业网络中部署自定义安装。进入到高级主题,介绍了内核编译、自定义ISO 创建、工业强度加密,以及如何安装加密杀死开关来保护敏感信息等内容。

无论你是老将还是新手,《Kali Linux大揭秘:深入掌握渗透测试平台》都是你学习Kali Linux 的一流选择。

作者简介

Raphael Hertzog 拥有超过20 年的Debian 开发经验,并且是《Debian 管理员手册》的作者,他同时是Kali 团队中的Debian 。当他还没有进入Kali 团队工作的时候,他通过自主创业的Freexian 公司提供Debian 专家咨询服务,帮助其他公司和个人创建Debian 的派生定制化安装器和软件包管理系统,改进现有的软件包(bug 修补和增加新特性),等等。

Jim O’Gorman 是Offensive Security 公司美国安全服务部的总经理,Jim 拥有超过十年在全球范围内对深度防御环境进行渗透测试的经验,此外Jim 还是Offensive Security 公司“使用Kali Linux 进行渗透测试”认证培训的首席讲师。

Mati Aharoni 是信息安全界的一位老兵了,他活跃在安全社区已超过十年。Aharoni 创建了Back Track 和Kali 开源发行版,以及Exploit DB 数据库项目,并创建了Offensive Security,一家领先的信息安全公司,以工业界领先的安全证书认证和培训闻名于世。在漏洞利用代码开发与编目分类、渗透测试、Kali 开发和捣鼓硬件的过程中,Aharoni 享受着类似于传教士的角色,说服人们聆听关于Kali Linux 的神奇。

译者简介:

诸葛建伟,博士,副研究员,硕士生导师。目前就职于清华大学网络科学与网络空间研究院(网研院)网络与信息安全实验室(NISL)。蓝莲花战队共同创始人与领队,XCTF全国联赛共同发起人与执行组织者,国内网络安全领域的知名技术书籍作者与译者。


精彩书评

本书是Kali Linux官方出品的正式书籍,可作为入门者学习的参考。本书详细介绍了Kali Linux系统层面的使用方法和配置要点,可帮助读者深入理解Kali,丰富使用技巧,从而最大程度地发挥Kali的能力。

全书语言流畅,用词准确,翻译质量高。不仅适合初识Linux的学生,对于想要系统了解Kali内部细节的资深用户也有价值。

——段钢 看雪学院创始人

记得还是在 Back Track 时代的时候,我就觉得这个系统是黑客工程之作,2013 年它改名为 Kali Linux,果然不负众望,功能更加强大,它的创造者们现在写下了这本书。

这本书并不是教你如何使用里面数百个优秀黑客工具的(因为每一个复杂工具其实都足以写成一本书),而更多的是让你了解 Kali Linux 的内涵,以及在实战过程中如何充分、富有效率地使用它。

本书令我在企业级安全的使用场景方面受益良多,强烈推荐!

——余弦 慢雾科技联合创始人 / Joinsec Team 联合创始人

在我自学计算机和信息安全知识的旅途中,很庆幸的是很早就接触和使用Linux。这个平台为安全研发人员学习工具与方法、深入了解技术实现、改造并改进现有工具直至开发自己的系统或产品提供了巨大的便利,是非常适合Hacks的系统。

Kali是一个优秀的Linux发行版,集成了各类经典的安全工具,在取舍上一直保持良好的品味。近几年,当我想了解一些自己尚不熟悉的技术时,也总是会从Kali中找到相关的工具,再去读它们的代码。

本书非常适合初学者入门了解Linux系统、Kali发行版,并上手使用其中的数百种工具。相比十余年前需要艰难地自我摸索,很羡慕现在的同学能坐拥如此丰富的资源,从而帮助自己从入门到精通。在当前这种令人眼花缭乱的时代,做出正确的选择尤为重要。

——Claud Xiao Palo Alto Networks安全研究员

如果要学习信息安全和渗透测试,请从Kali Linux开始,它是经典安全技术的精华和浓缩,本书则是领你上路的必读宝典。

——杨坤 长亭科技首席安全研究员,联合创始人

目录

第1章 关于Kali Linux 1
1.1 简要回顾 2
1.2 和Debian的关系 3
1.2.1 软件包处理流程 3
1.2.2 同Debian的区别 4
1.3 设计目标和使用场景 5
1.4 Kali Linux的主要功能 7
1.4.1 一个自生系统 7
1.4.2 取证模式 8
1.4.3 一个自定义的Linux内核 8
1.4.4 完全可定制 8
1.4.5 一个值得信任的操作系统 8
1.4.6 可以在众多的ARM设备中使用 9
1.5 Kali Linux的设计策略 9
1.5.1 默认使用root用户 9
1.5.2 禁用了网络服务 10
1.5.3 一个精心组织的应用集合 10
1.6 小结 11
练习题 11
练习1――搭建环境 11
思考题 12
第2章 Kali入门 13
2.1 下载一个Kali ISO镜像 13
2.1.1 从哪里下载 13
2.1.2 下载什么内容 14
2.1.3 验证完整性和真实性 16
2.1.4 将镜像复制到DVD-ROM或USB驱动器中 18
2.2 使用自生模式启动Kali ISO 23
2.2.1 在一台物理计算机上启动 23
2.2.2 在一台虚拟机中启动 23
2.3 小结 34
练习题 35
练习1――安装、下载、验证和烧录Kali 35
练习2――启动Kali 35
练习3――修改启动参数 35
思考题 36
第3章 Linux基础 37
3.1 什么是Linux,它能做什么 37
3.1.1 驱动硬件设备 38
3.1.2 统一文件系统 38
3.1.3 管理进程 39
3.1.4 权限管理 40
3.2 命令行 40
3.2.1 如何获得一个命令行 40
3.2.2 命令行基础:浏览目录树以及管理文件 42
3.3 文件系统 43
3.3.1 文件系统层次标准 43
3.3.2 用户的主目录 44
3.4 有用的命令 45
3.4.1 显示和修改文本文件 45
3.4.2 搜索文件和文件内容 45
3.4.3 进程管理 46
3.4.4 权限管理 46
3.4.5 获取系统信息和日志 49
3.4.6 发现硬件 50
3.5 小结 51
练习题 52
练习1 52
练习2――任务控制 52
练习3――检索文件 52
练习4――枚举硬件 53
练习5――使用硬件 53
思考题 53
第4章 安装Kali Linux 54
4.1 最小安装要求 54
4.2 手把手教你如何安装到硬盘上 55
4.2.1 非加密安装 55
4.2.2 在一个完全加密的文件系统上安装 72
4.3 无人值守安装 77
4.3.1 预设答案 77
4.3.2 创建预设文件 78
4.4 ARM平台安装 79
4.5 疑难问题解答 80
4.6 小结 84
练习题 85
练习1――全加密盘安装Kali Linux 85
练习2――Kali Linux无人值守安装 85
练习3――Kali Linux在ARM设备中的安装 85
进阶练习 85
练习4――自定义Kali Linux ARM安装 85
练习5――Kali Linux ARM chroot 86
第5章 配置Kali Linux 87
5.1 网络配置 87
5.1.1 使用桌面上的NetworkManager 87
5.1.2 通过命令行使用ifupdown 88
5.1.3 命令行工具systemd-networkd 90
5.2 管理UNIX用户和用户组 91
5.2.1 创建用户账号 91
5.2.2 修改一个已存在的用户名及口令 92
5.2.3 禁用一个账号 92
5.2.4 管理UNIX用户组 92
5.3 配置服务 93
5.3.1 配置一个特定程序 93
5.3.2 配置SSH远程登录 94
5.3.3 配置PostgreSQL数据库服务 95
5.3.4 配置Apache 97
5.4 服务管理 100
5.5 小结 103
练习题 104
练习1――配置管理Kali系统中的用户 104
练习2――配置网络 104
练习3――配置服务第1部分 104
练习4――配置服务第2部分 104
进阶练习 105
练习5――树莓派接入点 105
第6章 自助解决问题并获得帮助 106
6.1 文档资源 106
6.1.1 手册页 107
6.1.2 Info文档 108
6.1.3 软件包专用文档 109
6.1.4 网站 109
6.1.5 docs.kali.org上的Kali 使用文档 110
6.2 Kali Linux社区 110
6.2.1 forums.kali.org上的Web论坛 111
6.2.2 kali-linux IRC的freenode即时聊天频道 111
6.3 编写一个友好的bug报告 112
6.3.1 一般性建议 112
6.3.2 在哪里提交问题报告 115
6.3.3 如何填写一个bug报告 116
6.4 小结 129
练习题 130
练习1――Kali源 130
第7章 加固和监控Kali Linux 131
7.1 定义安全策略 131
7.2 可用的安全措施 133
7.2.1 服务器 133
7.2.2 个人电脑 133
7.3 对网络服务进行安全加固 134
7.4 防火墙和包过滤 135
7.4.1 netfilter 行为 135
7.4.2 iptables和ip6tables语法 138
7.4.3 创建规则 140
7.4.4 每次启动时加载的规则 141
7.5 监控和日志 142
7.5.1 使用logcheck来监控日志 142
7.5.2 监控实时行为 143
7.5.3 侦测变化 143
7.6 小结 146
练习题 147
练习1――加固Kali网络 147
练习2――Kali服务监控 147
练习3――Kali文件系统安全加固 148
进阶练习 148
练习4――无线热点 148
第8章 Debian软件包管理 149
8.1 APT使用说明 150
8.1.1 APT和dpkg之间的关系 150
8.1.2 理解sources.list文件 151
8.1.3 Kali软件库 153
8.2 软件包基础交互 155
8.2.1 APT初始化 155
8.2.2 安装软件包 155
8.2.3 更新Kali Linux 158
8.2.4 卸载并清除软件包 160
8.2.5 检查安装包 161
8.2.6 故障排除 167
8.2.7 前端:aptitude和synaptic 170
8.3 APT高级配置和应用 174
8.3.1 APT配置 175
8.3.2 包优先级管理 176
8.3.3 同时运行几个软件分发源 178
8.3.4 跟踪自动安装的包 180
8.3.5 Multi-Arch支持 180
8.3.6 检查包的真实性 182
8.4 软件包参考:深入挖掘Debian软件包系统 185
8.4.1 control文件 186
8.4.2 配置脚本 191
8.4.3 校验和配置文件 194
8.5 小结 196
练习题 198
练习1――镜像重定向 198
练习2――进一步了解dpkg 198
练习3――dpkg-deb练习 198
练习4――Kali Multi-Arch多体系架构 199
思考题 199
第9章 高级用法 200
9.1 修改Kali软件包 200
9.1.1 获取源码 201
9.1.2 安装编译依赖包 204
9.1.3 修改源码 205
9.1.4 开始编译 209
9.2 重编译Linux内核 211
9.2.1 简介与准备工作 211
9.2.2 获取源码 212
9.2.3 配置内核 213
9.2.4 编译及构建内核包 214
9.3 定制Kali自生ISO镜像 215
9.3.1 准备工作 215
9.3.2 给自生镜像换个桌面环境 216
9.3.3 更改软件包集合 216
9.3.4 使用钩子调整镜像内容 217
9.3.5 在ISO镜像或自生文件系统中添加文件 218
9.4 使用U盘启用自生ISO的持久化功能 218
9.4.1 持久化特性 218
9.4.2 在U盘上设置非加密的持久化功能 219
9.4.3 在U盘上设置加密的持久化功能 221
9.4.4 使用多个持久化存储 222
9.5 小结 224
9.5.1 修改Kali包的小结与建议 224
9.5.2 重编译Linux内核的小结与建议 225
9.5.3 定制Kali自生ISO镜像的小结与建议 226
练习题 227
练习1――Fork Kali软件包 227
练习2――更新Kali软件包 227
练习3――重编译构建Linux内核 228
练习4――Kali live-build使用合适的工具完成工作 228
练习5――Kali live-build自动最小化安装 228
练习6――制作有多个持久化存储和LUKS核密码的Kali U盘 228
第10章 Kali Linux企业级应用 229
10.1 通过网络安装Kali Linux(PXE启动) 229
10.2 高级配置管理 232
10.2.1 配置SaltStack 232
10.2.2 在minion上执行命令 233
10.2.3 Salt State及其他功能 236
10.3 扩展和定制Kali Linux 240
10.3.1 fork Kali软件包 240
10.3.2 新建配置包 241
10.3.3 为APT创建一个软件包仓库 247
10.4 小结 251
练习题 254
练习1――分别配置一个Salt master和minion 254
练习2――创建一个Kali代码仓库 254
练习3――从头创建一个配置软件包 254
第11章 安全评估简介 255
11.1 安全评估中的Kali Linux 256
11.2 安全评估的类型 257
11.2.1 漏洞评估 259
11.2.2 合规性渗透测试 262
11.2.3 传统渗透测试 263
11.2.4 应用程序评估 265
11.3 评估规范 266
11.4 攻击类型 267
11.4.1 拒绝服务 268
11.4.2 内存破坏 268
11.4.3 Web漏洞 269
11.4.4 密码攻击 269
11.4.5 客户端攻击 270
11.5 小结 270
练习题 271
练习1――信息安全评估 271
第12章 结尾:未来的路 272
12.1 拥抱变化 272
12.2 炫一下你刚Get的新知识 273
12.3 进一步探索 273
12.3.1 系统管理方向 273
12.3.2 渗透测试方向 273
Kali解决方案实现 274
结课项目1:使用Aircrack-NG 274
结课项目2:ISO of Doom 274
结课项目3:Kali设备和自动化 274

精彩书摘

推荐序一

应诸葛建伟先生之邀,为其翻译的《Kali Linux大揭秘:深入掌握渗透测试平台》一书作序。OWASP作为国际权威应用安全的研究机构,在Web安全方面的研究,是国内外信息安全机构在应用安全研究方面的主要参考依据。本人作为OWASP中国北京的主要负责人,很荣幸地拜读了本书的整个目录和全部章节,最大的感受就是本书贴合实际需求、生动详实,案例充分。

本书从渗透测试的实战出发,增加了诸多新增工具的介绍,完整地填补了目前市面上相关书籍内容上的空白:现在市面上的许多安全书籍,都是只介绍结果,考虑过程的并不多。本书从实践出发,本着务实的精神,对环境搭建一直到渗透测试的全阶段,以及主流工具的使用,都做了详尽的介绍,示例丰富,是每位信息安全的从业人员、在校学生不可多得的一本使用大全。你完全可以依照本书的案例来学习,并有效地贴近企业需求,做到有的放矢。

从本书的编写风格就可以看出作者技术功底扎实、写作思路清晰、讲解由浅入深、举例生动详实,非常值得一读!

陈 亮

OWASP中国

推荐序二

你可能还没意识到你所拥有的美好事物。

在1998年,我还是一位初出茅庐的黑客,创建了最早的一个职业白帽黑客团队。当时团队成员们还都是一群孩子,梦想着自己未来的工作,能够拿着不错的薪水,去入侵这个星球上最安全的计算机系统、网络甚至建筑。

这听起来很“性感”,但现实却是,我们需要把生活中的绝大部分时间花在和电脑键盘相处上,用行业中的一些数字工具来武装自己。我们挥舞着四处采集到的程序,绘制网络地图并定位目标,然后扫描、渗透目标并进一步拓展。在某些情况下,我们中的一员(经常是Jim Chapple)会编写一些定制化工具来做一些很酷的事情,比如说扫描一个A类的网络(在当时可没有其他现成工具能够搞定这件事),但绝大多数时候我们只是使用和修改黑客社区中已开发好的工具。在那些还没有Google的日子里,我们频繁地刷BugTraq、AstaLaVista、Packet Storm、w00w00、SecurityFocus、X-Force以及其他资源,来研究并建立起我们自己的军火库。

因为我们在每次行动中的时间有限,我们必须追求速度,这意味着我们不会花很多时间来拨弄各种工具。所以我们必须要学习最核心工具的里里外外,然后让其他辅助工具只是处于待命状态。于是我们必须良好地组织我们的工具,文档化并进行测试,以便在实战中不要给我们带来意外。如果不能成功渗透,那么我们将在客户面前丢脸,而他们也会轻视我们所提出的建议。

正因为如此,我花了非常多的时间来对工具进行分类编目,当一个工具被发布或更新时,我会完整地走完一个流程,查看它是否可以在攻击平台上正常运行,以及是否值得安装运行。我还必须更新依赖这一工具的所有脚本,编写相关文档并进行测试,包括相对于前一版本有了何种变化。然后我会组织所有的工具,根据它们在执行一次安全评估时的目的和作用,将它们放置到不同的目录里。我会为特定工具编写包装脚本,将一些工具链接在一起,并将所有工具关联在一起,刻录成一张CD盘,当客户不让我们带入攻击机器或者移动介质到他们实验室的时候,我们将带着这个CD盘进入隔离的敏感区域。这一过程是非常让人头疼的,但也是必须的。我们知道,如果合适地应用我们的技能和专业经验,保持良好的组织性,并高效工作,我们有入侵任何网络的能力。尽管在渗透测试中从不失手是我们的驱动力,但是我们提供给客户的是一种专业入侵网络的渗透服务,而客户会增加各种限制,并通过金钱回报引导渗透的主要目标到他们最为关键但可能疏于防范的信息安全流程中。

我们花了好几年的时间来磨练我们的技能和专业度,但如果没有良好的组织和高效率,我们不会像现在这样成功。如果我们没有尽心去调校所需的工具,我们可能已经失败了。这是我花那么多时间研究、编撰文档、测试与分类工具的根本原因。在21世纪到来之后,这很快发展成为一份压力巨大的全职工作。由于Internet的发展,攻击面的全球性爆发,以及攻击工具的种类和数量的指数级增长,维护这些工具所需的工作量也随之剧增。

从2004年开始,Internet已经不仅仅是商务活动的基石,也成为了一个社交平台。计算机已经变成人人都能负担得起的东西,而且更加友好,无所不在。存储技术已经从M字节扩展到G字节,以太网的速率从每秒几百KB快速发展到每秒数十MB,Internet连接变得越来越快,也更加便宜。电子商务已经非常流行,而社交媒体如Facebook(2004年)、Twitter(2006年)已经上线,Google变得更加成熟,可以让每个人(包括罪犯)在互联网上找到几乎任何东西。

研究对于我们这样的团队变得至关重要,因为我们必须能够跟上新型攻击和工具集发展的脚步。我们对更多计算机犯罪事件进行响应,在必要的取证工作中我们需要仔细追查潜在的证据。而自生型CD的概念意味着我们可以在被攻陷的机器上执行实时取证,而不会对证据造成任何破坏。现在我们这个小团队必须要管理攻击工具、取证工具和在敏感区域使用工具发行版,我们必须跟上所有最新攻击技术和利用方法学的发展。我们必须这么做,因为你知道我们是受雇来进行渗透测试的,所以都是高标准要求。而事情变得有些超出控制,在最近一段时间,我们在实战中花费的时间少了,而在研究、打磨工具和计划方面投入更多的时间。

在这场对抗中我们并不孤独,在2004年,Mati“Muts”Aharoni,一位黑客和安全专家,发布了“WHoppiX” (White Hat Knoppix),一个被宣传为“终极版渗透测试 Live CD”的自生Linux CD,其中包含了“来自SecurityFocus、Packet Storm和kotik的所有渗透利用脚本,Metasploit框架2.2版,以及更多其他软件”。记得在下载WHoppiX时,我在想这是很棒的东西,我也下载了其他一些自生CD,想象假使我之前陷入困境的一些局面,这些自生CD可以在实战中帮上我们。但是我当时并没有计划在真正实战工作中依赖WHoppiX和其他CD。我并不相信它们中的任何一个能够满足我的大部分需求,没有一个对我的工作流来说感觉是对的,而且它们也不是完全的、可安装的发行版。在我下载的时候,它们已经过时了。一个过时的工具集对于我们所在的行业就是“死神降临”。我只是简单地将这些CD镜像添加到军火库里,尽管它们的大小相对较大,然后还是继续着那令人头疼的过程来维护我们实际使用的工具集。

尽管在当时我对它持保留意见,但WHoppiX及其后续者在我们的行业和社区中都造成了巨大的影响,或许也超出了Muts本人的预期。

在2005年,WHoppiX进化成了WHAX,一个扩展并更新后的工具集,基于“最模块化的SLAX(Slackware)自生CD”。Muts和来自黑客社区的一个迅速发展的志愿者团队看起来已经意识到了,无论他们如何具有远见,仍然无法预期到我们这个行业的所有发展和波动,而CD的用户们在实战中也有多种差异化需求。而且Muts和他的团队显然也已经在实战中使用WHAX,他们似乎也努力让它变得更加好用,这件事对于我是非常受鼓舞的。

到了2006年,Muts、Max Moser和他们的团队将Auditor Security Linux和WHAX合并到单一发行版中,称为BackTrack。基于SLAX,BackTrack继续向前发展,增加了更多的工具,更多的框架,扩展语言支持,多种无线协议支持,整合一个对专业用户和新手用户都适用的菜单结构,以及重度修改了内核。BackTrack成为领先的安全发行版,但是像我这样的很多人仍然把它作为“实际使用工具集”的一个备份。

在2009年初,Muts和他的团队已经将BackTrack扩展至BackTrack 4,这是一个明显的变化。今天,Muts将此作为了全职工作,BackTrack已经不再是一个自生CD,而是一个基于Ubuntu充分发展的发行版,并充分利用了Ubuntu的软件仓库。这种变化以一个显著的革新作为标志:也就是BackTrack 4拥有系统更新机制。用Muts自己的话说:“当和我们的BackTrack的软件仓库同步时,你可以在安全工具发布后很快就获得更新。”这真的是一个转折点,BackTrack团队已经真正理解了渗透测试者、取证分析师和该行业其他从业者所面对的挑战,他们的工作可以帮助我们节省很多时间,并为我们提供了一个坚实的基础,使得我们直接进入实战状态,将更多的时间花在真正重要且有趣的事情上。结果是,社区反响热烈,众多用户群集到论坛和wiki上,并热情参与到开发团队中。BackTrack确实是一个社区化的贡献,而Muts仍在其中引领着。

BackTrack 4最终成为工业界最强的渗透测试平台,而我,还有很多像我这样的人终于可以松一口气了。我们对Muts和他团队所承受的“痛苦”有着切身体会,因为我们也曾经亲身经历过。而结果是,我们中的很多人开始使用BackTrack作为工作的首要基础平台。是的,我们仍然会拨弄一些工具,编写我们自己的代码,以及开发我们自己的漏洞利用工具和技术,我们开展研究和实验,但是我们不再在收集、更新和组织工具上花费很多时间了。

BackTrack 4 R1和R2是2010年进一步修订的版本,之后又在2011年自底向上重新构建了Back Track 5——仍然基于Ubuntu,但跟上每个发布的脚步。Back Track在当时已经是一个极为成功的项目,需要英雄的志愿者团队和社区的努力,同时也需要一些资助。Muts在2006年开始创立Offensive Security公司,该公司不仅仅提供全球领先的培训和渗透测试服务,还为保持Back Track的开发进程提供坚实后盾,保证Back Track的开源和免费使用。

Back Track在2012年继续发展和改进(先后发布R1、R2和R3版本),其维护着Ubuntu的核心并增加了数以百计的新工具,包括物理和硬件利用工具、VMware支持、许多无线和硬件驱动,以及大量的稳定性改进和缺陷修复。然而,在R3版本发布之后,Back Track的开发变得相对缓慢,甚至有点神秘地静默。

当时在坊间有一些猜测,一些人以为Back Track变了,把它的灵魂出售给了一家无情邪恶的企业主而获得丰厚回报。Offensive Security也在那几年里发展成为最受尊敬的网络安全培训机构之一以及行业中的一家思想引领者,某些人揣测这家公司的成功是建立在吞并大量Back Track关键开发者的基础上。然而,事实并非如此。

2013年,Kali Linux 1.0发布,从发布公告中可以看到,经过一年沉默的开发过程,Offensive Security自豪地宣布,发布Kali Linux,并且它是公开可用的,这是最先进、鲁棒和稳定的渗透测试发行版,Kali是比Back Track更加成熟、安全和适合企业应用的版本。

Kali Linux于Back Track并不是“新瓶装旧酒”,其移植了超过600个完全重打包后的工具,这显然是一个令人称奇的工具集,但还不仅仅只是这些。Kali是从Debian的内核核心基础上,从头开始构建的,这对于一些还不了解情况的人而言,看起来并不是个大工程,但是懂行的人知道这需要做大量底层的工作。做了这些重打包的工作后,Kali用户可以下载每一个工具的源码包,可以按需求修改并重构工具,而只需要敲几行代码和命令。和目前其他主流操作系统发行版不同的是,Kali Linux同Debian软件仓库每天进行四次同步,这意味着Kali用户可以及时获取软件包更新和安全补丁。Kali开发者全身心投入到许多工具上游版本的打磨、打包和维护上,才使得用户可以始终保持在业界前沿。感谢Debian的根基,Kali用户可以从软件仓库直接引导一个安装或者ISO镜像,这也打开了完全定制化Kali安装版之门,你可以通过预设文件进行自动化和定制的大规模的企业化部署。为了实现定制目标,Kali用户可以修改桌面环境,变更菜单项,改变图标文件,甚至改变窗口环境。由于做了大量的ARM开发工作,使得Kali Linux可以在大范围硬件平台上安装,包括无线AP、单片机系统(例如树莓派、ODROID、BeagleBone、CubieBoard等),以及基于ARM的Chromebook计算机等。最后要提及的重要一点是,Kali Linux支持无缝的小更新和重大升级,这意味着Kali的狂热者永远不需要在机器上重新安装定制化的Kali Linux。

社区也注意到了Kali的发布,在最初的五天中,9万名用户下载了Kali 1.0版本,而这仅仅是开端。在2015年,Kali 2.0发布,紧随其后的是2016年的rolling版本发布。总结来说,如果Kali 1.0聚焦于构建一个稳固的基础设施,那么Kali 2.0则专注于提升用户体验并维护更新的软件包和工具仓库。而目前Kali Linux的版本是一种滚动更新的发行版,这标志着特定版本的终结。

现在用户可以持续地保持最新版本,并接收到开发者创建的更新和补丁。得益于上游软件的版本标记系统,核心工具的更新更加频繁,也针对视障人士做了便捷性方面的改进,Linux内核也被进行了更新和修补以扩展对无线802.11注入的支持范围。SDR(Software Defined Radio,软件定义无线电)和NFC(Near-Field Communication,近场通信)工具增加了对安全测试新领域的支持,完全Linux加密磁盘安装和紧急状况自毁选项也变得可用。感谢LVM、LUKS,增加了USB持久化选项,并允许基于USB的Kali安装保持重启后的系统改变,而无论USB盘是否加密。最后,最新版本的Kali为NetHunter打开了大门,NetHunter成为一个运行在移动设备上的全球领先的开源操作系统,以Kali Linux和Android作为其基础。

Kali Linux已经演化成为信息安全从业者首选的平台,而且真正成为了一个工业级别、全球领先、成熟、安全、适合企业使用的操作系统发行版。通过十多年的开发历程,Muts和他的团队,以及来自黑客社区无法计数的全身心投入的志愿者,承担了组织我们工作环境的压力,把我们从大量工作、负担中释放出来,并提供了一个安全和可靠的基础平台,让我们聚焦在驱动工业界向前发展,让数字世界更安全的终极目标上。

围绕着Kali Linux,一个令人惊奇的社区已经创建起来,每个月新版本的Kali被三四十万的用户下载,我们汇聚在Kali论坛和Kali的IRC频道中,我们汇集在Kali Dojos会议上,从开发者那里学习如何最好地利用Kali。

Kali Linux改变了信息安全的世界,让它变得更好,而Muts和他的团队帮我们节省了许多时间,让我们能够将更多时间和精力放在一起驱动工业界的向前发展上。

尽管Kali拥有惊人的接受度、支持度和流行度,它却从来没有发布一份官方的手册。好吧,现在这种状况已经改变了,我非常激动地和Kali开发团队,特别是Mati Aharoni、Raphaël Hertzog、Devon Kearns和Jim O’Gorman,一起来提供这本指南,第一本关于Kali Linux的官方出版物,或许也是官方手册系列中的第一本。在这本书中,我们聚焦于Kali Linux平台本身,帮助你从最基础了解和使用Kali。我们还不会深入到Kali Linux中的工具军火库中,但无论你是一位老兵还是一位新手,如果你准备深入探索Kali Linux,本书是你最好的起点。无论你在这个游戏中已经玩了多长时间,阅读这本书,你将可以和正在发展的Kali Linux社区联结在一起,我们行业中最古老、最大、最有生气以及最活泼的社区之一。

我代表Muts和Kali Linux开发者团队的其他同仁,恭喜你踏上深入掌握Kali Linux的征程。

Johnny Long

2017年2月

前言/序言

作者序

你所在的渗透测试团队定购的16台高性能笔记本电脑刚刚已经到货,而你被赋予设置好工作环境的任务,那就为明天一场驻场渗透测试做好准备吧。你安装好Kali系统并启动了其中一台电脑,以确认它是否可用。尽管Kali拥有最前沿的内核,但是网卡和鼠标仍然不工作,笔记本电脑中最新款的NVIDIA显卡和GPU也正在困惑地“注视”着你,因为缺少恰当安装的驱动程序。你很无奈。

在Kali的自生模式下,你快速地在一个终端中输入lspci 命令,然后眯着眼睛盯着屏幕,当你滚动查看硬件列表:“PCI bridge、USB controller、SATA controller、Ethernet和Network controllers”,并通过Google快速搜索这些硬件相应的型号,以及Kali内核版本号的交叉索引时,发现这些最新款硬件的驱动还没有被集成到主线的内核代码中。

这对于你来说并不是难题。一个解决计划正在你的脑袋中成型,而这要归功于你几周前仔细研读过的《Kali Linux大揭秘》这本书。你使用Kali Live-Build系统来创建一个定制Kali ISO镜像,将所需的驱动程序灌入安装盘里。另外,除了包含NVIDIA显卡驱动之外,还安装了用来发挥GPU性能并用于hashcat程序的CUDA库文件,它使得GPU可以在飞速破解哈希口令时发挥最大的功效。你甚至扔了一张带有微软Logo的定制桌面进去,来冒充正在使用Windows桌面工作的机器。

因为你这次安装的所有机器硬件配置是一致的,所以你可以在ISO镜像中增加一个预设的启动选项,这使得你可以从一个U盘启动并在没有任何用户干预的情况下安装好Kali。让安装任务自动完成,并拥有一个全盘加密的系统。

棒极了!你现在已经按照你的需求,为你的机器硬件配置特别设计及优化更新Kali系统版本,你节省了一整天的时间,任务完成!

我们其中的一些人需要从主流操作系统使用者身份中跳出,寻找更加干净、更具意义、更适合于我们工作方式的操作系统,而随着市场上硬件设备的膨胀式发展,上述这样的场景对我们而言变得越来越普遍。

对于投身于网络安全领域的我们更是如此,不管你将网络安全作为一种业余爱好、痴迷的兴趣,还是从事的行业。作为新手,我们经常发现被操作环境或操作系统所困,对于很多新手而言,Kali是他们进入Linux世界最早接触的系统。我在好几年前就认识到用户群体在这一转变中的困惑,并计划编写一本组织合理的入门引导书来帮助社区用户进入网络安全的世界,而不是一开始直接将所有Linux系统的复杂特性全部提供给他们。基于这样的考虑,《Kali Linux大揭秘》这本书就诞生了。本书让所有通过Kali Linux进入网络安全领域的人都能受益。

现在这本书要面世了,然而我们很快意识到还有很多潜藏的“宝藏”有待发掘,因此在这本Kali Linux引导书之后,还有很多机会再去探索它更有趣但鲜为人知的特性,就像本书的书名一样,“Kali Linux大揭秘”。

最后,我们对目前的结果非常开心,本书达到了我们的预期,我可以骄傲地说它已经超出了我们的预期。我们也意识到我们在不经意间扩展了本书的潜在读者群,它不仅仅是为网络安全领域的新手准备的,而且可以帮助一些有经验的渗透测试者提升与改进对Kali Linux的控制能力,使得他们可以解密Kali Linux发行版中我们准备的各种潜在特性。无论你面对的是一台机器,还是企业中上千台机器;无论是仅仅做配置上的微小修改,还是从内核级别开始完全定制并重建软件仓库;无论是仅仅触及Debian软件包管理系统的表层,还是深入探索,《Kali Linux大揭秘》这本书都提供了路径图。

我代表自己和整个Kali Linux团队衷心祝愿,拥有这本导航手册在手,你能够拥有一个激动人心、充满快乐和收获的揭秘之旅!

Muts

2017年2月

前言

Kali Linux是世界上最强大和最受欢迎的渗透测试平台,被网络安全领域的专家们广泛使用,其应用领域包括渗透测试、取证、逆向工程及漏洞评估。这是多年来我们精益求精和平台不断发展的结果,从一开始的WHoppiX到WHAX,再到BackTrack,最终发展到目前融入了Debian GNU/Linux以及充满活力的全球开源社区强大能力的完整渗透测试框架平台。

Kali Linux并不是一个简单的工具集合,而是一个灵活的框架,专业渗透测试人员、安全从业者、学生和业余爱好者都可以根据自己的具体需求,来剪裁和定制它的功能。

为什么要写这本书

Kali Linux不仅仅是一个在标准Debian发行版基础上安装了各种信息安全工具的集合,我们还针对它进行了很多预先的配置工作,以便让你能够立即启动和运行它。为了充分利用Kali的功能,你还应当深入了解强大的Debian GNU/Linux基础操作,以及学习如何将这些技能使用在你的应用场景中。

Kali的确有很多用途,但它主要被设计用于渗透测试。本书的目的不仅在于帮助你轻松使用Kali Linux,更在于提高你对系统的整体认识,使你的操作体验更加流畅,从而在你遇到时间紧迫的渗透测试任务时,无须浪费宝贵时间去安装新软件或者启用新的网络服务。在本书中,我们首先介绍了Linux,然后更深入一步,介绍了Kali Linux的特别之处,以便你准确了解表象之下深层次的特性。

特别是当你时间紧任务重时,这些知识显得非常有价值。掌握这些更深层次的知识有助于你更好地设置Kali,解决一些疑难问题,按照个人意愿更好地使用工具,分析工具的输出,或者在更大规模的测试场景中使用Kali。

如果你渴望投身到充满智慧且令人着迷的网络安全领域,并且正好选择了Kali Linux作为主要操作平台,那么本书就是为你准备的。本书旨在帮助Linux新手以及Kali的现有用户加深对Kali基础知识的了解,那些已经使用Kali多年但希望更加系统深入学习Kali的读者,也能够通过本书扩大Kali的应用领域,填补之前对Kali认知的空白。

此外,本书还可以作为想考取Kali Linux认证专家资质读者们的学习大纲、技术参考以及学习指南。

本书的总体思路和结构

这本书的设计非常贴近实战,你从一开始阅读就可以动手去操作Kali Linux,而不是阅读大量章节的理论介绍。本书对每个主题都以非常务实的方式来介绍,包含了许多样例和图示,以便使讲解更形象和具体。

在第1章“关于Kali Linux”中,我们定义了一些基本术语,并解释了Kali Linux的用法。在第2章“Kali入门”中,我们循序渐进地引导你下载ISO镜像并在计算机上运行Kali Linux。第3章“Linux基础”讲述了阅读本书需要了解的Linux基本知识,例如Linux系统架构、安装过程、文件系统层次结构、权限等重要概念。

至此,你已经使用Kali Linux作为自生系统有一段时间了。在第4章“安装Kali Linux”中,将学习如何(在硬盘上)安装永久性的Kali Linux。在第5章“配置Kali Linux”中将学习如何按照喜好调整它。作为一个已入门的Kali用户,现在是熟悉Kali中一些重要资源的时候了,第6章“自助解决问题并获得帮助”提供了解决可能遇到的各种意外问题的方法。

在掌握了这些基础知识之后,将涉及更高级的主题。第7章“加固和监控Kali Linux”提供了确保Kali Linux的安装能够满足你的安全要求的技巧。接下来,第8章“Debian软件包管理”解释了如何充分发挥Debian软件包生态系统的潜力。而在第9章“高级用法”中,将学习如何创建完全定制的Kali Linux ISO镜像。如第10章“Kali Linux企业级应用”中所述,当你在企业规模部署Kali Linux时,所有这些主题的内容都可能会用得上。

第11章“安全评估简介”使你将在本书中学到的所有知识与安全从业者日常工作联系起来,真正做到学以致用。最后一章,第12章展望未来的路。

Raphael Hertzog的致谢

我要感谢Mati Aharoni!2012年,当我还是数十名Debian顾问中的一员时,他与我联系,说想开发一个基于Debian的BackTrack替代版本。这就是我从事Kali Linux相关工作的开始,从那以后,我就喜欢上了我在Kali世界的旅程。

多年来,Kali Linux越来越向Debian GNU/Linux靠近,特别是在基于Debian 测试版分支的Kali 滚动发行版之后。现在我的大部分工作,无论是基于Kali还是基于Debian,都在为整个Debian生态系统做贡献,这正是我日复一日、年复一年继续下去的动力。

写这本书也是Mati给我的一个绝好机会。写书和Kali开发是完全不同的工作,但是具有相通的地方:都能够帮助他人并和他们一起分享我们在Debian/Kali操作系统领域的专业知识。基于我创作《Debian管理员手册》的经验,希望我的文字能够帮助你迈出在快速发展的网络安全世界中的第一步。

我还要感谢所有对这本书做出过贡献的Offensive Security公司的伙伴们!Jim O'Gorman(一些章节的合著者)、Devon Kearns(评审员)、Ron Henry(技术编辑)、Joe Steinbach和Tony Cruse(项目经理)。同时也感谢Johnny Long参与撰写序言,并完成了整本书的评审。

Jim O’Gorman的致谢

我要感谢参与这个项目的所有伙伴!我的工作只是其中的一小部分。这本书很像Kali Linux本身,是一个由大家共同努力而使工作事半功倍的合作项目。特别感谢Raphaël、Devon、Mati、Johnny和Ron,他们承担了绝大部分工作。没有他们,这本书不会问世。

Mati Aharoni的致谢

Kali Linux第一个版本从发布到现在已经过去了好几年。从第一天起,我一直梦想着出版一本涵盖整个Kali操作系统的官方书籍。因此,我很荣幸能够把这本书奉献给公众。我衷心感谢参与这个项目的所有人,包括Jim、Devon、Johnny和Ron。特别感谢Raphael做了本书绝大部分的繁重工作,并将珍贵的专业经验分享给我们的团队。