加密与解密笔记

2016-09-19  本文已影响0人  xuing

第一章

常见DLL及其功能

常见Win32API

1.2.6

认识PE结构

第二章 动态分析技术

单步跟踪

消息断点

View/Windows

Q: 加密与解密上的一个同样的程序,Unicode版的程序用od消息断点断不下来,但是ASCII版的程序可以断 下来。这是为什么?
A:你可以在IsDialogMessage上面下[[ESP+8]]==(button按钮的句柄) && [[ESP+8]+4]==202
找button的句柄的方法就是刚才那个截图

条件断点

当需要CreateFile打开“ C:\1212.txt”时,断下来, 命令为

bp CreateFileA,[STRING [esp+4]]=="c:\1212.txt"]

Shift + F2 条件断点 Shift+F4 条件记录断点

第四章 逆向分析技术

启动函数

Visual C++配有C运行库的源代码,可以在crt\src\crt0.c 文件中找到启动函数的源代码。控制台程序的启动代码存放在crt\src\wincmdln.c
//开发人员可以修改启动源代码,尝试一下。
作用:检索指向新进程的命令行指针,检索指向新进程的环境变量指针,全局变量初始化,内存堆栈初始化
比如:GetCommandLineA、GetStartupInfoA、GetModuleHandleA.

函数

_cdecl 调用者平衡堆栈 //C/C++与MFC程序默认使用
stdcall 子程序平衡堆栈 //Win32 API大部分采用

c/c++名称修饰
T_T 没看懂 跳了

第五章 常见的演示版保护技术

序列号保护方式

  1. 以用户名等信息作为自变量,通过函数F变换之后得到注册码
  2. 通过注册码验证用户名的正确性
  3. 使用对等函数检查注册码
  4. 同时采用用户名和序列号作为自变量,即采用二元函数

第十章 PE文件格式

IMAGE_DOS_HEADER //MS_DOS头部
PE文件头
IMAGE_NT_SIGNATURE 0x00004550 //即PE00
IMAGE_FILE_HEADER(映像文件头)

IMAGE_OPTIONAL_HEADER

<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />

上一篇 下一篇

猜你喜欢

热点阅读