hacktricks/mobile-pentesting/android-app-pentesting/react-native-application.md

4.2 KiB
Raw Blame History

从零开始学习AWS黑客技术成为专家 htARTEHackTricks AWS Red Team Expert

支持HackTricks的其他方式

React Native 应用程序分析

要确认应用程序是否基于React Native框架构建请按照以下步骤操作

  1. 使用命令cp com.example.apk example-apk.zip将APK文件重命名为zip扩展名并将其提取到一个新文件夹中。

  2. 转到新创建的ReactNative文件夹并找到assets文件夹。在此文件夹中您应该找到名为index.android.bundle的文件其中包含React JavaScript的压缩格式。

  3. 使用命令find . -print | grep -i ".bundle$"搜索JavaScript文件。

要进一步分析JavaScript代码请在相同目录中创建一个名为index.html的文件,其中包含以下代码:

<script src="./index.android.bundle"></script>

你可以将文件上传到https://spaceraccoon.github.io/webpack-exploder/,或按照以下步骤操作:

  1. 在Google Chrome中打开index.html文件。

  2. 通过按下OS X的Command+Option+JWindows的Control+Shift+J来打开开发者工具栏。

  3. 在开发者工具栏中点击“Sources”。您应该会看到一个JavaScript文件该文件分为文件夹和文件组成了主要的捆绑包。

如果找到名为index.android.bundle.map的文件,则可以以未经缩小的格式分析源代码。映射文件包含源映射,允许您映射缩小后的标识符。

要搜索敏感凭据和端点,请按照以下步骤操作:

  1. 确定要分析JavaScript代码的敏感关键字。React Native应用程序通常使用第三方服务如Firebase、AWS S3服务端点、私钥等。

  2. 在这种特定情况下观察到应用程序正在使用Dialogflow服务。搜索与其配置相关的模式。

  3. 在侦察过程中幸运地在JavaScript代码中找到了敏感的硬编码凭据。

参考资料

从零开始学习AWS黑客技术成为专家 htARTEHackTricks AWS Red Team Expert

支持HackTricks的其他方式