做Android开发的程序员对反编译都比较痛恨,不想让自己的劳动成果成了别人的,反编译主要的目的在于学习。利用反编译进行相关的汉化或修改,都是不道德的。
这段时间在学Android应用开发,在想既然是用Java开发的应该很好反编译从而得到源代码吧,google了一下,确实很简单,以下是我的实践过程。
下载地址: https://ibotpeaches.github.io/Apktool/
这段时间在学Android应用开发,在想既然是用Java开发的应该非常好反编译从而得到源码吧,google了一下,确实非常easy,下面是我的实践过程。
下载:https://github.com/skylot/jadx/releases/tag/v1.0.0
学习 Android 安全 , 首先要了解常用的破解 Android 应用的方式 , 本篇博客中简单介绍了破解 Android 应用的
前一阵子写了这么一款蓝队分析辅助工具箱,没想到下载量还挺大。于是就抽出时间修复了一些bug,还新增了很多功能。“蓝队分析辅助工具箱”就是把我平时写的蓝队小工具集合起来形成的,重点解决蓝队分析工作中的一些痛点,比如说让大家头疼的冰蝎、哥斯拉加密数据包解密问题、netstat -an返回结果中ip无对应的物理地址问题、各种编码/解码问题、内存马解码及Becl反编译问题等,未来会持续更新(文末有此工具的下载地址)。
在日常测试开发过程中,特别是跟客户端相关的业务,肯定会遇到需要查看应用源码的需求,今天来给大家推荐一款超级好用的Android反编译神器——JADX。
通过调用Intellij Idea、CFR、Procyon、JD-Core、JDK等5种反编译工具接口,分别对Base64加密的class文件、转成Byte数组的class文件、BECL编码的class文件、Base64编码+Gzip编码的class文件、原版class文件反编译成java代码,方便蓝队人员分析异常流量中的内存马代码。
LZ-Says:学习之路,似乎枯燥乏味,唯有耐着性子,独自前行,当光明笼罩的那一刻,一切,也仿佛明亮了许多。
某天下班后,我在家里进行电话面试,问到面试者这样一个问题:"你知道使用哪些办法可以反编译Java代码吗?"。但是面试者回答的并不好,所以我在面试评价中写到:"对编译原理相关知识理解的不透彻"。这时,女朋友看到这句话。
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
在过去,当我们想要了解一个 app 内部运作细节时,往往先通过 ApkTool 反编译 APK,生成 smali 格式的反汇编代码[1],然后大佬和老手直接阅读 smali 代码,适当的进行修改、插桩、调试,经过一定的经验和猜想,理解程序的运行逻辑和加解密细节,比如如下的 smali 代码。
技术群里有一个老铁分享了一段 commons-lang 的 StringUtils 工具类的代码:
混淆是一种通过修改程序的源代码或二进制代码,在保障程序的功能不变的基础上,使得代码难以阅读和理解的技术。在Java中,混淆通常用于防止对源代码的逆向工程,从而保护知识产权和商业秘密。常见的Java混淆工具包括ProGuard和JGuard等。这些工具可以自动地对Java字节码进行混淆。
本文主要介绍4个Java的反编译工具:javap、jad和cfr以及可视化反编译工具JD-GUI
大家好,我是ABC_123。在日常的工作学,ABC_123写了很多的蓝队分析方面的小脚本小工具,来回切换工具太麻烦,对于内存马的编译、反编译、各种编码解码尤其麻烦,于是将这些小工具集合起来形成了现在的“蓝队分析研判工具箱”,重点解决蓝队分析工作中的一些痛点问习中题。
https://github.com/skylot/jadx Star 13804
Java 7中,switch的参数可以是String类型了,这对我们来说是一个很方便的改进。到目前为止switch支持这样几种数据类型:byte short int char String 。但是,作为一个程序员我们不仅要知道他有多么好用,还要知道它是如何实现的,switch对整型的支持是怎么实现的呢?对字符型是怎么实现的呢?String类型呢?有一点Java开发经验的人这个时候都会猜测switch对String的支持是使用equals()方法和hashcode()方法。那么到底是不是这两个方法呢?接下来我们就看一下,switch到底是如何实现的。
本文介绍了学习Android应用安全系列文章中的注意事项,包括建议下载的Appie版本、drozer启动过程、设置网络以及登录页面绕过等。此外,还介绍了测试android应用安全常用工具,包括adb、drozer、apktool和dex2jar等。
2020 年写了很多事故解决的文章,并不是我绞尽脑汁想出来的,而是真的遇到了这些问题。通过文章的方式记录下来,分享出去,才有意义。
大家好,我是ABC_123。“蓝队分析研判工具箱”就是把我平时写的蓝队小工具集合起来形成的,重点解决蓝队分析工作中的一些痛点问题。此0.72版本添加溯源分析功能、网空资产测绘功能:包括Hunter、佛法、VirusTotal、Censys、Shadon、Zoomeye、Quake、微步威胁情报搜索功能,查看图片经纬度地理位置等功能,对所有文本框添加右键菜单,解决Linux、mac及jdk高版本兼容问题,很多其它功能如日志分析、聚合分析、接口查询由于时间关系未能完成,后续再继续更新。文末会给出ABC_123的官方Github下载地址,后续会持续在github发布该工具的最新版本。
usage: apktool -advance,--advanced prints advance information. -version,--version prints the version then exits usage: apktool if|install-framework [options] <framework.apk> -p,--frame-path <dir> Stores framework files into <dir>. -t,--tag <tag> Tag frameworks using <tag>. usage: apktool d[ecode] [options] <file_apk> -f,--force Force delete destination directory. -o,--output <dir> The name of folder that gets written. D -p,--frame-path <dir> Uses framework files located in <dir>. -r,--no-res Do not decode resources. -s,--no-src Do not decode sources. -t,--frame-tag <tag> Uses framework files tagged by <tag>. usage: apktool b[uild] [options] <app_path> -f,--force-all Skip changes detection and build all fi -o,--output <dir> The name of apk that gets written. Defa -p,--frame-path <dir> Uses framework files located in <dir>.
大家好,我是ABC_123。“蓝队分析研判工具箱”就是把我平时写的蓝队小工具集合起来形成的,重点解决蓝队分析工作中的一些痛点问题。此版本添加溯源分析功能、佛法shadon搜索功能、查看图片经纬度地理位置等功能,对所有文本框添加右键菜单,解决mac及jdk高版本兼容问题,很多其它功能如日志分析、聚合分析、接口查询由于时间关系未能完成,后续再继续更新。
在Kotlin中,一个非常好用的特性是:可以直接使用控件 ID 对控件进行操作,而不需要像 Java 中那样先声明控件,使用 findViewById() 来找到控件,然后才能操作该控件。该特性称为Static Layout Import,即静态布局引入。
乌鸦安全的技术文章仅供参考,此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等(包括但不限于)进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失,均由使用者本人负责。
JDK:Java Development Kit是Java的开发工具包,JDK包含了JRE,同时还包含了编译java源码的编译器javac,还包含了很多java程序调试和分析的工具。
一个新特性的出现必然是为了解决之前遗留的开发问题和提升目前开发效率。扩展函数也是如此。
大家好,我是ABC_123。“蓝队分析研判工具箱”就是把我平时写的蓝队小工具集合起来形成的,重点解决蓝队分析工作中的一些痛点问题。此0.81版本支持哥斯拉webshell全部14种加密流量的解密,感谢"小黑"的帮助,添加溯源分析功能、网空资产测绘功能:包括Hunter、佛法、VirusTotal、Censys、Shadon、Zoomeye、Quake、微步威胁情报搜索功能,查看图片经纬度地理位置等功能,对所有文本框添加右键菜单,解决Linux、mac及jdk高版本兼容问题,很多其它功能如日志分析、聚合分析、接口查询由于时间关系未能完成,后续再继续更新。文末会给出ABC_123的官方Github下载地址,后续会持续在github发布该工具的最新版本。
大家好,我是ABC_123。“蓝队分析研判工具箱”就是把我平时写的蓝队小工具集合起来形成的,重点解决蓝队分析工作中的一些痛点问题。此0.83版本重点解决IPv6的支持问题,支持哥斯拉webshell全部14种加密流量的解密,感谢"小黑"的帮助,添加溯源分析功能、网空资产测绘功能:包括Hunter、佛法、VirusTotal、Censys、Shadon、Zoomeye、Quake、微步威胁情报搜索功能,查看图片经纬度地理位置等功能,对所有文本框添加右键菜单,解决Linux、mac及jdk高版本兼容问题,很多其它功能如日志分析、聚合分析、接口查询由于时间关系未能完成,后续再继续更新。
大家在日常抓包,可能用的比较多的是burpsuite,对于我个人而言,我有时也会遇到这款工具,charles,下载地址是:https://www.charlesproxy.com/ 。工具使用不是本文重点。
0x01前言 这年头,apk全都是加密啊,加壳啊,反调试啊,小伙伴们表示已经不能愉快的玩耍了。静态分析越来越不靠谱了,apktool、ApkIDE、jd GUI、dex2jar等已经无法满足大家的需求了。那么问题就来了,小伙伴们真正需要的是什么?好的,大家一起呐喊出你内心的欲望吧,我们的目标是——“debug apk step by step”。 0x02那些不靠谱的工具 先来说说那些不靠谱的工具,就是今天吭了我小半天的各种工具,看官上坐,待我细细道来。 2.1 IDA pro IDA pro6.6之后加入
“404星链计划”是知道创宇404实验室于2020年8月开始的计划,旨在通过开源或者开放的方式,长期维护并推进涉及安全研究各个领域不同环节的工具化,就像星链一样,将立足于不同安全领域、不同安全环节的研究人员链接起来。
Maven - 代码混淆proguard-maven-plugin vs 代码加密classfinal
举个例子。针对腾讯视频考虑顺序: 1、网页端:https://v.qq.com/ 2、移动端:https://m.v.qq.com/index.html 3、客户端:通过charles设置代理抓取 4、App
趁着放假,还没什么活,抓紧学,娘的,怎么越学越菜 可以收藏,CSDN要我43积分,有点贵了。来源于CSDN哦 代码阅读IDE 集成开发环境(IDE、Integrated Development Environment)主要用于提供应用程序开发的环境、通常包括编辑器、编译器、调试器等。 Chocolat C++、PHP、Ruby、Haskell https://chocolatapp.com/ Mac OS X Mac系统上一款强大的文本编辑器 Eclipse-aptana PHP、
Android的碎片化不用我说大家都懂的,五花八门。时常应用层开发者痛不欲生,明明在我这里开发时运行没有问题,tm的一上线就出问题。
作者:Longofo@知道创宇404实验室 时间:2022年05月11日 不久前拿到一个使用.NET目标的任务,有段时间exchange连续出了n次洞,一直想系统学下.NET相关的东西,这次遇到了,趁热补一下。能找到入门.NET WEB的并不多或者真不适合入门,还有大部分已经有经验的大佬大多直接进入反序列化或者漏洞分析阶段,好在部门有个搞过.NET的大佬@HuanGMz带了一手,相对没有那么折磨,Java和.NET相似之处太多,从Java上手.NET或者从.NET上手Java应该都挺快。 调试 根据之前弄
之前我好多次谈到:“每一个疑问背后至少有一个知识盲区,隐藏着一次极佳的学习机会”。
字符串,是 Java 中最常用的一个数据类型了。本文主要来介绍一下字符串拼接相关的知识。本文基于jdk1.8.0_181。
https://github.com/icsharpcode/ILSpy#ilspy-------
很多人写文章,喜欢把什么行业现状啊,研究现状啊什么的写了一大通,感觉好像在写毕业论文似的,我这不废话,先直接上几个图,感受一下。 第一张图是在把代码注入到地图里面,启动首页的时候弹出个浮窗,下载网络的图片,苍老师你们不会不认识吧? 第二张图是微信运动步数作弊,6不6? ok,那我们从头说起…… 1.反编译 Android 的反编译,相信大家都应该有所了解,apktool、JEB 等工具。 我们先看一下 Apk 文件的结构吧,如下图: 1.META-INF:签名文件(这个是如何生成的后面会提到)。 2.r
我们在学习一项新技能时,除了认真学习官方的规范、标准和技术文档之外,还需要借鉴和参考其他优秀的产品。新手或独立学习者看到做得好的产品就想学,而往往没有好的学习渠道,因此反编译成为了一个“不太好”但有效的学习方法。闲话少说,以下是从网上搜集加自身成功实践得来的操作步骤,供大家借鉴。 一、环境准备
今天我们要来分享一些关于Java的反编译工具,反编译听起来是一个非常高上大的技术词汇,通俗的说,反编译是一个对目标可执行程序进行逆向分析,从而得到原始代码的过程。尤其是像.NET、Java这样的运行在虚拟机上的编程语言,更容易进行反编译得到源代码。当然,也有一些商业软件,对其程序进行了混淆加密,这样我们就很难用工具反编译了。
领取专属 10元无门槛券
手把手带您无忧上云