能力值:
( LV2,RANK:10 )
|
-
-
2 楼
push imm ret 了解下
|
能力值:
( LV7,RANK:140 )
|
-
-
3 楼
楼上正解。push目标地址+ret = jmp push参数+push返回地址+push目标地址+ret=call
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
谢谢楼上两位大佬 弄了2天没睡觉 睡了几个小时.解决了
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
学习了,谢谢楼上2位解答
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
yeyeshun
楼上正解。push目标地址+ret = jmp
push参数+push返回地址+push目标地址+ret=call
大佬...又碰到问题了,地址是动态的,,,咋办 1.push 地址-偏移是不行滴 - -!
大概了解了下可以通过修改PE头中的ImageBase的地址
是可以的,但不知获取偏移的还有没有其他方式?
2.push 返回地址怎么获取....手动输入?好像发现个call $+5 pop eax 不知道是否可以,会影响寄存器不
最后于 2018-11-13 23:06
被hackasn编辑
,原因:
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
push eip move eax,[esp] pop
就能获得当前的地址了。然后自己计算偏移。
最后于 2018-11-13 22:53
被孤山散人编辑
,原因:
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
孤山散人
push eipmove eax,[esp]pop 就能获得当前的地址了。然后自己计算偏移。
原谅我是个小白,push eip 标签未定义
最后于 2018-11-13 23:51
被hackasn编辑
,原因:
|
能力值:
( LV2,RANK:10 )
|
-
-
9 楼
各位大佬们 目前找到这几种方式 _emit 0xFF 能定义call 但是地址不对 _emit 0x15
push eip 未定义标签....看了下EIP是没办法直接获取的
call $+5 pop eax 会破坏寄存器
最后于 2018-11-14 00:47
被hackasn编辑
,原因:
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
fldz fstenv (28-byte) ptr ss:[esp-0x1C] mov eax,dword ptr ss:[esp-0x10]
获取当前地址
|
能力值:
( LV2,RANK:10 )
|
-
-
11 楼
PYGame
fldz
fstenv (28-byte) ptr ss:[esp-0x1C]
mov eax,dword ptr ss:[esp-0x10]
获取当前地址
谢谢大佬这么晚了还来指点,按照你的方式获取到了 终于可以写call 外部地址了 但要改一下才能用 用(28-)报错 直接byte就可以
最后于 2018-11-14 03:01
被hackasn编辑
,原因:
|
能力值:
( LV2,RANK:10 )
|
-
-
12 楼
各位大佬 我又来了,我最后采用了这种方式 DWORD asm_addr; #define asm_jmp(imm_addr) __asm mov asm_addr,imm_addr \ __asm jmp asm_addr
但突然发现jl jle jnz等等这些没办法使用....咋办
|
|
|