zoukankan      html  css  js  c++  java
  • 适合新手的160个creakme(四)

    这题没有什么特殊字符串,Delphi写的,使用DeDeDark分析一下,找到几个特殊的事件

    一个是KeyUp

    一个是chkcode

    还有就是中间区域的单击或是双击事件

    直接跟进去这几个函数,然后找比较和跳转指令,就很容易发现,最终决定中间区域是否显示图片的跳转在,panel的单击事件的这里

    直接将这个JNE跳转改成JE就可以实现爆破

    然后从上面的比较指令可以看出,比较的是ESI+30C处的值和85的大小

    然后跟进去每个函数,在chkcode中就可以发现,如果注册码正确,内存[ESI+30C]被赋值0x3E,否则内存[ESI+30C]等于0,内存[ESI+30C]初始值为0;若是注册码正确,在chkcode事件中,内存[ESI+30C]被赋值0x3E,在Panel1DblClick事件(双击矩形阴影进行触发)中被进一步赋值0x85,从而在Panel1Click事件(单击或双击矩形阴影进行触发)中0x0045803B处的指令就不会发生跳转,从而反馈注册成功的信息,最后界面的矩形阴影会被一幅照片取代。

    然后跟踪chkcode可以直接发现它的注册码可以直接在栈上被发现,简单试几个就很容易猜出是下面的字符串,其中name是用户名

    黑头Sun Bird"+str(len(name)+5)+"dseloffc-012-OK"+name

  • 相关阅读:
    IDEA使用
    虚拟机笔记 -- 基础
    虚拟机异常 -- 汇总
    虚拟机笔记 -- 设置静态IP
    虚拟机异常 -- 主机无法ping通虚拟机
    虚拟机笔记 -- 安装配置
    Git-分支命名规范
    SourceTree-Access denied问题解决
    Git初始化基本操作
    SpringBoot2 配置prometheus浏览器访问404
  • 原文地址:https://www.cnblogs.com/likaiming/p/11366967.html
Copyright © 2011-2022 走看看