exe取消动态基址
动态基址开启后,在动态调试是想要和ida静态分析中的地址对应还要进行一步计算,取消动态基址便可以剩下很多时间。
只要修改pe文件头中的Characteristics低位置1
1 typedef struct _IMAGE_FILE_HEADER {
2 WORD Machine; ** 机器号 相对该结构的偏移0x00**
3 WORD NumberOfSections; ** 节区数量 相对该结构的偏移0x02**
4 DWORD TimeDateStamp; ** 时间戳 相对该结构的偏移0x04**
5 DWORD PointerToSymbolTable; ** 符号表偏移 相对该结构的偏移0x08**
6 DWORD NumberOfSymbols; ** 符号表数量 相对该结构的偏移0x0C**
7 WORD SizeOfOptionalHeader; ** 可选头大小 相对该结构的偏移0x10**
8 WORD Characteristics; ** PE文件属性 相对该结构的偏移0x12**
9 } IMAGE_FILE_HEADER, *PIMAGE_FILE_HEADER;
Characteristics可以是下面一个或者多个值的和
| 宏定义 | 数值 | 描述 |
|---|---|---|
| IMAGE_FILE_RELOCS_STRIPPED | 0x0001 | 从文件中删除了重定位信息 |
| IMAGE_FILE_EXECUTABLE_IMAGE | 0x0002 | 该文件是可执行的 |
| IMAGE_FILE_LINE_NUMS_STRIPPED | 0x0004 | COFF行号从文件中删除 |
| IMAGE_FILE_LOCAL_SYMS_STRIPPED | 0x0008 | COFF符号表条目从文件中删除 |
| IMAGE_FILE_AGGRESIVE_WS_TRIM | 0x0010 | 废弃 |
| IMAGE_FILE_LARGE_ADDRESS_AWARE | 0x0020 | 该应用程序可以处理大于2GB的地址 |
| IMAGE_FILE_BYTES_REVERSED_LO | 0x0080 | 废弃 |
| IMAGE_FILE_32BIT_MACHINE | 0x0100 | 32位机器 |
| IMAGE_FILE_DEBUG_STRIPPED | 0x0200 | 调试信息已删除并单独存储在另一个文件中 |
| IMAGE_FILE_REMOVABLE_RUN_FROM_SWAP | 0x0400 | 如果在移动介质中,拷到交换文件中运行 |
| IMAGE_FILE_NET_RUN_FROM_SWAP | 0x0800 | 如果在网络中,拷到交换文件中运行 |
| IMAGE_FILE_SYSTEM | 0x1000 | 该文件是一个系统文件 |
| IMAGE_FILE_DLL | 0x2000 | 该文件是一个文件是一个动态链接库 |
| IMAGE_FILE_UP_SYSTEM_ONLY | 0x4000 | 该文件应仅在单处理器计算机上运行 |
| IMAGE_FILE_BYTES_REVERSED_HI | 0x8000 | 废弃 |
pe修改的工具很多,我用的peid

exe取消动态基址的更多相关文章
- ABP框架 - 介绍 VS2017调试器无法附加到IIS进程(w3wp.exe) c# 动态实例化一个泛型类
ABP框架 - 介绍 在14,15年间带领几个不同的团队,交付了几个项目,在这个过程中,虽然几个项目的业务不一样,但是很多应用程序架构基础性的功能却是大同小异,例如认证.授权.请求验证.异常处理. ...
- 转:使用IDA动态调试WanaCrypt0r中的tasksche.exe
逆向分析——使用IDA动态调试WanaCrypt0r中的tasksche.exe 转:http://www.4hou.com/technology/4832.html 2017年5月19日发布 导语: ...
- 为什么0x00400000是可执行文件的默认基址?EXE base address start with 400000H,Why is 0x00400000 the default base address for an executable?
DLL的默认基址是0x10000000,但EXE的默认基址是0x00400000.为什么EXE特别值?4 兆字节有什么特别之处它与x86上单页目录条目映射的地址空间量和1987年的设计决策有关.对EX ...
- Unity3d发布成exe项目后的设置(全屏自适应屏幕大小)
原地址:http://blog.sina.com.cn/s/blog_697b1b8c0101gd46.html 1. 去除启动exe项目时出现的画面窗口 File ☞ Build Settings ...
- Oracle静态监听与动态监听概念全解析
基于11g,linux5.5做出的测试,单实例数据库做出的测试. 1.注册 Instance到监听器去注册自己的Instance_name与ORACLE_HOME,还可以选择添加global_dbna ...
- 几种 WebP 动态图制作方法
1.RealWorld Paint 目前唯一有图形用户界面的 动态 webp 编辑器, 利用最新版本 libwebp v1.0.0 生成的有损动态图是打不开.这个有两个版本, 推荐使用 2013.1, ...
- VC的小工具查询exe的依赖
查看程序或动态库所依赖的动态库 dumpbin /dependents abc.exe 查看动态库的输出函数 dumpbin /exports abc.dll
- vs查看动态库依赖
dumpbin是VS自带的工具,进入Visual Studio 的命令提示 查看程序或动态库所依赖的动态库 dumpbin /dependents abc.exe 查看动态库的输出函数 dumpbi ...
- C# .exe和.dll文件图标资源提取工具
Windows 可执行文件(.exe)和动态库文件(.dll)图标资源提取工具 GitHub 功能 图标资源预览 图标资源导出(仅支持导出 PNG 格式) 代码 获取图标资源使用了 Win32 API ...
随机推荐
- js中当for循环中有事件要使用循环变量时,变量用var声明和let声明的区别
var 声明一个全局变量,声明的变量会变量提升: let 声明一个局部变量: 当页面加载完后,for循环也结束了,如果用var声明的变量此时也随着for循环的结束而自增到满足结束循环的条件, 此时调用 ...
- markdown table collapse span
markdown table collapse span refs xgqfrms 2012-2020 www.cnblogs.com 发布文章使用:只允许注册用户才可以访问! 原创文章,版权所有️x ...
- web 前端工具: Gulp 使用教程
1 1 1 Gulp 使用教程: 1 1 1 1 1 1 1 1 ERROR: ./app.js 当前目录路径: ./ 当前目录路径: ./ 1 1 1 1 1 参考资源: http://webpac ...
- 使用 js 实现十大排序算法: 快速排序
使用 js 实现十大排序算法: 快速排序 QuickSort 快速排序 /** * * @author xgqfrms * @license MIT * @copyright xgqfrms * @c ...
- Android Activity All In One
Android Activity All In One Android Activity Lifecycle https://developer.android.com/reference/andro ...
- OOP & 模块化, 多态, 封装
OOP 面向对象编程 (OOP) 是用抽象方式创建基于现实世界模型的一种编程模式.它使用先前建立的范例,包括模块化,多态和封装几种技术. 在 OOP 中,每个对象能够接收消息,处理数据和发送消息给其他 ...
- 微信小程序-导航 & 路由
微信小程序-导航 & 路由 页面跳转 页面路由 页面栈, 框架以栈的形式维护了当前的所有页面. https://developers.weixin.qq.com/miniprogram/dev ...
- nodejs package.json中的exports
test/package.json { "name": "test", "main": "index.js", &quo ...
- Dart: path库
path库pub地址 安装: dependencies: path: 使用: import 'dart:io'; import 'package:path/path.dart' as path; ma ...
- where & having 关键字
where和having都是做条件筛选的 where执行的时间比having要早 where后面不能出现组函数 having后面可以出现组函数 where语句要跟在from后面 ,where 不能单独 ...