4.7 KiB
{% hint style="success" %}
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Support HackTricks
- Check the plans d'abonnement!
- Rejoignez le 💬 groupe Discord ou le groupe telegram ou suivez nous sur Twitter 🐦 @hacktricks_live.
- Partagez des astuces de hacking en soumettant des PRs aux HackTricks et HackTricks Cloud dépôts github.
Analyse de l'application React Native
Pour confirmer si l'application a été construite sur le framework React Native, suivez ces étapes :
-
Renommez le fichier APK avec une extension zip et extrayez-le dans un nouveau dossier en utilisant la commande
cp com.example.apk example-apk.zip
etunzip -qq example-apk.zip -d ReactNative
. -
Naviguez vers le dossier ReactNative nouvellement créé et localisez le dossier assets. À l'intérieur de ce dossier, vous devriez trouver le fichier
index.android.bundle
, qui contient le JavaScript React dans un format minifié. -
Utilisez la commande
find . -print | grep -i ".bundle$"
pour rechercher le fichier JavaScript.
Pour analyser davantage le code JavaScript, créez un fichier nommé index.html
dans le même répertoire avec le code suivant :
<script src="./index.android.bundle"></script>
Vous pouvez télécharger le fichier sur https://spaceraccoon.github.io/webpack-exploder/ ou suivre ces étapes :
-
Ouvrez le fichier
index.html
dans Google Chrome. -
Ouvrez la barre d'outils de développement en appuyant sur Command+Option+J pour OS X ou Control+Shift+J pour Windows.
-
Cliquez sur "Sources" dans la barre d'outils de développement. Vous devriez voir un fichier JavaScript qui est divisé en dossiers et fichiers, constituant le bundle principal.
Si vous trouvez un fichier appelé index.android.bundle.map
, vous pourrez analyser le code source dans un format non minifié. Les fichiers de carte contiennent un mappage source, ce qui vous permet de mapper des identifiants minifiés.
Pour rechercher des informations d'identification sensibles et des points de terminaison, suivez ces étapes :
-
Identifiez des mots-clés sensibles pour analyser le code JavaScript. Les applications React Native utilisent souvent des services tiers comme Firebase, les points de terminaison de service AWS S3, des clés privées, etc.
-
Dans ce cas spécifique, l'application a été observée en train d'utiliser le service Dialogflow. Recherchez un modèle lié à sa configuration.
-
Il a été chanceux que des informations d'identification sensibles codées en dur aient été trouvées dans le code JavaScript lors du processus de reconnaissance.
Références
{% hint style="success" %}
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Support HackTricks
- Check the subscription plans!
- Join the 💬 Discord group or the telegram group or follow us on Twitter 🐦 @hacktricks_live.
- Share hacking tricks by submitting PRs to the HackTricks and HackTricks Cloud github repos.