# App Cordova
Impara l'hacking di AWS da zero a eroe con htARTE (HackTricks AWS Red Team Expert)!
Altri modi per supportare HackTricks:
* Se vuoi vedere la tua **azienda pubblicizzata su HackTricks** o **scaricare HackTricks in PDF** Controlla i [**PACCHETTI DI ABBONAMENTO**](https://github.com/sponsors/carlospolop)!
* Ottieni il [**merchandising ufficiale di PEASS & HackTricks**](https://peass.creator-spring.com)
* Scopri [**The PEASS Family**](https://opensea.io/collection/the-peass-family), la nostra collezione di [**NFT esclusivi**](https://opensea.io/collection/the-peass-family)
* **Unisciti al** 💬 [**gruppo Discord**](https://discord.gg/hRep4RUj7f) o al [**gruppo telegram**](https://t.me/peass) o **seguici** su **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Condividi i tuoi trucchi di hacking inviando PR a** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
**Per ulteriori dettagli consulta [https://infosecwriteups.com/recreating-cordova-mobile-apps-to-bypass-security-implementations-8845ff7bdc58](https://infosecwriteups.com/recreating-cordova-mobile-apps-to-bypass-security-implementations-8845ff7bdc58)**. Questo è un riassunto:
Apache Cordova è riconosciuto per consentire lo sviluppo di **applicazioni ibride** utilizzando **JavaScript, HTML e CSS**. Consente la creazione di applicazioni Android e iOS; tuttavia, manca di un meccanismo predefinito per proteggere il codice sorgente dell'applicazione. A differenza di React Native, Cordova non compila il codice sorgente per impostazione predefinita, il che può portare a vulnerabilità di manomissione del codice. Cordova utilizza WebView per renderizzare le applicazioni, esponendo il codice HTML e JavaScript anche dopo essere stato compilato in file APK o IPA. React Native, al contrario, utilizza una VM JavaScript per eseguire il codice JavaScript, offrendo una migliore protezione del codice sorgente.
### Clonare un'applicazione Cordova
Prima di clonare un'applicazione Cordova, assicurarsi che NodeJS sia installato insieme ad altri prerequisiti come Android SDK, Java JDK e Gradle. La documentazione ufficiale di Cordova [documentation](https://cordova.apache.org/docs/en/11.x/guide/cli/#install-pre-requisites-for-building) fornisce una guida completa per queste installazioni.
Considera un'applicazione di esempio chiamata `Bank.apk` con il nome del pacchetto `com.android.bank`. Per accedere al codice sorgente, decomprimere `bank.apk` e navigare nella cartella `bank/assets/www`. Questa cartella contiene il codice sorgente completo dell'applicazione, inclusi file HTML e JS. La configurazione dell'applicazione può essere trovata in `bank/res/xml/config.xml`.
Per clonare l'applicazione, seguire questi passaggi:
```bash
npm install -g cordova@latest
cordova create bank-new com.android.bank Bank
cd bank-new
```
Copia il contenuto di `bank/assets/www` in `bank-new/www`, escludendo `cordova_plugins.js`, `cordova.js`, `cordova-js-src/` e la directory `plugins/`.
Specifica la piattaforma (Android o iOS) durante la creazione di un nuovo progetto Cordova. Per clonare un'app Android, aggiungi la piattaforma Android. Nota che le versioni delle piattaforme Cordova e i livelli delle API Android sono distinti. Consulta la [documentazione](https://cordova.apache.org/docs/en/11.x/guide/platforms/android/) di Cordova per i dettagli sulle versioni delle piattaforme e le API Android supportate.
Per determinare la versione appropriata della piattaforma Cordova Android, controlla il valore `PLATFORM_VERSION_BUILD_LABEL` nel file `cordova.js` dell'applicazione originale.
Dopo aver configurato la piattaforma, installa i plugin necessari. Il file `bank/assets/www/cordova_plugins.js` dell'applicazione originale elenca tutti i plugin e le loro versioni. Installa ogni plugin singolarmente come mostrato di seguito:
```bash
cd bank-new
cordova plugin add cordova-plugin-dialogs@2.0.1
```
Se un plugin non è disponibile su npm, è possibile ottenerlo da GitHub:
```bash
cd bank-new
cordova plugin add https://github.com/moderna/cordova-plugin-cache.git
```
Assicurarsi che tutti i prerequisiti siano soddisfatti prima di compilare:
```bash
cd bank-new
cordova requirements
```
Per creare l'APK, utilizzare il seguente comando:
```bash
cd bank-new
cordova build android — packageType=apk
```
Questo comando genera un APK con l'opzione di debug abilitata, facilitando il debug tramite Google Chrome. È fondamentale firmare l'APK prima dell'installazione, soprattutto se l'applicazione include meccanismi di rilevamento della manipolazione del codice.
### Strumento di automazione
Per coloro che cercano di automatizzare il processo di clonazione, **[MobSecco](https://github.com/Anof-cyber/MobSecco)** è uno strumento consigliato. Semplifica la clonazione delle applicazioni Android, semplificando i passaggi descritti sopra.
Impara l'hacking di AWS da zero a eroe con htARTE (HackTricks AWS Red Team Expert)!
Altri modi per supportare HackTricks:
* Se vuoi vedere la tua **azienda pubblicizzata in HackTricks** o **scaricare HackTricks in PDF** Controlla i [**PACCHETTI DI ABBONAMENTO**](https://github.com/sponsors/carlospolop)!
* Ottieni il [**merchandising ufficiale di PEASS & HackTricks**](https://peass.creator-spring.com)
* Scopri [**The PEASS Family**](https://opensea.io/collection/the-peass-family), la nostra collezione di esclusive [**NFT**](https://opensea.io/collection/the-peass-family)
* **Unisciti al** 💬 [**gruppo Discord**](https://discord.gg/hRep4RUj7f) o al [**gruppo Telegram**](https://t.me/peass) o **seguici** su **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Condividi i tuoi trucchi di hacking inviando PR ai repository github di** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud).