图书介绍

黑客调试技术揭秘PDF|Epub|txt|kindle电子书版本网盘下载

黑客调试技术揭秘
  • (美)卡斯帕克尔著 周长发译 著
  • 出版社: 电子工业出版社
  • ISBN:
  • 出版时间:2006
  • 标注页数:516页
  • 文件大小:40MB
  • 文件页数:534页
  • 主题词:

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

黑客调试技术揭秘PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1部分 调试工具入门2

第1章 调试工具简介2

1.1 了解你的需求4

1.2 理解调试器的工作原理7

1.3 处理异常8

第2章 在UNIX环境中进行调试的特性10

2.1 Ptrace是GDB的基础调试工具12

2.1.1 Ptrace及其命令14

2.1.2 GDB的多线程支持15

2.1.3 GDB简明指南16

2.1.4 追踪系统调用20

2.1.5 相关链接21

2.2 UNIX中的黑客工具22

2.2.1 调试器22

2.2.2 反汇编工具26

2.2.3 侦查软件27

2.2.4 十六进制编辑器28

2.2.5 内存转储程序29

2.2.6 自动保护工具29

第3章 模拟调试器和仿真器31

3.1 最低系统要求32

3.2 选择一个仿真器33

3.2.1 安全性33

3.2.3 是否有源程序34

3.2.4 仿真质量34

3.2.2 可扩展性34

3.2.5 一个内置的调试器35

3.3 常见仿真器概述36

3.3.1 DOSBox36

3.3.2 Bochs37

3.3.3 微软Virtual PC38

3.3.4 VMware40

3.3.5 仿真器特性汇总表41

3.4 注解41

3.5 仿真器的应用领域41

3.5.1 一般用户使用的仿真器42

3.5.3 软件开发人员使用的仿真器43

3.5.2 管理员使用的仿真器43

3.5.4 黑客使用的仿真器45

3.5.5 如何在VMware中配置SoftIce46

3.5.6 用于其他设备的仿真器46

3.6 关于处理器仿真47

第4章 用BoundsChecker进行应用程序分析52

4.1 快速开始54

4.2 装载非标准的DLLs56

4.3 菜单项57

第2部分 调试工具入门62

第5章 保护机制简介62

5.1 基于密钥类型的保护机制分类63

5.2 创建保护与试图破解65

5.3 从EXE到CRK67

第6章 熟悉调试器82

6.1 方法0:破解原始密码83

6.2 方法1:直接在内存中查找输入的密码94

6.3 方法2:在密码输入函数中设置断点102

6.4 方法3:在消息中设置断点105

第7章 IDA崭露头角108

7.1 与调试器一起使用反汇编器134

7.2 关于IDA C语言136

第8章 注册保护机制之道140

8.1 如何利用序数来发现函数名144

8.2 如何使可执行程序变小165

8.3 设陷捕获WM_GETTEXT166

第9章 散列及其克服169

10.1 限制功能184

第10章 常见的用于演示版的保护机制184

10.2 限制使用期限201

10.3 限制启动次数205

10.4 干扰屏幕207

10.5 密钥文件215

第3部分 反调试技术228

第11章 反调试技术简介228

反调试技术概述229

第12章 各种各样的反调试技术232

12.1 防御实模式调试器的技术232

隐含地调用构造函数245

12.2 防御保护模式调试器的技术246

检测SoftIce258

12.3 如何防止追踪259

追踪263

12.4 如何抵御断点265

12.4.1 几种肮脏的黑客手法271

12.4.2 从中间调用API272

12.4.3 通过“死亡”带调用API286

12.4.4 拷贝完整的API函数289

12.4.5 Windows NT/2000装载程序中的一个缺陷290

12.4.6 Windows NT/2000装载程序中的另一个缺陷291

12.5 如何利用Windows工具来检测调试291

第13章 UNIX特有的反调试技术293

13.1 寄生的文件描述符293

13.2 命令行参数与环境变量294

13.3 进程树295

13.4 信号、转储和异常296

13.5 检测软件断点296

13.6 螳螂捕蝉,黄雀在后297

13.7 直接在内存中查找调试器298

13.8 测量执行时间299

第14章 可自我修改的代码300

14.1 可自我修改代码的一个例子309

14.2 通过因特网来修改代码的问题310

14.3 注解312

第15章 使用隐含的自我控制来创建不可破解的保护313

15.1 隐含的自我控制技术314

15.2 实用的实现316

15.3 如何破解324

第16章 智力调试333

16.1 反汇编333

几个小技巧354

16.2 汇编355

第17章 软件保护360

17.1 盒子方案的缺点361

17.2 防止非法拷贝和共享序列号的保护方法361

17.3 试用版的保护方法362

17.4 防止算法重建的保护方法362

17.5 防止在磁盘和内存中改写的保护方法363

17.6 抵御反汇编器364

17.9 抵御转储365

17.8 抵御监视程序365

17.7 抵御调试器365

17.10 如何自我保护367

17.11 关于保护机制的几点想法368

17.12 防止泄露源程序369

17.13 防止分析二进制代码371

第18章 如何使你的应用程序更可靠374

18.1 溢出错误的原因和后果374

18.2 移植到另一种语言376

18.3 利用堆来创建数组376

18.4 放弃使用结束标志377

18.5 结构化异常处理378

18.6 传统与可靠379

18.7 防止溢出错误380

18.8 查找易受攻击的程序381

18.9 C语言中不正确的优先级选择384

第19章 软件测试387

19.1 微观层上的测试388

19.2 把错误记录在案389

19.3 Beta测试390

19.4 诊断信息的输出391

19.5 概要393

19.6 C/C++语言检验程序393

19.7 累计误差的演示394

19.8 几点注解396

第20章 应用程序和操作系统的严重错误简介400

第4部分 应用程序和操作系统的严重错误400

20.1 应用程序、非法操作和其他401

20.1.1 Doctor Watson402

20.1.2 微软Visual Studio Debug409

第21章 战兢苟活还是出死入生411

21.1 强制退出函数411

21.2 回绕堆栈414

21.3 将控制传给消息处理函数417

第22章 如何利用内存转储424

22.1 在出现严重错误后恢复系统431

NT内核的符号名前缀432

22.2 装载死机转储433

23.1 简介440

第23章 PE文件格式440

第5部分 PE文件440

23.2 各种实现系统的PE文件结构特征441

23.3 PE文件的一般概念和要求442

23.4 PE文件结构444

23.5 可做的事与不可做的事447

23.6 PE文件各主要字段描述449

23.6.1 [old-exe]e_magic449

23.6.2 [old-exe]e_cparhdr449

23.6.3 [old-exe]e_lfanew449

23.6.4 [IMAGE_FILE_HEADER]Machine450

23.6.5 [IMAGE_FILE_HEADER]NumberOfSections450

23.6.8 [image_file_header]Characteristics451

23.6.7 [image_file_header]SizeOfOptionalHeader451

23.6.6 [image_file_header]PointerToSymbolTable/NumberOfSymbols451

23.6.9 [image_opional_header]Magic453

23.6.10 [image_opional_header]SizeOfCode/SizeOfInitializedData/SizeOfUninitializedData453

23.6.11 [image_opional_header]BaseOfCode/BaseOfData454

23.6.12 [image_opional_header]AddressOfEntryPoint454

23.6.13 [image_opional_header]ImageBase454

23.6.14 [image_opional_header]FileAlignment/SectionAlignment455

23.6.15 [image_opional_header]SizeOfImage456

23.6.16 [image_opional_header]SizeOfHeader456

23.6.17 [image_opional_header]CheckSum457

23.6.18 [image_opional_header]Subsystem457

23.6.21 [image_opional_header]NumberOfRvaAndSizes458

23.6.20 [image_opional_header]SizeOfStackReserve/SizeOfStackCommit,SizeOfHeapReserve/SizeOfHeapCommit458

23.6.19 [image_opional_header]DllCharacteristics458

23.6.22 DATA DIRECTORY459

23.6.23 段表461

23.6.24 输出465

23.6.25 输入468

23.6.26 可重定位元素475

第24章 在PE文件中插入和删除代码的技术479

24.1 简介479

24.2 X-Code和其他的常规表示法480

24.3 X-Code的目标和任务481

24.4 X-Code的要求483

24.5 代码插入484

24.5.1 避免多次插入485

24.5.2 插入机制的分类486

24.5.3 类别A:插入到文件内的可用空闲空间中487

24.5.4 类别A:依靠压缩文件的某些部分来插入X-Code500

24.5.5 类别A:在文件内创建一个新的NTFS流502

24.5.6 类别B:改变文件头的大小503

24.5.7 类别B:将段的部分灌入到重叠段506

24.5.8 类别B:创建自己的重叠段508

24.5.9 类别C:扩展文件的最后一个段509

24.5.10 类别C:创建一个新的段512

24.5.11 类别C:扩展宿主文件的中间段513

24.5.12 类别Z:通过自动装载DLL来插入X-Code516

24.6 小结516

附盘说明517

热门推荐