逆向工程权威指南 上下册+逆向工程实战+有趣的二进制 软件安全与逆向分析+逆向工程核心原理

逆向工程权威指南 上下册+逆向工程实战+有趣的二进制 软件安全与逆向分析+逆向工程核心原理 pdf epub mobi txt 电子书 下载 2025

图书标签:
  • 逆向工程
  • 软件安全
  • 二进制分析
  • 漏洞挖掘
  • 调试
  • 汇编
  • Windows
  • Linux
  • 恶意软件分析
  • 软件破解
想要找书就要到 新城书站
立刻按 ctrl+D收藏本页
你会得到大惊喜!!
店铺: 蓝墨水图书专营店
出版社: 人民邮电出版社
ISBN:9787115434456
商品编码:11847307011

具体描述

逆向工程核心原理

有趣的二进制 软件安全与逆向分析

逆向工程实战

逆向工程权威指南 上册

9787115350183 9787115403995 

9787115388933 9787115434456


逆向工程权威指南 上册



逆向工程是一种分析目标系统的过程,旨在于识别系统的各组件以及组件间关系,以便于通过其它形式、或在较高的抽象层次上,重建系统的表征。 本书专注于软件的逆向工程,是写给初学者的一本quanwei指南。全书共分为12个部分,共102章,涉及X86/X64、ARM/ARM-64、MIPS、Java/JVM等重要话题,详细解析了Oracle RDBMS、Itanium、软件狗、LD_PRELOAD、栈溢出、ELF、Win32 PE文件格式、x86-64(第、critical sections、syscalls、线程本地存储TLS、地址无关代码(PIC)、以配置文件为导向的优化、C++ STL、OpenMP、SHE等众多技术话题,堪称是逆向工程技术百科全书。除了详细讲解,本书来给出了很多习题来帮助读者巩固所学的知识,附录部分给出了习题的解答。 本书适合对逆向工程技术、操作系统底层技术、程序分析技术感兴趣的读者阅读,也适合专业的程序开发人员参考。 

DIYI部分 编码模式 
第1章 CPU简介 3 
1.1 指令集的作用 3 
第2章 ZUI简函数 5 
2.1 x86 5 
2.2 ARM 5 
2.3 MIPS 5 
2.3.1 MIPS指令集与寄存器名称 6 
第3章 Hello,world! 7 
3.1 x86 7 
3.1.1 MSVC 7 
3.1.2 GCC 9 
3.1.3 GCC:AT&T;语体 9 
3.2 x86-64 11 
3.2.1 MSVC-x86-64 11 
3.2.2 GCC-x86-64 12 
3.3 GCC的其他特性 12 
3.4 ARM 13 
3.4.1 Keil 6/2013——未启用优化功能的ARM模式 14 
3.4.2 Thumb模式下、未开启优化选项的Keil 15 
3.4.3 ARM模式下、开启优化选项的Xcode 15 
3.4.4 Thumb-2模式下、开启优化选项的Xcode(LLVM) 16 
3.4.5 ARM64 18 
3.5 MIPS 19 
3.5.1 全局指针Global pointer 19 
3.5.2 Optimizing GCC 19 
3.5.3 Non-optimizing GCC 21 
3.5.4 栈帧 23 
3.5.5 Optimizing GCC: GDB的分析方法 23 
3.6 总结 24 
3.7 练习 24 
3.7.1 题目1 24 
3.7.2 题目2 24 
第4章 函数序言和函数尾声 25 
4.1 递归调用 25 
第5章 栈 26 
5.1 为什么栈会逆增长? 26 
5.2 栈的用途 27 
5.2.1 保存函数结束时的返回地址 27 
5.2.2 参数传递 28 
5.2.3 存储局部变量 29 
5.2.4 x86:alloca()函数 29 
5.2.5 (Windows)SEH结构化 
异常处理 31 
5.2.6 缓冲区溢出保护 31 
5.3 典型的栈的内存存储格式 31 
5.4 栈的噪音 31 
5.5 练习题 34 
5.5.1 题目1 34 
5.5.2 题目2 34 
第6章 printf()函数与参数调用 36 
6.1 x86 36 
6.1.1 x86:传递3个参数 36 
6.1.2 x64:传递9个参数 41 
6.2 ARM 44 
6.2.1 ARM模式下传递3个参数 44 
6.2.2 ARM模式下传递8个参数 46 
6.3 MIPS 50 
6.3.1 传递3个参数 50 
6.3.2 传递9个参数 52 
6.4 总结 56 
6.5 其他 57 
第7章 scanf() 58 
7.1 演示案例 58 
7.1.1 指针简介 58 
7.1.2 x86 58 
7.1.3 MSVC+OllyDbg 60 
7.1.4 x64 62 
7.1.5 ARM 63 
7.1.6 MIPS 64 
7.2 全局变量 65 
7.2.1 MSVC:x86 66 
7.2.2 MSVC:x86+OllyDbg 67 
7.2.3 GCC:x86 68 
7.2.4 MSVC:x64 68 
7.2.5 ARM: Optimizing Keil 6/2013 
(Thumb模式) 69 
7.2.6 ARM64 70 
7.2.7 MIPS 70 
7.3 scanf()函数的状态监测 74 
7.3.1 MSVC:x86 74 
7.3.2 MSVC:x86:IDA 75 
7.3.3 MSVC:x86+OllyDbg 77 
7.3.4 MSVC:x86+Hiew 78 
7.3.5 MSVC:x64 79 
7.3.6 ARM 80 
7.3.7 MIPS 81 
7.3.8 练习题 82 
第8章 参数获取 83 
8.1 x86 83 
8.1.1 MSVC 83 
8.1.2 MSVC+OllyDbg 84 
8.1.3 GCC 84 
8.2 x64 85 
8.2.1 MSVC 85 
8.2.2 GCC 86 

逆向工程实战



本书是一本涵盖x86、x64 和ARM 操作系统的逆向工程类图书,由浅入深地讲解了包括Windows内核模式代码的恶意软件和驱动程序、虚拟机保护技术等内容。作者通过大量真实案例和示例,提供了系统化的解决方案。
本书适合所有程序员和想要开始学习逆向工程的读者阅读。

第1 章 x86 与x641
11 寄存器组与数据类型1
12 指令集3
121 语法3
122 数据移动4
13 练习9
131 算术运算9
132 栈操作与函数调用11
14 练习14
15 系统机制21
151 地址转换21
152 中断与异常23
16 综合练习23
17 练习29
18 x64 30
181 寄存器组与数据类型30

有趣的二进制 软件安全与逆向分析




《有趣的二进制 软件安全与逆向分析》通过逆向工程,揭开人们熟知的软件背后的机器语言的秘密,并教给读者读懂这些二进制代码的方法。理解了这些方法,技术人员就能有效地Debug,防止软件受到恶意攻击和反编译。本书涵盖的技术包括:汇编与反汇编、调试与反调试、缓冲区溢出攻击与底层安全、钩子与注入、Metasploit等安全工具。


第1章 通过逆向工程学习如何读懂二进制代码  1
1.1 先来实际体验一下软件分析吧  3
1.1.1 通过Process Monitor的日志来确认程序的行为  4
1.1.2 从注册表访问中能发现些什么  6
1.1.3 什么是逆向工程  9
专栏:逆向工程技术大赛  10
1.2 尝试静态分析  11
1.2.1 静态分析与动态分析  11
专栏:Stirling与BZ Editor的区别  12
1.2.2 用二进制编辑器查看文件内容  13
1.2.3 看不懂汇编语言也可以进行分析  14
1.2.4 在没有源代码的情况下搞清楚程序的行为  16
1.2.5 确认程序的源代码  18
1.3 尝试动态分析  20
1.3.1 设置Process Monitor的过滤规则  20
1.3.2 调试器是干什么用的  23
1.3.3 用OllyDbg洞察程序的详细逻辑  24
1.3.4 对反汇编代码进行分析  26
专栏:什么是寄存器  28
1.3.5 将分析结果与源代码进行比较  29
专栏:选择自己喜欢的调试器  30
1.4 学习·基础的汇编指令  32
1.4.1 没必要记住所有的汇编指令  32
1.4.2 汇编语言是如何实现条件分支的  33
1.4.3 参数存放在栈中  35
1.4.4 从汇编代码联想到C语言源代码  37
1.5 通过汇编指令洞察程序行为  40
1.5.1 给函数设置断点  40
1.5.2 反汇编并观察重要逻辑  42
专栏:学习编写汇编代码  47
第2章 在射击游戏中防止玩家作弊  51
2.1 解读内存转储  53
2.1.1 射击游戏的规则  53
2.1.2 修改4个字节就能得高分  54
2.1.3 获取内存转储  58
2.1.4 从进程异常终止瞬间的状态查找崩溃的原因  63
2.1.5 有效运用实时调试  66
2.1.6 通过转储文件寻找出错原因  68
专栏:除了个人电脑,在其他计算机设备上运行的程序也可以进行
分析吗  74
专栏:分析Java编写的应用程序  74
2.2 如何防止软件被别人分析  76
2.2.1 反调试技术  76
专栏:检测调试器的各种方法  77
2.2.2 通过代码混淆来防止分析  79
专栏:代码混淆的相关话题  80
2.2.3 将可执行文件进行压缩  81
2.2.4 将压缩过的可执行文件解压缩:解包  86
2.2.5 通过手动解包UPX来理解其工作原理  87
2.2.6 用硬件断点对ASPack进行解包  91
专栏:如何分析.NET编写的应用程序  95
第3章 利用软件的漏洞进行攻击  97
3.1 利用缓冲区溢出来执行任意代码  99
3.1.1 引发缓冲区溢出的示例程序  99
3.1.2 让普通用户用管理员权限运行程序  100
3.1.3 权限是如何被夺取的  102
3.1.4 栈是如何使用内存空间的  104
3.1.5 攻击者如何执行任意代码  107
3.1.6 用gdb 查看程序运行时的情况  110
3.1.7 攻击代码示例  113
3.1.8 生成可用作shellcode的机器语言代码  116
3.1.9 对0x00的改进  121
专栏:printf类函数的字符串格式化bug  125
3.2 防御攻击的技术  127
3.2.1 地址随机化:ASLR  127
3.2.2  除存放可执行代码的内存空间以外,对其余内存空间尽量
禁用执行权限:Exec-Shield  130
3.2.3  在编译时插入检测栈数据完整性的代码:StackGuard  131
3.3 绕开安全机制的技术  134
3.3.1 使用libc中的函数来进行攻击:Return-into-libc  134
3.3.2 利用未随机化的模块内部的汇编代码进行攻击:ROP  136
专栏:计算机安全为什么会变成猫鼠游戏  137

逆向工程核心原理



《逆向工程核心原理》十分详尽地介绍了代码逆向分析的核心原理。作者在Ahnlab 研究所工作多年,书中不仅包括其以此经验为基础亲自编写的大量代码,还包含了逆向工程研究人员必须了解的各种技术和技巧。彻底理解并切实掌握逆向工程这门技术,就能在众多IT相关领域进行拓展运用,这本《逆向工程核心原理》就是通向逆向工程大门的捷径。
  想成为逆向工程研究员的读者或正在从事逆向开发工作的开发人员一定会通过《逆向工程核心原理》获得很大帮助。同时,想成为安全领域专家的人也可从《逆向工程核心原理》轻松起步。

,部分 代码逆向技术基础
第1章 关于逆向工程 2
1.1 逆向工程 2
1.2 代码逆向工程 2
1.2.1 逆向分析法 2
1.2.2 源代码、十六进制代码、汇编代码 4
1.2.3 “打补丁”与“破解” 5
1.3 代码逆向准备 5
1.3.1 目标 5
1.3.2 激情 6
1.3.3 谷歌 6
1.4 学习逆向分析技术的禁忌 6
1.4.1 贪心 6
1.4.2 急躁 7
1.5 逆向分析技术的乐趣 7

第2章 逆向分析Hello World!程序 8
2.1 Hello World!程序 8
2.2 调试HelloWorld.exe程序 9
2.2.1 调试目标 9
2.2.2 开始调试 9
2.2.3 入口点 10
2.2.4 跟踪40270C函数 10
2.2.5 跟踪40104F跳转语句 12
2.2.6 查找main()函数 12
2.3 进一步熟悉调试器 14
2.3.1 调试器指令 14
2.3.2 “大本营” 15
2.3.3 设置“大本营”的四种方法 15
2.4 快速查找指定代码的四种方法 17
2.4.1 代码执行法 18
2.4.2 字符串检索法 19
2.4.3 API检索法(1):在调用代码中设置断点 20
2.4.4 API检索法(2):在API代码中设置断点 21
2.5 使用“打补丁”方式修改“Hello World!”字符串 23
2.5.1 “打补丁” 23
2.5.2 修改字符串的两种方法 24
2.6 小结 28


用户评价

评分

评分

评分

评分

评分

评分

评分

评分

评分

相关图书

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 book.cndgn.com All Rights Reserved. 新城书站 版权所有