一、加法 1.Debug下: 14: int nVarOne0 = 1 + 5 - 3 * 6;//编译时计算得到结果 00C0550E C7 45 F8 F4 FF FF FF mov dword ptr [nVarOne0],0FFFFFFF4h 15: cout << nVarOne0 << ...
分类:
编程语言 时间:
2020-01-02 22:13:47
阅读次数:
96
《C++反汇编与逆向分析》和《程序员的自我修养》都是以VC6的代码作为例子讲解的。这里是在vs2017下,CRT代码有些区别,但整体流程上都是初始化环境,设置参数,最后转到用户main函数。 class COne { public: COne() { printf("COne \r\n"); } ~ ...
分类:
编程语言 时间:
2020-01-01 16:35:03
阅读次数:
231
浮点数类型 IEEE标准从逻辑上采用一个三元组{S, E, M}来表示一个数N,它规定基数为2,符号位S用0和1分别表示正和负,尾数M用原码表示,阶码E用移码表示。根据浮点数的规格化方法,尾数域的最高有效位总是1,由此,该标准约定这一位不予存储,而是认为隐藏在小数点的左边,因此,尾数域所表示的值是1 ...
分类:
编程语言 时间:
2019-12-31 23:16:05
阅读次数:
94
【太多事情要做了,这部分难度对我来说又很大,先写一下大体框架,到时候具体函数逆向分析过程给写出来】 问题: 1. 被调试器如何表明是否处理了异常? 2. 异常处理器是什么? 3. 如果异常到最后都没有被处理,那应该怎么办? 1. 调试器是否处理异常的标志 调试器使用 WaitForDebugEven ...
分类:
其他好文 时间:
2019-11-30 19:20:39
阅读次数:
109
【太多事情要做了,这部分难度对我来说又很大,先写一下大体框架,到时候具体函数逆向分析过程给写出来】 问题: 1. 建立被调试程序时接收的第一个调试事件是什么? 2. 该事件在内核中的生成流程是什么? 3. 其初始化下断点时如何判断是否是被调试程序(而不是一般程序)? 4. 关于调试的内核函数中为何要 ...
分类:
其他好文 时间:
2019-11-30 09:44:19
阅读次数:
68
1.创建一个最简单的TestWpf项目,什么代码都不写,如下图所示: 2.鄙人是那种喜欢知其然知其所以然的人,突然看到这一坨代码实在有点蛋疼。 没办法,只能按照鄙人的学习习惯,一边查阅资料,一边通过逆向分析的方法弄明白这一坨代码究竟是怎么回事。 3.首先来看最外面这个标签,就是一对<Window>< ...
CGCTF WxyVM1 WriteUp——IDA Python的使用 准备工作 + "题目地址" + 首先查看文件信息,可以看到,这是个64位elf文件 + 在Linux上运行起来简单看一下,如果提示没有权限,可以使用 来给予执行的权限 + 然后拖到IDA 64bit中逆向 分析伪代码 + 在ma ...
分类:
编程语言 时间:
2019-11-20 12:27:49
阅读次数:
151
Crackme030 的逆向分析 1.程序观察 程序刚打开的界面是空白的,只有两个按钮。 点击 File,里面有个 Password 按钮,点击才会出现输入密码的界面 2.简单查壳 没有壳。 3.程序分析 因为程序是使用 VB5 编写的,所以我们先使用 VB Decompiler 加载程序看一下 因 ...
分类:
其他好文 时间:
2019-10-21 12:07:39
阅读次数:
61
Crackme028 的逆向分析 1.程序观察 输入错误就会出现弹窗提示,并且之后程序就会自动退出。 输入错误就会出现弹窗提示,并且之后程序就会自动退出。 2.简单查壳 没有壳。 3.程序分析 使用 OD 载入程序,搜索字符 在该段代码头部下断点,输入用户名和序列号,点击 check,程序就就断了下 ...
分类:
其他好文 时间:
2019-10-18 11:02:13
阅读次数:
84
反编译是指通过对他人软件的目标程序(比如可执行程序)进行“逆向分析、研究”工作,以推导出他人的软件产品所使用的思路、原理、结构、算法、处理过程、运行方法等设计要素,某些特定情况下可能推导出源代码。反编译作为自己开发软件时的参考,或者直接用于自己的软件产品中。例如执行如下代码的反编译 结果如图 在过程 ...
分类:
编程语言 时间:
2019-10-16 11:34:11
阅读次数:
100