7.2 IDA 破解实例

目录

一、实验环境

二、实验步骤


一、实验环境

        本实验操作系统为Windows 7,所需要的软件有:

  • IDA64位
  • 静态反编译工具C32 ASM
  • Android 逆向助手
  • 7Z
  • DexFixer
  • 雷电模拟器
  • crackme0502.apk

二、实验步骤

1、打开Android 逆向助手,选中“dex转jar”按钮,将crackme0502.apk导入Android 逆向助手。

        点击“操作”,完成转换。

2、进行IDA分析。将crackme0502.apk扩展名由apk改为zip,然后解压缩包,得到classes.dex文件,并将classes.dex导入IDA中。

3、切换到exports选项卡,通过搜索,找到“MainActivity$2.onClick@VL”函数。

 

 4、双击“MainActivity$2.onClick@VL”函数进入操作界面。

 5、按空格键切换到IDA的流程视图。

         通过流程图,我们可以看到:代码的关键是if-eqz v2这条语句,通过更改这条语句的判断逻辑,即可达到破解的目的。

6、将光标定位到if-eqz v2上,单击Hex View-1标签,切换到十六进制处,可以看到if-eqz v2的字节码为“38 02 0F 00”,地址为“0002D0BE”。

 7、将classes.dex文件导入C32 ASM中,以十六进制打开,并跳转到0002D0BE处,将38改为39.

 8、保存修改后的文件,使用dexfixer对该dex文件进行重新校验,具体做法:直接将该文件拖入dexfixer中。

         注意:在windows 7中运行不了dexfixer,需要用windows xp完成这一步。

9、将修复好的classes.dex文件放到原来的文件夹,并且删除之前的签名文件夹META-INF,然后将所有文件压缩到一个压缩包下。

10、将生成的zip文件改扩展名,由zip改为apk。然后打开Android逆向助手,对该APK文件重新签名,得到crackme_sign.apk文件。

11、在雷电模拟器中安装生成的apk文件。

 12、运行安装的apk文件,直接单击“检测注册码”按钮,提示“注册码正确”。

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Q版缓冲区溢出教程 目录 写在前面 2 目录 4 前言 6 作者简介 6 主要角色简介 6 阅读指南 6 第一章、Windows下堆栈溢出入门 8 1.1 梦,已经展开 8 1.2 啤酒和杯子――缓冲区溢出原理 8 1.3 神秘的Windows系统 10 1.4 ShellCode编写简介 17 1.5 窥豹一斑――本地缓冲区溢出简单利用 21 1.6 小结——摘自小强的日记 28 1.7 首次实战――FoxMail溢出漏洞编写 29 1.8 牛刀小试――Printer溢出漏洞编写 41 1.9 JMP /CALL EBX——另一种溢出利用方式 42 1.10 拾阶而上——IDA/IDQ溢出漏洞编写 55 课后解惑 58 第二章、Windows下ShellCode编写初步 60 2.1 ShellCode是什么? 60 2.2 简单的例子——编写控制台窗口的ShellCode 63 2.3 ShellCode通用性的初步分析 78 2.4 弹出Windows对话框ShellCode的编写 82 2.5 添加用户ShellCode的编写 88 课后解惑 98 第三章、后门的编写和ShellCode的提取 100 3.1 预备知识 101 3.2 后门总体思路 121 3.3 Telnet后门的高级语言实现 125 3.4 生成ShellCode 136 3.5 进一步的探讨 156 3.6 反连后门ShellCode的编写 160 课后解惑 166 第四章 Windows下堆溢出利用编程 168 4.1 堆溢出初探 168 4.2 RtlAllcoateHeap的失误 170 4.3 实例——Message堆溢出漏洞的利用 191 4.4 RtlFreeHeap的失误 197 4.5 堆溢出的其他利用方式 204 4.6 实例——JPEG处理堆溢出漏洞的利用 208 课后解惑 215 第五章 ShellCode变形编码大法 217 5.1 为什么要编码 217 5.2 简单的编码——异或大法 221 5.3 简便的变形——微调法 231 5.4 直接替换法 233 5.5 字符拆分法 239 5.6 内存搜索法 247 5.7 搜索实例——Serv_U漏洞的利用 249 5.8 “计算与你同行”—— Computing & Society 257 课后解惑 258 第六章 ShellCode编写高级技术 260 6.1 通用ShellCode的编写 260 6.2 ShellCode的高效提取技巧 285 6.3 ShellCode的高级功能 294 课后解惑 305 第七章、漏洞的发现、分析和利用 308 7.1 CCProxy 漏洞的分析 308 7.2 黑盒法探测漏洞和Python脚本 319 7.3 白盒法和IDA分析漏洞 333 尾声 347
iOS应用逆向工程(第2版) 第一部分 概 念 篇 第1章 iOS逆向工程简介 3 1.1 iOS逆向工程的要求 3 1.2 iOS应用逆向工程的作用 4 1.2.1 安全相关的iOS逆向工程 5 1.2.2 开发相关的iOS逆向工程 6 1.3 iOS应用逆向工程的过程 7 1.3.1 系 统分析 7 1.3.2 代码分析 8 1.4 iOS应用逆向工程的工具 8 1.4.1 监测工具 9 1.4.2 反汇编工具 9 1.4.3 调试工具 10 1.4.4 开发工具 11 1.5 小结 11 第2章 越狱iOS平台简介 12 2.1 iOS系统结构 12 2.1.1 iOS目录结构简介 13 2.1.2 iOS文件权限简介 16 2.2 iOS二进制文件类型 17 2.2.1 Application 17 2.2.2 Dynamic Library 20 2.2.3 Daemon 20 2.3 小结 22 第二部分 工 具 篇 第3章 OSX工具集 25 3.1 class-dump 25 3.2 Theos 27 3.2.1 Theos简介 27 3.2.2 安装Theos 28 3.2.3 Theos用法介绍 30 3.2.4 Theos开发tweak示例 51 3.3 Reveal 53 3.4 IDA 57 3.4.1 IDA简介 57 3.4.2 IDA使用说明 58 3.4.3 IDA分析示例 68 3.5 iFunBox 71 3.6 dyld_decache 72 3.7 小结 73 第4章 iOS工具集 74 4.1 CydiaSubstrate 74 4.1.1 MobileHooker 74 4.1.2 MobileLoader 84 4.1.3 Safe mode 84 4.2 Cycript 85 4.3 LLDB与debugserver 89 4.3.1 LLDB简介 89 4.3.2 debugserver简介 90 4.3.3 配置debugserver 90 4.3.4 用debugserver启动或附加进程 91 4.3.5 LLDB的使用说明 92 4.3.6 LLDB使用小提示 107 4.4 dumpdecrypted 107 4.5 OpenSSH 111 4.6 usbmuxd 112 4.7 iFile 113 4.8 MTerminal 114 4.9 syslogd to /var/log/syslog 115 4.10 小结 115 第三部分 理 论 篇 第5章 Objective-C相关的iOS逆向理论基础 119 5.1 tweak在Objective-C中的工作方式 119 5.2 tweak 的编写套路 121 5.2.1 寻找灵感 121 5.2.2 定位目标文件 123 5.2.3 定位目标函数 127 5.2.4 测试函数功能 129 5.2.5 解析函数参数 130 5.2.6 class-dump的局限性 133 5.3 实例演示 133 5.3.1 得到灵感 134 5.3.2 定位文件 135 5.3.3 定位函数 143 5.3.4 测试函数 145 5.3.5 编写实例代码 145 5.4 小结 147 第6章 ARM汇编相关的iOS逆向理论基础 148 6.1 ARM汇编基础 148 6.1.1 基本概念 149 6.1.2 ARM/THUMB指令解读 152 6.1.3 ARM调用规则 159 6.2 tweak的编写套路 161 6.2.1 从现象切入App,找出UI函数 162 6.2.2 以UI函数为起点,寻找目标函数 173 6.3 LLDB的使用技巧 203 6.3.1 寻找函数调用者 203 6.3.2 更改进程执行逻辑 208 6.4 小结 211 第四部分 实 战 篇 第7章 实战1:Characount for Notes 8 215 7.1 备忘录 215 7.2 搭建tweak原型 216 7.2.1 定位Notes的可执行文件 217 7.2.2 class-dump出MobileNotes的头文件 218 7.2.3 用Cycript找到阅览界面及其controller 218 7.2.4 从NoteDisplayController找到当前note对象 220 7.2.5 找到实时监测note内容变化的方法 223 7.3 逆向结果整理 227 7.4 编写tweak 228 7.4.1 用Theos新建tweak工程“CharacountForNotes8” 228 7.4.2 构造CharacountForNotes8.h 229 7.4.3 编辑Tweak.xm 229 7.4.4 编辑Makefile及co
写得比较轻松活泼,而且比较容易理解! 第一章、Windows下堆栈溢出入门 8 1.1 梦,已经展开 8 1.2 啤酒和杯子――缓冲区溢出原理 8 1.3 神秘的Windows系统 10 1.4 ShellCode编写简介 17 1.5 窥豹一斑――本地缓冲区溢出简单利用 21 1.6 小结——摘自小强的日记 28 1.7 首次实战――FoxMail溢出漏洞编写 29 1.8 牛刀小试――Printer溢出漏洞编写 41 1.9 JMP /CALL EBX——另一种溢出利用方式 42 1.10 拾阶而上——IDA/IDQ溢出漏洞编写 55 课后解惑 58 第二章、Windows下ShellCode编写初步 60 2.1 ShellCode是什么? 60 2.2 简单的例子——编写控制台窗口的ShellCode 63 2.3 ShellCode通用性的初步分析 78 2.4 弹出Windows对话框ShellCode的编写 82 2.5 添加用户ShellCode的编写 88 课后解惑 98 第三章、后门的编写和ShellCode的提取 100 3.1 预备知识 101 3.2 后门总体思路 121 3.3 Telnet后门的高级语言实现 125 3.4 生成ShellCode 136 3.5 进一步的探讨 156 3.6 反连后门ShellCode的编写 160 课后解惑 166 第四章 Windows下堆溢出利用编程 168 4.1 堆溢出初探 168 4.2 RtlAllcoateHeap的失误 170 4.3 实例——Message堆溢出漏洞的利用 191 4.4 RtlFreeHeap的失误 197 4.5 堆溢出的其他利用方式 204 4.6 实例——JPEG处理堆溢出漏洞的利用 208 课后解惑 215 第五章 ShellCode变形编码大法 217 5.1 为什么要编码 217 5.2 简单的编码——异或大法 221 5.3 简便的变形——微调法 231 5.4 直接替换法 233 5.5 字符拆分法 239 5.6 内存搜索法 247 5.7 搜索实例——Serv_U漏洞的利用 249 5.8 “计算与你同行”—— Computing & Society 257 课后解惑 258 第六章 ShellCode编写高级技术 260 6.1 通用ShellCode的编写 260 6.2 ShellCode的高效提取技巧 285 6.3 ShellCode的高级功能 294 课后解惑 305 第七章、漏洞的发现、分析和利用 308 7.1 CCProxy 漏洞的分析 308 7.2 黑盒法探测漏洞和Python脚本 319 7.3 白盒法和IDA分析漏洞 333 尾声 347
目录 4 前言 6 作者简介 6 主要角色简介 6 阅读指南 6 第一章、Windows下堆栈溢出入门 8 1.1 梦,已经展开 8 1.2 啤酒和杯子――缓冲区溢出原理 8 1.3 神秘的Windows系统 10 1.4 ShellCode编写简介 17 1.5 窥豹一斑――本地缓冲区溢出简单利用 21 1.6 小结——摘自小强的日记 28 1.7 首次实战――FoxMail溢出漏洞编写 29 1.8 牛刀小试――Printer溢出漏洞编写 41 1.9 JMP /CALL EBX——另一种溢出利用方式 42 1.10 拾阶而上——IDA/IDQ溢出漏洞编写 55 课后解惑 58 第二章、Windows下ShellCode编写初步 60 2.1 ShellCode是什么? 60 2.2 简单的例子——编写控制台窗口的ShellCode 63 2.3 ShellCode通用性的初步分析 78 2.4 弹出Windows对话框ShellCode的编写 82 2.5 添加用户ShellCode的编写 88 课后解惑 98 第三章、后门的编写和ShellCode的提取 100 3.1 预备知识 101 3.2 后门总体思路 121 3.3 Telnet后门的高级语言实现 125 3.4 生成ShellCode 136 3.5 进一步的探讨 156 3.6 反连后门ShellCode的编写 160 课后解惑 166 第四章 Windows下堆溢出利用编程 168 4.1 堆溢出初探 168 4.2 RtlAllcoateHeap的失误 170 4.3 实例——Message堆溢出漏洞的利用 191 4.4 RtlFreeHeap的失误 197 4.5 堆溢出的其他利用方式 204 4.6 实例——JPEG处理堆溢出漏洞的利用 208 课后解惑 215 第五章 ShellCode变形编码大法 217 5.1 为什么要编码 217 5.2 简单的编码——异或大法 221 5.3 简便的变形——微调法 231 5.4 直接替换法 233 5.5 字符拆分法 239 5.6 内存搜索法 247 5.7 搜索实例——Serv_U漏洞的利用 249 5.8 “计算与你同行”—— Computing & Society 257 课后解惑 258 第六章 ShellCode编写高级技术 260 6.1 通用ShellCode的编写 260 6.2 ShellCode的高效提取技巧 285 6.3 ShellCode的高级功能 294 课后解惑 305 第七章、漏洞的发现、分析和利用 308 7.1 CCProxy 漏洞的分析 308 7.2 黑盒法探测漏洞和Python脚本 319 7.3 白盒法和IDA分析漏洞 333
回答: IDA Python是IDA中一个强大的功能,可以通过编写Python脚本来扩展IDA的功能。安装IDA Python的步骤如下:首先,根据自己的IDA版本和Python版本,下载对应的IDAPython包。然后,将IDAPython解压后的Python文件夹内的所有内容覆盖掉IDA原有的Python文件夹。接下来,将IDAPython解压后的Plugins文件夹中的python.plw和python.p64拷贝到IDA原有的Plugins文件夹中。最后,将IDAPython解压后的python.cfg文件拷贝到IDA原有的cfg文件夹中。如果python2.7安装包中没有python27.dll,可以将python26.dll重命名为python27.dll,并确保python的系统位数与IDAPython的系统位数相同。安装完成后,可以通过编写IDA Python脚本来扩展IDA的功能。IDA Python文档提供了相关函数的详细说明,可以在官方网站上获取相关文档。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [IDA 配置python环境,可执行python脚本](https://blog.csdn.net/ayxh0058/article/details/101094191)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *3* [ida使用技巧:ida python](https://blog.csdn.net/m0_52164435/article/details/124878537)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值