crackme01——Acid_burn

news2025/1/2 3:58:00

最近对逆向稍微有点兴趣,自学了一点。写这个文章主要用于记录学习的过程。

首先看一下这个程序,其实就是个简单的比对程序,主界面按左侧按钮进入Name Serial界面,点击【Check it Baby】,则弹出窗口【Sorry, The serial is incorect!】。主界面按右侧按钮进入Serial界面,点击【Check it Baby】,则弹出窗口【Try Again!!】。

 

 先检查有没有加壳,看到【Borland Delphi】,很显然没有壳,可以直接分析。

 先搜索字符串,很容易就找到刚刚那两个字符串

 我们先从【Try Again】开始分析,找这个地址相关的指令

找到两条相关指令,但是不知道哪个是真的相关程序,于是我们加这两个指令上都打个断点。运行相关程序,我们发现程序并没有进断点。可能是没找对,我们重新查找,发现确实有另一个相同的字符串。

 这次只有一个指令调用这个地址。

我们给他打个断点 ,这次点击【check】后,进入断点了。

现在,我们查看一下它上下文代码,发现是从这里跳转到后面来的 ,此处修改汇编指令为je

测试结果,成功

然后,看另一个界面的【Check】,发现它正好停到我们刚刚第一次打的断点处。我们观察上下文,发现和之前一个界面完全相同。此处也修改汇编指令jnz为je。

 测试,发现没问题。直接保存修改

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/134926.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[Java]JDBC学习笔记(尚硅谷康师傅JDBC)

文章目录🥽 视频链接及资源下载🥽 JDBC简介🥽 JDBC程序访问数据库步骤🥽 获取数据库连接🌊 导入jar包🌊 Driver 接口🌊 JDBC URL🌊 方式1:🌊 方式2&#xff1…

educoder数据结构与算法 线性表 第2关:实现一个链接存储的线性表

本文已收录于专栏 🌲《educoder数据结构与算法_大耳朵宋宋的博客-CSDN博客》🌲 目录 本文已收录于专栏 🌲《educoder数据结构与算法_大耳朵宋宋的博客-CSDN博客》🌲 🍐任务描述🍐 🍐相关知识…

Java基础学习笔记(九)—— 常用API(2)

常用API1 Math类2 system类3 Object类3.1 概述3.2 常用方法3.3 常见面试题4 Objects类5 BigDecimal类5.1 构造方法5.2 常用方法6 时间日期类6.1 Date类6.2 SimpleDateFormat类6.3 JDK8新增日期类1 Math类 Math 包含执行基本数字运算的方法 Math中方法的调用方式:M…

Markdown 使用语法(详细)

想要学习Markdown,这篇文章就够了。 Markdow简介 Markdown 是一种轻量级标记语言,创始人为约翰格鲁伯(John Gruber)。 它允许人们使用易读易写的纯文本格式编写文档,然后转换成有效的 XHTML(或者HTML&…

IEEE期刊投稿流程

一、注册过程 1.1、确定期刊。 首先可以通过IEEE搜索需要投稿的期刊(以TMC为例),然后点击Submit Manuscript ,进入ScholarOne主页 1.2、账号注册。 进入到ScholarOne之后,若没有注册过需要先注册一个账号。 1.3、创建账户。 点击Create an Account&a…

【LeetCode每日一题】【2023/1/2】1801. 积压订单中的订单总数

文章目录1801. 积压订单中的订单总数方法1:模拟优先队列part1priority_queue的使用part2求余代码1801. 积压订单中的订单总数 LeetCode: 1801. 积压订单中的订单总数 中等\color{#FFB800}{中等}中等 给你一个二维整数数组 orders ,其中每个 orders[i] …

基于springboot+Vue学生宿舍管理系统(程序+数据库+文档+代码解读)

大家好✌!我是CZ淡陌。一名专注以理论为基础实战为主的技术博主,将再这里为大家分享优质的实战项目,本人在Java毕业设计领域有多年的经验,陆续会更新更多优质的Java实战项目,希望你能有所收获,少走一些弯路…

使用Cramer-Rao和Athley边界分析到达角阵列的质量(Matlab代码实现)

目录 💥1 概述 📚2 运行结果 🎉3 参考文献 👨‍💻4 Matlab代码 💥1 概述 此代码用于使用Cramer-Rao和Athley边界分析到达角阵列的质量。 📚2 运行结果 🎉3 参考文献 [1]王凯欣…

感谢、感恩与CSDN结缘的第1498天

导读:2023年1月1日,这是本人加入CSDN的1498天,还记得2018-11-26是注册加入CSDN的第一天,当时的初心就是单纯想作为一名普通的IT人,随着不断打拼职场岁月流逝,总想沉淀留下点东西,即使再平凡也总…

【数据集8】全球人口数据WorldPop详解

全球人口数据WorldPop WorldPop是由南安普顿大学在2013年10月发起的全球人口数据评估。与LandScan数据相比,这个数据涵盖的数据集的社会经济属性更多一些,比如包括了年龄性别结构、出生率、人口流动、航班联系等数据,可参见下图。 官网地址-…

网络信息安全-图像隐写与检测综述

任务目标: 本选题需要学习经典的图像信息隐藏算法,包括基于空域的隐写算法和数字水印算法。 接着你将使用某种编程语言实现这些算法,实现在图片中嵌入一些信息,例如字符串和一些 文件。除此之外,还需要尝试一些基础的…

MySQL8--通过角色管理权限

原文网址:MySQL8--通过角色管理权限_IT利刃出鞘的博客-CSDN博客 简介 本文介绍MySQL8如何通过角色管理权限。 角色是在MySQL8.0中引入的新功能。在MySQL中,角色是权限的集合,可以为角色添加或移除权限。用户可以被赋予角色,同时也…

洛普兰机械密封盛装亮相2023第11届济南生物发酵展

洛普兰机械密封与您相约2023第11届济南生物发酵展览会,3月30-4月1号山东国际会展中心,诚邀参会! 展位号:3号馆H32 2023生物发酵展将于3月30号山东国际会展中心(济南市槐荫区日照路1号)盛大召开&#xff0…

Spring(四):Bean作用域和生命周期

目录一、Bean作用域作用域1.1 Bean作用域简介1.2 作用域的定义1.3 Bean的6种作用域1.4 设置作用域二、Spring的执行流程和Bean的生命周期2.1 Spring的执行流程2.2 Bean的生命周期一、Bean作用域作用域 1.1 Bean作用域简介 现在有一个公共的Bean,A用户先使用到这个…

统计学中的Bootstrap方法(Bootstrap抽样)用来训练bagging算法,如果随机森林Random Forests

统计学中的Bootstrap方法(Bootstrap抽样)用来训练bagging算法,如果随机森林Random Forests 提示:系列被面试官问的问题,我自己当时不会,所以下来自己复盘一下,认真学习和总结,以应对…

Java与Python常见语法对比及区别

这里写目录标题一、前记1.1为什么写这篇文章?1.2 本文的结构二、整体区别2.1 差异总结十句话2.2整体对比三、细节区别3.1数据类型3.2其他数据结构3.3 String的处理方法3.4数组3.5条件语句3.6循环语句3.7类和接口定义与调用四 其他技巧知识字节的换算Tips&#xff1a…

flutter项目编译问题汇总

1、kotlin compiler embeddable下载慢的解决办法 备注:可以使用https://developer.aliyun.com/mvn/search这个链接搜索并下载 2、运行Flutter项目一直卡在--Running Gradle task assembleDebug 解决方法: 第一步:修改flutter安装目录/pac…

校招前端一面经典react面试题(附答案)

React.forwardRef是什么?它有什么作用? React.forwardRef 会创建一个React组件,这个组件能够将其接受的 ref 属性转发到其组件树下的另一个组件中。这种技术并不常见,但在以下两种场景中特别有用: 转发 refs 到 DOM …

多层次目录结构的CMake工程管理

多层次目录结构的CMake工程管理一、多层次目录结构的文件结构二、如何利用CMake组织多层次目录结构三、构建工程一、多层次目录结构的文件结构 我们编写程序,不可能把所有源文件都一股脑地放在顶层目录下,必然会有一个目录结构,每个目录中只…

【django】项目开发准备之数据库配置

文章目录一、docker中启动mariadb服务二、django配置文件中进行配置1.安装mysqlclient2.找到settings.py文件3.启动django程序一、docker中启动mariadb服务 --restartalways:自动启动容器 --name mydb:容器名称 -d:后台运行容器 -v /home/ubuntu/ck14/ma…