汇编逆向-Qt

2023-11-05

Qt源码解析 索引

汇编逆向— 授权破解示例分析

问题模拟

运行环境

  1. x64dbg
  2. Windows 10
  3. Qt5.12.3

示例代码

使用Qt显示当前时间,模拟一般授权软件的时间判断逻辑,当时间超过授权日期后就提示授权过期。

没有Qt经验的同学可以直接使用控制台程序,更简单一点。

#include "QtASM.h"
#include <QTimer>
#include <QDateTime>
#include <QMessageBox>

bool checkPassword()
{
	bool result = true;
	QDateTime now = QDateTime::currentDateTime();
	QDateTime dummy = QDateTime::fromString("2022-11-10", "yyyy-MM-dd");

	qint64 testDateTime = now.secsTo(dummy);
	if (testDateTime < 0)//超过授权日期2022-11-10
	{
		result = false;
	}
	return result;
}

QtASM::QtASM(QWidget *parent)
    : QWidget(parent)
{
    ui.setupUi(this);

	QTimer *timer = new QTimer(this);
	connect(timer, &QTimer::timeout, this, [=]() {
		if (checkPassword())
		{
			ui.dateTimeEdit->setDateTime(QDateTime::currentDateTime());
		}
		else
		{
			QMessageBox msgBox;
			msgBox.setText(QStringLiteral("error.授权失败."));//加了英文,方便查找
			msgBox.exec();
		}
	});
	timer->start(1000);
}

运行效果

按照博主测试的时间2022-11-19,软件会一直提示授权失败。

在这里插入图片描述

<

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

汇编逆向-Qt 的相关文章

  • 属性对象什么时候创建?

    由于属性实际上只是附加到程序集的元数据 这是否意味着属性对象仅根据请求创建 例如当您调用 GetCustomAttributes 时 或者它们是在创建对象时创建的 或者 前两个的组合 在由于 CLR 的属性扫描而创建对象时创建 从 CLR
  • FFMPEG Seeking 带来音频伪影

    我正在使用 ffmpeg 实现音频解码器 在读取音频甚至搜索已经可以工作时 我无法找到一种在搜索后清除缓冲区的方法 因此当应用程序在搜索后立即开始读取音频时 我没有任何工件 avcodec flush buffers似乎对内部缓冲区没有任何
  • 如何针对 Nancy 中的 Active Directory 进行身份验证?

    这是一篇过时的文章 但是http msdn microsoft com en us library ff650308 aspx paght000026 step3 http msdn microsoft com en us library
  • 使用 Google Analytics API 在 C# 中显示信息

    我一整天都在寻找一个好的解决方案 但谷歌发展得太快了 我找不到有效的解决方案 我想做的是 我有一个 Web 应用程序 它有一个管理部分 用户需要登录才能查看信息 在本节中 我想显示来自 GA 的一些数据 例如某些特定网址的综合浏览量 因为我
  • C# 用数组封送结构体

    假设我有一个类似于 public struct MyStruct public float a 我想用一些自定义数组大小实例化一个这样的结构 在本例中假设为 2 然后我将其封送到字节数组中 MyStruct s new MyStruct s
  • 基于范围的 for 循环中的未命名循环变量?

    有没有什么方法可以不在基于范围的 for 循环中 使用 循环变量 同时也避免编译器发出有关未使用它的警告 对于上下文 我正在尝试执行以下操作 我启用了 将警告视为错误 并且我不想进行像通过在某处毫无意义地提及变量来强制 使用 变量这样的黑客
  • .Net Core / 控制台应用程序 / 配置 / XML

    我第一次尝试使用新的 ConfigurationBuilder 和选项模式进入 Net Core 库 这里有很多很好的例子 https docs asp net en latest fundamentals configuration ht
  • 初始化变量的不同方式

    在 C 中初始化变量有多种方法 int z 3 与 int 相同z 3 Is int z z 3 same as int z z 3 您可以使用 int z z 3 Or just int z 3 Or int z 3 Or int z i
  • Windows 10 中 Qt 桌面应用程序的缩放不当

    我正在为 Windows 10 编写一个简单的 Qt Widgets Gui 应用程序 我使用的是 Qt 5 6 0 beta 版本 我遇到的问题是它根本无法缩放到我的 Surfacebook 的屏幕上 这有点难以判断 因为 SO 缩放了图
  • .NET 选项将视频文件流式传输为网络摄像头图像

    我有兴趣开发一个应用程序 它允许我从 xml 构建视频列表 包含视频标题 持续时间等 并将该列表作为我的网络摄像头流播放 这意味着 如果我要访问 ustream tv 或在实时通讯软件上激活我的网络摄像头 我的视频播放列表将注册为我的活动网
  • 网络参考共享类

    我用 Java 编写了一些 SOAP Web 服务 在 JBoss 5 1 上运行 其中两个共享一个类 AddressTO Web 服务在我的 ApplycationServer 上正确部署 一切都很顺利 直到我尝试在我的 C 客户端中使用
  • 在 URL 中发送之前对特殊字符进行百分比编码

    我需要传递特殊字符 如 等 Facebook Twitter 和此类社交网站的 URL 为此 我将这些字符替换为 URL 转义码 return valToEncode Replace 21 Replace 23 Replace 24 Rep
  • EPPlus Excel 更改单元格颜色

    我正在尝试将给定单元格的颜色设置为另一个单元格的颜色 该单元格已在模板中着色 但worksheet Cells row col Style Fill BackgroundColor似乎没有get财产 是否可以做到这一点 或者我是否必须在互联
  • 作为字符串的动态属性名称

    使用 DocumentDB 创建新文档时 我想设置属性名称动态地 目前我设置SomeProperty 像这样 await client CreateDocumentAsync dbs db colls x new SomeProperty
  • 如何构建印度尼西亚电话号码正则表达式

    这些是一些印度尼西亚的电话号码 08xxxxxxxxx 至少包含 11 个字符长度 08xxxxxxxxxxx 始终以 08 开头 我发现这个很有用 Regex regex new Regex 08 0 9 0 9 0 9 0 9 0 9
  • Bing 地图运行时错误 Windows 8.1

    当我运行带有 Bing Map 集成的 Windows 8 1 应用程序时 出现以下错误 Windows UI Xaml Markup XamlParseException 类型的异常 发生在 DistanceApp exe 中 但未在用户
  • 窗体最大化时自动缩放子控件

    有没有办法在最大化屏幕或更改分辨率时使 Windows 窗体上的所有内容自动缩放 我发现手动缩放它是正确的 但是当切换分辨率时我每次都必须更改它 this AutoScaleDimensions new System Drawing Siz
  • 如何使用 ReactiveList 以便在添加新项目时更新 UI

    我正在创建一个带有列表的 Xamarin Forms 应用程序 itemSource 是一个reactiveList 但是 向列表添加新项目不会更新 UI 这样做的正确方法是什么 列表定义 listView new ListView var
  • 将变量分配给另一个变量,并将一个变量的更改反映到另一个变量中

    是否可以将一个变量分配给另一个变量 并且当您更改第二个变量时 更改会瀑布式下降到第一个变量 像这样 int a 0 int b a b 1 现在 b 和 a 都 1 我问这个问题的原因是因为我有 4 个要跟踪的对象 并且我使用名为 curr
  • 如何连接字符串和常量字符?

    我需要将 hello world 放入c中 我怎样才能做到这一点 string a hello const char b world const char C string a hello const char b world a b co

随机推荐

  • Vue路由守卫(拦截)

    要解决的问题 最近做项目时 发现不登录账号和密码 在浏览器的地址栏直接输入路径也能跳转页面 就聊一下路由守卫吧 也叫路由拦截 话不多少 直接看操作 解决方案 在登录成功后 设置一个sessionStorage 通过这个sessionStor
  • vue可视化管理工具创建项目报错解决errno: -4058;连接超时

    vue可视化管理工具创建项目报错解决errno 4058 简介 vue创建项目时 errno 4058问题解决 使用vue ui指令时会报连接超时问题解决 总共两种解决方案 基础材料 使用的node js版本 18 12 1 vue版本 4
  • Pgsql:多表关联update更新字段和delete删除记录

    一 想用多表关联查询并且update更新指定字段 1 两表关联更新示例 UPDATE t user bank b SET is active 是 FROM t user arch u WHERE u arch id b arch id an
  • 浅拷贝和深拷贝的区别

    浅拷贝和深拷贝 总结 浅拷贝对象数据共享 深拷贝是一个完全独立的对象 因此对象数据不共享 浅拷贝 Shallow Copy 浅拷贝是指创建一个新的对象 但是该新对象只是原始对象的一个副本 具体而言 浅拷贝会创建一个新的对象 并将原始对象的引
  • matlab 载波调制,考虑载波和采样频率的2PSK调制 MATLAB仿真

    功能 生成psk调制信号 创建日期 2016 7 27 创建人 Alice 764499604 qq com clear all close all clc max 100 g zeros 1 max g randint 1 max 长度为
  • 5000月薪与50000月薪的Linux运维的区别

    做 运维 感觉像网管怎么办 新工作运维3个多月 天天就是维护重启服务器 更新代码 感觉这样下去几年后就没有什么竞争力了 这是知乎的一个热门运维问题 也是很多刚进入运维工作的同学面临的心境 确实 运维 可能是分水岭最明显的职位之一 有的人毕业
  • Docker修改容器内部文件的方法

    Docker修改容器内部文件的方法一共有三种 下面进行一一介绍 1 进入容器内部修改 使用下面的命令以命令行的形式可以进入容器的内部对文件进行修改 docker exec it 容器ID bin bash 不过里面没有vim 需要自行安装
  • Qt Translation 遇到的一些问题总结

    文章目录 坑1 无法生成ts文件 坑2 ts文件的中文乱码 坑3 不能直接翻译全局变量 静态变量 符号常量字符串 官方文档 Internationalization with Qt 贴一个比较好的总结 Qt中 软件多语言国际化翻译的方法与步
  • C#使用Tesseract

    C 使用Tesseract 前言 上篇文章讲述了 Tesseract orc的安装和使用 这片文章讲一讲在net平台上面如何使用 Tesseract orc 没有那么复杂的安装教程 我在使用的时间还是基于Framework 在网上下载了好多
  • Xmind8 绿色版安装教程

    特别说明 软件仅供技术交流 请勿用于商业及非法用途 如产生法律纠纷与本人无关 Xmind是一款非常专业的思维导图软件 收费好几百元 不过还是很多用户 因为目前用的最多 也简单易用 XMind界面友好 功能优秀 可用性极强 从而数百万人选择了
  • linux系统编程(十一)线程同步(完结)

    文章目录 1 线程同步 1 1 同步概念 1 1 1 线程同步 1 1 2 数据混乱原因 1 2 互斥量mutex 1 2 1 主要应用函数 1 2 1 1pthread mutex init函数 1 2 1 2 pthread mutex
  • Qt设置字体类型及添加字体文件

    Qt 添加字体文件 1 设置支持的字体 QFont font font setFamily 填写字体名称 2 通过字体文件来设置字体 字体的名称可以是自带的 也可以是外部的 如果是外部字体文件 则需要获取字体名称 使用QFontDataba
  • 表格的标签介绍

  • Javaweb实现员工信息管理系统

    员工信息管理系统 一 项目介绍 1 项目用到的技术栈 开发工具 idea 语言 java js html ajax 数据库 MySQL 服务器 Tomcat 框架 mybatis jQuery layui 2 项目实现功能 管理员 部门负责
  • go 进阶 三方库之 go-redis

    目录 一 基础 初始化连接 使用示例 1 常用操作与string 2 操作hash类型 3 操作list 4 操作set 5 操作zset 6 发布与订阅 7 事物操作 8 执行Lua脚本 二 基于redis实现分布式锁 封装锁结构体 lu
  • 机器学习——生成分类数据的坐标系边界需要用到的技术方法

    0 前言 如果遇到一种应用场景需要将x轴数据和y轴数据所有点映射到坐标系中 需要得到坐标系中x和y映射的坐标点 就要用到meshgrid把x和y映射到坐标系中 然后把得到的结果用ravel把结果转成一维的 用np c 把x数据和y数据堆叠在
  • HTML01

    若有 double p x 10 int i 5 使指针变量 p指向元素 x 5 的语句为 正确答案 A 你的答案 A 正确 p x i p x p x i p x i 设函数fun和实参数组的说明形式为 void fun char ch
  • 解决Microsoft Visual C++ 14.0 or greater is required. Get it with “Microsoft C++ Build Tools“报错

    Microsoft Visual C 14 0 or greater is required Get it with Microsoft C Build Tools 具体报错如下 Building wheel for cyac pyproj
  • 老猿学5G:融合计费基于流计费的触发器Triggers

    前往老猿Python博文目录 一 概述 每个触发条件都是一个可计费事件 SMF中的功能体CTF在用户上网时达到一定条件就会向CHF上报流量 而CTF什么时候触发流量上报是由CTF中的触发器来控制的 当用户UE发起上网行为时 SMF中的CTF
  • 汇编逆向-Qt

    Qt源码解析 索引 汇编逆向 授权破解示例分析 问题模拟 运行环境 x64dbg Windows 10 Qt5 12 3 示例代码 使用Qt显示当前时间 模拟一般授权软件的时间判断逻辑 当时间超过授权日期后就提示授权过期 没有Qt经验的同学