
脱壳
时光菜刀
这个作者很懒,什么都没留下…
展开
-
常见程序入口点特征
#Delphi入口程序Delphi开头的入口程序是正常的压栈,然后调用一个E8字节类型的call0044CA98 > $ 55 push ebp0044CA99 . 8BEC mov ebp,esp0044CA9B . 83C4 F0 add esp,-0x100044CA9E . B8 B8C84400 mov eax,delphi7?0044C8B8 ; UNICODE “;...原创 2020-02-22 08:47:28 · 2427 阅读 · 1 评论 -
NsPack 3.7
查壳,是NsPack压缩壳。直接拖入OD。老样子,开头有pushad和pushfd指令,首先使用ESP定律尝试脱壳。发现跨节跳转,执行到OEP位置进行手脱。跳转过后发现字节码是0x55开头,很明显是push ebp指令,删除模块分析重新查看反汇编。删除分析模块后的效果这时就可以传统的手脱步骤了。修改OEP和IAT表。内存Dump设置新的OEP。会出现以下莫名错误,两个脱壳器进...原创 2020-02-07 19:07:37 · 916 阅读 · 0 评论 -
ASPack 2.12
查壳,是ASPack2.12首先看到pushad第一反应是esp定律。在esp处设置硬件执行断点,然后F9执行到下图位置继续向下走,发现有个间隔很大的返回地址多半就是OEP执行到OEP进行脱壳设置OEP的RVA为0x1000转储IAT,对文件IAT进行修复。剪切掉无效指针转储到Dump文件中执行,查看执行效果,发现可以正常运行。...原创 2020-02-06 22:20:29 · 1043 阅读 · 0 评论 -
!EP(EXE Pack)1.4.exe
首先查壳,显示是!EP(EXE Pack)1.4.exe将该壳拖入OD原创 2020-02-06 17:09:33 · 507 阅读 · 0 评论 -
脱壳 !EP(EXE PACK)1.2
0x1 查壳将程序拖入!Exeinfo PE显示如下。程序拖入OD看到第一行有pushad指令,利用ESP定律,执行一步F8。ESP定律是典型的堆栈平衡,因为只要保存了所有寄存器的值都是要开始解密操作,等到解密完成后一般都会将所有初始化的寄存器值进行还原,即popad。所以我们只要在esp堆栈压入的最后一个数据那里设置硬件断点(因为堆栈式先进后出原则,esp现在指向的是压栈的最后的数据,...原创 2020-02-06 14:19:09 · 961 阅读 · 1 评论