这几天被F0上的freeRTOS搞崩溃了。f0的可编辑优先级只有4级,而hal封装的cmsis-os的优先级每一集freeRTOS本身的优先级倒来换去。把我搞烦躁了。决定使用Tracealyzer来追踪一下任务运行情况。(还不知道空间够不够,不够只能费大功夫使用RTX,并利用keil自带的工具简单调试了)
本教程旨在推广大家使用Tracealyzer 和SystemView类工具,前者价格要一万多。对于独立开发者这个价格不太友好,但建议公司员工还是掏钱吧。
(管理员如果觉得发在这里不合适,可以私信我。我可以删帖。)
在开始之前,还是要感谢其它几个帖子给的一些框架性的指引。但我是新手,中间的过程有很多坑。
【嵌入式系统神器 FreeRTOS+Trace 破解分析@52pojie】
【青竹雨仙@CSDN】
本帖子破解的工具是从官网趁热下载的最新版本v4.2.12. 从v4开始变化很大,不再区分不同的RTOS。如果安装好之后,你会发现安装包里面包含了所有版本相关文件:

包含RTX5,freeRTOS,Micrium,SaftRTOS,ThreadX,Vxworks等。(没有RTT)
在破解之前,需要知道几个工具:
1、de4dot : https://github.com/0xd4d/de4dot  一款反混淆和脱壳的工具
2、dnSpy : https://github.com/0xd4d/dnSpy  .NET的反编译工具,可以以C#或者IL,VB等语言查看源代码。
基本步骤是:
1、下载目标软件和上面提到的两个工具(这两个工具只适合.NET的程序,其余的软件需要用别的壳检查工具确定程序和工具)
2、下载Tracealyzer的时候要注意申请一下Evaluation 版本的序列号。然后安装完软件,之后用这个序列号先online activate一下。
激活完之后的license位于C:\ProgramData\Tracealyzer Data目录下的License.xml建议拷贝之后备份。

3、先反混淆,然后再断点调试,修改,最后保存测试。后面几步可能要反复几次知道完全破解。
【不要让我把破解之后的文件传给你,请自己动手。】
第三步很繁琐。这后面就再专门讲一下。
A、反混淆
找到de4dot的文件夹,用cmd打开命令行。我们假定你的tracealyzer安装目录是D:\Program Files\Percepio\Tracealyzer 4 。

用:

<div>mkdir “D:\Program Files\Percepio\cleaned”</div><div>de4dot -r "D:\Program Files\Percepio\Tracealyzer 4" -ro "D:\Program Files\Percepio\cleaned"</div>

其中-r指定原始文件所在的文件夹,而-ro是输出文件所在的文件夹。你需要按照自己安装的目录自行更改代码。
为了防止后面有问题,你可以用python写一段代码来将文件拷贝到另一个文件夹。(见附件压缩包中的backup.py,下载放在D:\Program Files\Percepio\目录中)

<div>cd "“D:\Program Files\Percepio\"</div><div>mkdir “D:\Program Files\Percepio\original”</div><div>python3 backup.py</div>

这段python代码自动将已经cleaned的文件替代原始文件,并将原始文件备份到backup目录中。你也可以自己简单替换也可以,这样原始文件就没有了,但无可厚非。
B、调试找代码
在你的License.xml文件中有ProductId和EditionId两段序列号,后面还有代表不同平台的产品序列号。如果你是evalation的化你的序列号应该和我这里的不一样。我这里的是手动改的。时间和产品号都是自己改的。

<Product>Tracealyzer - Professional Edition</Product>
    <ProductId>{07DA2EBE-0932-44C2-AC8C-F11ED48DD0AB}</ProductId>
    <EditionId>{07DA2EBE-0932-44C2-AC8C-F11ED48DD0AB}</EditionId>
    <LicensedTo>Personal</LicensedTo>
    <ExpiresOn>2029-04-11</ExpiresOn>
    <SupportThrough>2030-04-01</SupportThrough>
    <Components>
      <Component>
        <Id>{B1CF5B88-ADA5-4B2A-81AF-257054106205}</Id>
        <Name>Tracealyzer Application</Name>
      </Component>
      <Component>
        <Id>{469D108A-B824-4C27-99ED-98B8629BFCE0}</Id>
        <Name>FreeRTOS Support</Name>
      </Component>

从代码分析:
        "Free Edition": FA52DADE-887B-495D-8258-898B39E189CB
        "Standard Edition": 050C587E-D34F-4361-B344-F8FCC4473477
        "":07DA2EBE-0932-44C2-AC8C-F11ED48DD0AB
        "Academic Edition": 20478608-C79A-48A9-A969-35541787D2C0
        "Evaluation Edition" : F5780CA8-1FC7-4AA4-9B1E-C7F7D6E19496

那怎么分析呐?这时候就用到了dnSpy。直接打开之后,将Tracealyzer.exe拖入。


上图展示了调试的步骤。我通常先点开始(里面选择entry point模式),这时候我再搜索string/number的方式找到evalution部分的号码。
新版本改变之后,应该仍然可以通过此方法找到产品序列号。
这时候修改一下两个ID和时间。现在就开始正式调试了。
C、找到SignedLicense
4.2的逻辑更改了很多,但基本方法还是找到它。
我改了1和3以及2指向的函数,基本就可以工作了。记得compile完之后要保存之后再strart一遍。按照如上方法基本可以破解之后的版本。(如果变化不大。)基本思路是最终返回GEnum43.const_0
我曾直接进入之后return,发现有些问题。目前方法,可以使用。
应该还有不用注册就破解的方法,暂时没有找到。现在还需要evalution的码,然后修改路径。

重要的要先说一下。本人只提供方法,不提供破解文件。不要请我发文件。这样你是拉我走上被告席的节奏。

【发表在CSDN和stmcu.org.cn】

愚人节破解Tracealyzer 4.2.12相关推荐

  1. 愚人节,看你们把AI逼成什么样了?

    点击上方↑↑↑蓝字关注我们~ 「2019 Python开发者日」,购票请扫码咨询 ↑↑↑ 作者 | 一一 出品 | AI科技大本营(ID:rgznai100) 每逢愚人节,科技公司就坐不住了. 也不全 ...

  2. 程序员不过愚人节???

    作者 | 伍杏玲 出品 | 程序人生(ID:coder_life) 今年愚人节,你要搞事情吗? 微信已经开始过愚人节了,今天在输入框里输入"我爱你"或者"我喜欢你&quo ...

  3. 愚人节整人软件测试自学,2020愚人节整蛊整人攻略大全

    2020年4月1日的愚人节来啦,这一天其实就是一个让搞怪名正言顺的节日,你知道怎么整蛊别人吗?以下是小编整理了关于2020愚人节整蛊攻略大全,希望你喜欢. 2020愚人节整蛊攻略大全 1.猪的英语拼写 ...

  4. 2017年愚人节思考

    今天是愚人节,也是普通的一天,天气还是不错,所有的节日,我都喜欢安静的待着,虚伪的看点书,其实也不知道自己在干什么: 今年的主题是迷茫,迷茫的有点仓促,可能是对自己无序的生活的一种讨厌,还是觉得自己的 ...

  5. 愚人节老板发话了,免费送书 + 免费入驻Java知识星球!!

    愚人节快乐,今天的活动很重磅! 1.免费送5本重量级技术书籍,不骗人,小程序随机抽奖送出哦! 2.免费进星球,哈哈不可能,愚人节快乐!不过今天有重大优惠,见下文! 活动一:免费送出5本重量级书籍 赠书 ...

  6. 愚人节的希腊神话传说

    当一天"傻瓜" --愚人节 每年的4月1日,是西方某些国家人民最开心的日子.在这一天,人们可以充分发挥自己的想象力,尽可能编造出一些耸人听闻的谎言,去调侃.哄骗.取笑.愚弄别人.只 ...

  7. 愚人节的一天(快乐+2)

    题目描述 MEN RE DE XIA TIAN DAO LE, NI HE NI DE DUI YOU ZU DUI CAN JIA LE JIN NIAN DE CHENG XU SHE JI JI ...

  8. 愚人节,60条短信祝你笑口常开……

    愚人节毕竟是的西方人的节日,虽然我们也可以借此娱乐一番,但适可而止,不要玩过火了.并且这些恶搞信息最好是发送给你最熟悉的人,而不要随意发送,以免恶搞不成却反目成仇.如果你在这一天接到一个很特别的信息, ...

  9. 愚人节恶搞网站谨防遭黑客攻击

    金山毒霸云安全中心日前发出预警,在近期拦截的大量"挂马".钓鱼等恶意网页中,与"愚人节"相关的,在近一周数量急剧增加. 愚人节将至,怎么整人好玩?近期许多恶搞网 ...

最新文章

  1. myeclipse 2019中文版
  2. 超强整理!PCB设计之电流与线宽的关系
  3. 均值归一化_超越BN和GN!谷歌提出新的归一化层:FRN
  4. openssl 安装好了 php如何打开,开启openssl
  5. 网站服务器windows登陆密码忘记,网站服务器windows登陆密码忘记
  6. php编码和c语言,急求windows下用c语言开发PHP扩展时,在C语言里把字符串转成utf-8编码再打印的方法。...
  7. python查找序列元素的最大值和最小值_pthon基础知识(索引、切片、序列相加、乘法、检查元素是否是序列成员、计算序列长度、最大最小值)...
  8. 新手赛(2) 第五题 因素和问题
  9. PHP运行模式的深入理解
  10. 开源审计的最佳时机是什么时候?
  11. cf烟雾头怎么调win7系统
  12. 关于求数列极限的方法的总结
  13. 自然语言处理技术发展简史
  14. 公交查询系统Android源代码,公交查询源码
  15. 考研英语 单词常见前后缀/词根
  16. VS2019及其他多个老版本的VS下载说明
  17. 如何实现Shell脚本开机自运行
  18. 【转】《背包九讲》--崔添翼大神
  19. 改进集束搜索(Refinements to Beam Search)
  20. 我是没有口袋的哆啦a梦

热门文章

  1. 工作笔记:mRemote远程连接已配置好的连接
  2. 国内、国际手机号正则表达式
  3. 【算法】海量数据相似度计算之simhash和海明距离
  4. CentOS设置frpc开机自启动
  5. ASPICE:能力等级评定
  6. Loj #2529. 「ZJOI2018」胖
  7. <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent
  8. ICSL WEB攻击模式及防范方法
  9. 长城数艺:推进文化艺术品数字化发展,引领书画数字藏品
  10. iPhone/iPad声音问题