|
[原创]ASProtect_SKE_2.3Beta_Build0319 stolen code分析
我还是去练九阴真经...比这个好懂 |
|
|
|
求助:有没有直接脱Asprotect 2.x壳的工具
unpack all 2006效果挺好 |
|
讨论:如何编程清理混淆代码?
可能themida觉得太慢了,或者怕你脱不掉 好像有个engine叫做ETMS它生成得垃圾挺复杂的,有时间看看. hnhuqiong 说得那个不是问题,当你的shrinker运行之后没变化就是原代码了 |
|
讨论:如何编程清理混淆代码?
例如mov eax, 123 可能被expend成为 pushfd nop mov eax, 100 nop xor eax, 456 nop xor eax, 789 nop xor eax, 456 nop xor eax, 789 nop add eax, 23 nop popfd nop代表花花 然后里面的mov eax, 100又变成了另外一段 这样就识别不出来第一次变换 但是可以先shrink mov eax, 100 再次去掉花,就可以shrink原来得 可能两次变换得类型不一样 |
|
讨论:如何编程清理混淆代码?
expend能识别得范围有限,如果你写过应该发现只是一些简单的变换 expend也不能理解一段,那样的话也就是AI了 但是expend可以把一句变成一段,然后又可以把这一段变好几段 |
|
讨论:如何编程清理混淆代码?
总算考试完了,喝多了写得还真乱... 很多meta engine都有shrinker和expender,当然themida不可能有shrinker,难道给你一把枪让你枪毙它吗? 关于esp得一般都是简短的变化, not esp/not esp或者neg 还有xchg reg, esp/xchg reg, esp之类的 expending的时候不会分析reg的,因为分析不准确,起码也没有谁这么做过. 除非不是expending,根本就是building,这样程序会使用一个flag 选择寄存器之后标记其他为空闲,然后为所欲为... 还有一种情况就是约定,约定不使用什么寄存器,然后故意插入垃圾. 但是不使用什么分析比较难...这点先保留 我要特别强调,堆栈是一个重点,可以模拟执行,堆栈每次变化的时候都要比较寄存器的变化,一种是赋值/运算 特殊的譬如esi++/--&&edi++/--&&ecx--就是movsb/cmpsb之类的了. 怎么利用堆栈突破,还在想,最近被私事弄得很烦. |
|
eXcalibur V1.03可以为dll加壳吗?我怎么见到了加这种壳的dll[求助]
hying's PEArmor V0.76 -> hying * |
|
|
|
|
|
讨论:如何编程清理混淆代码?
我在教室,回去找点资料。 这种东西一般是难以逆向的。 1、去掉完全的垃圾。 2、按一定模式扫描。 想象如果你是这个meta的作者,你不会造出AI让程序自己变形吧? 所以还是有一定规律可循的,不过费人工啊。 3、把一些常规的替换都变成某一种,扫描模式的时候按照那种扫描。 4、实在不行还可以比较执行结果,做出同义指令? 看了看上面也是废话。 最厉害的可能是逐行理解了,这个说起来容易做来难。 我觉得他的vm是膨胀了好几次的结果,如果能找出替换类型一遍一遍shrink都是可以还原的。毕竟还没有AI。 以前看过一个meta自己有可逆函数expend/shrink 我考试脑子乱着呢,有时间我们细细讨论 |
|
|
|
|
|
请教高手关于UPX壳
应该是BCB程序,开头都那个样子,就是怪怪的 |
|
菜鸟学习脱壳之ASProtect 2.1x SKE简单加壳的98NOTEPAD(MC++)
忽然间发现aspr确实成了人人可捏的大便 |
|
|
|
脱壳高手来一下喔
好像是脱壳后的程序,但是输入表修复不正确. |
|
|
|
发一个纯正delphi血统的压缩壳(含源码)
好像唯一一个异常的seh handler就是oep 004631F4 55 PUSH EBP 004631F5 8BEC MOV EBP, ESP 004631F7 83C4 F0 ADD ESP, -10 004631FA B8 C42F4600 MOV EAX, 00462FC4 004631FF E8 2C34FAFF CALL 00406630 00463204 A1 C8504600 MOV EAX, [4650C8] 00463209 8B00 MOV EAX, [EAX] 0046320B E8 A056FFFF CALL 004588B0 00463210 8B0D B0514600 MOV ECX, [4651B0] ; V2Packer.00466CE0 00463216 A1 C8504600 MOV EAX, [4650C8] 0046321B 8B00 MOV EAX, [EAX] 0046321D 8B15 68134600 MOV EDX, [461368] ; V2Packer.004613B4 00463223 E8 A056FFFF CALL 004588C8 00463228 A1 C8504600 MOV EAX, [4650C8] 0046322D 8B00 MOV EAX, [EAX] 0046322F E8 1457FFFF CALL 00458948 00463234 E8 3F0FFAFF CALL 00404178 遇到int3的时候去[fs:[0]+4]就行了 |
|
脱壳高手来一下喔
你这个文件有问题吧.krnl32没有这个函数 |
操作理由
RANk
{{ user_info.golds == '' ? 0 : user_info.golds }}
雪币
{{ experience }}
课程经验
{{ score }}
学习收益
{{study_duration_fmt}}
学习时长
基本信息
荣誉称号:
{{ honorary_title }}
能力排名:
No.{{ rank_num }}
等 级:
LV{{ rank_lv-100 }}
活跃值:
在线值:
浏览人数:{{ visits }}
最近活跃:{{ last_active_time }}
注册时间:{{ user_info.create_date_jsonfmt }}
勋章
兑换勋章
证书
证书查询 >
能力值