mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-23 13:13:41 +00:00
77 lines
6 KiB
Markdown
77 lines
6 KiB
Markdown
# Aplikacje Cordova
|
|
|
|
<details>
|
|
|
|
<summary><strong>Naucz się hakować AWS od zera do bohatera z</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
|
|
|
Inne sposoby wsparcia HackTricks:
|
|
|
|
* Jeśli chcesz zobaczyć swoją **firmę reklamowaną w HackTricks** lub **pobrać HackTricks w formacie PDF**, sprawdź [**PLAN SUBSKRYPCJI**](https://github.com/sponsors/carlospolop)!
|
|
* Zdobądź [**oficjalne gadżety PEASS & HackTricks**](https://peass.creator-spring.com)
|
|
* Odkryj [**Rodzinę PEASS**](https://opensea.io/collection/the-peass-family), naszą kolekcję ekskluzywnych [**NFT**](https://opensea.io/collection/the-peass-family)
|
|
* **Dołącz do** 💬 [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegramowej**](https://t.me/peass) lub **śledź** nas na **Twitterze** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
|
|
* **Podziel się swoimi sztuczkami hakerskimi, przesyłając PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
|
|
|
|
</details>
|
|
|
|
**Aby uzyskać dalsze informacje, sprawdź [https://infosecwriteups.com/recreating-cordova-mobile-apps-to-bypass-security-implementations-8845ff7bdc58](https://infosecwriteups.com/recreating-cordova-mobile-apps-to-bypass-security-implementations-8845ff7bdc58)**. Oto streszczenie:
|
|
|
|
Apache Cordova jest znany z umożliwiania tworzenia **aplikacji hybrydowych** przy użyciu **JavaScriptu, HTML i CSS**. Pozwala na tworzenie aplikacji na systemy Android i iOS, jednak nie posiada domyślnego mechanizmu zabezpieczania kodu źródłowego aplikacji. W przeciwieństwie do React Native, Cordova domyślnie nie kompiluje kodu źródłowego, co może prowadzić do podatności na manipulację kodem. Cordova wykorzystuje WebView do renderowania aplikacji, ujawniając kod HTML i JavaScript nawet po skompilowaniu do plików APK lub IPA. React Native natomiast używa maszyny wirtualnej JavaScript do wykonywania kodu JavaScript, co zapewnia lepszą ochronę kodu źródłowego.
|
|
|
|
### Klonowanie aplikacji Cordova
|
|
|
|
Przed sklonowaniem aplikacji Cordova upewnij się, że zainstalowany jest NodeJS oraz inne wymagane narzędzia, takie jak Android SDK, Java JDK i Gradle. Oficjalna [dokumentacja](https://cordova.apache.org/docs/en/11.x/guide/cli/#install-pre-requisites-for-building) Cordova zawiera kompleksowy przewodnik dotyczący tych instalacji.
|
|
|
|
Przyjmijmy jako przykład aplikację o nazwie `Bank.apk` o nazwie pakietu `com.android.bank`. Aby uzyskać dostęp do kodu źródłowego, rozpakuj plik `bank.apk` i przejdź do folderu `bank/assets/www`. Ten folder zawiera kompletny kod źródłowy aplikacji, w tym pliki HTML i JS. Konfiguracja aplikacji znajduje się w pliku `bank/res/xml/config.xml`.
|
|
|
|
Aby sklonować aplikację, wykonaj następujące kroki:
|
|
```bash
|
|
npm install -g cordova@latest
|
|
cordova create bank-new com.android.bank Bank
|
|
cd bank-new
|
|
```
|
|
Skopiuj zawartość folderu `bank/assets/www` do folderu `bank-new/www`, wykluczając pliki `cordova_plugins.js`, `cordova.js`, `cordova-js-src/` oraz katalog `plugins/`.
|
|
|
|
Podczas tworzenia nowego projektu Cordova, określ platformę (Android lub iOS). Aby sklonować aplikację Android, dodaj platformę Android. Należy pamiętać, że wersje platformy Cordova i poziomy API Androida są odrębne. Szczegółowe informacje na temat wersji platformy i obsługiwanych interfejsów API Androida znajdują się w [dokumentacji](https://cordova.apache.org/docs/en/11.x/guide/platforms/android/) Cordova.
|
|
|
|
Aby określić odpowiednią wersję platformy Cordova Android, sprawdź wartość `PLATFORM_VERSION_BUILD_LABEL` w pliku `cordova.js` oryginalnej aplikacji.
|
|
|
|
Po skonfigurowaniu platformy zainstaluj wymagane wtyczki. W pliku `bank/assets/www/cordova_plugins.js` oryginalnej aplikacji znajduje się lista wszystkich wtyczek i ich wersji. Zainstaluj każdą wtyczkę indywidualnie, jak pokazano poniżej:
|
|
```bash
|
|
cd bank-new
|
|
cordova plugin add cordova-plugin-dialogs@2.0.1
|
|
```
|
|
Jeśli wtyczka nie jest dostępna na npm, można ją pobrać z GitHuba:
|
|
```bash
|
|
cd bank-new
|
|
cordova plugin add https://github.com/moderna/cordova-plugin-cache.git
|
|
```
|
|
Upewnij się, że spełnione są wszystkie wymagania przed kompilacją:
|
|
```bash
|
|
cd bank-new
|
|
cordova requirements
|
|
```
|
|
Aby zbudować plik APK, użyj następującej komendy:
|
|
```bash
|
|
cd bank-new
|
|
cordova build android — packageType=apk
|
|
```
|
|
To polecenie generuje plik APK z włączoną opcją debugowania, ułatwiając debugowanie za pomocą Google Chrome. Ważne jest podpisanie pliku APK przed instalacją, zwłaszcza jeśli aplikacja zawiera mechanizmy wykrywania manipulacji kodem.
|
|
|
|
### Narzędzie automatyzacji
|
|
|
|
Dla tych, którzy chcą zautomatyzować proces klonowania, zalecane jest narzędzie **[MobSecco](https://github.com/Anof-cyber/MobSecco)**. Ułatwia ono klonowanie aplikacji na platformie Android, upraszczając opisane powyżej kroki.
|
|
|
|
<details>
|
|
|
|
<summary><strong>Naucz się hakować AWS od zera do bohatera z</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
|
|
|
Inne sposoby wsparcia HackTricks:
|
|
|
|
* Jeśli chcesz zobaczyć **reklamę swojej firmy w HackTricks** lub **pobrać HackTricks w formacie PDF**, sprawdź [**PLAN SUBSKRYPCYJNY**](https://github.com/sponsors/carlospolop)!
|
|
* Zdobądź [**oficjalne gadżety PEASS & HackTricks**](https://peass.creator-spring.com)
|
|
* Odkryj [**Rodzinę PEASS**](https://opensea.io/collection/the-peass-family), naszą kolekcję ekskluzywnych [**NFT**](https://opensea.io/collection/the-peass-family)
|
|
* **Dołącz do** 💬 [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegramowej**](https://t.me/peass) lub **śledź** nas na **Twitterze** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
|
|
* **Podziel się swoimi trikami hakerskimi, przesyłając PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
|
|
|
|
</details>
|