mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-23 13:13:41 +00:00
77 lines
6.4 KiB
Markdown
77 lines
6.4 KiB
Markdown
# Cordova Apps
|
|
|
|
<details>
|
|
|
|
<summary><strong>Lernen Sie AWS-Hacking von Grund auf mit</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
|
|
|
Andere Möglichkeiten, HackTricks zu unterstützen:
|
|
|
|
* Wenn Sie Ihr **Unternehmen in HackTricks bewerben möchten** oder **HackTricks als PDF herunterladen möchten**, überprüfen Sie die [**ABONNEMENTPLÄNE**](https://github.com/sponsors/carlospolop)!
|
|
* Holen Sie sich das [**offizielle PEASS & HackTricks-Merchandise**](https://peass.creator-spring.com)
|
|
* Entdecken Sie [**The PEASS Family**](https://opensea.io/collection/the-peass-family), unsere Sammlung exklusiver [**NFTs**](https://opensea.io/collection/the-peass-family)
|
|
* **Treten Sie der** 💬 [**Discord-Gruppe**](https://discord.gg/hRep4RUj7f) oder der [**Telegram-Gruppe**](https://t.me/peass) bei oder **folgen** Sie uns auf **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
|
|
* **Teilen Sie Ihre Hacking-Tricks, indem Sie PRs an die** [**HackTricks**](https://github.com/carlospolop/hacktricks) und [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) **GitHub-Repositories** senden.
|
|
|
|
</details>
|
|
|
|
**Weitere Informationen finden Sie unter [https://infosecwriteups.com/recreating-cordova-mobile-apps-to-bypass-security-implementations-8845ff7bdc58](https://infosecwriteups.com/recreating-cordova-mobile-apps-to-bypass-security-implementations-8845ff7bdc58)**. Dies ist eine Zusammenfassung:
|
|
|
|
Apache Cordova ermöglicht die Entwicklung von **hybriden Anwendungen** mit **JavaScript, HTML und CSS**. Es ermöglicht die Erstellung von Android- und iOS-Anwendungen. Es fehlt jedoch ein standardmäßiger Mechanismus zur Sicherung des Quellcodes der Anwendung. Im Gegensatz zu React Native kompiliert Cordova den Quellcode standardmäßig nicht, was zu Schwachstellen bei der Code-Manipulation führen kann. Cordova verwendet WebView zur Darstellung von Anwendungen, wodurch der HTML- und JavaScript-Code auch nach der Kompilierung in APK- oder IPA-Dateien zugänglich ist. React Native hingegen verwendet eine JavaScript-VM zur Ausführung von JavaScript-Code und bietet einen besseren Schutz des Quellcodes.
|
|
|
|
### Klonen einer Cordova-Anwendung
|
|
|
|
Bevor Sie eine Cordova-Anwendung klonen, stellen Sie sicher, dass NodeJS installiert ist, zusammen mit anderen Voraussetzungen wie dem Android SDK, Java JDK und Gradle. Die offizielle Cordova [Dokumentation](https://cordova.apache.org/docs/en/11.x/guide/cli/#install-pre-requisites-for-building) bietet eine umfassende Anleitung für diese Installationen.
|
|
|
|
Nehmen wir an, es gibt eine Beispielanwendung namens `Bank.apk` mit dem Paketnamen `com.android.bank`. Um auf den Quellcode zuzugreifen, entpacken Sie `bank.apk` und navigieren Sie zum Ordner `bank/assets/www`. Dieser Ordner enthält den vollständigen Quellcode der Anwendung, einschließlich HTML- und JS-Dateien. Die Konfiguration der Anwendung befindet sich in `bank/res/xml/config.xml`.
|
|
|
|
Um die Anwendung zu klonen, befolgen Sie diese Schritte:
|
|
```bash
|
|
npm install -g cordova@latest
|
|
cordova create bank-new com.android.bank Bank
|
|
cd bank-new
|
|
```
|
|
Kopieren Sie den Inhalt von `bank/assets/www` nach `bank-new/www`, mit Ausnahme von `cordova_plugins.js`, `cordova.js`, `cordova-js-src/` und dem Verzeichnis `plugins/`.
|
|
|
|
Geben Sie bei der Erstellung eines neuen Cordova-Projekts die Plattform (Android oder iOS) an. Um eine Android-App zu klonen, fügen Sie die Android-Plattform hinzu. Beachten Sie, dass die Plattformversionen von Cordova und die Android-API-Ebenen unterschiedlich sind. Weitere Informationen zu Plattformversionen und unterstützten Android-APIs finden Sie in der Cordova [Dokumentation](https://cordova.apache.org/docs/en/11.x/guide/platforms/android/).
|
|
|
|
Um die geeignete Cordova Android Plattformversion zu ermitteln, überprüfen Sie das `PLATFORM_VERSION_BUILD_LABEL` in der `cordova.js`-Datei der Originalanwendung.
|
|
|
|
Nachdem Sie die Plattform eingerichtet haben, installieren Sie die erforderlichen Plugins. Die Datei `bank/assets/www/cordova_plugins.js` der Originalanwendung enthält eine Liste aller Plugins und ihrer Versionen. Installieren Sie jedes Plugin einzeln wie unten gezeigt:
|
|
```bash
|
|
cd bank-new
|
|
cordova plugin add cordova-plugin-dialogs@2.0.1
|
|
```
|
|
Wenn ein Plugin nicht auf npm verfügbar ist, kann es von GitHub bezogen werden:
|
|
```bash
|
|
cd bank-new
|
|
cordova plugin add https://github.com/moderna/cordova-plugin-cache.git
|
|
```
|
|
Stellen Sie sicher, dass alle Voraussetzungen erfüllt sind, bevor Sie kompilieren:
|
|
```bash
|
|
cd bank-new
|
|
cordova requirements
|
|
```
|
|
Um die APK zu erstellen, verwenden Sie den folgenden Befehl:
|
|
```bash
|
|
cd bank-new
|
|
cordova build android — packageType=apk
|
|
```
|
|
Dieser Befehl generiert eine APK mit der Debug-Option aktiviert, um das Debuggen über Google Chrome zu erleichtern. Es ist wichtig, die APK vor der Installation zu signieren, insbesondere wenn die Anwendung Mechanismen zur Erkennung von Code-Manipulationen enthält.
|
|
|
|
### Automatisierungstool
|
|
|
|
Für diejenigen, die den Klonprozess automatisieren möchten, wird das Tool **[MobSecco](https://github.com/Anof-cyber/MobSecco)** empfohlen. Es vereinfacht das Klonen von Android-Anwendungen und vereinfacht die oben beschriebenen Schritte.
|
|
|
|
<details>
|
|
|
|
<summary><strong>Lernen Sie AWS-Hacking von Grund auf mit</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
|
|
|
Andere Möglichkeiten, HackTricks zu unterstützen:
|
|
|
|
* Wenn Sie Ihr **Unternehmen in HackTricks bewerben möchten** oder **HackTricks als PDF herunterladen möchten**, überprüfen Sie die [**ABONNEMENTPLÄNE**](https://github.com/sponsors/carlospolop)!
|
|
* Holen Sie sich das [**offizielle PEASS & HackTricks-Merchandise**](https://peass.creator-spring.com)
|
|
* Entdecken Sie [**The PEASS Family**](https://opensea.io/collection/the-peass-family), unsere Sammlung exklusiver [**NFTs**](https://opensea.io/collection/the-peass-family)
|
|
* **Treten Sie der** 💬 [**Discord-Gruppe**](https://discord.gg/hRep4RUj7f) oder der [**Telegram-Gruppe**](https://t.me/peass) bei oder **folgen** Sie uns auf **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
|
|
* **Teilen Sie Ihre Hacking-Tricks, indem Sie PRs an die** [**HackTricks**](https://github.com/carlospolop/hacktricks) und [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub-Repositories senden.
|
|
|
|
</details>
|