C++反汇编与逆向分析技术揭秘(第2版)

C++反汇编与逆向分析技术揭秘(第2版)

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

这是一部系统讲解反汇编与逆向分析技术原理、流程、方法和实用技巧的著作。

内容简介

本书版出版于2011年,10年来畅销不衰,成为反汇编与逆向工程领域的标志性著作,被数十万安全工程师和C++工程师奉为瑰宝。在优选学术界和企业界都享有盛誉,故第2版得到了优选15位安全技术专家的倾力推荐。第2版在技术、工具和案例等方面做了大量的更新和补充。

通过本书,你将掌握以下知识或技能:逆向分析技术的工具和原理;逆向分析技术的流程和方法;逆向分析技术的精髓和实用技巧;软件调试的技术原理,以及代码运行时的内存表现;C++语法的实现机制和反汇编表现形式。

作者简介

作者钱林松,资深安全技术专家、软件开发工程师和架构师。从事计算机安全和软件开发工作近20年,实践经验丰富,尤其精通软件逆向分析技术,对C/C++技术和Windows的底层机制也有非常深入的研究。武汉科锐软件技术有限公司(国内知名的安全教育机构)创始人,教学经验丰富,多年来,为国内计算机安全领域培养和输送了大量的人オ。活跃于看雪论坛,有较高的知名度和影响力。

章节目录

版权信息

赞誉

序一

序二

序三

前言

第一部分 准备工作

第1章 熟悉工作环境和相关工具

1.1 安装Visual Studio 2019

1.2 安装GCC

1.3 调试工具OllyDbg

1.4 调试工具x64dbg

1.5 调试工具WinDbg

1.6 反汇编静态分析工具IDA

1.7 反汇编引擎的工作原理

1.8 本章小结

第二部分 C++反汇编揭秘

第2章 基本数据类型的表现形式

2.1 整数类型

2.2 浮点数类型

2.3 字符和字符串

2.4 布尔类型

2.5 地址、指针和引用

2.6 常量

2.7 本章小结

第3章 认识启动函数,找到用户入口

3.1 程序的真正入口

3.2 了解VS2019的启动函数

3.3 main函数的识别

3.4 本章小结

第4章 观察各种表达式的求值过程

4.1 算术运算和赋值

4.2 关系运算和逻辑运算

4.3 位运算

4.4 编译器使用的优化技巧

4.5 一次算法逆向之旅

4.6 本章小结

第5章 流程控制语句的识别

5.1 if语句

5.2 if…else…语句

5.3 用if构成的多分支流程

5.4 switch的真相

5.5 难以构成跳转表的switch

5.6 降低判定树的高度

5.7 do、while、for的比较

5.8 编译器对循环结构的优化

5.9 本章小结

第6章 函数的工作原理

6.1 栈帧的形成和关闭

6.2 各种调用方式的考察

6.3 使用ebp或esp寻址

6.4 函数的参数

6.5 函数的返回值

6.6 x64调用约定

6.7 本章小结

第7章 变量在内存中的位置和访问方式

7.1 全局变量和局部变量的区别

7.2 局部静态变量的工作方式

7.3 堆变量

7.4 本章小结

第8章 数组和指针的寻址

8.1 数组在函数内

8.2 数组作为参数

8.3 数组作为返回值

8.4 下标寻址和指针寻址

8.5 多维数组

8.6 存放指针类型数据的数组

8.7 指向数组的指针变量

8.8 函数指针

8.9 本章小结

第9章 结构体和类

9.1 对象的内存布局

9.2 this指针

9.3 静态数据成员

9.4 对象作为函数参数

9.5 对象作为返回值

9.6 本章小结

第10章 构造函数和析构函数

10.1 构造函数的出现时机

10.2 每个对象是否都有默认的构造函数

10.3 析构函数的出现时机

10.4 本章小结

第11章 虚函数

11.1 虚函数的机制

11.2 虚函数的识别

11.3 本章小结

第12章 从内存角度看继承和多重继承

12.1 识别类和类之间的关系

12.2 多重继承

12.3 抽象类

12.4 虚继承

12.5 本章小结

第13章 异常处理

13.1 异常处理的相关知识

13.2 异常类型为基本数据类型的处理流程

13.3 异常类型为对象的处理流程

13.4 识别异常处理

13.5 x64异常处理

13.6 本章小结

第三部分 逆向分析技术应用

第14章 PEiD的工作原理分析

14.1 开发环境的识别

14.2 开发环境的伪造

14.3 本章小结

第15章 调试器OllyDbg的工作原理分析

15.1 INT3断点

15.2 内存断点

15.3 硬件断点

15.4 异常处理机制

15.5 加载调试程序

15.6 本章小结

第16章 大灰狼远控木马逆向分析

16.1 调试环境配置

16.2 病毒程序初步分析

16.3 启动过程分析

16.4 通信协议分析

16.5 远控功能分析

16.6 本章小结

第17章 WannaCry勒索病毒逆向分析

17.1 tasksche.exe勒索程序逆向分析

17.2 mssecsvc.exe蠕虫程序逆向分析

17.3 永恒之蓝MS17-010漏洞原理分析

17.4 本章小结

第18章 反汇编代码的重建与编译

18.1 重建反汇编代码

18.2 编译重建后的反汇编代码

18.3 本章小结

参考文献

C++反汇编与逆向分析技术揭秘(第2版)是2021年由机械工业出版社出版,作者钱林松。

得书感谢您对《C++反汇编与逆向分析技术揭秘(第2版)》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
C++程序设计(第2版) 电子书
本书是为已有C程序设计基础、想学习C++面向对象程序设计的读者编写。全书共分9章:第1、2章介绍了面向对象程序设计方法及C++程序设计语言基础;第3~6章围绕面向对象程序设计的数据封装和隐藏、继承性和多态性三个特征,分别介绍了类和对象、构造函数与析构函数、静态成员、友元类和友元函数、继承和派生、多态性等;第7~9章分别介绍了函数模板和类模板、文件和流、异常处理。
C++程序设计——思想与方法 慕课版(第3版) 电子书
本书主要内容包括:程序的基本组成,分支程序设计,循环程序设计,批量数据处理——数组,过程封装——函数,间接访问——指针,数据封装——结构体,模块化开发,创建新的类型,运算符重载,组合与继承,泛型机制——模板,输入输出与文件,异常处理,容器与迭代器。
C++程序设计教程(第2版) 电子书
本书共11章,第1章介绍C++对C语言的扩充:第2-5章介绍C++的核心知识,包括类与对象、运算符重载、继承与派生、多态与虚函数;第6-7章介绍模板与STL;第8-9章介绍C++的I/O流和异常:第10章介绍C++11新特性;笫11章带领读者开发一个综合项目——酒店管理系统,让读者将前面所学知识融会贯通,并了解实际项目的开发流程。
C/C++函数与算法速查宝典 电子书
本书系统地讲解了C和C++中的常用函数及算法,是一本内容丰富的案头工具书。
大数据技术原理与应用——概念、存储、处理、分析与应用 电子书
全书共有13章,系统地论述了大数据的基本概念、大数据处理架构Hadoop、分布式文件系统HDFS、分布式数据库HBase、NoSQL数据库、云数据库、分布式并行编程模型MapReduce、流计算、图计算、数据可视化以及大数据在互联网、生物医学和物流等各个领域的应用。在Hadoop、HDFS、HBase和MapReduce等重要章节,安排了入门级的实践操作,让读者更好地学习和掌握大数据关键技术。