cupgg 发表于 2016-7-26 13:15

Qt框架下flexm程序的另类分析

本帖最后由 cupgg 于 2016-7-26 13:45 编辑

运行程序弹出错误,不能进入程序界面:

依据提示,知程序为flexm控制的license验证程序。
进入程序目录下发现为qt程序框架:

思路分析:
常规方法flexm验证或者license制作请自行搜索学习。
Qt界面程序执行时需要调用“QApplication::exec”,其上常有“QWidget::show”参见下图:


因此,提出了另类的方法寻找关键点;
1、查找标签定位QApplication::exec;
具体操作如图示:




2、向上回溯寻找可能的突破部位;
在QtGui4.QWidget::show上面的几个call下断,并运行程序;



经测试图中标记call进入后,程序出call的位置不经过其下方的代码,
直接跳过主界面调用,因而确定其为关键call;
与常规的关键call不同之处在于,其call下面不存在比较或者跳转,隐蔽性强;
3、patch完成;

patch后正常运行,出现主界面;







Shark恒 发表于 2016-7-26 16:52

这么暴力。。行不行。。会不会功能缺失?

cupgg 发表于 2016-7-26 21:20

Shark恒 发表于 2016-7-26 16:52
这么暴力。。行不行。。会不会功能缺失?

@Shark恒 ,生成正版的license,爆破都测试通过了。这是突然间想到的办法,一切功能正常,应该是没有人用过!

cupgg 发表于 2016-7-26 21:27

本帖最后由 cupgg 于 2016-7-26 21:34 编辑

Shark恒 发表于 2016-7-26 16:52
这么暴力。。行不行。。会不会功能缺失?flexlm程序可能论坛谈论较少,通行做法已经完美。对比常规方法和本方法功能一致。

gagmeng 发表于 2016-7-29 12:50

cupgg 发表于 2016-7-26 21:27
flexlm程序可能论坛谈论较少,通行做法已经完美。对比常规方法和本方法功能一致。

大神啥时候就flexlm来个系列教程吧

Amoying 发表于 2016-7-29 13:04

小白求教,flexm是什么?

cupgg 发表于 2016-7-29 20:30

gagmeng 发表于 2016-7-29 12:50
大神啥时候就flexlm来个系列教程吧

flexlm的分析已经很成熟了,所以我就不班门弄斧了,主要应用于国外大型的商业软件。

cupgg 发表于 2016-7-29 20:31

Amoying 发表于 2016-7-29 13:04
小白求教,flexm是什么?

一种商业软件的验证方式,用license这控制软件的启动和授权,例如可以控制使用是人数,时间,及模块功能!

catty870807 发表于 2016-7-30 09:59

确实另类,不过估计只适用于少数吧?

gagmeng 发表于 2016-7-31 14:15

cupgg 发表于 2016-7-29 20:31
一种商业软件的验证方式,用license这控制软件的启动和授权,例如可以控制使用是人数,时间,及模块功能 ...

有没有flexlm方面好的资源分享一下,多谢
页: [1] 2 3
查看完整版本: Qt框架下flexm程序的另类分析