Cordova Apps
Reading time: 7 minutes
tip
AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE)
Azureハッキングを学び、実践する:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricksをサポートする
- サブスクリプションプランを確認してください!
- **💬 Discordグループまたはテレグラムグループに参加するか、Twitter 🐦 @hacktricks_liveをフォローしてください。
- HackTricksおよびHackTricks CloudのGitHubリポジトリにPRを提出してハッキングトリックを共有してください。
詳細についてはhttps://infosecwriteups.com/recreating-cordova-mobile-apps-to-bypass-security-implementations-8845ff7bdc58を確認してください。これは要約です:
Apache Cordovaは、JavaScript、HTML、CSSを使用してハイブリッドアプリケーションの開発を可能にすることで知られています。これにより、AndroidおよびiOSアプリケーションの作成が可能ですが、アプリケーションのソースコードを保護するためのデフォルトのメカニズムが欠けています。React Nativeとは異なり、Cordovaはデフォルトでソースコードをコンパイルしないため、コード改ざんの脆弱性が生じる可能性があります。CordovaはWebViewを使用してアプリケーションをレンダリングし、APKまたはIPAファイルにコンパイルされた後でもHTMLおよびJavaScriptコードを露出させます。一方、React NativeはJavaScript VMを使用してJavaScriptコードを実行し、より良いソースコード保護を提供します。
Cordovaアプリケーションのクローン作成
Cordovaアプリケーションをクローンする前に、NodeJSがインストールされていることを確認し、Android SDK、Java JDK、Gradleなどの他の前提条件もインストールしてください。公式のCordova ドキュメントは、これらのインストールに関する包括的なガイドを提供しています。
com.android.bank
というパッケージ名のBank.apk
という例のアプリケーションを考えてみましょう。ソースコードにアクセスするには、bank.apk
を解凍し、bank/assets/www
フォルダーに移動します。このフォルダーには、HTMLおよびJSファイルを含むアプリケーションの完全なソースコードが含まれています。アプリケーションの設定はbank/res/xml/config.xml
にあります。
アプリケーションをクローンするには、次の手順に従ってください:
npm install -g cordova@latest
cordova create bank-new com.android.bank Bank
cd bank-new
bank/assets/www
の内容を bank-new/www
にコピーしますが、cordova_plugins.js
、cordova.js
、cordova-js-src/
、および plugins/
ディレクトリは除外します。
新しい Cordova プロジェクトを作成する際には、プラットフォーム(Android または iOS)を指定してください。Android アプリをクローンする場合は、Android プラットフォームを追加します。Cordova のプラットフォームバージョンと Android API レベルは異なることに注意してください。プラットフォームバージョンとサポートされている Android API の詳細については、Cordova の documentation を参照してください。
適切な Cordova Android プラットフォームバージョンを確認するには、元のアプリケーションの cordova.js
ファイル内の PLATFORM_VERSION_BUILD_LABEL
をチェックしてください。
プラットフォームの設定後、必要なプラグインをインストールします。元のアプリケーションの bank/assets/www/cordova_plugins.js
ファイルには、すべてのプラグインとそのバージョンがリストされています。以下のように各プラグインを個別にインストールします。
cd bank-new
cordova plugin add cordova-plugin-dialogs@2.0.1
npmでプラグインが利用できない場合は、GitHubから取得できます:
cd bank-new
cordova plugin add https://github.com/moderna/cordova-plugin-cache.git
すべての前提条件が満たされていることを確認してからコンパイルしてください:
cd bank-new
cordova requirements
APKをビルドするには、次のコマンドを使用します:
cd bank-new
cordova build android — packageType=apk
このコマンドは、デバッグオプションが有効なAPKを生成し、Google Chromeを介したデバッグを容易にします。アプリケーションにコード改ざん検出メカニズムが含まれている場合、特にインストール前にAPKに署名することが重要です。
自動化ツール
クローンプロセスを自動化したい方には、**MobSecco**をお勧めします。これは、上記の手順を簡素化し、Androidアプリケーションのクローン作成を効率化します。
tip
AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE)
Azureハッキングを学び、実践する:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricksをサポートする
- サブスクリプションプランを確認してください!
- **💬 Discordグループまたはテレグラムグループに参加するか、Twitter 🐦 @hacktricks_liveをフォローしてください。
- HackTricksおよびHackTricks CloudのGitHubリポジトリにPRを提出してハッキングトリックを共有してください。