mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-22 12:43:23 +00:00
77 lines
6.1 KiB
Markdown
77 lines
6.1 KiB
Markdown
# Cordova Uygulamaları
|
||
|
||
<details>
|
||
|
||
<summary><strong>AWS hacklemeyi sıfırdan kahramanla öğrenin</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Kırmızı Takım Uzmanı)</strong></a><strong>!</strong></summary>
|
||
|
||
HackTricks'i desteklemenin diğer yolları:
|
||
|
||
* **Şirketinizi HackTricks'te reklam vermek** veya **HackTricks'i PDF olarak indirmek** için [**ABONELİK PLANLARINI**](https://github.com/sponsors/carlospolop) kontrol edin!
|
||
* [**Resmi PEASS & HackTricks ürünlerini**](https://peass.creator-spring.com) edinin
|
||
* [**The PEASS Ailesi'ni**](https://opensea.io/collection/the-peass-family) keşfedin, özel [**NFT'lerimiz**](https://opensea.io/collection/the-peass-family)
|
||
* 💬 [**Discord grubuna**](https://discord.gg/hRep4RUj7f) veya [**telegram grubuna**](https://t.me/peass) **katılın** veya **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**'u takip edin**.
|
||
* **Hacking hilelerinizi** [**HackTricks**](https://github.com/carlospolop/hacktricks) ve [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github depolarına **PR göndererek paylaşın**.
|
||
|
||
</details>
|
||
|
||
**Daha fazla ayrıntı için [https://infosecwriteups.com/recreating-cordova-mobile-apps-to-bypass-security-implementations-8845ff7bdc58](https://infosecwriteups.com/recreating-cordova-mobile-apps-to-bypass-security-implementations-8845ff7bdc58)'e** bakın. İşte bir özet:
|
||
|
||
Apache Cordova, **JavaScript, HTML ve CSS** kullanarak **hibrit uygulamaların** geliştirilmesini sağlamasıyla tanınır. Android ve iOS uygulamalarının oluşturulmasına izin verir; ancak, uygulamanın kaynak kodunu güvence altına almak için varsayılan bir mekanizma sunmaz. React Native'in aksine, Cordova kaynak kodunu varsayılan olarak derlemez, bu da kod manipülasyonu açıklarına yol açabilir. Cordova, uygulamaları render etmek için WebView'i kullanır ve HTML ve JavaScript kodunu APK veya IPA dosyalarına derlendikten sonra bile açığa çıkarır. Öte yandan, React Native, JavaScript kodunu yürütmek için bir JavaScript VM kullanır ve daha iyi kaynak kodu koruması sunar.
|
||
|
||
### Bir Cordova Uygulamasını Klonlama
|
||
|
||
Bir Cordova uygulamasını klonlamadan önce, NodeJS'in yanı sıra Android SDK, Java JDK ve Gradle gibi diğer önkoşulların yüklü olduğundan emin olun. Resmi Cordova [belgeleri](https://cordova.apache.org/docs/en/11.x/guide/cli/#install-pre-requisites-for-building) bu kurulumlar için kapsamlı bir kılavuz sağlar.
|
||
|
||
`Bank.apk` adında bir örnek uygulamayı düşünelim ve paket adı `com.android.bank` olsun. Kaynak koduna erişmek için `bank.apk` dosyasını açın ve `bank/assets/www` klasörüne gidin. Bu klasör, uygulamanın HTML ve JS dosyaları dahil olmak üzere tam kaynak kodunu içerir. Uygulamanın yapılandırması `bank/res/xml/config.xml` dosyasında bulunabilir.
|
||
|
||
Uygulamayı klonlamak için şu adımları izleyin:
|
||
```bash
|
||
npm install -g cordova@latest
|
||
cordova create bank-new com.android.bank Bank
|
||
cd bank-new
|
||
```
|
||
`bank/assets/www` klasöründeki içeriği, `cordova_plugins.js`, `cordova.js`, `cordova-js-src/` ve `plugins/` dizinini hariç tutarak `bank-new/www` klasörüne kopyalayın.
|
||
|
||
Yeni bir Cordova projesi oluştururken platformu (Android veya iOS) belirtin. Bir Android uygulamasını klonlamak için Android platformunu ekleyin. Unutmayın, Cordova'nın platform sürümleri ve Android API seviyeleri farklıdır. Platform sürümleri ve desteklenen Android API'leri hakkında ayrıntılı bilgi için Cordova [belgelerine](https://cordova.apache.org/docs/en/11.x/guide/platforms/android/) başvurun.
|
||
|
||
Uygun Cordova Android platform sürümünü belirlemek için orijinal uygulamanın `cordova.js` dosyasındaki `PLATFORM_VERSION_BUILD_LABEL` değerini kontrol edin.
|
||
|
||
Platformu ayarladıktan sonra gerekli eklentileri yükleyin. Orijinal uygulamanın `bank/assets/www/cordova_plugins.js` dosyası tüm eklentileri ve sürümlerini listeler. Aşağıda gösterildiği gibi her eklentiyi ayrı ayrı yükleyin:
|
||
```bash
|
||
cd bank-new
|
||
cordova plugin add cordova-plugin-dialogs@2.0.1
|
||
```
|
||
Eğer bir eklenti npm'de mevcut değilse, GitHub üzerinden temin edilebilir:
|
||
```bash
|
||
cd bank-new
|
||
cordova plugin add https://github.com/moderna/cordova-plugin-cache.git
|
||
```
|
||
Derleme yapmadan önce tüm önkoşulların karşılandığından emin olun:
|
||
```bash
|
||
cd bank-new
|
||
cordova requirements
|
||
```
|
||
APK'yi oluşturmak için aşağıdaki komutu kullanın:
|
||
```bash
|
||
cd bank-new
|
||
cordova build android — packageType=apk
|
||
```
|
||
Bu komut, hata ayıklamayı Google Chrome üzerinden kolaylaştıran hata ayıklama seçeneği etkinleştirilmiş bir APK oluşturur. Özellikle uygulama kodu manipülasyonu tespit mekanizmaları içeriyorsa, APK'nın kurulmadan önce imzalanması önemlidir.
|
||
|
||
### Otomasyon Aracı
|
||
|
||
Klonlama sürecini otomatikleştirmek isteyenler için **[MobSecco](https://github.com/Anof-cyber/MobSecco)** önerilen bir araçtır. Bu, yukarıda açıklanan adımları basitleştirerek Android uygulamalarının klonlanmasını kolaylaştırır.
|
||
|
||
<details>
|
||
|
||
<summary><strong>AWS hacklemeyi sıfırdan kahraman olmak için</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>'ı öğrenin!</strong></summary>
|
||
|
||
HackTricks'i desteklemenin diğer yolları:
|
||
|
||
* **Şirketinizi HackTricks'te reklam vermek isterseniz** veya **HackTricks'i PDF olarak indirmek isterseniz** [**ABONELİK PLANLARI**](https://github.com/sponsors/carlospolop)'na göz atın!
|
||
* [**Resmi PEASS & HackTricks ürünlerini**](https://peass.creator-spring.com) edinin
|
||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family) koleksiyonumuzu keşfedin, özel [**NFT'lerimizi**](https://opensea.io/collection/the-peass-family) görün
|
||
* 💬 [**Discord grubuna**](https://discord.gg/hRep4RUj7f) veya [**telegram grubuna**](https://t.me/peass) **katılın** veya **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)'u **takip edin**.
|
||
* **Hacking hilelerinizi** [**HackTricks**](https://github.com/carlospolop/hacktricks) ve [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github depolarına **PR göndererek paylaşın**.
|
||
|
||
</details>
|