トピックのホームに戻る

SO の強化とネイティブ互換性のチェックリスト

ユドゥン技術ガイド · エンジニアリングの原則と実践 · 日本語

SO の強化は、いくつかのシンボルを隠すことではなく、ネイティブ ライブラリがどのように構築、ロード、呼び出されるかを理解することから始まります。明確なロード チェーンと ABI 範囲により、戦略にテスト可能な境界が与えられます。

ネイティブ依存関係マップを構築する

サードパーティ SDK のネイティブ コンポーネントを含む、直接ロードされたライブラリ、推移的な依存関係、JNI 登録、初期化順序を一覧表示します。

このマップは、どのライブラリを独立して変更できるか、またどのエクスポート制約またはロード制約を維持する必要があるかを示します。

  • プライマリライブラリと依存ライブラリ
  • JNI登録
  • ロードタイミング
  • サードパーティのネイティブ SDK

情報の種類に応じてコントロールを選択する

エクスポート、文字列、定数、プロトコル処理、および高価値関数は、さまざまなリスクにさらされます。

頻繁に実行される関数、アプリケーション起動の初期化、およびエラー パスには、特定のパフォーマンスと安定性への注意が必要です。

すべての ABI の証拠を収集する

出力にどの ABI が含まれているかを示し、各ターゲット アーキテクチャでのインストール、アプリケーションの起動、ライブラリのロード、および重要な JNI の呼び出しを確認します。

エミュレータの証拠は、実際のターゲット アーキテクチャを自動的に置き換えるものではありません。

  • ABI は出力と一致します
  • 依存関係の解決
  • JNI 呼び出しの退行
  • 障害を特定できる

APK およびサーバー コントロールを含むリリース

ネイティブ保護により分析コストが増加しますが、署名、承認済みバージョン、サーバー認証、および最終的な APK 回帰は独立したリリース責任を負います。

実際のリリース候補との境界を検証する

アプリケーション スタック、クリティカル パス、およびターゲット システム範囲を提供します。アカウント、アプリケーション、プロジェクトの詳細は、中央の Yudun プラットフォームによって処理されます。

セキュリティ標準とプラットフォームのリファレンス

  1. Android NDK ABI guide

    ネイティブ アーキテクチャ、ABI パッケージング、および互換性

  2. Android security best practices

    Android アプリケーションのセキュリティ設計とリリースの境界

  3. OWASP MASVS

    モバイルアプリケーションのセキュリティ管理と検証範囲

  4. Android app signing

    ID の署名、アップグレードの継続性、リリースの整合性

  5. Play Integrity API

    サーバー側の決定とアプリケーション整合性信号の制限