微信支付 Android SDK 逆向

简介

按照微信官方开发者网站的描述,微信支付按模式不同有刷卡支付、公众号支付、扫码支付、APP 支付、H5 支付、小程序支付六种。其中,“APP 支付”即商户 APP 调用微信提供的 SDK 调用微信支付模块,商户 APP 会跳转到微信中完成支付,支付完后跳回到商户 APP 内,最后展示支付结果。

本文将介绍 Android 平台上的 APP 支付流程,然后通过逆向工程探究微信在手机端是如何对接口进行认证的。 继续阅读微信支付 Android SDK 逆向

Android DexGuard 混淆指南

简介

DexGuard 是一款付费代码混淆软件,主要功能是对 Java 代码进行混淆,使得反编译后得到的源代码可读性差,从而加大破解的难度。DexGuard 与 Android 上主流的混淆工具 ProGuard 同属一家公司开发,但相比免费的 ProGuard 功能更多,混淆力度也更大。详细异同参考:DexGuard vs. ProGuard

本篇教程将使用 DexGuard 8.1.14 版本,在 Ubuntu 14.04 server 编译环境下对 Android Gradle 工程进行混淆。 继续阅读Android DexGuard 混淆指南

DexGuard 常见问题解决

multidex 错误

Android 对单个工程包含的总方法数有限制,最多是 65535 个。如果工程较大,方法数超过这个数目,就要使用 multidex 技术,否则将会运行错误。multidex 将原来编译出的 dex 文件分割为多个子 dex 文件,APP 运行时再拼接起来。DexGuard 使用自己实现的 multidex 支持,因而使用上需要一些配置。

继续阅读DexGuard 常见问题解决

为什么应用内更新是“恶意行为”?

如截图,如果你去查看 Google Play 的文档,会发现国内十分常见的”应用内更新“居然被定义为:Malicious Behavior( 恶意行为 )。鉴于我见到很多人,包括我们口中所谓的”良心开发者“都不明所以(不排除假装不知:D),更不知道其中的安全隐患,这里我给各位解释下缘由,同时科普下应用安全常识。 继续阅读为什么应用内更新是“恶意行为”?