本书英文名:The Hacker Playbook 3,大概几个月前我大致浏览了一下,做了翻译的计划。今天突然看到有朋友转发github上的翻译:
(https://github.com/Snowming04/The-Hacker-Playbook-3-Translation)
联系了作者,授权在订阅号转发这份资源(还是一个大学在读的女孩子?)。
-----------------下面内容转载自作者github------------
译者的话
这本书是 The Hacker Playbook
的第三版,通常我们也说它是红队版。因为本书是以红蓝对抗中红队的视角来撰写的。
首先要说一声抱歉,因为我的翻译可能并不是特别好。首先,整本书是在三周的时间仅由我一个人翻译完的,因为本人临近硕士毕业,不可能花太多时间来作这件事情。而且这本书的专业程度比较高,并不是一本科普读物。而译者的专业水平有限,所以可能对本书的理解上也受限于我的专业水平。但是,译者尽力以最大的诚意,来完成此书的翻译。我寻求的效果是:完成本书作者与中文读者之间的连接。基于此目标,我的翻译原则有以下几条:
- 对每一个句子,我并非在词义的层面上简单的译为中文,而是按照自己的理解翻译的。我有一种观点:如果那样的话,与谷歌翻译有什么区别呢?所以我会在词义的基础上,去理解作者的每一句话,查阅相关资料,结合词义、句意、专业知识背景来翻译。所以读者可以看到,我在一些地方贴出了一些补充资料。我希望我的翻译既保留作者原意,也更符合中文。其中若有不明之处,我跟几位比我从业经验丰富的安全行业朋友进行了讨论,毕竟我资历尚浅,若是因为自己的肤浅理解而误导读者,那可真是我的过错了。对每一个句子,只有我自己让我是可以读懂的,我才会贴上来。
- 因为中文和英文的确存在差异,并非每一句英文的意思都可以用中文完全表达出同样的意思,不可避免的存在些个翻译出来比较奇怪的词语。对于这种情况,我会去互联网上基于关键词进行搜索,参考诸如微软中文文档之类的翻译,最好是遵循他们的翻译惯例。因为毋庸置疑的,专业的微软文档工程师肯定比我的水平高。
- 译文中所有的链接我自己都点过一遍,虽然我拿到的英文 PDF 有些链接自己都无法访问,但是我尽力还原作者原意,通过网络搜索找到正确链接贴上。对于其他的过期链接我也会更附上说明。这里必须说明,事实上,不断的有一些链接失效,仅仅我翻译的这三周,到我今天定稿,就很多失效了。我也只能尽量贴上最新的链接。
- 一些专业术语保留英文常用习惯,因为毕竟本书不是一本科普书。我身边很多安全从业者,不会把 payload 说成攻击载荷。所以本书中除第一次遇到 payload 会附注攻击载荷,后面一律使用payload。类似的专业术语还包括 beacon、POC、AD 等。
- 一些工具里面的选项保留英文。因为若翻译为中文,可能导致读者无法找到该选项,操作不便,反而弄巧成拙。
- 关于【译者注】:我思故我惑。书里也有很多我读不懂的、不太理解的知识盲区。读的时候我会查找相关资料,但是我就会想,为什么不把我找到的觉得不错的资料分享给读者呢?这就是我的翻译中那些【译者注】的由来。因为我把这个翻译当作书 笔记本来用了,所以有很多连接那是因为我自己也要看。如果你不看,请忽略。并且,既然这是中文翻译,所以我分享的参考资料以中文资料为主。英文链接是我觉得特别好的文章才会附上。
- 我拿到的英文 PDF 版本,上面的一些代码存在问题。比如这一句书中的原代码
python SharpShooter.py —interactive
。但是—
其实应该是--
。本书中有多个这种错误。所以根据译者经验:—
如果你跑不通的话,读者可以自行替换为-
或--
来试试,或许就可以跑通了。实在再跑不通的话,可以在网上进行搜索。 - PDF 版本中,如果用
[]
括起来的链接无法访问,请观察 URL,根据情况删除]
,一般就可以访问了。
阅读建议
- 先大概理解每一章讲的是什么,比如:
- 第一章 环境搭建
- 第二章 信息收集
- 第三章 web漏洞利用
- 第四章 内网横向移动和权限提升
- ...... 在心里有个这种朴素的目录,能帮助你读完本书后对红队工作流程心中有数。
- 根据用途对本书中提到的所有你觉得好的工具建一个速查清单。我觉得你可以参考这篇来建:适用于渗透测试不同阶段的工具收集整理
- 本书毕竟是一本外语书,有的工具不适合国内环境。大家自行取舍。
对于本书的一些想法
技术的发展日新月异,所以本书中的一些工具可能有些过时了。我们对本书中的内容无需盲从,可以结合一些自己的思考。
比如,第七章的内容可能会有些跟不上时代。但其实第七章中重新编译 msf 其实就是为了:
- 尽可能消除 msf 的流量指纹特征;
- 强化 msf 的 payload 的一些静态免杀能力;
- 自定义添加一些功能(和 C2 交互方面,动态执行方面,流量优化方面)。
如果想清楚这个,那么看懂并理解它的操作会简单很多。现在针对攻击框架的二次开发基本都是在这么做,思路一致,只是实现方式各有不同,但万变不离其宗,我们依然可以从书中的二次开发思路中获得一些启示。
而且本书作者的一个观点,我认为非常有趣。他说:红队的技术是基于 OSI 七层的不断轮回。作者甚至额外加了一个第八层——社会工程学攻击。如果你看完本书,就会发现,的确,工具有基于物理层的、传输层的......一直到社会工程学攻击。作者认为,当一切防御措施都做得接近完美的时候,我们仍然可以利用第八层,社会工程学攻击去进行渗透。而随着新的技术的发展、不断地趋于大和复杂,一些曾经出现过的旧的漏洞又会出现。传统的攻击方法会迸发出新的生机。
这大概就是我们阅读此类书的目的吧。与其授人以鱼不如授人以渔,一些工具病毒出来不久,就会被安全厂商逆向、签名。但是如果我们习得了屠龙之术,那么就能以不变应对万变。我从本书中作者的循循善诱中学到了很多,作者不仅逐步深入,还会跟我们讲为什么编程能力对安全人员很重要、为什么我们需要理解底层......我相信如果你认真读了,你会跟我一样收获颇多。
----------------转载内容完-------------
目录:
- 介绍
- 渗透测试团队与红队
- 总结
- 第1章 赛前准备——安装
- Metasploit 框架
- Cobalt Strike
- PowerShell Empire
- dnscat2
- p0wnedShell
- Pupy Shell
- PoshC2
- Merlin
- Nishang
- 假定攻破练习
- 设定你的行动
- 设置你的外部服务器
- 红队的核心工具
- 本章总结
- 第2章 发球前——红队侦察
- 扫描结果差异化分析
- Web 应用程序监控
- 云扫描
- 网络和服务的搜索引擎
- 手动解析 SSL 证书
- 子域名发现
- Github
- Cloud
- 电子邮件
- 环境探测
- 额外的开源资源
- 本章总结
- 第3章 抛传——Web 应用程序漏洞利用
- 设置你的 Web 应用程序攻击机器
- 分析 Web 应用程序
- 网络探测
- XSS 跨站脚本攻击
- Blind XSS 漏洞
- 基于 DOM 的 XSS
- NodeJS 中的高级 XSS
- 从 XSS 到 shell
- NoSQL 注入
- 反序列化攻击
- 模板引擎攻击——模板注入
- JavaScript 和远程代码执行
- 服务器端请求伪造(SSRF)
- XML 外部实体攻击(XXE)
- 高级 XXE——XXE-OOB
- 红队的 Web 应用程序攻击
- 聊天支持系统实验
- 漏洞赏金平台
- 网络攻击介绍——Cyber Space Kittens
- Cyber Space Kittens:聊天支持系统
- 本章总结
- 第4章 带球——开始攻击网络
- 攻击 CSK 安全网络
- Service Principal Names(服务主体名称)
- 查询 Active Directory
- Bloodhound/Sharphound
- 横向漫游——移动
- 离开初始主机
- 利用 DCOM 的横向移动
- Pass-the-Hash
- 从服务帐户获取凭据
- 权限提升实验
- 从内存中提取明文凭据
- 从 Windows 凭据管理器和浏览器获取密码
- 从 OSX 获取本地凭证和信息
- Responder
- 更好的 Responder(MultiRelay.py)
- PowerShell Responder
- 建立环境——实验网络
- 高级选修实验
- 从外网寻找侵入对方系统的登陆凭证
- 通过网络移动
- 在内网中没有凭据
- 没有凭据的用户枚举
- 使用 CrackMapExec(CME)扫描网络
- 在攻陷你的第一台机器之后
- 权限提升
- 利用 Windows 域环境的本地应用程序进行攻击
- 转储域控制器哈希
- 利用 VPS 在内网进行 RDP 横向移动
- 在 Linux 中横向移动
- Linux 提权
- Linux 横向移动实验
- 本章总结
- 第5章 助攻——社会工程学攻击
- Microsoft Word/Excel 宏文件
- 非宏的 Office 文件 —— DDE
- 隐藏的加密 payload
- 近似域名(Doppelganger Domain)
- 如何克隆验证页面
- 使用双因素验证的身份凭证
- 开始社会工程学攻击行动
- 网络钓鱼
- 利用社会工程学攻破内网 Jenkins
- 本章总结
- 第6章 短传——物理访问攻击
- 闯入 Cyber Space Kittens
- QuickCreds
- BunnyTap
- LAN Turtle
- ID 卡复制器
- 绕过入口点的物理工具
- Packet Squirrel
- Bash Bunny
- WiFi
- 本章总结
- 第7章 四分卫突破——逃避杀毒软件和网络检测
- 如何在 Windows 上构建(build) Metasploit/Meterpreter:
- 创建一个修改后的 Stage 0 Payload
- Shellcode 与 DLL
- 运行服务器
- 客户端
- 配置客户端和服务器
- 添加新的处理程序
- 进一步练习
- 设置你的环境
- 从源码编译
- 示例框架
- 混淆
- 为红队行动编写工具
- 基础的键盘记录器
- 本书定制的挂钩病毒(Dropper)
- 重新编译 Metasploit/Meterpreter 以绕过杀毒软件和网络检测
- SharpShooter
- 应用程序白名单绕过
- 代码洞(Code Caves)
- PowerShell 混淆
- 不使用 PowerShell.exe 执行 PowerShell 脚本
- HideMyPS
- 本章总结
- 第8章 特勤组——破解、漏洞利用和技巧
- 破解 CyberSpaceKittens NTLM 哈希:
- 使用 RC 脚本自动化运行 Metasploit
- 自动化运行 Empire
- 自动化运行 Cobalt Strike
- 自动化的未来
- 自动化
- 密码破解
- 彻底破解全部 —— 尽可能多地快速破解
- 具有创新性的的入侵行动
- 禁用 PowerShell 记录
- 从命令行连接网络下载 Windows 文件
- 从本地管理员权限到系统权限
- 在不触及 LSASS 的情况下检索 NTLM 哈希值
- 使用防御工具构建训练和监控的实验环境
- 本章总结
- 第9章 两分钟的训练——从零到英雄
- 第10章 赛后——分析报告
- 继续教育
- 关于作者