コンテンツへスキップ

@capgo/capacitor-is-root

root 化された Android デバイスと脱獄された iOS デバイスを検出し、アプリのセキュリティを強化し、機密データを保護します。

Capacitor Is Root プラグインは、Android デバイスの包括的な root および脱獄検出とエミュレーター検出を提供します。このプラグインは、セキュリティリスクをもたらす可能性のある侵害されたデバイスやエミュレートされた環境を識別することで、アプリのセキュリティを強化するのに役立ちます。

Root 検出

複数の方法による高度な Android root 検出 🔒

エミュレーター検出

エミュレートされた環境とテストフレームワークを識別 🛡️

セキュリティ検証

精度向上のための複数の検出技術 ✅

Android 特化

Android セキュリティ評価のための専門的検出 🤖

Terminal window
npm install @capgo/capacitor-is-root
npx cap sync
  • isRooted() - デフォルトメソッドを使用して包括的な root 検出を実行
  • isRootedWithBusyBox() - BusyBox チェックを含む拡張検出
  • detectRootManagementApps() - インストールされている root 管理アプリケーションを識別
  • checkForSuBinary() - システムパスに su バイナリが存在するかチェック
  • isRunningOnEmulator() - 一般的な Android エミュレーターのフィンガープリントを検出

プラグインは複数の検出方法を採用しています:

  • root 管理アプリケーションのチェック(SuperSU、Magisk など)
  • 疑わしいシステムプロパティのスキャン
  • テストビルドタグとデバッグフラグの識別
  • 危険なバイナリの場所の検証
  • システムパスのパーミッション検査
  • ハードウェアフィンガープリント分析
  • ビルドプロパティ検査
  • エミュレーター固有の特性
  • 仮想環境インジケーター
import { IsRoot } from '@capgo/capacitor-is-root';
// 基本的な root 検出
const rootResult = await IsRoot.isRooted();
if (rootResult.isRooted) {
console.log('デバイスは root 化されています');
// root 化されたデバイスを適切に処理
}
// BusyBox を使用した拡張 root 検出
const extendedResult = await IsRoot.isRootedWithBusyBox();
if (extendedResult.isRooted) {
console.log('デバイスは root 化されています(拡張チェック)');
}
// エミュレーターチェック
const emulatorResult = await IsRoot.isRunningOnEmulator();
if (emulatorResult.isEmulator) {
console.log('エミュレーター上で実行中');
}
// root 管理アプリの検出
const rootAppsResult = await IsRoot.detectRootManagementApps();
if (rootAppsResult.hasRootApps) {
console.log('root 管理アプリが検出されました');
}

セキュリティに関する考慮事項

Section titled “セキュリティに関する考慮事項”
  • より高い精度のために複数の検出方法を使用
  • 検出された環境に対して段階的な機能低下を実装
  • セキュリティ対策を実装する際にユーザーのプライバシーを考慮
  • 検出方法が進化するため、定期的な更新を推奨

詳細な実装ガイドと高度なセキュリティパターンについては、完全なドキュメントをご覧ください。