安全技术大系 Kali Linux大揭秘 深入掌握渗透测试平台
作者: (美)拉斐尔 赫佐格(Raphael Hertzog) 等著 诸葛建伟等译
出版时间:2018年版
丛编项: 安全技术大系
内容简介
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 的一流选择。
目录
第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