小甲鱼 OllyDbg 教程系列 (十五) : 逆向注册机简单算法

 

小甲鱼 OD 教程: https://www.bilibili.com/video/av6889190?p=24
KeygenMe 下载地址:https://pan.baidu.com/s/1gXAscM3WCNpIqxIm5t1rrQ    提取码:z5in 
 

 

前言

 

 

用 OD 打开程序

输入框 常用 API,当不知道是哪个时,可以一个一个尝试下个断点。

这里使用 bp GetDiglogItemTextA 下断点,输入完之后按 enter ,没有什么反应,但是断点已经下下了,可以通过 Alt + B 查看断点:

重新载入程序,运行程序,随便输入注册信息,发现程序在断点处断下,但是 第一个断点处是在动态链接库里面断下的,这个不是要找的断点,需要让程序在 程序领空断下,可以 按下 Alt + F9 ,这个快捷键就是执行到程序领空

 

 

 

分析

 

算法分析,内联补丁( 内联补丁只能写入到代码段,因为一个程序的执行就是执行的代码段,但是如果需要用到数据,数据必须保存在数据段。即只能在数据段写入数据,因为一个程序只有数据段是可写入的,代码段在内存中是不可写入的 )

下代码段空闲区域写入内联补丁:

写这个内联补丁的意思就是让程序通过内部的算法算出正确的 注册码,然后把算出的注册码写入到数据段暂时保存起来,然后在通过程序的 MessageBox 显示出来。

MessageBox 显示数据段的内容:

保存所有修改,然后运行修改后的程序进行测试:

下断点,查看 数据段 数据:

 

 

 

算法分析和逆向 之 使用 C 语言实现

 

算法逆向直接看视频 小甲鱼 OD  教程视频:https://www.bilibili.com/video/av6889190?p=24

 

 

 

 

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

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

相关文章

以大自然为师,可上天入地的11款仿生机器人

来源:资本实验室尽管人类已经借助科技的力量改造了世界,但许多技能仍然为人类所不拥有,很多恶劣的环境仍然是人类的禁区。而经过大自然的“公平选择”,使得某些生物具有我们所不具备的独特“技能”“,也适合在人类难以…

Guava入门~CacheStats

构建缓存对象时调用recordStats()&#xff0c;指定可以做缓存统计 LoadingCache<String,TradeAccount> tradeAccountCache CacheBuilder.newBuilder().recordStats() 获取缓存统计结果 CacheStats cacheStats cache.stats(); 示例 package bbejeck.guava.chapter6…

Linux下细碎温度等的监控与调整

作者: zhania 出自: http://www.linuxdiyf.com 装tp-fancontrol&#xff0c;限制一下gpu的温度ubuntuCPU的温度cat /proc/cpuinfo显卡温度 有个sensor applet&#xff0c;装了都能透露表现在终端里运转cpufreq-info检察CPU信息 sudo cpufreq-selector -c cpu号梗概 sudo cpufr…

深度分析:区块链技术未来发展的 8 个趋势

来源&#xff1a;36氪CB Insigh日前发表了一份关于区块链技术的研究报告&#xff0c;结合区块链目前的发展现状&#xff0c;提出了区块链技术未来发展的8个趋势。虽然加密货币和加密资产的价格已从2017年的峰值回落&#xff0c;但区块链创业公司的股权投资&#xff0c;在2018年…

小甲鱼 OllyDbg 教程系列 (十六) : 简单病毒的逆向分析

小甲鱼 OD 教程&#xff08; 多态 和 变形 分析 &#xff09;&#xff1a; https://www.bilibili.com/video/av6889190?p25 https://www.bilibili.com/video/av6889190?p26 ReverseMe Tutorial.zip&#xff1a;https://pan.baidu.com/s/1xOUvXqX6lVdcCwQvpql…

Oracle 9i 在 Red Hat 7.1 和 7.2 上的装配

泉源&#xff1a;网海拾贝 本文是我在 Red Hat 7.1 &#xff08;内核版本&#xff1a;2.4.2-2 &#xff09;和 7.2&#xff08;内核版本&#xff1a;2.4.7-10&#xff09; 上装配 Oracle 9i (9.0.1) 数据库的总结&#xff0c;要是需求更多的信息请参考 Oracle 的文档&#xff1…

Guava入门~RemovalListener

RemovalNotification 实现Map.Entry接口 getCause()获取RemovalCause 1.COLLECTED: key或value被垃圾回收&#xff1b; 2.EXPIRED:已过期&#xff1b; 3.EXPLICIT:手动移除&#xff1b; 4.REPLACED:被替换&#xff1b; 5.SIZE:超过了最大限制数量。 package bbejeck.gu…

反调试技术揭秘(转)

在调试一些病毒程序的时候&#xff0c;可能会碰到一些反调试技术&#xff0c;也就是说&#xff0c;被调试的程序可以检测到自己是否被调试器附加了&#xff0c;如果探知自己正在被调试&#xff0c;肯定是有人试图反汇编之类的方法破解自己。为了了解如何破解反调试技术&#xf…

全文解析:面向基于区块链的「机器人经济学」概念中,如何验证自主智能体的行为?...

原文来源&#xff1a;arXiv作者&#xff1a;Konstantin Danilov、Ruslan Rezin、Alexander Kolotov、 Ilya Afanasyev「雷克世界」编译&#xff1a;嗯~是阿童木呀、KABUDA、EVA随着AI技术的发展&#xff0c;自主智能体在速度和精确度方面有了很大的提升&#xff0c;变得更加智能…

Ajax--让网站与时俱进

一。加载数据1.追加Html$(#dictionary).load(a.html);2.操作JavaScript$.getJSON(b.json,function(){});3.加载XML文档$.get(d.xml,function(data){});二。选择数据格式&#xff1a;Html:不需要与其它程序共享数据的情况下&#xff0c;以HTML片段提供外部数据。JSON:数据可重用…

小甲鱼 OllyDbg 教程系列 (十七) : 反调试

小甲鱼 OD 教程&#xff1a;https://www.bilibili.com/video/av6889190?p27 ReverseMe.A.B.C.D 下载地址&#xff1a;https://pan.baidu.com/s/1_aVUa6aDATSpE6bQgc6hLA 提取码&#xff1a;ebo2 [调试篇] 调试篇 - 第二十二讲 - OD使用教程22&#xff08;视频课件试验程序…

一张图看懂微软人工智能

来源&#xff1a;微软科技摘要&#xff1a;对于微软人工智能&#xff0c;你了解多少&#xff1f;是Cortana&#xff1f;是小冰&#xff1f;还是机器翻译&#xff1f;看完下面这张信息图&#xff0c;你会发现你所了解的&#xff0c;很可能只是冰山一角。看完你是否想要立刻参加微…

php中isset() , unnset(), empty()函数

isset()函数 , unnset()函数, empty() 函数是一个语言结构而非函数&#xff0c;因此它无法被变量函数调用。 isset()、empty() 只检测变量&#xff0c;检测任何非变量的东西都将导致解析错误。 后边的语句是错误而且将不会起作用&#xff1a; empty(addslashes($name))。 若想检…

mov 和 lea 的区别有哪些?

From&#xff1a;https://www.zhihu.com/question/40720890?sortcreated 汇编中 mov 和 lea 的区别是什么 &#xff1f;&#xff1a;https://bbs.csdn.net/topics/320046644 lea 是“load effective address”的缩写&#xff0c; 简单的说&#xff0c; lea指令可以用来将一个…

Guava入门~EventBus~Event Publishing示例

Event Publishing示例 public class SimpleTradeExecutor {private EventBus eventBus;public SimpleTradeExecutor(EventBus eventBus) {this.eventBus eventBus;}public void executeTrade(TradeAccount tradeAccount, double amount, TradeType tradeType){TradeAccountEv…

刘强东宣布: 未来京东将减员50%,每天工作3小时!无人公司来了……

来源&#xff1a;全球人工智能摘要&#xff1a;在这个时代&#xff0c;你的工作会背叛你&#xff0c;你的行业会背叛你&#xff0c;你的专业会背叛你&#xff0c;唯一不能背叛你的&#xff0c;是你的认知和你的能力&#xff01;京东目前员工的总数是16万&#xff0c;那么庞大的…

Pycharm 快捷键 整理

From&#xff1a;http://www.cnblogs.com/themost/p/6900370.html Pycharm 版本控制之本地 Git 用法&#xff1a;https://blog.csdn.net/u013088062/article/details/50350520PyCharm 中文指南(Win版)&#xff1a;https://pycharm.iswbm.com/ github&#xff1a;https://github…

区块链的技术简史与未来前景,从互联网进化角度分析

作者&#xff1a;刘锋 互联网进化论作者摘要&#xff1a;区块链是当前科技领域最令人关注的技术之一&#xff0c;如何理解这个新技术&#xff0c;本文从互联网的技术生态、区块链的诞生、比特币的发展&#xff0c;互联网大脑模型的形成多个维度&#xff0c;对区块链技术的优劣和…

Guava入门~EventBus~细粒度订阅

将交易细分为买/卖&#xff1a; public class SellEvent extends TradeAccountEvent {public SellEvent(TradeAccount tradeAccount, double amount, Date tradExecutionTime) {super(tradeAccount, amount, tradExecutionTime, TradeType.SELL);} }public class BuyEvent ext…

转:Python中的文件和目录操作

转自:http://tech.it168.com/a2009/0703/600/000000600339.shtml 【IT168 技术文档】摘要&#xff1a;对于文件和目录的处理&#xff0c;虽然可以通过操作系统命令来完成&#xff0c;但是Python语言为了便于开发人员以编程的方式处理相关工作&#xff0c;提供了许多处理文件和目…