首页
社区
课程
招聘
[求助]第十六章外壳编写基础的问题“call $+5”
2009-12-23 14:44 4464

[求助]第十六章外壳编写基础的问题“call $+5”

2009-12-23 14:44
4464
;^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
;               外壳第二层代码
;^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ShellStart LABEL        DWORD
        call        $+5
        pop        edx
        sub        edx,5h
        pop        ebp

        mov        eax, dword ptr [edx+(ShellStep_2-ShellStart)]
        .if        eax != 0;dll退出时从这里进入OEP       
                popad
                jmp ReturnOEP
         .endif

这个“call        $+5”是什么意思啊?
虽然看了书,但是还是不明白
$是什么东西来的?

[培训]《安卓高级研修班(网课)》月薪三万计划,掌 握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

收藏
点赞0
打赏
分享
最新回复 (4)
雪    币: 50
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
泥芭 2009-12-23 15:26
2
0
$代表当前代码位置
CALL $+5就是执行 POP EDX
这样做是为了代码重定位
雪    币: 207
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
BadGuy 2009-12-23 15:27
3
0
我自己知道了
雪    币: 207
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
BadGuy 2009-12-23 15:27
4
0
不过还是要谢谢热心的二楼
雪    币: 207
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
BadGuy 2009-12-23 15:28
5
0
我是看od看明白的
游客
登录 | 注册 方可回帖
返回