未经许可,不得转载。
前言
硬编码凭据是指直接嵌入应用程序源代码中的敏感信息,例如 API 密钥、密钥、用户名或密码。这些凭据通常为了开发便捷而添加,但往往在发布到生产代码或应用路径后被忽视,从而引发严重的安全问题。
本文将分享我的方法论,讲解如何发现并利用硬编码凭据。通过两个真实案例,我将展示硬编码凭据如何导致公司支付系统被接管,以及支持用户聊天账户的完全接管。
在APK中寻找硬编码凭据+账户接管
步骤:
1、下载目标应用程序的 APK 文件。
2、使用反编译工具(如 jadx)解析 APK 文件,并通过 jadx-gui 查看源代码。
3、查找常量部分,手动检视潜在的 API 密钥或密钥值,直到找到相关凭据。
例如,我发现以下凭据常量:
- Secret Key:用于 JWT 签名的密钥。
- Secret ID:JWT 生成时使用的 Key ID (KID)。

起初,这些密钥的用途并不显而易见。在追踪密钥的相关调用方法,并通过 jadx-gui 查看其在其他类中的引用后,我确认了它们的作用:

订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



