FreeRTOS可视化追踪软件 —— 破解Tracealyzer 4.2.12

2023-05-16

方法一、
愚人节破解Tracealyzer 4.2.12(若发这里不妥,可通知删贴)

http://www.stmcu.org.cn/module/forum/thread-620069-1-1.html

4.3.0也可破解,文件要修改的位置差不多,还在SignedLicense的位置。产品版本号也没有改变,代码稍有不同。使用4.2.12的license.xml成功实现了4.3.0的激活。新增了一个自己整理的破解过程在附件中(hack_photo.zip)。抱歉,因为工作繁忙,不会再提供qq指导。觉得过程需要细化的,可直接修改readme.md然后在本帖留言,或另开一帖细化你破解的过程。
不建议连Github的源代码和release版本软件都分不清的新手尝试。


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

用:

mkdir “D:\Program Files\Percepio\cleaned”

de4dot -r "D:\Program Files\Percepio\Tracealyzer 4" -ro "D:\Program Files\Percepio\cleaned"

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

//这里如果电脑没有python,需要自己安装一个python3 ,

如果无法运行python3 backup.py,则需要下载这个脚本http://www.stmcu.org.cn/module/forum/thread-620069-1-1.html

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

<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>

从代码分析:
AAE8DBC5-A985-4BC8-819D-5DDABEE7F448 表示 Academic Edition  (这个版本官网没看到,但是源码中存在)
E2BB2BF3-507C-44F2-B250-F5734C63C1BD 表示 Professional Edition
2A5BC2B2-177E-4421-AB65-9683EEF175AC 表示 Standard Edition
D0C8EF57-8402-4264-9BBE-4FA2FD3A50B9 表示 Evaluation Edition
133C03FE-FB99-4B25-8FBD-BCD06711018B 表示 Free Edition

修改版本和日期

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

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

破解方法2:

https://www.52pojie.cn/thread-575525-1-1.html

去掉RSA校验方法:

用dnSpy打开Tracealyzer.Application.dll,然后搜索"SignedLicense"字符串,一般只有一个方法。
该方法有三个参数,其中一个是个byte[],找到方法内用到这个byte[]的地方(一般只有一个),这个调用就是校验RSA的,NOP掉就行。
或者直接搜索字符串RSA,找到调用的函数,NOP掉就行。

 

点击确认,保存所有。然后运行保存的软件即可破解。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

FreeRTOS可视化追踪软件 —— 破解Tracealyzer 4.2.12 的相关文章

  • Gcc编译时的-w -W -Wall选项

    今天在看一个makefile时看到了gcc W Wall 这句 xff0c 不明其理 xff0c 专门查看了gcc的使用手册 w的意思是关闭编译时的警告 xff0c 也就是编译后不显示任何warning xff0c 因为有时在编译之后编译器
  • Android8添加arm64系统调用

    Author Gary Date 2019 8 7 Android版本 android 8 1 0 r1 内核版本 Linux 4 4 88 参考文章 https blog csdn net rikeyone article details
  • [RTOS]rtthread,freeRTOS,uCOS等系统简单对比

    在上一篇 嵌入式操作系统浅谈 中 xff0c 大概介绍了我自己再工作中使用到的如rt thread xff0c freeRTOS xff0c uCOS xff0c luatos等系统 xff0c 在这一篇文章中 xff0c 我简单说一下这些
  • Mysql授权允许远程访问解决Navicat for MySQL连接mysql问题 1251错误

    Navicat Premium连接MySQL 1251错误 MySQL Installer 8 0 17 出现上述错误的原因是版本MySQL 8 0 17即8 0开始的MySQL版本 因为采用新的保密方式 而Navicat Premium
  • ubuntu突然进不了图形界面解决方案

    1 环境 Ubuntu 20 04 desktopMacOS Big SurVMware Fusion 2 描述 虚拟机一直开着 xff0c 长时间没有用就自动休眠锁屏了 xff0c 但是发现输密码后进不了桌面 xff0c 只好重启 xff
  • 文档-操作手册与用户手册的区别

    背景 我们都已经了解了操作手册和用户手册都是给用户看的 xff0c 那么两者之间的区别是什么呢 xff1f 为什么要产生这两个文档呢 xff1f 详解 1 操作手册是系统级别的文档 xff0c 而用户手册是需求级别的文档 操作手册讲述的是如
  • msOS使用小结

    在做激关打标机的项目的过程中 xff0c 使用msOS遇到了一些问题 xff0c 和解决方法 xff0c 还有一些小体会 xff0c 现在拿出来分享一下 一 代码移植时遇到的问题 xff1a 激光打标机项目用到一块新的板子 xff0c 所以
  • IntelliJ IDEA添加JavaDOC注释 方法 快捷键

    第一种方法 Settings gt Keymap gt Other gt Fix doc comment gt 右键 gt 选择 Add Keyboard Shortcut xff0c 然后输入自定义的快捷键 默认Fix doc comme
  • 关于ElementUI 项目开发的eslint 报错问题的修复

    介绍 使用操作系统为 Win11Win11 使用教程 1 使用 ElementUI 项目进行开发时因为各自的格式化文档不同难免会遇到各种报错 但是大部分都是因为 单引 分号 逗号 的格式存在报错 2 这时我们在项目的根目录下可以新建一个 p
  • CentOS安装lsusb查看设备串号Serial

    安装lsusb span class hljs built in echo span span class hljs string 34 password 34 span span class hljs built in sudo span
  • VMware虚拟机安装CentOS8连不上网问题

    VMware虚拟机安装CentOS8连不上网 改了半天VMware中CentOS的网卡 xff0c 从 桥接模式 改到 NAT模式 34 都不管用 终极解决方案 1 选中你的虚拟机 xff0c 比如我的CentOS8 2 点击菜单栏中的 编
  • Ubuntu更换软件源

    更换 Ubuntu 的软件源 对于Ubuntu系统 xff0c 不同的版本的源都不一样 xff0c 每一个版本都有自己专属的源 而对于 Ubuntu 的同一个发行版本 xff0c 它的源又分布在全球范围内的服务器上 Ubuntu 默认使用的
  • Eclipse本地运行MapReduce

    环境说明 xff1a Linux环境下已搭建好hadoop集群 xff0c windows本地安装Eclipse 远程启动MapReduce任务 1 下载并安装eclipse插件 xff1a hadoop eclipse plugin XX
  • nvm 管理你的node

    1 安装nvm 2 nvm 管理命令 nvm ls remote 可以会列出所有可用的 Nodejs 版本 nvm install v11 0 0 就可以把这个版本的 Nodejs 安装到我们的机器上了 nvm list 可以查看当前已安装
  • ssh免密登录配置+调试讲解(超详细)+原理解析

    有写的不对的地方 xff0c 欢迎各位同学评论指正 xff0c 博主会进行修改 前 言 集群搭建中 xff0c 常常需要配置ssh免密登录 xff0c 而每台机器情况不一样 xff0c 本来博主认为没多少东西 xff0c 结果 xff0c
  • Windows和Ubuntu双系统双引导教程

    一 参考资料 Windows和Ubuntu双系统安装教程 二 步骤 1 下载EasyBCD xff0c 并安装 2 设置Windows引导 3 设置Ubuntu引导 4 启动系统 遇到这种情况 xff0c 直接Enter回车 选择系统
  • 大数据技术原理与应用(第七章 MapReduce)

    目录 7 1 MapReduce简介 MapReduce与传统并行计算框架对比 MapReduce模型 MapReduce策略 MapReduce理念 计算向数据靠拢 MapReduce架构 Master Slave Map函数和Reduc
  • FreeRTOS多任务调度原理(基于Cortex-M4)

    目录 1 Cortex M4中SysTick的重要性 2 Cortex M4中的中断管理 3 Cortex M4中影子栈指针 4 Cortex M4中SVC和PendSV异常 5 多任务启动 6 PendSV业务流程 7 系统时钟节拍详解
  • Pytorch 线性回归 grad清零报错:w.grad.data.zero_() AttributeError: 'NoneType' object has no attribute 'data'

    学习了https github com L1aoXingyu code of learn deep learning with pytorch blob master chapter3 NN linear regression gradie
  • 查看一台机器的vnc端口及vnc是否开启

    netstat lnpt grep Xvnc 查的到端口说明开的 如果没开用命令开 systemctl start vncserver 64 1 service

随机推荐

  • CMMI等级划分和对照

    CMMI xff08 Capability Maturity Model Integration xff09 即软件成熟度集成模型 是力图通过一套模型改善软件质量 xff0c 规范软件过程管理的模型 由于软件开发的随意和变动性比较大 xff
  • 关于解决校园网Drcom经常掉线的问题

    关于解决一些电脑由于使用WIFI共享而导致校园网Drcom经常掉线 xff1a 第一种方式 xff1a 打开控制面板 gt 网络和共享中心 gt 更改适配器设置 xff0c 再找到无线网络连接如下图所示 xff1a 鼠标右键 点开属性栏 找
  • pytorch学习日记(二)——之cv2,matplotlib,PIL比较及与Tensor的转换

    用python进行图像处理中分别用到过matplotlib pyplot PIL cv2三种库 xff0c 这三种库图像读取和保存方法各异 xff0c 并且图像读取时顺序也有差异 xff0c 如plt imread和PIL Image op
  • Python123第七周编程题

    1 文本的平均列数 span class token keyword with span span class token builtin open span span class token punctuation span span c
  • 如何完全卸载PyCharm

    进入bin文件 xff0c 找到uninstall xff0c 双击即可
  • 递归算法的简单示例

    1 xff0c 递归实现sum 函数 span class token keyword def span span class token function sum span span class token punctuation spa
  • 记事本文件保存为JAVA文件

    如何将记事本文件保存为java文件 xff1f 1 xff0c 在将记事本文件保存后 xff0c 在通过将文件名 xff08 以hello为例 xff09 后缀改为 java后 xff0c 通过查看其属性发现其格式为hello java t
  • 队列的简单示例

    1 xff0c 队列的简单应用 热土豆问题 span class token keyword from span pythonds span class token punctuation span basic span class tok
  • Git使用经验指南小结

    在使用git的时候 xff0c 每次都要查询需要的命令 xff0c 费时费力 xff0c 在这里简单总结下容易遗忘的点与命令行 xff1a 1 xff0c 首先需要安装git 安装完成后 xff0c 通过以下指令查看git版本 span c
  • 正版matlab安装详解——基于linux服务器平台正版非镜像安装

    想要在学校服务器上安装matlab 但是搜索了半天 xff0c 没有发现什么详细的攻略 xff0c 先将其总结如下 xff1a 1 在根据当前服务器环境选择合适的matlab后 xff0c 上传至服务器文件夹 xff1b 并完成解压 xff
  • 【疑难杂症】Ubuntu安装uWsgi出现的问题

    在Ubuntu环境下安装uWsgi的时候出现了一些问题 1 xff1a 安装时出现错误 xff1a x86 64 linux gnu gcc pthread plugins python python plugin o In file in
  • 基于Hexo框架快速搭建个人博客--搭建(一)

    基于Hexo框架快速搭建个人博客 搭建 xff08 一 xff09 一 HEXO框架二 安装Node js三 安装Git四 安装Hexo五 设置主题六 本地发布文章七 总结 博客链接 xff1a 会思想的苇草i文章链接 xff1a 基于He
  • 安装UR5功能包(翻译)

    翻译地址 由于本人能力有限 xff0c 难免存在模糊或错误之处 xff0c 希望见谅和指正 如果能够对你有点帮助 xff0c 我会感到荣幸 安装 有两种方法用来安装UR5功能包 第一种是直接使用二进制包来安装 xff0c 第二种是在catk
  • 李飞飞发表研究新成果:视觉推理的推断和执行程序(HR)

    原文 论文导读 xff1a 目前进行视觉推理的方法都是通过黑箱结构将输入直接映射到输出 xff0c 而不是对潜在的推理过程进行明确建模 这样一来 xff0c 黑箱模型学习到的是利用数据内的偏置而不是学习进行视觉推理的过程 受到模块化网络的启
  • 构建Linux Samba支持任意WIN10访问(无需改策略)

    传统方式构建的Linux Samba无法直接被WIN10访问 xff0c 大多需要在要访问的WIN10系统上改变组策略 这个方法虽然可行 xff0c 但是大量WIN10系统的组策略修改较为繁琐 之所以WIN10无法访问是当SAMBA连接开始
  • VNC SERVER 安装

    1 用root用户身份运行以下命令 yum install tigervnc server 2 停用防火墙 systemctl stop firewalld service systemctl disable firewalld servi
  • Ubuntu 更换清华大学镜像源

    Ubuntu 更换镜像源 通常我们使用ubunntu的时候总是出现网络过慢导致的更新下载失败等问题 Ubuntu默认的服务器是在国外 xff0c 自然连接就很慢 这里我们更换成国内的镜像源 xff0c 这里使用清华镜像源 操作步骤如下 xf
  • C语言strtok函数的用法

    先理解strtok函数的定义 xff0c 尤其是指针方面的 xff0c 需要自己理解 原型 xff1a char strtok char s const char delim include lt string h gt 分解字符串为一组字
  • ubuntu mate18.04+树莓派4B+ROS安装详细教程

    前记 最近项目需要 xff0c 需要给树莓派4B 安装Ubuntu mate xff0c 本来是一件很简单的事情 xff0c 因为Ubuntu mate官网已经开始支持树莓派4B了 xff0c 但是实际操作后 xff0c 才发现烧录官方的桌
  • FreeRTOS可视化追踪软件 —— 破解Tracealyzer 4.2.12

    方法一 愚人节破解Tracealyzer 4 2 12 xff08 若发这里不妥 xff0c 可通知删贴 xff09 http www stmcu org cn module forum thread 620069 1 1 html 4 3