吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 42712|回复: 247
收起左侧

[原创] 某某云网络验证脱壳

    [复制链接]
YouSuohai 发表于 2020-9-8 16:58
#0x00 狭路相逢
"偶然"碰到了一个网络验证,广告语写着"全新的虚拟机架构,虚拟机超强变异,让您的软件难以分析", 看上去好像很好玩, 于是我(emmm)就弄了几个极速模式的样本分析看看, 见识一下这个全新的虚拟机架构, 至于是啥网络验证,这次我就不点名了, 本文也不提供样本。

**以下讨论的是该网络验证基于极速模式加密的样本**

#0x01 猫捉老鼠
根据描述,还可以加密64位文件,但是加密后的文件打开运行却是32位程序,猜测有把原程序写到硬盘的操作。由于其严酷的拉黑机制(反调试 - -!)(你干点啥它都拉黑你, 这就是所谓的超强的反调试, 但其实根本没啥用),考虑先不用调试器,绕路走,用某剑监视其程序操作,部分关键操作如下。

写出Registration.tmp 猜测跟解密相关
1.png

写出exe,猜测是登录后释放的原exe
2.png

转到目录下查看,发现一个43k大小的exe,不符合加密前exe大小。
3.png

但是,在...目录下发现了一个很可疑的exe
4.png

复制出来运行提示未经授权运行,估计它就是我们要找的原程序了。
5.png


#0x02 林中小屋


监控发现原程序读取了Registration.tmp
6.png

用x32dbg看一下,发现这入口一股浓浓的ThemIDA味(这网络验证是Themida的作者写的?)
7.png

运行起来CE搜一遍字符串,这确实是WinLicense没错,
8.png

把Registration.tmp和原程序复制出来,回滚虚拟机快照后,再把Registration.tmp放回去,发现可以直接运行原程序。(但是无法再次运行,会提示未经授权运行。并且更换机器做同样的操作也无法运行。
9.png


根据以上行为特征,可以大致猜出该网络验证的流程:
**发送卡号并上传机器码 -> 验证通过 -> 下发锁定机器码以及运行次数为1的key ->释放原程序(WL授权加密) -> 运行原程序**
虽然下发的key回滚快照可以一直使用,用监控程序监视它读写了哪些注册表和文件,再统统删掉也可以无限使用,但是它锁定了机器码,总归是不方便。为了速战速决, 考虑脱壳

#0x03 旧事重提


到达OEP以后修一下IAT,处理下虚拟机内部的pause就能脱下来了。这里不提供脚本,只讲下到达OEP和修IAT的思路。
OEP的话,用祖传VirtualProtect大法。VirtualProtect下断,运行,看到代码段(401000)出现两次后,执行到返回,取消断点。

10.png
11.png

对代码段下内存执行断点。
12.png

再运行一次就到OEP了。
13.png

OEP虽然被虚拟化了,但是可以不修。
WL没有抹掉原来的IAT表,而是随机将部分IAT填充到自己的壳代码了,图中下划线为白色的就是被壳抽取的IAT。
14.png

这里使用的是x32dbg,撸脚本也方便。修复脚本基本思路为:
逐个获取IAT表里的pointer,用mod.isexport判断是否为1,不为1说明被抽取或者为该pointer为0,如果是被抽取,记录当前cip和csp,将cip设置为取得的pointer,并且对csp-4设置硬件写断点,run 3-5次并判断mod.isexport,为1则将[csp-4]写到IAT表对应的位置,并将cip和csp设置回去。
需要注意,ExitProcess貌似被WL特殊照顾,无法用这种办法取得,没想到修复办法,就只能手动填充了。暂时没发现其他的IAT有这种问题,图中47C294处就是脚本无法修复的ExitProcess。
15.png

修复完IAT,记得扫描一遍内存,处理掉所有的pause,jmp或者全部nop都可以,特征如图
16.png

全部处理完,就能运行了。
17.png


**以下讨论的是该网络验证基于极限模式加密的样本**

#0x04 黑洞的极限运动

上面说的是极速模式下的样本,那极限模式的样本呢?尝试按照以上方法脱下来以后,跨平台运行会崩溃。
推测极限模式是WinLicense的全保护,不过问题不大。多分析分析也能脱下来。
该极限模式样本有两种防dump(不知道有没有更多防dump,只加了两个虚拟化水印)

一种是在到达OEP前加密存储kernel32.dll的基址,然后虚拟化水印会读取基址+随机偏移,因为不同机子以及重启后系统dll基址会改变的关系,程序会崩溃。OEP虚拟化也会用这种防dump。
18.png

另外一种是运行到该处水印代码后,虚拟机将代码解密写回原来的位置。
19.png

虚拟机运行完毕后。
20.png

过kernel32基址的防dump,可以分配一块跟当时一样地址的内存,WL只读取,并没有对里面的值做校验,如果有其他dll占用了也可以直接过。
另一种防dump,可以把存放在WL区段的VirtualProtect 地址,修改到自己代码的FF25 ,如果不巧,程序IAT没有VirtualProtect,就得自己加上了。


#0x05 梦一场

!!!!所以这里根本没有什么所谓的超强虚拟机, 全新的虚拟机架构?搞半天就是用WinLicense做了个授权, 我好像是来找自写虚拟壳来着,怎么最后在脱WinLicense了。

后续将会提供脱壳脚本以及特征,方便大家研究学习。

免费评分

参与人数 138吾爱币 +131 热心值 +121 收起 理由
lyj7082581z + 1 用心讨论,共获提升!
xingyunjohn1 + 1 谢谢@Thanks!在学了再学了
Waik + 1 我很赞同!
lslong1986 + 1 我很赞同!
niceLeng + 1 我很赞同!
lclc03 + 1 + 1 我很赞同!
haoren + 1 + 1 谢谢@Thanks!
seiya + 1 我很赞同!
xiao_xiong + 1 我很赞同!
tptzz + 1 + 1 谢谢@Thanks!
允樂God + 1 + 1 热心回复!
Charon_63 + 1 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
zzxxzzxxzz + 1 谢谢@Thanks!
如T初 + 1 + 1 我很赞同!
0x55AA + 1 用心讨论,共获提升!
夏天黑人 + 1 + 1 我很赞同!
心鱼鱼 + 1 用心讨论,共获提升!
dongmian + 1 + 1 用心讨论,共获提升!
最帅的靓仔 + 1 我很赞同!
黑衣人5 + 1 + 1 热心回复!
入戏呦 + 1 + 1 用心讨论,共获提升!
清风晓月 + 1 + 1 热心回复!
久望 + 1 热心回复!
dechong + 1 谢谢@Thanks!
yjm + 1 + 1 谢谢@Thanks!
两只老虎dd + 1 我很赞同!
a995449427 + 1 + 1 谢谢@Thanks!
ezro + 1 + 1 我很赞同!
proprietor + 1 + 1 谢谢@Thanks!
吃饱喝足去日逼 + 1 + 1 我很赞同!
shili180 + 1 + 1 热心回复!
小秫秫儿 + 1 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
大大大牛 + 1 + 1 我很赞同!
贝贝壳包 + 1 我很赞同!
wheat123 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
wushisai + 1 + 1 用心讨论,共获提升!
绵羊 + 1 我很赞同!
LF905 + 1 + 1 我很赞同!
Trisscute + 1 + 1 热心回复!
sandubuhan + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
IMRE + 1 + 1 热心回复!
马爱国 + 1 + 1 谢谢@Thanks!
春天里的丶觉觉 + 1 我很赞同!
yeechou + 1 + 1 用心讨论,共获提升!
迷魂 + 1 + 1 谢谢@Thanks!
怅廖廓 + 1 我很赞同!
Daihui + 1 + 1 热心回复!
anlovedong + 1 + 1 谢谢@Thanks!
xlcomputer + 2 + 1 谢谢@Thanks!
青丕_ + 1 + 1 我很赞同!
wangyuyan + 1 + 1 已经处理,感谢您对吾爱破解论坛的支持!
xutao423 + 1 + 1 热心回复!
N0LL + 1 + 1 热心回复!
Dom-Lewis + 1 + 1 用心讨论,共获提升!
wzhj85 + 1 + 1 用心讨论,共获提升!
鬼刀一开 + 1 + 1 我很赞同!
是随风啊 + 1 谢谢@Thanks!
晨曦照相 + 1 + 1 我很赞同!
__不说 + 1 + 1 我很赞同!
wws天池 + 1 + 1 我很赞同!
www77543 + 1 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
victos + 1 + 1 热心回复!
18269055653 + 1 谢谢@Thanks!
Royal_zya + 1 + 1 谢谢@Thanks!
youxiu8 + 1 + 1 用心讨论,共获提升!
wuliwuli + 1 热心回复!
0615 + 1 + 1 用心讨论,共获提升!
灵魂丶伴奏 + 1 + 1 用心讨论,共获提升!
liujing1 + 1 + 1 我很赞同!
1119014032 + 1 + 1 谢谢@Thanks!
IsToken + 1 + 1 用心讨论,共获提升!
Sinaan + 1 谢谢@Thanks!
hacker-v + 1 + 1 我很赞同!
NGUlyb + 1 + 1 我很赞同!
navy + 1 用心讨论,共获提升!
dedegoodboy + 1 + 1 用心讨论,共获提升!
wyb1109_2008 + 1 热心回复!
125733578 + 1 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
fengbolee + 1 + 1 用心讨论,共获提升!
dagege_memeda + 1 + 1 已经处理,感谢您对吾爱破解论坛的支持!
hinome + 1 + 1 我很赞同!
w111zs + 1 + 1 我很赞同!
Donghui891227 + 1 + 1 谢谢@Thanks!
ALCATEL + 1 + 1 我很赞同!
CrazyNut + 3 + 1 tql
YWM2017 + 3 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
wasdzjh + 1 + 1 这根本不是新人,是大佬啊
app740520 + 1 + 1 谢谢@Thanks!
cpujazz + 1 + 1 我很赞同!
南冥的小鲲 + 1 + 1 用心讨论,共获提升!
jingklxdd + 1 + 1 谢谢@Thanks!
邱淑贞 + 1 + 1 我很赞同!
srfsk + 1 + 1 谢谢@Thanks!
zxzxzxzx329 + 1 + 1 热心回复!
supercug + 1 + 1 谢谢@Thanks!
silence2540 + 1 + 1 我很赞同!
H.Ra + 1 + 1 我很赞同!卧虎藏龙
q5879335 + 1 + 1 我很赞同!
zsq + 1 + 1 谢谢@Thanks!
vanwee + 1 热心回复!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

Sound 发表于 2020-9-8 19:48
这个用的wl跟upx一样看起来像是2.x
具体 看不出来是哪个版本的
另外wl的netlicense在官网有说明文档
新人第一帖加精鼓励下
Ps:自写虚拟机 可以搞搞Sprotect。
董督秀 发表于 2020-9-9 07:43
这个帖子关键在于分析提取授权文件和源程序,脱壳是其次……wl脚本论坛都有的。另外,一般情况下,论坛的那个脚本通杀1.8-2.4的wl壳。
顺带一提……如果是wl3.0的壳,就不好说了……原作者不确定是否更新脱wl3.0的脚本。
MZA1220 发表于 2020-9-8 17:30
禁止套娃 发表于 2020-9-8 17:33
lz分析的是卓越云???这会是谁的小号呢
liujieboss 发表于 2020-9-8 17:42
学习学习
phenix21 发表于 2020-9-8 17:49
研究学习一下
sujiufz 发表于 2020-9-8 17:49
大佬何必用小号来怼呢。。不方便吗?
吃半个馒头 发表于 2020-9-8 17:51
楼主分析的很到位,学习一下。
寒韵冰晶 发表于 2020-9-8 17:57
前来学习了
yAYa 发表于 2020-9-8 18:20
我知道你是谁了,师傅。
crack1 发表于 2020-9-8 18:41
tql ....又一位大佬啊。。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-15 12:59

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表