selph
selph
发布于 2023-03-10 / 108 阅读
0
0

Ease Video Converter v3.00 破解分析

Ease Video Converter v3.00 破解分析

软件基本信息

软件名称软件版本编程语言加壳情况难度难度说明练习日期
Ease Video Converterv3.00Delphi无壳简单验证逻辑定位简单,算法简单2023.02.16

功能:Ease Video Converter是专业实用的视频格式转换器,支持AVI、DVD、VOB、MPEG-2、VCD等市面上所有流行的视频格式,支持iPod、iPhone、Apple TV等多种设备,转换后的视频可以在各种类型的设备上播放。. Ease Video Converter提供音频提取功能,用户可以从视频中提取需要的音频,还可以从视频中捕捉图片。

image

image

验证方式

重启验证:无,暗桩保护:无

启动时会进行一次校验,弹注册窗口

注册信息:界面有Register按钮,可以打开注册窗口

破解过程

定位到注册逻辑

随便输入,等错误弹窗卡住当前窗口:

image

调试器里暂停程序,一步一步向上层追溯,直到有一层运行不到返回的时候,出来点掉错误弹窗:

image

可以看到,上面就是错误弹窗的窗口循环了,只有关闭窗口才能跳出循环,然后接着向上追溯,很快就来到了一个call指令下面的jmp处:

image

这个call是弹窗的call,jmp是跳过逻辑,经过分析,这里就是验证逻辑的位置,接下来从上往下看这段代码

用户名验证

这个程序的验证分两部分,用户名验证和注册码验证

image

用户名验证是从一个内置的用户名数组里取值和用户输入做比对,比对成功则认证成功,给4B7D9C赋值为0,进入接下来的流程,否则就跳出显示错误弹窗

这里用的内置用户名是这些:

name:&"VS88T66-Vs86"
name:&"TV666P6-TV66"
name:&"S1R66P6-SV66"
name:&"T6DR6p6-SV66"
name:&"TDR26p6-EVS"
name:&"TDR36p6-ST1"
name:&"Ts2f6p6-VB1"
name:&"B8sf26p6-VB1"
name:&"B8TDf16p6-VB1"
name:&"BS453f6p6-VB1"
name:&"Osrf61p6-VB1"
name:&"Ofrg63p6-VB1"
name:&"ESr2g6p6-VB1"
name:&"IUrg61p6-VB1"
name:&"IU4DT6-BX1"
name:&"DUI43T6-tV1"
name:&"S1I32T6-DV1"
name:&"SN1MS6-DV1"
name:&"SNW4S6-TN1"
name:&"SNW6S6-MN3"
name:&"TD89VS6-MN3"

序列号验证--算法

image

序列号计算很简单,注册码生成器:

username = [
    "VS88T66-Vs86",
    "TV666P6-TV66",
    "S1R66P6-SV66",
    "T6DR6p6-SV66",
    "TDR26p6-EVS",
    "TDR36p6-ST1",
    "Ts2f6p6-VB1",
    "B8sf26p6-VB1",
    "B8TDf16p6-VB1",
    "BS453f6p6-VB1",
    "Osrf61p6-VB1",
    "Ofrg63p6-VB1",
    "ESr2g6p6-VB1",
    "IUrg61p6-VB1",
    "IU4DT6-BX1",
    "DUI43T6-tV1",
    "S1I32T6-DV1",
    "SN1MS6-DV1",
    "SNW4S6-TN1",
    "SNW6S6-MN3",
    "TD89VS6-MN3"
]

for i in username:
    nameCount = 0
    for j in i:
        nameCount += ord(j)
    nameCount *= 0xbb790
    nameCount += 0x58
    nameCount >>= 1
    print("username:" + i + " password: " + str(nameCount))

密码:

username:VS88T66-Vs86 password: 318289620
username:TV666P6-TV66 password: 302931860
username:S1R66P6-SV66 password: 298708476
username:T6DR6p6-SV66 password: 318673564
username:TDR26p6-EVS password: 302163972
username:TDR36p6-ST1 password: 294101148
username:Ts2f6p6-VB1 password: 313682292
username:B8sf26p6-VB1 password: 328272164
username:B8TDf16p6-VB1 password: 342094148
username:BS453f6p6-VB1 password: 335183156
username:Osrf61p6-VB1 password: 355148244
username:Ofrg63p6-VB1 password: 351308804
username:ESr2g6p6-VB1 password: 339790484
username:IUrg61p6-VB1 password: 341710204
username:IU4DT6-BX1 password: 254938860
username:DUI43T6-tV1 password: 292949316
username:S1I32T6-DV1 password: 265689292
username:SN1MS6-DV1 password: 258010412
username:SNW4S6-TN1 password: 266073236
username:SNW6S6-MN3 password: 264921404
username:TD89VS6-MN3 password: 283734660

暴力破解

一般注册成功的话,会把注册信息保存起来,下次直接读取保存的信息来判断是否注册,通过火绒剑的行为检测,可以很方便看到

这里开启火绒剑监控,输入正确的用户名和密码,点击注册,可以看到:

image

该程序访问了C:\Windows\SysWOW64\SySvideoc.dat文件(offset:0x00000004 datalen:0x00000001)

像这种检测注册信息的验证方式,可以把通过验证的文件保存到指定位置来绕过验证


评论