• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

奋斗的软件工程师

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

[.NET逆向] Listary

[.NET逆向] Listary v6.3.5.94

前段时间在吾爱论坛闲逛,偶遇一篇帖子,自己便动手实操了一番

原文链接:https://www.52pojie.cn/thread-2025340-1-1.html

I.工欲善其事必先利其器

a.Listary

Listary官网下载地址:https://www.listary.com/

下载完成后,可以正常安装,也可以通过Inno解包工具InnoExtractor提取至指定目录即可

此处 我采用提取的方式 ,操作如下

image

Inno解包工具InnoExtractor是一款查看提取Inno Setup安装包的Inno安装包解包工具,可以提取内部文件和脚本,识别加密文件,脚本解密代码段,导出注册表段,INI运行段,查看编译器版本号VirusTotal检查等。

image

随后进行提取 指定目录 zip存档即可

image

b.dnSpy v6.1.8

dnSpy: https://github.com/dnSpy/dnSpy/releases/tag/v6.1.8

下载dnSpy-net-win64.zip后解压到指定目录下即可

c.de4dot v3.2.0.0

de4dot: https://github.com/kant2002/de4dot/releases/tag/v3.2.0

下载de4dot-net8.0-winx64.zip后解压到指定目录即可

II.反混淆

找到源程序

之前利用InnoExtractor将Listary.exe 提取至 C:\Users\ITCQ1024\Desktop\Listary6.3.5.94\tool source

目录下会多出一个压缩包 Listary 6_3.zip

此时通过7z对其进行解压, 在{app} 文件下便能看见如下内容

image

用de4dot.exe打开目录中的Listary.exe,以便在目录下生成Listary-cleaned.exe

image

image

image

image

重命名至关重要

将目录中的 Listary.exe 重命名成 Listary0.exe

将目录中的 Listary-cleaned.exe 重命名成 Listary.exe

III.修改代码

打开dnSpy.exe,将Listary.exe拖到dnSpy程序集资源管理器窗口中,或者直接拖入

image

将会看到如下内容

image

a1.Listary.Core.Pro -> LicenseChecker -> CheckLicense

找到 Listary 树,展开节点,找到 Listary.Core.Pro -> LicenseChecker -> CheckLicense ,右键 编辑方法

image

image

image

随后 点击 右下角的编译

image

b2.Listary.Core.Pro -> LicenseProPageViewModel -> CheckLicense

同上 ,找到 该 方法,右键 编辑方法(C#),删除方法体中的内容

image

image

同样 别忘了 编译

c3.Listary.Core.Pro -> ProService

找到 ProService 类,右键 ProService ,编辑类 , 将要修改4处代码

image

i.Line 38/39 删除

image

删除

this.<>OnPropertyChanged(Class481.LicenseEmail);
this.<>OnPropertyChanged(Class481.IsPro);

image

ii.Line 210

image

删除选中的内容

image

iii.修改 方法 ActivateNewLicense、method_2

按下 Ctrl+F 打开搜索框

image

找到ActivateNewLicense、method_2,将方法体的内容改成 return Task.FromResult(new ProService.ActivationResult());

ActivateNewLicense

image

image

method_2

image

image

iiii.修改方法DeactivateLicense、ScheduleAutoCheck、DebugTestActivateLicense、method_3

将方法体内容 全部修改成 return Task.CompletedTask;

DeactivateLicense

image

image

ScheduleAutoCheck

image

image

DebugTestActivateLicense

image

image

method_3

image

image

上面4处 均修改完成后 不要忘了 编译

d4.将 get_LicenseEmail 写死

image

找到 get_LicenseEmail 方法 ,右键 编辑方法

image

image

image

当然了 这个返回的 字符串 各位自行定义便可~~~ ,改完记得 编译

IV.保存模块

文件 -> 保存 模块

image

V.运行 Listary,看成品~~~

image

完美撒花~~~

posted on 2025-09-18 00:48  周政然  阅读(240)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3