2017WHCTF - CRACKME

BUUCTF——CrackMe 反调试操作 主要是反调试而且不是不让你调试,而是加入了很多干扰项,很磨人下面列举出这道的反调试操作上述操作主要集中在函数中。 阅读详情

换个博客地址,换一片心情,换一片领域

这个题本质上没有太大难度,逆向的基本思路:从错误的提示中去寻找注册码的判断地方,反向追溯


错误提示:哎,注册码错了,你得换个新的呦!

这里有个小问题是,错误提示不是硬编码存在程序之中,而是在函数004016A0里通过异或生成的

怎么看出来的呢?

任意输入注册码,停在这个函数这里,发现堆栈里的数据是这些

这些都是硬编码,然后异或出来,就是输出的错误提示


说明:输入了错误的注册码!废话!重点是:程序在这之前已经判断过了这个注册码是否为正确的,需要找到判断的条件和跳转地址

最重要的是调用地址:00401701,00401741。说明呢,在这两个地方调用了错误提示函数,去找这里就好


在00401701和00401741的最前面下断,发现停在了这里

thinkcmf 代码执行 (CVE-2019-7580) 漏洞复现 所有文章,仅供安全研究与学习之用,后果自负! thinkcmf 代码执行 CVE-2019-7580thinkcmf 代码执行 (CVE-2019-7580)0x01 漏洞描述0x02 影响范围0x03 漏洞复现3.1 登录后台3.2 漏洞利用3.2.1webshell3.2 phpinfo3.3 获取系统命令0x04 漏洞修复 thinkcmf 代码执行 (CVE-2019-7580) 复现小心会搞崩环境。 0x01 漏洞描述 ThinkCMF是一款支持Swoole的开源内容管理框架(CMF),基于Thi 阅读详情

相关推荐

使用 MATLAB/Simulink + Reinforcement Learning Toolbox 构建一个基于强化学习的永磁同步电机(PMSM)自适应控制仿真系统

随着人工智能(AI)技术的快速发展,强化学习(Reinforcement Learning, RL)在控制系统中的应用日益广泛。在电机控制领域,传统的PID控制虽然成熟稳定,但在面对非线性、时变、不确定负载等复杂工况时,其控制性能可能受限。而强化学习通过与环境的交互学习,能够实现在线自适应控制策略优化,显著提升系统的鲁棒性与响应速度。本教程将带你使用构建一个基于强化学习的永磁同步电机(PMSM)自适应控制仿真系统,实现从控制策略设计、环境建模、训练到仿真的全过程。当前转速(ω)

amy_mhd的博客 390

逆向异或算法的注册码

跟着NCK大牛的视频学到了求逆向算法的部分,对于我这种小白来说还是比较难的,涉及到了异或算法的逆向,由于对没使用过IDA软件,导致花了有些许时间去填IDA的坑本篇文章记录逆向一个用异或算法来验证注册码的程序,那么首先要了解异或算法的原理及其逆运算。

xf555er的博客 1181

nao机器人抓取程序.rar_NAO 抓取_NAO机器人_dayuds_nao robot_nao抓取

本代码可以使nao机器人实现抓取的动作

160个Crackme029

文章目录查壳分析程序分析算法写出注册机校验结果 查壳 这个Crackme跟027和028是同一个作者,VC6写的,难度为一颗星 分析程序 同样,根据字符串的误提示,来到函数头的位置,配合IDA的伪代码分析整个算法, 分析算法 随便输入一个用户名和序列号,算法的校验过程如下。这个Crackme跟028一样有花指令的干扰,如果想在IDA中看到F5的伪代码,需要手动去除花指令,去除的方法请参考我...

鬼手的博客 642

WHCTF 2017 逆向 CRACKME、BABYRE、EASYHOOK 的解思路

WHCTF 2017 的三道简单逆向 CRACKME、BABYRE、EASYHOOK 的解思路

加号减减号的博客 3806

XCTF 4th-WHCTF-2017-CRACKME

查壳 分析 看图标就猜得出是MFC框架的,不过这次的MFC和之前遇到的不一样。主要是在载入主窗口的方式不一样,导致分析的难度也就不一样。 通过字符串索引,来到载入主窗口那个地方 这是以非模态的方式载入对话框。不管是模态还是非模态,这样的方式都表示着所有的消息处理函数均在类中。而MFC是个大类,所以得需要一些线索才能够找到大海里的那根针。 这个线索正是注册码误时弹出的信息框,并...

qq_41252520的博客 783

CLion注册码算法逆向分析实录

声明 CLion程序版权为jetBrains所有、注册码授权为jetBrains及其付费用户所有,本篇只从兴趣出发,研究其注册码生成算法。 不会释出任何完整的源代码. 网上查了下,已有注册机,所以想要key的同学不要找我:p 背景 打算学习cocos2dx,奈何vim只会ggvG,被jetBrains惯坏了,果然找到了CLion,试了下,果然神器,我等菜鸟正好可以拿来愉快地学习书写c++了。...

weixin_30322405的博客 338

CTF REVERSE】WHCTF2017-CRACKME

1、前言 假装大学生水一下CTF目,常规思路。程序没有加壳,是VC写的MFC程序。 2、破思路 1、MessageBox 下断点 2、找到提示误字符串的函数B 3、跟踪函数 4、跟踪算法 3、实现过程 PEID查询无壳,进IDA查看字符串。 得到这个字符串的一个存放地址,向上跟踪到有这个字符串的地方,依稀可以看到加密后的Flag轮廓。 .data:00403254 aVSIK...

weixin_30873847的博客 395

170916 逆向-WHCTF(BabyRe/CrackMe

1625-5 王子昂 总结《2017年9月16日》 【连续第349天总结】 A. XCTF-Reverse B.CRACKME无壳,C++ 打开是一个简单的输入框和注册按钮 点击注册按钮会弹框“哎,注册码了,你得新的哟!”IDA没有main函数,看起来是MFC写的 查找字符串、断GetDlgText等API都没有结果 说明字符串都被加密过了IDA逐个函数查找,发现有两个函数调用了

whklhhhh的博客 3918

WHCTF2017线上小记

  第四届XCTF开始,首战因素,加上团队刚加入了两个新人的原因,还是决定一块参与一下。水了3。2个RE和1个MISC,照顾新人,写的比较啰嗦。 [MISC] PY-PY-PY  下载目之后是一个pyc文件。使用反编译工具恢复,提示出,编译出来的代码也有问。就怀疑可能有别的东西,翻出了一篇“Python字节码中嵌入Payload的隐写”,下载所述的Stegosaurus利用之。 ...

weixin_30919571的博客 180

逆向学习——注册机

1.在输入一个误的注册码时,软件在比较的时候,正确的注册码可能会出现在附近,这个时候可以用内存编辑软件winhex等或者OD去查找内存,查找内容就是你输入的误的注册码,如果软件作者不注意这点,采用了明码比较,那么就很容易找出真正的注册码 2.使用注册机软件keymake制作注册机,也是需要自己手动分析出正确密码出现的断点(这个适合于明码比较) 3.非明码比较的例子 随便输入: 得到: 这个...

z1041259928的博客 2488

crack you

国庆有一点点时间,把几个月前的工作记录一下。 我最讨厌是留下手尾给我的人,果断处理掉这个人。剩下的工作我花了 2 天处理完了。 就一个 从 内存 dump 出已经自解密后的程序,再从这个 解密后的程序中 逆向找到 注册码的算法 的小 任务,尽管原作用了多种加密手段、小技巧,但 API 的调用却隐藏得不好。 从网上随便下了个 IAT 表修复工具,发现功能不够强大,果断放弃了 dump 出解密后的内存程序,直接把 IDA append 到运行中的程序去逆向。 剩...

joshua2011的专栏 1373

逆向分析CrackMe系列——CrackMe004之注册码算法分析

逆向分析CrackMe系列——CrackMe004注册码算法分析 本文内容承接前面的工作,记录了自己每一步的分析过程和思路,由于内容较长,故单独写一篇。 (本系列的CrackMe资源均来自我爱破解网). 18.通过前面的分析,初步认为生成算法就藏在刚刚的两个死循环中,我们一个一个来分析: 19. 从00457FDC开始单步执行,在00457FDC处将edx指向了 [ebp-C],我们对[ebp-C]进行监控,F8继续执行,发现在call 00423348函数调用后,栈中的数据被改变了,[ebp-C] 的

草草君 1525

2017WHCTF REVERSE babyRE

这个其实比较简单,考察点是GDB调试与逆向分析 拖入OD分析,main无法F5,于是查看汇编代码以及汇编流程图 查看逻辑,很明显字符串的长度为0x0E(14个字符),然后调用了judge函数,判断字符串合法性 然后发现,IDA解析不了judge函数,肯定是有某些绕过静态反汇编的手段,于是开始GDB 直接在scanf的地方下断,开始进入judge的判断单步 注意这里0x4

ACdream 3075

逆向序列号生成算法(三)

接着上次的分析,继续分析下去,对于这个CrackMe,其要求是写出注册机,那么我们就根据其注册码的验证过程,进行逆向分析,首先找到最关键的一个爆破点,我们先看看这个爆破点的位置,如图1可见最后的验证关键点其实在那个MagicNum的值上面,因为用户名是我们给定的,属于已知值,而序列号则是可以由我们构造的也可以认为是已知值,唯一不确定的就是那个MagicNum了,而这个值却跟我们输入的用户名及序列号

AlbertLi 7956

CTF-reverse逆向分析解常用脚本汇总

注:本篇用于记录一些CTF-reverse中可能用上的脚本,脚本都来源于博主解出某道后留下,如果遇上类似的目,根据脚本中注释的提示更改对应的密文密钥或条件即可快速解! 持续更新!!点个收藏关注不迷路~

这个博主不懒,但Ta什么也没写~(私信互关24小时必回) 5054

雕刻机控制软件破解笔记

1.软件注册有 注册号 和 注册码,通过 注册号 可以算出 注册码 例如:注册号为DF5527DD,注册号取反为22D8AA20 设注册码为X (X翻转的意思是12345678变为78563412) X翻转 ^ 7924A5B3 = 22D8AA20 既 22D8AA20 ^ 7924A5B3 = 5BFC0F93 5BFC0F93翻转,则注册码为 930FFC5...

asdf_314159265的博客 8291

逆向ctf-亦步亦趋

一、目来源介绍 目来源于看雪论坛CTF->目要求为: 本Flag值为123456用户的序列号。 二、解过程 万事不要慌,先把软件运行起来康康: 哟呵!这是需要破解的节奏呀!!!由于是exe文件,首先使用exeinfope检查是否存在壳的现象: 查壳工具表明,软件不存在加壳操作。从目查找序列号可以了解到,解方法相当于破解该软件,那就上道具,开启OD整起来,一路F8干就完事了。遇到弹窗不要慌(因为目要求123456用户序列号,所以Username就是...

959

软件加密技术和注册机制

本文是一篇软件加密技术的基础性文章,简要介绍了软件加密的一些基本常识和一些加密产品,适用于国内软件开发商或者个人共享软件开发者阅读参考。 1、加密技术概述 一个密码系统的安全性只在于密钥的保密性,而不在算法的保密性。 对纯数据的加密的确是这样。对于你不愿意让他看到这些数据(数据的明文)的人,用可靠的加密算法,只要破解者不知道被加密数据的密码,他就不可解读这些数据。 但是,软件的加密不同于数据的加密,它只能是“隐藏”。不管你愿意不愿意让他(合法用户,或 Cracker)看见这些数据(软件的明文),软件最终总要

君一席 1334
PangCtf
博客等级 码龄9年 0粉丝 1原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值