Android逆向分析(反编译)工具ded的使用

简介:

今天使用了ded做逆向分析,瞬间比Apktool高大上了,功能太强大了,不过还有升级版,明天研究。吼吼~

详细内容可以参考这篇论文:A Study of Android Application Security

还有http://siis.cse.psu.edu/ded/index.html


1.安装ded

下载链接:http://siis.cse.psu.edu/ded/downloads/linux/ded-0.7.1

首先下载ded用来重定向 dex 、apk、或者是class文件

为了使用ded你应该下载Jasmin它和ded的可执行文件应该放在同一个目录下。

Jasmin下载链接

http://siis.cse.psu.edu/ded/downloads/jasminclasses-2.4.0.jar

使用ded可以使用:

ded-<version> -d <output dir> <dex/apk file>

例如:

ded-0.7.1 -d ~/samples sample.apk

它会输出class文件,但是是不经过优化的,反编译出的文件很难做追踪。这个时候你可以使用 soot文件来做优化

soot是用来优化类文件的:

下载链接:http://www.sable.mcgill.ca/software/sootall-2.3.0.tar.gz

ded/Soot launcher启动器


Wrapper脚本


2.解压复制文件

首先,解压脚本文件
tar -xf ded-script.tar.gz
它将会产生两个目录一个是名为ded的目录还有一个是包含在ded中的soot目录(ded/soot) 和一个ded.sh脚本

之后将下载的sootall文件解压到soot目录下,使用如下的命令
tar -xf <path_to_soot_archive>/sootall-2.3.0.tar.gz -C <path_to_ded_dir>/ded/soot

之后你需要移动ded,ded-launcher以及 Jasmin到ded目录下
之后需要使用Android的API类,在SDK当中,如果你还没有的话可以参照下面的官网进行安装。http://developer.android.com/sdk/index.html 一旦下载成功你可以选择希望的API等级,例如我们需要的是API 8 那么我们可以到相应的目录下寻找
到android.jar文件到<sdk_directory>/platforms/android-8 把它复制到 ded/android-libs 目录下,如果有其他的需要的类文件你也可以移动他们到 ded/android-libs 文件下。
之后最后得到的目录是这样的:
你可以使用tree ded -L 2命令对照一下你的是否和上面的目录结构是一样的

3.启动ded和soot来执行ded.sh文件
首先你需要给ded文件付一下可执行的权限 chmod a+x ded 这样保证 ded-0.7.1  ded-launcher-0.7.1  ded.sh
可执行,之后使用
./ded.sh -d <output directory> [-o] [-c] <dex/apk file> 命令进行反编译
 -o 表示的是使用soot进行优化,-c表示使用soot即反编译又优化。

有一个缺点就是速度比较慢。使用ded.但是可以得到详细的代码。
相关文章
|
11月前
|
开发框架 前端开发 Android开发
Flutter 与原生模块(Android 和 iOS)之间的通信机制,包括方法调用、事件传递等,分析了通信的必要性、主要方式、数据传递、性能优化及错误处理,并通过实际案例展示了其应用效果,展望了未来的发展趋势
本文深入探讨了 Flutter 与原生模块(Android 和 iOS)之间的通信机制,包括方法调用、事件传递等,分析了通信的必要性、主要方式、数据传递、性能优化及错误处理,并通过实际案例展示了其应用效果,展望了未来的发展趋势。这对于实现高效的跨平台移动应用开发具有重要指导意义。
1014 4
|
8月前
|
JavaScript 前端开发 Android开发
【03】仿站技术之python技术,看完学会再也不用去购买收费工具了-修改整体页面做好安卓下载发给客户-并且开始提交网站公安备案-作为APP下载落地页文娱产品一定要备案-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
【03】仿站技术之python技术,看完学会再也不用去购买收费工具了-修改整体页面做好安卓下载发给客户-并且开始提交网站公安备案-作为APP下载落地页文娱产品一定要备案-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
225 13
【03】仿站技术之python技术,看完学会再也不用去购买收费工具了-修改整体页面做好安卓下载发给客户-并且开始提交网站公安备案-作为APP下载落地页文娱产品一定要备案-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
|
3月前
|
存储 Android开发 数据安全/隐私保护
Thanox安卓系统增加工具下载,管理、阻止、限制后台每个APP运行情况
Thanox是一款Android系统管理工具,专注于权限、后台启动及运行管理。支持应用冻结、系统优化、UI自定义和模块管理,基于Xposed框架开发,安全可靠且开源免费,兼容Android 6.0及以上版本。
192 4
|
4月前
|
Android开发
安卓硬改一键新机工具,一键修改手机型号,串号网卡Imei、sn码【仅供学习参考】
声明部分:仅供学习参考使用,基于Xposed框架实现的设备信息伪装模块的完整代码,包含多个功能模块:
|
4月前
|
编解码 自然语言处理 Java
安卓改机工具免root,一键过设备检测,串号SN码【jar即可实现】
本项目通过Hook系统API实现设备信息的拦截与修改,主要功能包括动态更改IMEI/SN等设备标识。核心技术基于Xposed框架(免Root可用VirtualXposed)
|
3月前
|
监控 Android开发 数据安全/隐私保护
批量发送短信的平台,安卓群发短信工具插件脚本,批量群发短信软件【autojs版】
这个Auto.js脚本实现了完整的批量短信发送功能,包含联系人管理、短信内容编辑、发送状态监控等功能
|
3月前
|
API 开发工具 Android开发
qq虚拟视频插件下载安装手机版, 安卓虚拟视频插件,替换摄像头工具
Xposed入口模块:拦截目标应用的相机调用‌23 Camera1 API处理:通过PreviewCallback替换视频流‌1 Camera2 API适
|
4月前
|
存储 JSON API
安卓ck提取工具,可提取手机cookie插件,AUTOJS即可实现
怎么用autojs提取手机端的CK?其实autojs是支持提取ck的但是他提取的不是浏览器的CK,二十他自身浏览器环境的c
|
4月前
|
Java Android开发
安卓手机硬改工具, 设备型号修改神器, 安卓硬改一键新机
通过Java创建可执行JAR来修改安卓设备信息。核心功能包括读取系统属性
|
11月前
|
安全 Android开发 数据安全/隐私保护
深入探讨iOS与Android系统安全性对比分析
在移动操作系统领域,iOS和Android无疑是两大巨头。本文从技术角度出发,对这两个系统的架构、安全机制以及用户隐私保护等方面进行了详细的比较分析。通过深入探讨,我们旨在揭示两个系统在安全性方面的差异,并为用户提供一些实用的安全建议。

热门文章

最新文章