# Applications Cordova
Apprenez le piratage AWS de zéro à héros avec htARTE (Expert Red Team AWS de HackTricks)!
Autres façons de soutenir HackTricks:
* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)!
* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com)
* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
**Pour plus de détails, consultez [https://infosecwriteups.com/recreating-cordova-mobile-apps-to-bypass-security-implementations-8845ff7bdc58](https://infosecwriteups.com/recreating-cordova-mobile-apps-to-bypass-security-implementations-8845ff7bdc58)**. Ceci est un résumé:
Apache Cordova est reconnu pour permettre le développement d'applications **hybrides** en utilisant **JavaScript, HTML et CSS**. Il permet la création d'applications Android et iOS; cependant, il ne dispose pas d'un mécanisme par défaut pour sécuriser le code source de l'application. Contrairement à React Native, Cordova ne compile pas le code source par défaut, ce qui peut entraîner des vulnérabilités de manipulation de code. Cordova utilise WebView pour rendre les applications, exposant le code HTML et JavaScript même après avoir été compilé en fichiers APK ou IPA. React Native, en revanche, utilise une machine virtuelle JavaScript pour exécuter le code JavaScript, offrant une meilleure protection du code source.
### Clonage d'une application Cordova
Avant de cloner une application Cordova, assurez-vous que NodeJS est installé ainsi que d'autres prérequis tels que le SDK Android, Java JDK et Gradle. La [documentation](https://cordova.apache.org/docs/en/11.x/guide/cli/#install-pre-requisites-for-building) officielle de Cordova fournit un guide complet pour ces installations.
Considérez une application exemple nommée `Bank.apk` avec le nom de package `com.android.bank`. Pour accéder au code source, décompressez `bank.apk` et accédez au dossier `bank/assets/www`. Ce dossier contient l'intégralité du code source de l'application, y compris les fichiers HTML et JS. La configuration de l'application se trouve dans `bank/res/xml/config.xml`.
Pour cloner l'application, suivez ces étapes:
```bash
npm install -g cordova@latest
cordova create bank-new com.android.bank Bank
cd bank-new
```
Copiez le contenu de `bank/assets/www` vers `bank-new/www`, en excluant `cordova_plugins.js`, `cordova.js`, `cordova-js-src/`, et le répertoire `plugins/`.
Spécifiez la plateforme (Android ou iOS) lors de la création d'un nouveau projet Cordova. Pour cloner une application Android, ajoutez la plateforme Android. Notez que les versions de plateforme de Cordova et les niveaux d'API Android sont distincts. Consultez la [documentation](https://cordova.apache.org/docs/en/11.x/guide/platforms/android/) de Cordova pour plus de détails sur les versions de plateforme et les APIs Android prises en charge.
Pour déterminer la version de plateforme Android Cordova appropriée, vérifiez le `PLATFORM_VERSION_BUILD_LABEL` dans le fichier `cordova.js` de l'application d'origine.
Après avoir configuré la plateforme, installez les plugins requis. Le fichier `bank/assets/www/cordova_plugins.js` de l'application d'origine répertorie tous les plugins et leurs versions. Installez chaque plugin individuellement comme indiqué ci-dessous:
```bash
cd bank-new
cordova plugin add cordova-plugin-dialogs@2.0.1
```
Si un plugin n'est pas disponible sur npm, il peut être obtenu depuis GitHub :
```bash
cd bank-new
cordova plugin add https://github.com/moderna/cordova-plugin-cache.git
```
Assurez-vous que toutes les conditions préalables sont remplies avant de compiler :
```bash
cd bank-new
cordova requirements
```
Pour construire l'APK, utilisez la commande suivante :
```bash
cd bank-new
cordova build android — packageType=apk
```
Ce commandement génère un APK avec l'option de débogage activée, facilitant le débogage via Google Chrome. Il est crucial de signer l'APK avant l'installation, surtout si l'application inclut des mécanismes de détection de manipulation de code.
### Outil d'automatisation
Pour ceux qui cherchent à automatiser le processus de clonage, **[MobSecco](https://github.com/Anof-cyber/MobSecco)** est un outil recommandé. Il simplifie le clonage des applications Android, en simplifiant les étapes décrites ci-dessus.
Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge HackTricks AWS)!
Autres façons de soutenir HackTricks:
* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)!
* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com)
* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.