1.you can't find me,

老规矩先打开jeb,然后看下主活动,

发现又调用了mainthread类的startWrites方法,继续跟进去。

发现是新建了一个随机输入流的文件对象,然后新建了很多进程,往这个文件中去输入字符,不过里面是有时间限制的

所以flag应该是根据时间顺序来拼接就好了,

Aol jsvjrdvyr ohz ybzalk Puav h zapmm tvklyu hya zahabl, Whpualk if uhabyl, svhaolk if aol Thzzlz, huk svclk if aol mld. Aol nlhyz zjylht pu h mhpslk ylcpchs: HOL17{IlaalyJyfwaZ4m3vyKpl}

弄出来是这个东西,quipquip安排上,一把梭就出来了

2.aes-decrypt

jeb打开

主要逻辑应该在so层,ida打开一波,发现是静态注册的,直接找java_类名_native方法名

这里其实挺操蛋的,本来java层几行可以解决的问题,在so层就得这么多行。上面一大堆,其实从后面可以看出DA3E0BB0这个函数其实就是做的一个base64加aes解密,这里我也没管,

就是黑盒来用,发现上面一大堆只是为了获取app的签名而已,由于这是java的数组,如果c++要使用需要转换成本地数组,转换后,作为aes的key,iv已经给了,对那个字符串进行解密

至于怎么看出DA3E09E4和58函数的作用的,第一个是发现输入的字符串后,会发生变化,于是跟进去,发现里面有base64字样,只能动调,发现就是base64,然后下一个函数

基本可以从题目中猜出来,一个key和一个iv,恰好符合,剩下其实我也迷茫了,后面看了wp才知道,是需要照猫画虎,将app显示的字符串,按同样的key和iv解密就好了

from Crypto.Cipher import AES
import base64
iv=[ 0x99, 0x3F, 0x76, 0x06, 0xA7, 0x88, 0x1C, 0x67, 0x49, 0x27,
0x66, 0x06, 0x8D, 0xE9, 0xD8, 0xAA
]
key=[
0x00, 0xC2, 0xB2, 0x00, 0xCB, 0xAF, 0xED, 0x4E, 0x14, 0xB3,
0x52, 0x93, 0x56, 0x36, 0xF6, 0x00, 0x65, 0x7C, 0x40, 0x6C,
0xBB, 0x8F, 0x29, 0xC0, 0xA1, 0x4F, 0xBB, 0xEC, 0xB6, 0xAD,
0x8E, 0x54
]
data="+NvwsZ48j3vyDIaMu6LrjnNn8/OAnexGUXn3POeavI8="
flag="T9WoXhrsQHgY3NLr8SwBbw=="
iv=''.join(chr(a) for a in iv)
key=''.join(chr(a) for a in key)
cipher=AES.new(key,AES.MODE_CBC,iv)
plain_data=cipher.decrypt(base64.b64decode(data))
print plain_data
cipher=AES.new(key,AES.MODE_CBC,iv)
plain_data=cipher.decrypt(base64.b64decode(flag))
print plain_data

Android hacking event 2017的更多相关文章

  1. Best Free Hacking E-Books 2017 In PDF Format

    1.Best Free Hacking E-Books 2017 In PDF Format: 电子书籍下载地址 后续我会更新在我的百度云资源 上,需要的留言Black Belt Hacking &a ...

  2. Generate And Play A Tone In Android hacking

    /*********************************************************************************** * Generate And ...

  3. 图解Android - Android GUI 系统 (5) - Android的Event Input System

    Android的用户输入处理 Android的用户输入系统获取用户按键(或模拟按键)输入,分发给特定的模块(Framework或应用程序)进行处理,它涉及到以下一些模块: Input Reader: ...

  4. Android Calander Event

    必须权限 <uses-permission android:name="android.permission.READ_CALENDAR" /> <uses-pe ...

  5. Android 解读Event和Main Log

    1 Android P EventLogTags文件 Android P 9.0.0 所有EventLogTags文件List: system/bt/EventLogTags.logtags syst ...

  6. Android版本分布——2017年5月更新

    Code Name Version API Level Last month This month Change gingerbread(姜饼) 2.3.3——2.3.7 10 0.9% 1.0% 0 ...

  7. 【转】高通平台android 环境配置编译及开发经验总结

    原文网址:http://blog.csdn.net/dongwuming/article/details/12784535 1.高通平台android开发总结 1.1 搭建高通平台环境开发环境 在高通 ...

  8. Android项目实战(二十九):酒店预定日期选择

    先看需求效果图: 几个需求点: 1.显示当月以及下个月的日历 (可自行拓展更多月份) 2.首次点击选择"开始日期",再次点击选择"结束日期" (1).如果&qu ...

  9. Android中Input型输入设备驱动原理分析(一)

    转自:http://blog.csdn.net/eilianlau/article/details/6969361 话说Android中Event输入设备驱动原理分析还不如说Linux输入子系统呢,反 ...

随机推荐

  1. Jsoup_Select 选择器

    Jsoup_Select 选择器 一,概述 可直接解析某个 URL 地址.HTML 文本内容.它提供了一套非常省力的 API,可通过 DOM,CSS 以及类似于 jQuery 的操作方法来取出和操作数 ...

  2. Ubuntu下安装与卸载Nginx

    1.Ubuntu下安装Nginx比较简单 敲入下列命令即可: sudo apt-get update sudo apt-get install nginx 2.Ubuntu下卸载,稍不注意就会入坑 s ...

  3. 浅谈,seata在使用feign-url通过域名调用时分布式事务不生效的问题及解决

    浅谈,seata在使用feign-url通过域名调用时分布式事务不生效的问题及解决 ​ 在前几个月时,我们项目出现了分布式事务的问题,那么什么是分布式事务问题呢,简单的说,我们有俩服务A和B,它们对应 ...

  4. Qt开发技术:图形视图框架(二)场景QGraphicsScene、QGraphicsItem与QGraphicsView详解

    前话   Qt的图形视图框架,最核心的三个类为:QGraphicsScene.QGraphicsItem与QGraphicsView.   基于图形框架的高级白板软件Demo QGraphicsSce ...

  5. Jmeter——元件扩展,使其功能更全面

    工具扩展 在之前的博文中,有介绍自定义函数.Java请求扩展,博文如下: Jmeter二次开发--基于Java请求 Jmeter二次开发--自定义函数 上述内容,是按自己的需要来进行针对性扩展,从而实 ...

  6. 高并发Flask服务部署

    高并发Flask服务部署 AI模型持久化 OOP: 利用面向对象思想,实现算法在内存上的实例化及持久化.即一次模型加载,多次请求调用. class ocr_infer_class(threading. ...

  7. 使用adb命令在模拟器安装apk

    1.adb connect 127.0.0.1:7555 连接网易模拟器地址2.adb devices -L 查看有几个连接端口地址3.执行推送配置文件 命令 adb push 文件 路径

  8. Java 并发基础知识

    一.什么是线程和进程? 进程: 是程序的一次执行过程,是系统运行程序的基本单元(就比如打开某个应用,就是开启了一个进程),因此进程是动态的.系统运行一个程序即是一个程序从创建.运行到消亡的过程. 在 ...

  9. Linkerd 2.10(Step by Step)—2. 自动化的金丝雀发布

    通过结合 Linkerd 和 Flagger 来根据服务指标自动金丝雀(canary)发布,从而降低部署风险. Linkerd 2.10 中文手册持续修正更新中: https://linkerd.ha ...

  10. HTML基本标签及语法

    HTML简介 什么是HTML 本文素材来源于黑马程序员Pink老师 HTML 指的是超文本标记语言(Hyper Text Markup Language) ,它是用来描述网页的一种语言. HTML 不 ...