能力值:
( LV9,RANK:250 )
|
-
-
2 楼
听起来很厉害,下来看看。
|
能力值:
(RANK:1130 )
|
-
-
3 楼
什么叫解决exe文件的重定位表问题
把hook32.exe的重定位表删掉还能演示嘛?
|
能力值:
(RANK:1130 )
|
-
-
4 楼
楼主没理解我的意思
当你需要载入的exe没有重定位表,并且基址和你的exe基址一样的时候,你是无法载入运行的(不管你用什么方法),除非特例(那个函数没用到需要重定位的数据)
|
能力值:
(RANK:1010 )
|
-
-
5 楼
加载模块然后重定位,就可以了。
不过说起“调用任意EXE,DLL内部函数”,LZ有点夸大了,那还得分析这个函数的参数,返回值,和调用方式。
btw:楼上的海风牛,有笔误之处--->“基址和你的exe基址一样的时候”
|
能力值:
( LV5,RANK:60 )
|
-
-
6 楼
是么,听起来却是挺狠的
|
能力值:
(RANK:1130 )
|
-
-
7 楼
我没表达好
假设a.exe需要调用b.exe的0x401000位置的未导出函数
我的意思是,b.exe的pNtHdr->OptionalHeader.ImageBase和a.exe的pNtHdr->OptionalHeader.ImageBase相等的时候,并且,b.exe没有重定位表的时候,基本上是无法处理的
|
能力值:
( LV3,RANK:30 )
|
-
-
8 楼
反正就是没用
|
能力值:
( LV12,RANK:470 )
|
-
-
9 楼
哈哈 这种情况 a.exe肯定是自己写的
当然要主动规避嘛。。。你要调用别人的函数 就要去适应别人的代码嘛
其实作为调用其他exe的函数 自己exe的基质一般都取个比较特殊的好
|
能力值:
( LV9,RANK:210 )
|
-
-
10 楼
了解海风月影兄的意思了!你说的不是处理重新定位表的问题 而是程序根本没有重新定位表的问题 哈哈!
这样的情况 只能自己吃点亏 让自己的EXE的基址主动回避一下啦!
|
能力值:
( LV4,RANK:50 )
|
-
-
11 楼
在没有重定位表的情况下要看运气,运气好的话说不定要调用的函数不需要重定位,或者自己能在理论范围内进行重定位就可以调用了。。。如果运气不好的话就调用不了了。。。
可参见2007金山杯我的第3题答案
|
能力值:
( LV9,RANK:210 )
|
-
-
12 楼
重新定位表 也可以自己分析要调用函数中用到的手工添加
|
能力值:
(RANK:1130 )
|
-
-
13 楼
太 猥琐 了
|
能力值:
( LV4,RANK:50 )
|
-
-
14 楼
海风的意思是没有重定位表的情况
|
能力值:
( LV9,RANK:210 )
|
-
-
15 楼
没有就自己手加啦 分析一下自己需要调用的函数 没办法啦!微软太猥琐 了 我们自能自己苦力
不过我记得以前有个工具 是根据代码区域范围 自动添加重定位表的
当时我以为没什么用 就没下过
|
能力值:
( LV2,RANK:10 )
|
-
-
16 楼
不可能100%正确。只能解决一部分重定位问题。
|
能力值:
(RANK:1130 )
|
-
-
17 楼
试试这个附件,调用0x401000位置
|
能力值:
( LV12,RANK:470 )
|
-
-
18 楼
可以的 不过需要一个反汇编引擎识别代码
识别完代码之间的关系以后就可以随便移动了
|
能力值:
( LV15,RANK:2459 )
|
-
-
19 楼
不要拿vmp来欺负人哦
|
能力值:
(RANK:1130 )
|
-
-
20 楼
vmp是防止代码被改的
我不喜欢用vmp来欺负人,我喜欢放src
0x401000处的src如下:
void callme()
{
DWORD MyBase;
LIST_ENTRY *ListHead;
PLDR_MODULE pstEntry;
PPEB peb;
GetPeb(peb);
MyBase = GetMyBase();
ListHead = peb->LoaderData->InLoadOrderModuleList.Flink;
pstEntry = CONTAINING_RECORD( ListHead, LDR_MODULE, InLoadOrderModuleList);
if(((DWORD)pstEntry->BaseAddress == MyBase) && ((DWORD)peb->ImageBaseAddress == MyBase) && MyBase == 0x400000)
MessageBox(NULL,"调用成功!","Good Call",MB_ICONINFORMATION);
else
MessageBox(NULL,"别忽悠我!","Bad Call",MB_ICONERROR);
return;
}
|
能力值:
(RANK:1130 )
|
-
-
21 楼
如果你有自动添加重定位表的引擎,我可以提供你试炼品测试一下
|
|
|