反编译工具之Jadx
jadx 是一款功能强大的反编译工具,使用起来简单方便(拖拽式操作),不光提供了命令行程序,还提供了 GUI 程序。一般情况下,我们直接使用 GUI 程序就可以了。
jadx 支持 Windows、Linux、 macOS,能够帮我们打开.apk, .dex, .jar,.zip等格式的文件
就比如说我们需要反编译一个 jar 包查看其源码的话,直接将 jar 包拖入到 jadx 中就可以了
安装SDK: https://www.oracle.com/java/technologies/downloads/
[依赖]
java的安装见之前文章,这里就不再述
保证java已经正常安装即可:
java -version # 看到打印安装成功 '''
java version "1.8.0_371"
Java(TM) SE Runtime Environment (build 1.8.0_371-b11)
'''
[安装]
github地址: https://github.com/skylot/jadx/releases
[使用]
1.下载直接解压即可(注意不要放在有中文的路径)
2.把apk直接拖入软件即可
根据关键词搜索对应的代码
常用方式:
1) 在找到某个方法之后, 想要查看他的调用,右键选择"查找用例" 即跳转到过去
2)在资源文件中可以看到启动文件AndroidManifest.xml, 其中信息
包名: package
反混淆
一般情况下,为了项目的安全,我们在打包发布一个 apk 之前都会对其代码进行混淆加密比如用无意义的短变量去重命名类、变量、方法,以免代码被轻易破解泄露。
经过混淆的代码在功能上是没有变化的,但是去掉了部分名称中的语义信息。
为了代码的易读性,我们可以对代码进行反混淆。
在 jadx 中,我们通过 Tools -> Deobfuscation 即可开启反混淆功能。

反编译工具之Jadx的更多相关文章
- 推荐两款好用的反编译工具(Luyten,Jadx)
使用JD-Gui打开单个.class文件,总是报错// INTERNAL ERROR 但当我用jd-gui反编译前面操作获得的jar文件的时,但有一部分类不能显示出来--constants类,仅仅显示 ...
- 【反编译系列】三、反编译神器(jadx)
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 今天在看玩Android网站,搜索反编译的时候,才发现有个更好用的反编译工具.特此记录下. 下载 http://www.wanand ...
- Java Jar源码反编译工具那家强
本文介绍下Java Jar常见的反编译工具,并给出使用感受. 反编译JAR能干什么: 排查问题.分析商业软件代码逻辑,学习优秀的源码思路. JD-GUI 下载地址:http://java-decomp ...
- Java 反编译工具哪家强?对比分析瞧一瞧
前言 Java 反编译,一听可能觉得高深莫测,其实反编译并不是什么特别高级的操作,Java 对于 Class 字节码文件的生成有着严格的要求,如果你非常熟悉 Java 虚拟机规范,了解 Class 字 ...
- apk反编译工具
反编译工具: apktool:资源文件获取,可以提取出图片文件和布局文件进行使用查看 dex2jar:将apk反编译成Java源码(classes.dex转化成jar文件) jd-gui:查看APK中 ...
- eclipse安装反编译工具
身为一名程序员来说,日常最常做的就是编写代码和查看别人写好的源代码了,有时候打开别人写的class文件发现根本不是自己想要的,所以给大家介绍一种eclipse中反编译class文件的工具. 第一步:下 ...
- .net混淆、反编译工具调查
常用的工具列表[比较常见的] 混淆器.加密 Dotfuscator VS默认带的工具,不过是个社区版 强度不大 dotNET Reactor 使用了NativeCode 和混淆的形式 Xenocode ...
- Android反编译工具的使用-Android Killer
今天百度搜索“Android反编译”搜索出来的结果大多数都是比较传统的教程.刚接触反编译的时候,我也是从这些教程慢慢学起的.在后来的学习过程中,我接触到比较方便操作的Android反编译.在这,我将使 ...
- Eclipse反编译工具Jad及插件JadClipse配置
Jad是一个Java的一个反编译工具,是用命令行执行,和通常JDK自带的java,javac命令是一样的.不过因为是控制台运行,所以用起来不太方便.不过幸好有一个eclipse的插件JadClipse ...
- .net 反编译工具
遇到一个需求,做一个专门访问自己网站的浏览器给用户使用,这个浏览器提供登录功能.此时是一个安装在客户端的exe程序,做登录验证要用到webservice,不能将验证逻辑写入exe中,否则客户端可以利用 ...
随机推荐
- MRO, mixin的解读
本文试着将python中类继承中方法解析顺序MRO(method resolution order)和mixin梳理清楚 先MARK 类的继承中,super()的使用还是蛮多讲究的,因为看pytorc ...
- 变“金点子”为“好应用”,合合信息智能文档处理技术助力大学生探索AI创新边界
谈"糖"色变.追求养生.低卡生活--这些热门词汇频频在社交媒体上掀起讨论热潮.有这样一批年轻人不但捕捉到了这些词汇背后真实的用户需求,并且正在利用AI技术寻找解决之道. 近日,&q ...
- Angular 16+ 高级教程 – 谈谈 ASP.NET Core & Angular & React 在业务开发上各自的优势和体验
前言 日常, 我的开发都围绕着 ASP.NET Core 和 Angular. 这篇想聊聊它们各自的特点和解决问题的方式. 以及最重要的, 我们该在什么时候采用何种方案更为妥当. 浅谈项目分类 我一般 ...
- TypeScript – Get Started Advanced (Work with SystemJS)
更新 我本来想 skip 掉 bundler (webpack), 感觉单侧不需要搞那么复杂, 所以用了 TypeScript 自带的 bundle (outFile) + SystemJS. 谁知道 ...
- 【渗透测试】ATT&CK靶场一,phpmyadmin,域渗透,内网横向移动攻略
前言 VulnStack,作为红日安全团队匠心打造的知识平台,其独特优势在于全面模拟了国内企业的实际业务场景,涵盖了CMS.漏洞管理及域管理等核心要素.这一设计理念源于红日安全团队对ATT&C ...
- 【QT性能优化】QT性能优化之QT6框架高性能图形视图框架快速展示百万图元大规模场景
QT性能优化之QT6框架高性能图形视图框架快速展示百万图元大规模场景 简介: 本文展示了使用QT图形视图框架在一个场景中绘制出百万个图元的程序的效果以及源代码:本文还介绍了QT图形视图框架的一些实用功 ...
- KPTI——可以缓解“熔断” (Meltdown) 漏洞的内核新特性
Linux 内核修复办法:内核页表隔离KPTl(kernel page table isolation) 每个进程一张页表变成两张:运行在内核态和运行在用户态时分别使用各自分离的页表 Kernel页表 ...
- uprobe
本章的我们来学习uprobe ,顾名思义,相对于内核函数/地址的监控,主要用于用户态函数/地址的监控.听起来是不是有点神奇,内核怎么监控用户态函数的调用呢?本章的内容包括: 如何使用uprobe 内核 ...
- 精彩回顾|【ACDU 中国行·西安站】数据库主题交流活动成功举办!
2023年12月23日下午,[ACDU 中国行·西安站]在西安天骊君廷大酒店圆满落下帷幕.本次活动由中国数据库联盟(ACDU)联合墨天轮社区,浪潮数据库 及蚂蚁集团 OceanBase 共同主办,特邀 ...
- C# Webapi Filter 过滤器 - 生命周期钩子函数 - Exception Filter 基础
什么是Filter ? 1. 切面编程机制,在 ASP.NET Core 特定的位置执行我们自定义的代码: 2. ASP.NET Core 中的Filter五种类型,Authorization ,fi ...