在编写各种强大而高效的黑客工具时,Python是大多数安全工程师的一选。在畅销书《Python黑帽子:黑客与渗透测试编程之道》(第2版)中,你将见识Python的“黑暗面”:从编写网络探嗅工具、窃取email身份凭证、穷举扫描网站目录,到制作fuzz工具、探索虚拟机镜像,以及设计无声潜伏的木马,等等。在第2版里,所有的代码都迁移到了Python 3.x。你还能看到其中新增了位运算、代码整洁性、基于Volatility框架的攻击取证等内容,对于各种Python库(ctypes、struct、lxml和BeautifulSoup)及各种攻击策略(例如分割数据、巧用计算机视觉库、爬取网站数据等),作者也展开了深入讨论。
你还能学到如何:
√ 编写一套基于GitHub的C&C木马服务。
√ 探测自己是否处于沙箱环境中,并执行各种恶意软件常见操作,例如记录键盘输入、抓取屏幕等。
√ 扩展Web黑客工具Burp Suite的功能。
√ 通过原创的进程控制框架进行Windows提权。
√ 使用攻击性的取证技巧,从虚拟机中提取密码哈希值及发掘漏洞。
√ 利用Windows COM自动化接口。
√ 从网络中隐蔽地渗漏数据。
本书是畅销书《Python黑帽子:黑客与渗透测试编程之道》的再版,介绍Python是如何被运用在黑客和渗透测试的各个领域的:从基本的网络扫描到数据包捕获,从Web爬虫到编写Burp插件,从编写木马到权限提升等。书中的很多实例都很有启发意义,比如HTTP通信数据中的人脸图像检测,基于GitHub进行C&C通信的模块化木马,浏览器的中间人攻击,利用COM组件自动化技术窃取数据,通过进程监视和代码插入进行提权,通过向虚拟机内存快照插入shellcode实现木马驻留和权限提升等。学习这些实例,读者不仅能掌握各种Python库的应用和编程技术,还能拓宽视野,培养和锻炼自己的黑客思维。阅读本书时,几乎感受不到一般技术图书常有的枯燥和乏味。
与第1版相比,本次再版的大工程在于对示例代码的全方位升级。两位作者不仅将示例代码从Python 2升级到Python 3,还对编码风格进行了改善。此外,他们还用了一些从Python 3.6版本引入的新语法,并增补了一些新的知识点,比如上下文管理器的用法、BPF语法,等等。
本书适合有一定Python编程基础的安全爱好者、计算机从业人员阅读。对于正在学习计算机安全专业,立志从事计算机安全行业,成为渗透测试人员的人来说,本书更是不可多得的参考书。
1 设置你的Python环境 1
安装Kali Linux虚拟机 2
配置Python 3 3
安装IDE 6
保持代码整洁 6
2 基础的网络编程工具 9
Python网络编程简介 10
TCP客户端 10
UDP客户端 11
TCP服务端 12
取代netcat 13
小试牛刀 19
开发一个TCP代理 22
小试牛刀 28
基于Paramiko的SSH通信 30
小试牛刀 36
SSH隧道 37
小试牛刀 41
3 编写流量嗅探器 43
编写基于UDP的主机发现工具 44
Windows和Linux上的包嗅探 44
小试牛刀 46
解码IP层 47
ctypes库 48
struct库 49
编写IP解码器 53
小试牛刀 55
解码ICMP 56
小试牛刀 61
4 Scapy:网络的掌控者 63
窃取邮箱身份凭证 64
小试牛刀 68
ARP投毒 68
小试牛刀 74
pcap文件处理 76
小试牛刀 83
5 Web攻击 85
Python中的网络库 86
Python 2中的urllib2库 86
Python 3中的urllib库 87
requests库 88
lxml与BeautifulSoup库 89
拓印开源网站系统的初始结构 91
拓印WordPress系统结构 92
扫描在线目标 96
小试牛刀 98
暴力破解目录和文件位置 98
小试牛刀 102
暴力破解HTML登录表单 104
小试牛刀 109
6 编写Burp插件 111
配置Burp Suite 112
Burp模糊测试插件 113
小试牛刀 120
在Burp中调用Bing搜索 125
小试牛刀 129
利用网页内容生成暴破字典 131
小试牛刀 135
7 基于GitHub服务的C&C通信 139
创建GitHub账号 140
编写木马模块 141
编写木马配置文件 142
构建基于GitHub通信的木马 143
深入探索Python的import功能 146
小试牛刀 148
8 Windows下的木马常用功能 150
键盘记录 151
小试牛刀 154
截取屏幕 155
以Python风格执行shellcode 157
小试牛刀 159
沙箱检测 159
9 数据渗漏 165
文件的加密与解密 166
基于电子邮件的数据渗漏 169
基于文件传输的数据渗漏 171
基于Web服务器的数据渗漏 172
融会贯通 176
小试牛刀 178
10 Windows系统提权 180
安装依赖库 181
模拟受害服务 181
编写进程监视器 184
利用WMI监视进程 185
小试牛刀 187
Windows系统的令牌权限 188
“赢得”条件竞争 190
小试牛刀 194
代码注入 194
小试牛刀 196
11 攻击取证 198
安装Volatility 199
探查基本情况 201
探查用户信息 203
探查潜在漏洞 206
volshell控制界面 208
编写Volatility插件 209
小试牛刀 215
出发! 217
《Python黑帽子:黑客与渗透测试编程之道》(第2版)是一本由从业多年的专家精心撰写的好书,无私分享了他们一路走来学到的许多诀窍。也许它不会让你马上变成像我一样的绝世高手,但它绝对能够让你走上一条正确的道路。
——被誉为世界头号的Charlie Miller
很多讲编程的书都有些枯燥,但《Python黑帽子:黑客与渗透测试编程之道》完全不会,因为它以Python为线索讲网络安全攻防。它只所以风靡网络安全社区,除了因为初学者人手一本,还因为工作很多年的老家伙也亟需了解如何用Python工具高效完成工作。
——于旸(tombkeeper/Tk教主) 腾讯玄武实验室现负责人,绿盟科技前高级研究员
本书剖析黑客和渗透技巧的本质,传授如何用Python内置模块或优秀第三方模块来实现。这本书让很多人不再是只会使用他人工具的“脚本小子”,也能用Python打造属于自己的漏洞利用工具。立志成为一名真正的黑客,这本书是非常好的切入点。
——余弦 知道创宇技术副总裁
在渗透测试过程中,收集目标信息、对漏洞进行模糊测试、利用漏洞、提升权限、部署后门等都是重复繁杂的工作,这本书教你如何利用Python在各种场景下实现自动化、工具化。培养和锻炼黑客思维,本书值得拥有!
——张瑞冬(Only_Guest)无糖信息CEO
很多知名的黑客工具、安全系统框架都是用Python开发的,比如渗透测试框架Metasploit、fuzz框架Sulley、交互式数据包处理程序Scapy。本书基于实际攻防场景讲解代码思路,能够让读者快速上手。
——胡珀(lake2)腾讯安全平台部总监
本书从漏洞的POC到网络通信,从攻击取证到数据报文分析,非常全面、实用,是网络安全从业者不可多得的一本好书。不会用Python编程的渗透测试工程师是没有前途的,力荐《Python黑帽子》。
——杨冀龙 知道创宇 CTO
Python在CTF赛场拥有统治地位,在学术型白帽研究团队和业界安全研究团队中也已成为主流。本书作者浸淫漏洞研究与渗透测试二十年,感谢他再次贡献这一经典Python黑客养成手册的新版。
——诸葛建伟 清华大学副研究员/蓝莲花战队联合创始人及领队/XCTF 联赛联合发起人及执行组织者
国内高校很少将Python及其安全应用列入专业培养计划,市面上也缺乏相关图书供从业人员学习。本书从渗透测试和探嗅、取证角度介绍Python及相关库的使用,填补了这一空白。
——何淇丹(a.k.a Flanker) Keen Team高级研究员
正如老牌大黑客查理·米勒在本书序中所言,职业黑客会编写自己的工具。本书给出大量样例和技巧,足以让那些想利用Python迅速提高Web渗透测试水平的人提早自食其力。
——陈宇森 北京长亭科技有限公司联合创始人/蓝莲花战队核心成员/BlackHat 2015讲者
又一本Python方面的力作!书中的很多程序只要稍加拓展,至少能用十年,对于一本信息安全著作来说非常难得。
——Stephen Northcutt,SANS Technology Institute联合创始人
将Python活用于网络安全领域的一部杰作。
——Andrew Case,Volatility项目核心开发者,The Art of Memory Forensics作者
若你真的掌握了黑客式思维,那么一丝灵感就足以让你大有所成。而Justin Seitz正是能为你提供一大把灵感的人。
——白帽黑客
不管你是想成为专业的黑客/渗透测试工程师,还是想简单了解一下他们的工作,都应该读一读这本书。它紧凑、专业,令人大开眼界。
——Sandra Heny-Stocker,IT World
绝对是一本值得力荐的书,非常适合有一定Python基础的信息安全从业人员。
——Richard Austin,IEEE Cipher