标题：Metasploit渗透测试指南
基本信息
作者： (美)David Kennedy Jim O'Gorman Devon Kearns Mati Aharoni 
译者： 诸葛建伟 王珩 孙松柏  丛书名： 安全技术大系 
出版社：电子工业出版社 
ISBN：9787121154874
上架时间：2012-1-9
出版日期：2012 年1月
开本：16开
页码：1
版次：1-1
所属分类： 计算机
内容简介
本书介绍Metasploit——近年来最强大、最流行和最有发展前途的开源渗透测试平台软件，以及基于Metasploit进行网络渗透测试与安全漏洞研究分析的技术、流程和方法。　　本书共有17章，覆盖了渗透测试的情报搜集、威胁建模、漏洞分析、渗透攻击和后渗透攻击各个环节，并包含了免杀技术、客户端渗透攻击、社会工程学、自动化渗透测试、无线网络攻击等高级技术专题，以及如何扩展Metasploit情报搜集、渗透攻击与后渗透攻击功能的实践方法，本书一步一个台阶地帮助初学者从零开始建立起作为渗透测试者的基本技能，也为职业的渗透测试工程师提供一本参考用书。本书获得了Metasploit开发团队的一致好评，Metasploit项目创始人HD Moore评价本书为：“现今最好的Metasploit框架软件参考指南”。
目录
《metasploit渗透测试指南》 
第1章 渗透测试技术基础 1 
1.1 ptes标准中的渗透测试阶段 2 
1.1.1 前期交互阶段 2 
1.1.2 情报搜集阶段 2 
1.1.3 威胁建模阶段 2 
1.1.4 漏洞分析阶段 3 
1.1.5 渗透攻击阶段 3 
1.1.6 后渗透攻击阶段 3 
1.1.7 报告阶段 4 
1.2 渗透测试类型 4 
1.2.1 白盒测试 5 
1.2.2 黑盒测试 5 
1.3 漏洞扫描器 5 
1.4 小结 6 
第2章 metasploit基础 7 
2.1 专业术语 7 
2.1.1 渗透攻击（exploit） 8 
2.1.2 攻击载荷（payload） 8 
2.1.3 shellcode 8 
.2.1.4 模块（module） 8 
2.1.5 监听器（listener） 8 
2.2 metasploit用户接口 8 
2.2.1 msf终端 9 
2.2.2 msf命令行 9 
2.2.3 armitage 11 
2.3 metasploit功能程序 12 
2.3.1 msf攻击载荷生成器 12 
2.3.2 msf编码器 13 
2.3.3 nasm shell 13 
2.4 metasploit express和metasploit pro 14 
2.5 小结 14 
第3章 情报搜集 15 
3.1 被动信息搜集 16 
3.1.1 whois查询 16 
3.1.2 netcraft 17 
3.1.3 nslookup 18 
3.2 主动信息搜集 18 
3.2.1 使用nmap进行端口扫描 18 
3.2.2 在metasploit中使用数据库 20 
3.2.3 使用metasploit进行端口扫描 25 
3.3 针对性扫描 26 
3.3.1 服务器消息块协议扫描 26 
3.3.2 搜寻配置不当的microsoft sql server 27 
3.3.3 ssh服务器扫描 28 
3.3.4 ftp扫描 29 
3.3.5 简单网管协议扫描 30 
3.4 编写自己的扫描器 31 
3.5 小结 33 
第4章 漏洞扫描 35 
4.1 基本的漏洞扫描 36 
4.2 使用nexpose进行扫描 37 
4.2.1 配置 37 
4.2.2 将扫描报告导入到metasploit中 42 
4.2.3 在msf控制台中运行nexpose 43 
4.3 使用nessus进行扫描 44 
4.3.1 配置nessus 44 
4.3.2 创建nessus扫描策略 45 
4.3.3 执行nessus扫描 47 
4.3.4 nessus报告 47 
4.3.5 将扫描结果导入metasploit框架中 48 
4.3.6 在metasploit内部使用nessus进行扫描 49 
4.4 专用漏洞扫描器 51 
4.4.1 验证smb登录 51 
4.4.2 扫描开放的vnc空口令 52 
4.4.3 扫描开放的x11服务器 54 
4.5 利用扫描结果进行自动化攻击 56 
第5章 渗透攻击之旅 57 
5.1 渗透攻击基础 58 
5.1.1 msf] show exploits 58 
5.1.2 msf] show auxiliary 58 
5.1.3 msf] show options 58 
5.1.4 msf] show payloads 60 
5.1.5 msf] show targets 62 
5.1.6 info 63 
5.1.7 set和unset 63 
5.1.8 setg和unsetg 64 
5.1.9 save 64 
5.2 你的第一次渗透攻击 64 
5.3 攻击一台ubuntu主机 68 
5.4 全端口攻击载荷：暴力猜解目标开放的端口 71 
5.5 资源文件 72 
5.6 小结 73 
第6章 meterpreter 75 
6.1 攻陷windows xp 虚拟机 76 
6.1.1 使用nmap扫描端口 76 
6.1.2 攻击ms sql 76 
6.1.3 暴力破解ms sql服务器 78 
6.1.4 xp_cmdshell 79 
6.1.5 meterpreter基本命令 80 
6.1.6 获取键盘记录 81 
6.2 挖掘用户名和密码 82 
6.2.1 提取密码哈希值 82 
6.2.2 使用meterpreter命令获取密码哈希值 83 
6.3 传递哈希值 84 
6.4 权限提升 85 
6.5 令牌假冒 87 
6.6 使用ps 87 
6.7 通过跳板攻击其他机器 89 
6.8 使用meterpreter脚本 92 
6.8.1 迁移进程 92 
6.8.2 关闭杀毒软件 93 
6.8.3 获取系统密码哈希值 93 
6.8.4 查看目标机上的所有流量 93 
6.8.5 攫取系统信息 93 
6.8.6 控制持久化 94 
6.9 向后渗透攻击模块转变 95 
6.10 将命令行shell升级为meterpreter 95 
6.11 通过附加的railgun组件操作windows api 97 
6.12 小结 97 
第7章 免杀技术 99 
7.1 使用msf攻击载荷生成器创建可独立运行的二进制文件 100 
7.2 躲避杀毒软件的检测 101 
7.2.1 使用msf编码器 102 
7.2.2 多重编码 103 
7.3 自定义可执行文件模板 105 
7.4 隐秘地启动一个攻击载荷 106 
7.5 加壳软件 107 
7.6 小结：关于免杀处理的最后忠告 108 
第8章 客户端渗透攻击 109 
8.1 基于浏览器的渗透攻击 110 
8.1.1 基于浏览器的渗透攻击原理 111 
8.1.2 空指令 112 
8.2 使用immunity调试器来揭秘空指令机器码 112 
8.3 对ie浏览器的极光漏洞进行渗透利用 116 
8.4 文件格式漏洞渗透攻击 119 
8.5 发送攻击负载 120 
8.6 小结 121 
第9章 metasploit辅助模块 123 
9.1 使用辅助模块 126 
9.2 辅助模块剖析 128 
9.3 小结 133 
第10章 社会工程学工具包 135 
10.1 配置set工具包 136 
10.2 针对性钓鱼攻击向量 137 
10.3 web攻击向量 142 
10.3.1 java applet 142 
10.3.2 客户端web攻击 146 
10.3.3 用户名和密码获取 148 
10.3.4 标签页劫持攻击 150 
10.3.5 中间人攻击 150 
10.3.6 网页劫持 151 
10.3.7 综合多重攻击方法 153 
10.4 传染性媒体生成器 157 
10.5 teensy usb hid攻击向量 157 
10.6 set的其他特性 160 
10.7 小结 161 
第11章 fast-track 163 
11.1 microsoft sql注入 164 
11.1.1 sql注入——查询语句攻击 165 
11.1.2 sql注入——post参数攻击 166 
11.1.3 手工注入 167 
11.1.4 ms sql破解 168 
11.1.5 通过sql自动获得控制（sqlpwnage） 172 
11.2 二进制到十六进制转换器 174 
11.3 大规模客户端攻击 175 
11.4 小结：对自动化渗透的一点看法 176 
第12章 karmetasploit无线攻击套件 177 
12.1 配置 178 
12.2 开始攻击 179 
12.3 获取凭证 181 
12.4 得到shell 182 
12.5 小结 184 
第13章 编写你自己的模块 185 
13.1 在ms sql上进行命令执行 186 
13.2 探索一个已存在的metasploit模块 187 
13.3 编写一个新的模块 189 
13.3.1 powershell 189 
13.3.2 运行shell渗透攻击 190 
13.3.3 编写powershell_upload_exec函数 192 
13.3.4 从十六进制转换回二进制程序 192 
13.3.5 计数器 194 
13.3.6 运行渗透攻击模块 195 
13.4 小结：代码重用的能量 196 
第14章 创建你自己的渗透攻击模块 197 
14.1 fuzz测试的艺术 198 
14.2 控制结构化异常处理链 201 
14.3 绕过seh限制 204 
14.4 获取返回地址 206 
14.5 坏字符和远程代码执行 210 
14.6 小结 213 
第15章 将渗透代码移植到metasploit框架 215 
15.1 汇编语言基础 216 
15.1.1 eip和esp寄存器 216 
15.1.2 jmp指令集 216 
15.1.3 空指令和空指令滑行区 216 
15.2 移植一个缓冲区溢出攻击代码 216 
15.2.1 裁剪一个已有的渗透攻击代码 218 
15.2.2 构造渗透攻击过程 219 
15.2.3 测试我们的基础渗透代码 220 
15.2.4 实现框架中的特性 221 
15.2.5 增加随机化 222 
15.2.6 消除空指令滑行区 223 
15.2.7 去除伪造的shellcode 223 
15.2.8 我们完整的模块代码 224 
15.3 seh覆盖渗透代码 226 
15.4 小结 233 
第16章 meterpreter脚本编程 235 
16.1 meterpreter脚本编程基础 235 
16.2 meterpreter api 241 
16.2.1 打印输出 241 
16.2.2 基本api调用 242 
16.2.3 meterpreter mixins 242 
16.3 编写meterpreter脚本的规则 244 
16.4 创建自己的meterpreter脚本 244 
16.5 小结 250 
第17章 一次模拟的渗透测试过程 251 
17.1 前期交互 252 
17.2 情报搜集 252 
17.3 威胁建模 253 
17.4 渗透攻击 255 
17.5 msf终端中的渗透攻击过程 255 
17.6 后渗透攻击 257 
17.6.1 扫描metasploitable靶机 258 
17.6.2 识别存有漏洞的服务 259 
17.7 攻击apache tomcat 260 
17.8 攻击一个偏门的服务 262 
17.9 隐藏你的踪迹 264 
17.10 小结 266 
附录a 配置目标机器 267 
附录b 命令参考列表 275