会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
丁同亚的博客
夺朱非正色
博客园
新随笔
新文章
联系
管理
上一页
1
2
3
4
5
6
7
下一页
2025年3月16日
修复重定位表
摘要: 1.为什么有这个重定位表? 因为有些地址在编译的时候已经写死了,并不是相对imageBase的偏移,这样的话当程序加载到非imageBase的位置时,导致这些地址没法用,所以编译器搞了个重定位表,告诉加载程序那些地址是写死的,需要修改 修改的话:计算一下RVA,然后 计算出新的imageBase下的
阅读全文
posted @ 2025-03-16 18:25 丁同亚的博客
阅读(40)
评论(0)
推荐(0)
2025年3月14日
导入表注入
摘要: 一晚上光搞这个了................... /** 导入表注入DLL *******注意 导入的DLL中要导出对应的函数。 */ void* importTableInject(BYTE* fileBuffer,char* dallname){ //新增一个节,用来放挪动后的导入表,在挪
阅读全文
posted @ 2025-03-14 21:16 丁同亚的博客
阅读(17)
评论(0)
推荐(0)
2025年3月10日
C++ this
摘要: 今天开始进入C++学习了,之前的这周末复习下 侧重与底层原理 当把函数放到结构体里面,编译器会帮我们传递一个参数:结构体的地址 this指针本质就是对象地址 2.无论是public还是private,他们声明的成员在编译后没有区别,是放在一起的. 3.virtual 虚函数,含有虚函数的类声明的对象
阅读全文
posted @ 2025-03-10 20:19 丁同亚的博客
阅读(10)
评论(0)
推荐(0)
2025年3月9日
导入表
摘要: void* importTableResolve(void* fileBuffer){ PE pe = resolvePE(fileBuffer); //导入表是数据目录的第二项 int importTableFOA = VA2FA(fileBuffer, pe.dataDir[1].value);
阅读全文
posted @ 2025-03-09 11:44 丁同亚的博客
阅读(8)
评论(0)
推荐(0)
新增节&将导出表移动到新节
摘要: 新增节 1.先判断是否有空间增加一个节表,满足sizeOfHeaders >= sectionTable[last] + 0x28*3 2.malloc(fileSize+newSectionSize);memset(0);memcpy(newfileBuffer,fileBuffer,fileSi
阅读全文
posted @ 2025-03-09 10:54 丁同亚的博客
阅读(20)
评论(0)
推荐(0)
2025年3月7日
数据目录第一项导出表
摘要: 1.数据目录里存的地址都是RVA内存相对地址,需要转换成文件地址 才能在 fileBuffer中找到 2.windows定义了 _IMAGE_EXPORT_DIRECTORY 这么一个结构体来描述导出表 3. typedef struct _IMAGE_EXPORT_DIRECTORY { DWOR
阅读全文
posted @ 2025-03-07 20:59 丁同亚的博客
阅读(34)
评论(0)
推荐(0)
2025年3月6日
VS下C语言静态链接库和动态链接库
摘要: 1.静态链接库的创建,创建的时候比较简单,不需要导出什么的 2.静态链接库的使用 1.通过配置vs(配置三项,头文件路径,lib文件目录和lib文件名称) 添加头文件路径 右键主项目 → 属性 → C/C++ → 附加包含目录,添加静态库头文件所在目录(如 ../mylib) 链接库文件 在 属性
阅读全文
posted @ 2025-03-06 19:53 丁同亚的博客
阅读(77)
评论(0)
推荐(0)
2025年3月5日
扩大节
摘要: 思路就是在最后一个节后面添加数据 1.修改 sizeOfImage 2.最后一个节的 文件对气后大小和内存真实大小 ,注意增加的尺寸需要文件对齐 // ExpandSection.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include "PE.h"
阅读全文
posted @ 2025-03-05 20:55 丁同亚的博客
阅读(10)
评论(0)
推荐(0)
2025年3月4日
代码节空白区添加代码
摘要: 1.首先获取 代码节内存中的实际大小,文件中的对齐后大小 00 02 10 F0 内存中尺寸10 00 内存对齐后起始位置00 02 20 00 文件大小(对齐后)10 00 文件对齐后起始位置 文件大小(对齐后) > 内存中尺寸 可以添加代码(小于的话意味着不存在空白区) 2.计算添加代码的位置
阅读全文
posted @ 2025-03-04 19:56 丁同亚的博客
阅读(10)
评论(0)
推荐(0)
2025年3月2日
PE解析
摘要: 代码如下: // clonefile.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。 // #define _CRT_SECURE_NO_WARNINGS // 必须放在文件最顶部 #include <iostream> #include <iomanip> // 包含 i
阅读全文
posted @ 2025-03-02 20:43 丁同亚的博客
阅读(23)
评论(0)
推荐(0)
上一页
1
2
3
4
5
6
7
下一页