0ctf之simple
参考:
http://www.ikey4u.com/blog/0ctf-2015-simpleapk/partB-analysis-solib/
打开AndroidManifest.xml发现android:debuggable="true"
,
因此我们就不用修改什么了,可以直接调试。直接原 apk 上 IDA Pro动态调试即可.一般的我们都会开两个 IDA, 一个用于动态分析,一个用于静态分析.
然后看到入口Activity中有读取flag.txt
然而,读取flag.txt的内容发现并没卵用。
使用Ctrl+ S
打开段选择窗口
看到一个my_init
函数。
进去看一下
它主要包含两个函数,CheckSig()
和j_j_hook()
。
其中CheckStrace()
和CheckPtrace()
应该就是用来反调试的。
CheckPtrace()
注意#35行,
通常在自定义的函数里有异或操作往往说明这里是一个关键
然后将dest[]
数组从.so文件中拷贝出来,需要用WinHex打开.so文件。
找到dest[]
数组对应的偏移量00000240
(需要在IDA中找到char dest[36]
然后双击)。
鼠标右键选择: Edit => Copy Block => C Source
然后这一块选中的就复制到粘贴板上了,然后粘贴出来即可。
粘贴出来之后就是这样的格式。
unsigned AnsiChar data[36] = {0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x70, 0x20, 0x46, 0x00, 0x00, 0x20, 0x46, 0x00, 0x00, 0x20, 0x46, 0x00, 0x00, 0xF8, 0x01, 0x00, 0x00, 0xF8, 0x01, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00
};
然后需要写个小脚本亦或一下。
#coding=utf-8data = [0x00, 0x00, 0x00, 0x00, 0x00, 0x1D, 0x1B, 0x48, 0x2C, 0x0C, 0x24, 0x02, 0x02, 0x09, 0x3A, 0x0B, 0x3B, 0x0E, 0x03, 0x3A, 0x39, 0x0C, 0x08, 0x11, 0x00, 0x00, 0x1A, 0x09, 0x0C, 0x29, 0x20, 0x58, 0x44, 0x00, 0x00]old_flag = "0ctf{Too_Simple_Sometimes_Naive!!!}"def main():flag = []for i in range(len(old_flag)):flag.append(chr(ord(old_flag[i]) ^ data[i]))print "".join(flag)if __name__ == '__main__':main()
其中,
然后发现
参考:https://github.com/toToCW/CTF-Mobile/blob/master/20150CTF/simple-150/WriteUp.md
运行之后,得到了flag
CheckStrace()
通过多层调用,其实还是调用了CheckPtrace()
先看看CheckSig()
0ctf之simple相关推荐
- RabbitMQ 入门系列(11)— RabbitMQ 常用的工作模式(simple模式、work模式、publish/subscribe模式、routing模式、topic模式)
1. simple 模式 simple 模式是最简单最常用的模式 2. work 模式 work 模式有多个消费者 消息产生者将消息放入队列.生产者系统不需知道哪一个任务执行系统在空闲,直接将任务扔到 ...
- Simple NHibernate Architecture[from]
原文地址:http://www.codeproject.com/aspnet/NHibernateArchitecture.asp Download source - 2,523.7 KB Intro ...
- HDU 1757 A Simple Math Problem
Problem Description Lele now is thinking about a simple function f(x). If x < 10 f(x) = x. If x & ...
- Simple Dynamic Strings(SDS)源码解析和使用说明二
在<Simple Dynamic Strings(SDS)源码解析和使用说明一>文中,我们分析了SDS库中数据的基本结构和创建.释放等方法.本文将介绍其一些其他方法及实现.(转载请指明出于 ...
- 《深入理解Android:Wi-Fi,NFC和GPS》章节连载[节选]--第六章 深入理解wi-Fi Simple Configuration...
为什么80%的码农都做不了架构师?>>> 首先感谢各位兄弟姐妹们的耐心等待.本书预计在4月上市发售.从今天开始,我将在博客中连载此书的一些内容.注意,此处连载的是未经出版社编辑 ...
- A simple class to play sound on netcf (part 2)
在实际测试中发现上一片文章(A simple class to play sound on netcf)中介绍的播放声音的类在pda中运行正常,但却无法在pc中工作,简单分析了一下原因,发现是dll的 ...
- Simple Transformer:用BERT、RoBERTa、XLNet、XLM和DistilBERT进行多类文本分类
作者 | Thilina Rajapakse 译者 | Raku 编辑 | 夕颜 出品 | AI科技大本营(ID: rgznai100) [导读]本文将介绍一个简单易操作的Transformers库- ...
- Matplotlib可视化散点图、配置X轴为对数坐标、并使用线条(line)连接散点图中的数据点(Simple Line Plot with Data points in Matplotlib)
Matplotlib可视化散点图.配置X轴为对数坐标.并使用线条(line)连接散点图中的数据点(Simple Line Plot with Data points in Matplotlib) 目录
- Comprehensive anticancer drug response prediction based on a simple cell line drug complex network m
Comprehensive anticancer drug response prediction based on a simple cell line drug complex network m ...
- Could not fetch URL https://pypi.org/simple/pip/
Could not fetch URL https://pypi.org/simple/pip/ 解决办法 更换pip安装源头成阿里云或清华的 在Windows%appdata%/pip/pip.in ...
最新文章
- UVa 10180 - Rope Crisis in Ropeland!
- 计算机虚拟内存的设置
- discuz手机版模板开发
- 关于web.config中customErrors
- 【动态规划】loj#2485. 「CEOI2017」Chase
- maven 笔记,概念
- 【小白学习keras教程】六、基于CIFAR-10数据集训练CNN-RNN神经网络模型
- 杨中科的.NET 6新书的出版进度汇报
- 摩尔斯电码转换python编码_Morse Code 用Python做个摩斯密码转换器
- shell中lsort,uniq,cut,wc,seq命令使用
- 最短路径和最小生成树的区别
- Windows 2008 Core 常用命令
- 多元一次方程组的求解
- 小D课堂 - 零基础入门SpringBoot2.X到实战_第10节 SpringBoot整合定时任务和异步任务处理_43、SpringBoot2.x异步任务实战(核心知识)...
- VS2015 Visual Assist X破解版安装、禁用、卸载方法
- Java设计模式之Adapter模式
- 小白建站教程 腾讯云快速建站教程
- 2016年中国新增装机同比及风电开发分析
- 拉登游戏开发--在时间的积累中寻求美丽图案
- 统计推断——假设检验——方差分析
热门文章
- Git Error---bad signature 0x00000000 index file corrupt
- 国产化操作系统安装OpenJDK Icedtea插件
- 解决Chrome浏览器登录web系统一直报“验证码错误问题“
- 行业边缘丨中国电科发布“海雀”处理器;中科海微获千万融资;联想发布边缘服务器;风河加入CNCF云原生计算基金会成为银牌会员;...
- 华硕raid 0 安装linux,ROG Maxius IX主板技巧篇:组建RAID 0
- 基于遗传算法的新安江模型参数优化率定(二)
- 如何让你的技术团队成员自觉工作
- excel2007/2010中独立显示窗体的方式
- 魅族计算机软件不见了,任务栏不见了
- 设计一个高性能三维渲染服务器,最强大脑-CATIA飞机协同设计制造工作站配置方案2016...