Python灰帽子黑客与逆向工程师的Python编程之道pdf下载电子书下载|百度网盘下载

时间: 2022-05-08 03:17:21  10 断点 断点 例程

编辑评论:

Python Grey Hat - 黑客和逆向工程师的 Python 编程之道 本书由知名安全机构 ImmunityInc 的高级黑帽 Justin Seitz 先生撰写编程语言 Python 是被广泛使用的关于黑客和逆向工程的书籍。资深黑客和 Immunity\nInc Dave\nAitel 的创始人兼 CTO (CT0) 担任本书的技术编辑。

Python灰帽黑客与逆向工程师之Python编程之道pdf下载

简介

本书的大部分内容侧重于黑客领域的两个经久不衰的主题:逆向工程和漏洞挖掘,并让读者深入了解几乎每个逆向工程师或安全研究人员在日常工作中所做的事情。面对各种场景,包括:如何设计?构建自己的调试工具,如何自动化繁琐的逆向分析任务,如何设计和构建自己的 fuzzing 工具,如何使用 fuzzing 测试找出软件产品中存在的安全漏洞,钩子的应用等一些技巧和注入技术,并深入介绍了一些主流的 Python 安全工具,如 PyDbg、Immunity\nDebugger、Sulley、IDAPython、PyEmu 等。作者在当今流行编程语言的读者的帮助下,通过构建强大的脚本来解决这些问题黑客社区中的 Python。本书中出现的Python代码示例有相当一部分是借用或直接来源于一些开源安全项目,例如Pedram\nAmini的Paimei,让读者可以体会到安全研究人员如何?如何优雅地融合黑客艺术和工程技术来解决那些棘手的问题。

本书适合热衷于黑客技术的读者,尤其是逆向工程和漏洞挖掘相关的读者,以及所有对Python编程感兴趣的读者。

调用约定

调用约定特指函数的调用方法。其中包括传递函数参数的方法、顺序(压栈或传给寄存器)、函数返回时栈的平衡处理。下面两个约定是最常用的:edecl和stdcall.cdecl调用约定,函数的参数从右到左压入栈中,函数的调用者负责函数调用后的平衡功能被执行。此约定通常用于 x86 架构的 C 语言中。

定义结构和联合

结构和联合是非常重要的数据类型,被大量用于 WIN32 和 Linux libc 的 API 使用。结构变量是简单变量的集合(所有变量都占用空间)。这些结构体中的变量在类型上没有限制,点击变量名即可访问。例如 beer recipe.amt barley,就是访问 beer recipe 结构中的 amt barley 变量。

目录

第 1 章构建开发环境 1

1.1 操作系统要求 1

1.2 获取和安装 Python 2.52

1.2.1 Windows下安装Python2

1.2.2 Linux下安装Python2

1.3 安装 Eclipse 和 PyDev4

1.3.1 黑客最好的朋友:ctype library 5

1.3.2 使用动态链接库 6

1.3.3 构建 C 数据类型 8

1.3.4 引用传递 9

1.3.5 定义结构和联合 9

第2章调试器原理与设计12

2.1 通用寄存器 13

2.2 堆栈 15

2.3 调试事件 17

2.4 断点 18

2.4.1 软断点 18

2.4.2 硬件断点20

2.4.3 内存断点22

第 3 章构建您自己的 Windows 调试器 24

3.1 被调试者,敢问你在哪里24

3.2 获取注册状态信息33

3.2.1 线程枚举34

3.2.2 功能集成 35

3.3 实现调试事件处理例程 39

3.4 万能断点44

3.4.1 软断点 44

3.4.2 硬件断点 49

3.4.3 内存断点55

3.5 总结 59

第 4 章 PyDbg - 适用于 Windows 60 的纯 Python 调试器

4.1 扩展断点处理例程 60

4.2 非法内存操作处理例程63

4.3 进程快照 66

4.3.1 获取进程快照 67

4.3.2 聚合与集成 70

第 5 章免疫调试器 - 双极世界的最佳选择 74

5.1 安装 Immunity Debugger74

5.2 免疫调试器 10175

5.2.1 PyCommand 76

5.2.2 PyHooks76

5.3 漏洞利用开发 78

5.3.1 搜索漏洞利用友好命令 78

5.3.2 “坏”字符过滤 80

5.3.3 Windows 82下绕过DEP机制

5.4 破坏恶意软件 87 中的反调试程序

5.4.1 IsDebuugerPresent87

5.4.2 中断进程枚举例程 88

第 6 章钩子的艺术 90

6.1 使用 PyDbg 部署软钩子 90

6.2 使用 Immunity Debugger 部署 Hard Hooks 95

第 7 章 DLL 注入和代码注入技术 101

7.1 创建远程线程 101

7.1.1 DLL 注入 102

7.1.2 代码注入 105

7.2 进入黑暗 108

7.2.1 文件隐藏109

7.2.2 构建后门 110

7.2.3 使用py2exe编译Python代码114

第 8 章 Fuzzing117

8.1 几种常见的错误类型 118

8.1.1 缓冲区溢出 118

8.1.2 整数溢出 119

8.1.3 格式化字符串攻击121

8.2 文件 Fuzzer122

8.3 后续改进策略 129

8.3.1 代码覆盖率 129

8.3.2 自动静态分析 130

第 9 章 Sulley131

9.1 安装 Sulley132

9.2 Sulley 132 中的基本数据类型

9.2.1 字符串 133

9.2.2 分隔符 133

9.2.3 静态和随机数据类型 134

9.2.4 二进制数据 134

9.2.5 整数 134

9.2.6 块和组 135

9.3 突击战FTPD136

9.3.1 FTP 101137

9.3.2 创建 FTP 协议描述框架 138

9.3.3 Sulley 会话 139

9.3.4 网络和进程监控 140

9.3.5 模糊测试和 Sulley 的 Web 界面 141

第 10 章 Windows 驱动程序的模糊测试技术 145

10.1 驱动程序通信基础 146

10.2 使用 Immunity Debugger 进行驱动程序级模糊测试 147

10.3 Driverlib——面向驱动的静态分析工具 151

10.3.1 查找设备名称152

10.3.2 查找 IOCTL 调度例程 153

10.3.3 搜索有效的 IOCTL 控制码 155

10.4 构建驱动程序 Fuzzer157

第 11 章 IDAPython——IDA PRO 环境中的 Python 脚本编程 162

11.1 安装IDAPython163

11.2 IDAPython 函数 164

11.2.1 两个效用函数 164

11.2.2 段 164

11.2.3 功能 165

11.2.4 交叉引用 166

11.2.5 调试器挂钩 166

11.3 脚本示例 167

11.3.1 搜索危险功能的交叉路口代码 168

11.3.2 功能覆盖检测169

11.3.3 检查堆栈变量大小 171

第 12 章 PYEmu——脚本驱动的模拟器 174

12.1 安装 PyEmu174

12.2 PyEmu 概述 175

12.2.1 PyCPU175

12.2.2 PyMemory176

12.2.3 PyEmu176

12.2.4 指令执行 176

12.2.5 内存修饰符和寄存器修饰符 177

12.2.6 处理程序 177

12.3 IDAPyEmu182

12.3.1 功能模拟 184

12.3.2 PEPyEmu187

12.3.3 可执行打包程序 188

12.3.4 UPX 打包器 188

12.3.5 使用 PEPyEmu 189 移除 UPX 外壳

  • 声明:本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,以上内容仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站内容来自网络收集整理或网友投稿,所提供的下载链接也是站外链接,版权争议与本站无关。您必须在下载后的24个小时之内,从您的设备中彻底删除上述内容。如果您喜欢该程序和内容,请支持正版!我们非常重视版权问题,如有侵权请邮件与我们联系处理。敬请谅解!邮箱:121671486@qq.com,微信:diqiuren010101

学习考试资源网-58edu © All Rights Reserved.  湘ICP备12013312号-3 
站点地图| 免责说明| 合作请联系| 友情链接:学习乐园