愚人节破解Tracealyzer 4.2.12

这几天被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】

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
有关如何以操作系统感知的方式调试在Avnet MiniZed板上运行的Embedded FreeRTOS应用程序的指南。 介绍在操作系统之上编写嵌入式软件应用程序时,通常很难检测某些时序问题或解释某些奇怪的行为。到底出了什么问题?另一件事是,在研究嵌入式操作系统时,以可视方式呈现系统的运行行为会很有用。了解任务优先级,调度程序设置,队列管理,... 我发现Percepio Tracealyzer是解决这类问题的理想工具。Tracealyzer可以通过两种方式工作:在快照模式下(这是本教程的内容)或在流模式下。 对于本指南,您需要一个Avnet MiniZed开发板(基于Xilinx Zynq),Xilinx vivado工具和Percepio tracealyzer 4(其网站上的评估版)。 让我们开始开发本指南的硬件部分(FPGA设计)。如果您不熟悉FPGA设计,则可以打开我的硬件设计。否则,从下面开始构建基于ZYNQ7的设计: 基于zynq7的设计 在程序框图上放置以下组件: ZYNQ7 P rocessing 小号ystem 具有2个通道的AXI GPIO 连接到pl_led_g 和pl_led_r 1个通道的AXI GPIO 连接到pl_sw_1bit 您可以对ZYNQ7处理系统使用自动配置(使用预设),但是随后必须手动添加M_AXI_GP0_ACLK 端口以连接AXI从设备外围设备。 使用“自动连接”功能将AXI_GPIO模块连接到AXI总线。 不要忘记在“模块设计”的顶部添加HDL包装器。生成比特流,并将您的硬件设计导出到Vivado SDK(包括比特流)。
Note Everything Pro 4.2.12是一款非常实用的记事和备忘录应用程序。它提供了许多强大的功能,使我们能够方便地记录和组织我们的想法、任务和事件。 首先,Note Everything Pro 4.2.12具有多种记录类型。我们可以使用文本、录音、图片和绘图等方式来记录我们的内容。这样我们可以选择最适合我们的方式来记录我们的想法,无论是文字描述、语音记录、拍照还是绘图。 其次,该应用程序具有多种组织和分类功能。我们可以创建不同的文件夹和标签来对我们的记录进行分类和归档。这样我们可以轻松地找到我们需要的记录,提高工作效率。 第三,Note Everything Pro 4.2.12支持云同步功能。我们可以将我们的记录同步到云端,确保我们的数据安全,并能够在不同设备间同步和访问我们的记录。这对于在不同设备间工作或者需要备份重要信息的用户来说非常重要。 此外,该应用程序还提供了一些其他实用功能。例如,我们可以设置提醒事项来确保我们不会错过重要事件。我们还可以将我们的记录导出为文本文件或者备份到SD卡。这样即使我们更换了设备,我们仍然能够轻松恢复我们的记录。 总之,Note Everything Pro 4.2.12是一款功能强大、方便实用的记事和备忘录应用程序。它的多种记录类型、组织和分类功能以及云同步功能使我们能够方便地记录和管理我们的想法和事务。无论是个人使用还是工作使用,都是一款非常实用的应用程序。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值