首页
社区
课程
招聘
[原创]向PE文件中添加ShellCode
发表于: 2018-5-17 18:11 8332

[原创]向PE文件中添加ShellCode

2018-5-17 18:11
8332

最烦打代码了,但是貌似代码是最高效的方式……


之前手动往PE文件中注入代码添加ShellCode,最近手动往PE文件中注入代码,貌似就是捆绑吧………………


   工具:一个想添加ShellCode的程序,VS2013

步骤为VS中的注释

-/******************************************************************************************/
//步骤分为五个 */
//1,将文件读取到缓冲区,用pFileBuffer接收吗,构造ShellCode(); */
//2,根据对齐的情况来,将接收的FileBuffer 手动转换为ImageBuffer; */
//3,向已经转换完成的ImageBuffer的代码空白区; */
//4,补充完ShellCode; */
//5,更改OEP; */
/*******************************************************************************************/

ps:貌似PE文件的类型在这两个头文件中

#include <atlbase.h>
#include <atlstr.h>

这里我用的程序是win自带的notepad;

首先将文件读入缓冲区;

这个是单独的函数路径是在头文件中定义的,将文件读到内存中之后用FileBuffer接收。返回的文件的长度,注意的地方是要把在本函数中使用的空间最后变为NULL;这个时候的数据是按文件对齐排列在内存中的,需要把文件对齐拉伸为内存对齐。

第二个函数为FileBufferToImageBuffer;文件对齐转换为内存对齐,起始位置的地址从0转换为ImageBase;

转换时需要先复制头信息,节表信息,PE文件头部没有对齐 只是起始位置改变。当复制节表表示的内容时需要每个节每个节填充;


[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 1
支持
分享
最新回复 (4)
雪    币: 6538
活跃值: (4496)
能力值: ( LV7,RANK:110 )
在线值:
发帖
回帖
粉丝
2
感谢分享,不知道能不能添加导入表,其他dll的API
2018-5-17 21:53
0
雪    币: 77
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
感谢分享,来看一下,感觉不错
2018-5-18 10:22
0
雪    币: 2046
活跃值: (265)
能力值: ( LV7,RANK:104 )
在线值:
发帖
回帖
粉丝
4
pxhb 感谢分享,不知道能不能添加导入表,其他dll的API
那玩意太复杂,再研究一下分享下吧。
2018-5-24 16:49
0
雪    币: 16082
活跃值: (3534)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
感谢分享
2018-9-13 00:35
0
游客
登录 | 注册 方可回帖
返回
//