一.查壳



结果:vb写的,并且无壳

二.运行程序



发现了这个程度调用了vb调用窗口的api。这时有两种方式:

1.再重新调试,运行到有窗口的时候,F12暂停,按ctrl+K,查看dll调用,再数据窗口跟随进入,相应的汇编。

2.中文智能搜索找字符串

以上两种,可以自由选择,哪个方便用哪个。

三.找到对应的字符串后,看看哪里有跳转



找到了这个跳转那么直接改成nop或者jmp,就爆破成功,没什么技术含量讲道理。。

二.注册机算法分析(这个没办法说,自己跟着汇编一步一步的来的,再结合api)耗费时间

我分析思路是,先找到正确的注册码是什么,在向上调试,哪个地方生成了正确的注册码的一部分,跟着汇编一步一步来调试。

注册机代码python版

usename=input("请输入名字")
ulen=len(usename)
tmp=0x17CFB
print(ord(usename[0]))
after=ulen*tmp+ord(usename[0])
print(int(after))

课前总结,这个花费了很多时间,看了很多博客,事实上爆破是很简单的,而分析算法,理解每一步在干什么,从而将注册机写出来,才是我们的最终学习的目标,查阅了vb的api,如果直接跳进去看汇编,感觉就是自己的汇编水平不够,正向的函数,逆向反汇编出来又是怎么样的,正向和逆向脱离不开。

160crackme002的更多相关文章

  1. [反汇编练习] 160个CrackMe之002

    [反汇编练习] 160个CrackMe之002. 本系列文章的目的是从一个没有任何经验的新手的角度(其实就是我自己),一步步尝试将160个CrackMe全部破解,如果可以,通过任何方式写出一个类似于注 ...

随机推荐

  1. 安装beanstalkd队列问题——No package beanstalkd available

    CentOS7.4安装beanstalkd 时无可用源 No package beanstalkd availableError:Nothing to do 可从以下获取:wget /etc/yum. ...

  2. shell脚本编写习惯

    前言:在公众号看一篇比较不错的shell脚本文章,自己学习同时,加一些例子分享下,哪里做得不好,请多多指教哈一.在脚本写注释 1 #脚本的参数 2 #脚本的用途 3 #脚本的注意事项 4 #脚本的写作 ...

  3. webdriver中的等待——主要讲解WebDriverWait()

    webdriver中的等待--主要讲解WebDriverWait() 强制等待:sleep() 隐式等待:implicitly_wait() 显示等待:WebDriverWait() 与until() ...

  4. Docker学习(9) Docker守护进程的配置和操作

  5. MegEngine 框架设计

    MegEngine 框架设计 MegEngine 技术负责人许欣然将带了解一个深度学习框架是如何把网络的定义逐步优化并最终执行的,从框架开发者的视角来看待深度学习. 背景 AI 浪潮一波又一波,仿佛不 ...

  6. GPU上创建目标检测Pipeline管道

    GPU上创建目标检测Pipeline管道 Creating an Object Detection Pipeline for GPUs 今年3月早些时候,展示了retinanet示例,这是一个开源示例 ...

  7. 将HLSL射线追踪到Vulkan

    将HLSL射线追踪到Vulkan Bringing HLSL Ray Tracing to Vulkan Vulkan标志 DirectX光线跟踪(DXR)允许您使用光线跟踪而不是传统的光栅化方法渲染 ...

  8. 『言善信』Fiddler工具 — 13、Fiddler断点功能的使用详解

    目录 1.Fiddler断点的应用 2.断点的分类 3.设置全局断点 (1)设置before Requests全局断点: (2)设置After Responses全局断点: 4.设置局部断点 (1)设 ...

  9. UG_PS Parasolid相关的操作

    Open C UF_PS_ask_current_highest_tagUF_PS_ask_current_partitionUF_PS_ask_entity_partitionUF_PS_ask_j ...

  10. TypeScript 在开发应用中的实践总结

    背景 以前 hybrid app 的移动端开发模式下,H5 和客户端通信的 js sdk 代码使用 js 编写,sdk 方法的说明使用文档输出.对于开发的使用来说,在 IDE 中不能得到友好的参数类型 ...