实战案列分析:Crakeme01

2023-11-10

往期推荐

实战:AliCrackme

实战案列:AntiDebug

self-debugging反调试

轮循检测技术

需要样本的朋友,可以【加入此处即可打包获取

先运行软件,观察程序特点,步骤与第八节实战相似,都是运用IDA静态调试与动态调试相结合获取密码,从而进入功能页面,具体操作流程如下。

一: jdax-gui中分析java代码

在xml文件里,找到程序入口点,如下图所示。

在这里插入图片描述

直接查看click,如下图所示。

在这里插入图片描述

此处if的判断与之前分析的AliCreackme不同。先判断它是否为空,如果为空,先弹出对应字符;如果不为空,直接把字符给被Native修饰的方法调用,也就是说,输入字符的对错结果和返回的字符串都在so层处理。

二:IDA中静态分析

1.找到JNI_OnLoad,进入后,如下图所示。

在这里插入图片描述

2.按F5查看伪代码,修改参数类型和名称,如下图所示。

在这里插入图片描述

3.调用一个AD函数,然后是一个if-else判断,如下图所示。

在这里插入图片描述

4.进入AD函数,查看字眼是检测进程,如下图所示。

在这里插入图片描述

5.查看静态注册,搜索后发现没有静态注册的函数,那逻辑的执行部分肯定是在动态注册里,但是动态注册的伪代码里面只识别到两个函数,AD和GetEnv,如下图所示。

在这里插入图片描述

6.查看汇编窗口,除了if里面的两个BL跳转函数之外,下面的else里面还有一个BL跳转函数,而且很明显是4个参数,RegisterNative恰好就是4个参数,如下图所示。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

实战案列分析:Crakeme01 的相关文章

随机推荐

  • 小程序随机生成文字卡片文案海报,带分享保存

    概述 文字随机生成 更换头像 生成卡片 保存卡片 分享卡片 详细 文字随机生成 更换头像 生成卡片 保存卡片 分享卡片 数据是在data js中 随机文案获取 demo直接在微信开发者工具可以运行 index xml 代码
  • python字典中的键是什么_python字典中的键是什么

    字典的键 字典中的值没有任何限制 可以是任意Python对象 即从标准对象到用户自定义对象皆可 但是字典中的键是有类型限制的 1 不允许一个键对应多个值 必须明确一条原则 每个键只能对应一个项 也就是说 一键对应多个值是不允许的 像列表 元
  • 银联商务MISPOS接口开发demo 需要调用POSINF.DLL

    1 接口文档 1 1 无gmc界面接口 dll ocx dll调用 posinf dll 函数名为 int bankall char request char response 其中第一个参数为传入参数 ocx调用 umsocx ocx t
  • Mavenx学习笔记二十二:Maven仓库(从仓库解析依赖的机制)

    Maven仓库 从仓库解析依赖的机制 Maven是根据怎样的规则从仓库解析并使用依赖构件的呢 当本地仓库没有依赖构件的时候 Maven会自动从远程仓库下载 当依赖版本为快照版本的时候 Maven会自动找到最新的的快照 这背后的依赖解析机制可
  • gcc编译提示错误“multiple definition of“

    在做OS实验的过程中 由实验书给出的代码 仍然无法通过编译 查到了很多方法 比如条件编译等等 但经过多次尝试后发现并没有效果 终于在网上找到了一篇能够解决问题的文章 原因是 gcc版本太高 需要降低gcc版本 查看当前gcc版本 gcc v
  • CUDA协作组详解

    CUDA中的协作组 1 协作组简介 Cooperative Groups 是 CUDA 9 中引入的 CUDA 编程模型的扩展 用于组织通信线程组 协作组允许开发人员表达线程通信的粒度 帮助他们表达更丰富 更有效的并行分解 从历史上看 CU
  • 关于C++中的条件编译

    2019独角兽企业重金招聘Python工程师标准 gt gt gt C 中的条件编译 分为三种形式 分别如下 1 ifdef define name else endif 这种形式的条件编译 意思大概就是 如果定义了宏define name
  • Typora+PicGo-Core+腾讯云COS 图床配置教程

    typora PicGo Core 腾讯云COS 图床配置教程 前言 1 typora PicGo Core 腾讯云COS 图床 分别是什么 为什么把他们组合在一起 typoa是一个能做Markdown的一个软件 我们可以在里面编辑文本 添
  • 掌优始终坚持技术价值与社会价值并重

    上公交车时无需任何操作 乘客只需将脸对准智能人脸识别设备即可 刷脸乘车 已不是新鲜事 全国各省市都在紧锣密鼓地推进 智慧交通 的建设 在我国上海 北京 济南 广州等地区 乘客可以直接在地铁站的人脸识别终端或自助票务机进行注册和拍照上传 之后
  • Redfish接口测试

    Redfish接口测试 1 Postman使用 2 登录BMC 获取session 3 获取服务器资产信息 4 服务器上下电 5 创建BMC用户 6 删除BMC用户 7 获取指定BMC用户的信息 8 修改指定BMC用户信息 9 获取指定BM
  • SpringBoot 集成XxlJob定时任务使用过程

    POM文件
  • git 文件恢复与项目还原:008

    1 文件恢复 将文件恢复到上一次提交的状态 注意 新建且没有提交的文件无法使用文件恢复 命令 git checkout 文件名 假如我们的一开始是这样的 这是没有报错的状态文件 然后我添加了一段内容 比如我添加这段内容项目报错了 我需要恢复
  • 静态和动态代码分析之间有什么区别,您如何知道使用哪个?

    让我们从体育类比开始 以帮助说明这两种方法之间的区别 静态代码分析类似于使用练习网和投球机练习棒球挥杆 几乎没有什么惊喜 经过几次挥杆后 您确切地知道每次球都在哪里 这有助于基础知识的工作 并确保您具有良好的状态 虽然这有助于改善您的游戏
  • MySQL-数据类型

    MySQL 数据类型 数值类型 bit tinyint float decimal 字符串和文本类型 char varchar blob text 日期和时间类型 enum 枚举类型 set 集合类型 数值类型 数据类型 说明 bit M
  • 色彩搭配

    颜色搭配 http www icoa cn a 512 html 渐变色 http www mgzxzs com tmtbzxjc 2366 html 做设计的朋友 特别是新手 很难掌握色彩的搭配 比如我自己就有时候调的颜色感觉不太舒服 从
  • Python 基础知识3 运算符

    Python运算符 a 21 b 10 c 0 c a print c c a print c c a print c c 2 c 3 取c的三次方 print c c 2 c a 取余 print c c a 向下取整 print c 位
  • 武汉大学计算机假期有什么活动,关于2018年“中秋节、国庆节”学生放假的通知...

    各学生班 根据学校 关于2018年部分节假日安排的通知 2018年中秋节放假时间为 9月24日放假 与周末连休 国庆节放假调休时间为 10月1日 10月7日 在放假期间 各位同学要严格按照学校和学院的要求 确保人身 财产和交通安全 愉快地度
  • R语言错误信息及相关解决方法

    原创 黄小仙 Error object of type closure is not subsettable 对象大于被取子集 看看对象是不是空的 有时候文件路径或者名称不对 数据并没有导入成功 Remove duplicates befo
  • orcad capture学习笔记---4.生成网表

    1 进行DRC检查完成之后就可以生产网表 操作如下 图1 图2 2 然后在Rreate Netliset界面下先勾选 Create PCB Editor Netlist 软件默认这项是勾选上的 然后网表会默认保存在allegro文件夹下 如
  • 实战案列分析:Crakeme01

    往期推荐 实战 AliCrackme 实战案列 AntiDebug self debugging反调试 轮循检测技术 需要样本的朋友 可以 加入此处即可打包获取 先运行软件 观察程序特点 步骤与第八节实战相似 都是运用IDA静态调试与动态调