社区
进程/线程/DLL
帖子详情
VC如何获得PE文件的入口点???
xiaodongzuo
2008-06-06 11:47:23
VC如何获得PE文件的入口点???
各位大侠,请赐教! 在线等待...
...全文
304
5
打赏
收藏
VC如何获得PE文件的入口点???
VC如何获得PE文件的入口点??? 各位大侠,请赐教! 在线等待...
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
jesterjy
2008-06-07
打赏
举报
回复
有注释的。哈哈!
DWORD signature;
IMAGE_FILE_HEADER _head;
IMAGE_OPTIONAL_HEADER opt_head;
IMAGE_SECTION_HEADER section_header;
HANDLE hFile;
HANDLE hMapping;
void *basepointer;
// 打开文件.
if ((hFile = CreateFile(szFileName, GENERIC_READ,
FILE_SHARE_READ,0,OPEN_EXISTING,
FILE_FLAG_SEQUENTIAL_SCAN,0)) == INVALID_HANDLE_VALUE)
{
MessageBox("can't open file");
return FALSE;
}
// 创建内存映射文件.
if (!(hMapping = CreateFileMapping(hFile,0,PAGE_READONLY|SEC_COMMIT,0,0,0)))
{
MessageBox("mapping failed");
CloseHandle(hFile);
return FALSE;
}
// 把文件头映象存入baseointer.
if (!(basepointer = MapViewOfFile(hMapping,FILE_MAP_READ,0,0,0)))
{
MessageBox("view failed");
CloseHandle(hMapping);
CloseHandle(hFile);
return FALSE;
}
IMAGE_DOS_HEADER * dos_head =(IMAGE_DOS_HEADER *)basepointer;
// 得到PE文件头.
_head = (IMAGE_FILE_HEADER *)((char *)dos_head + dos_head->e_lfanew);
// 得到OEP地址.
DWORD dwOEP=header->opt_head.AddressOfEntryPoint;
// 清除内存映射和关闭文件.
UnmapViewOfFile(basepointer);
CloseHandle(hMapping);
CloseHandle(hFile);
孤客天涯
2008-06-06
打赏
举报
回复
樓主在研究病毒?
孤客天涯
2008-06-06
打赏
举报
回复
if(file.Open(csFilename,CFile::modeReadWrite|CFile::shareDenyRead))
{
file.SeekToBegin();
file.Read(&dosHeader,sizeof(IMAGE_DOS_HEADER));
file.Seek(dosHeader.e_lfanew,CFile::begin);
file.Read(&ntHeader,sizeof(IMAGE_NT_HEADERS));
//记录原来的入口地址等
dwitImageBase = ntHeader.OptionalHeader.ImageBase ;
dwitImageEntryPoint = ntHeader.OptionalHeader.AddressOfEntryPoint;//入口地址
dwitImportTableEntryPoint = ntHeader.OptionalHeader.DataDirectory[1].VirtualAddress ;
zhengq06
2008-06-06
打赏
举报
回复
观注, 正好也在学习这个.
cnzdgs
2008-06-06
打赏
举报
回复
GetModuleHandle返回的HMODULE就是程序的可执行文件装入内存的开始地址。
PE
病毒的学习资料包
PE
型感染病毒 ——
VC
源码
PE
型感染病毒 —— 遍历磁盘
PE
文件
(2)
PE
型感染病毒 —— 遍历磁盘驱动器 (1)
PE
型感染病毒 —— 增加节
点
修改
PE
入口
(3) Win32平台下的
PE
文件
病毒的研究及实现。rar 关于
PE
病毒编写的学习 关于
PE
病毒编写的学习(八)——定位API的N种方法 关于
PE
病毒编写的学习(六)——关于
PE
文件
结构操作的程序编写 关于
PE
病毒编写的学习(七)——重定位的谬误和它的正确写法 关于
PE
病毒编写的学习(三) 关于
PE
病毒编写的学习(四)——关于历遍磁盘的讨论 关于
PE
病毒编写的学习(五)——病毒如何做标记和记录信息 关于
PE
病毒编写的学习
最新OllyDBG22
OllyDBG最新OllyDBG2008.1.1
1.LOCKLOSE添加了部分API和结构体信息:
1)添加了一些API的识别;
2)添加到290个结构体&枚举类型;
3)添加到2504个API函数结构;
4)包含了部分VB常见函数,部分
VC
函数,包含部分MS
VC
RT.DLL函数;
2.修正部分bug
OllyICE.exe 是在cao_cong汉化第二版基础上修改的。
OLLYDBG.EXE 英文修改版,修改的地方与OllyICE.exe一样
注:OllyICE.exe(cao_cong汉化版)配制
文件
Ollydbg.ini完全英文化,因此中英文版本的OllyDBG可以很好地共用一个配置
文件
。
OllyICE这个名称来自forgot的OLLYDBG修改本。
OllyICE.EXE与OLLYDBG.EXE同时做了如下修改:
1.窗口、类名等常见修改;
2.格式化字符串的漏洞[OutPutDebugString]补丁;
3.参考dyk158的ODbyDYK v1.10 ,自动配置UDD、PLUGIN为绝对路径;
4.参考nbw的"OD复制BUG分析和修正"一文,修正从内存区复制数据时,有时无法将所有的数据都复制到剪贴板的bug。
5.参考ohuangkeo“不被OD分析原因之一和修补方法”,稍改进了OD识别
PE
格式能力(可能仍报是非
PE
文件
,但己可调试了)。
6.修正OllyScript.dll插件bpwm命令内存读写都中断的问题。
7.jingulong的Loaddll.exe,可以方便让OllDbg中断在dll的
入口
。
8.感谢DarkBul告知SHIFT+F2条件窗口显示的bug及修复。
9.感谢dreaman修复Findlabel,Findname,Findnextname三个函数处理字符串会溢出的bug。
10.改善sprintf函数显示某些浮
点
数会崩溃的bug,这里的修复代码直接引用heXer的代码。
11.该修改版,配合HideOD插件,可以很好地隐藏OD。
12.新增实用的快捷键功能
13.修正Themida v1.9.x.x检测OllyICE的Anti,配合HideToolz即可调试Themida v1.9.x.x加壳程序。
14.LOCKLOSE添加了部分API和结构体信息。
VC
,
PE
——区块链应用的天然良港
2017被视为区块链应用的元年。综合现有的各类区块链应用,普遍的共识是“应用看金融,金融应用看
PE
“。原因在于私人权益资本交易较低频,
文件
较冗杂、流程较复杂,第三方托管,这一类的场景下,运用区块链技术能够大幅度提高行业透明度、增进信任,并提供金融交易的效率。
最新OllyDBG
2008.1.1
1.LOCKLOSE添加了部分API和结构体信息:
1)添加了一些API的识别;
2)添加到290个结构体&枚举类型;
3)添加到2504个API函数结构;
4)包含了部分VB常见函数,部分
VC
函数,包含部分MS
VC
RT.DLL函数;
2.修正部分bug
OllyICE.exe 是在cao_cong汉化第二版基础上修改的。
OLLYDBG.EXE 英文修改版,修改的地方与OllyICE.exe一样
注:OllyICE.exe(cao_cong汉化版)配制
文件
Ollydbg.ini完全英文化,因此中英文版本的OllyDBG可以很好地共用一个配置
文件
。
OllyICE这个名称来自forgot的OLLYDBG修改本。
OllyICE.EXE与OLLYDBG.EXE同时做了如下修改:
1.窗口、类名等常见修改;
2.格式化字符串的漏洞[OutPutDebugString]补丁;
3.参考dyk158的ODbyDYK v1.10 ,自动配置UDD、PLUGIN为绝对路径;
4.参考nbw的"OD复制BUG分析和修正"一文,修正从内存区复制数据时,有时无法将所有的数据都复制到剪贴板的bug。
5.参考ohuangkeo“不被OD分析原因之一和修补方法”,稍改进了OD识别
PE
格式能力(可能仍报是非
PE
文件
,但己可调试了)。
6.修正OllyScript.dll插件bpwm命令内存读写都中断的问题。
7.jingulong的Loaddll.exe,可以方便让OllDbg中断在dll的
入口
。
8.感谢DarkBul告知SHIFT+F2条件窗口显示的bug及修复。
9.感谢dreaman修复Findlabel,Findname,Findnextname三个函数处理字符串会溢出的bug。
10.改善sprintf函数显示某些浮
点
数会崩溃的bug,这里的修复代码直接引用heXer的代码。
11.该修改版,配合HideOD插件,可以很好地隐藏OD。
12.新增实用的快捷键功能
13.修正Themida v1.9.x.x检测OllyICE的Anti,配合HideToolz即可调试Themida v1.9.x.x加壳程序。
14.LOCKLOSE添加了部分API和结构体信息。
基于特征码的病毒查询程序
通过特征码数据库查找病毒,主要是根据
pe
的特殊结构查找程序
入口
点
,进而找到被修改的可执行代码
进程/线程/DLL
15,471
社区成员
49,182
社区内容
发帖
与我相关
我的任务
进程/线程/DLL
VC/MFC 进程/线程/DLL
复制链接
扫一扫
分享
社区描述
VC/MFC 进程/线程/DLL
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章