起動や互換性を犠牲にすることなくネイティブ アルゴリズムを保護

Yudun は、SO、JNI、ダイナミック ライブラリの依存関係、貴重なネイティブ関数を中心に保護を設計し、各ターゲット ABI での読み込み、起動、実際の呼び出しを検証します。

これらの問題がアプリの妨げになっていますか?

  • シンボルと文字列は、SO 内の貴重なアルゴリズムを明らかにします。
  • JNI メソッドは、変更のエクスポートまたはロード後に表示されなくなります
  • サードパーティのネイティブ SDK が保護ポリシーと競合しています
  • arm64-v8a は動作しますが、別のターゲット ABI は起動に失敗します

ユドゥンはそれらにどう対処するか

  • SO VMP およびネイティブ保護

    すべてのパスを覆うことなく、貴重なネイティブ関数、シンボル、文字列、定数の保護を選択します。

  • JNI とロードチェーンのレビュー

    登録、依存関係、ロード順序、サードパーティ SDK を確認して、保護後も呼び出しを検証できるようにします。

  • ABI 互換性テスト

    各ターゲット アーキテクチャでインストール、起動、ライブラリのロード、および重要な JNI フローをテストします。

公的評価: SO ファイル名は、ネイティブ コンテナーが直接読み取り可能であることを証明しませんでした

Yudun S21-R43 評価では、ファイル名だけでネイティブ保護を判断するのではなく、リリース構造とデバッグ ランタイム スモーク テストの両方をレビューしました。

ネイティブ評価を見る

評価によって明らかになったもの

  • ストリップされたネイティブ状態、アセットコンテナ、およびプロキシエントリチェーンを確認しました。
  • 静的構造と実行時の読み込み観測を 1 つのレコードに配置
  • 分離された候補証拠、煙テスト、および最終放出ステータス

範囲: 結果は、完全なデバイス、ABI、またはパフォーマンス マトリックスではなく、この候補と実行されたスモーク スコープをカバーします。

査定から納品まで

配送方法を見る
  1. 01

    ネイティブアセットのマッピング

    ライブラリ、JNI エントリ ポイント、ターゲット ABI、依存関係、および貴重な関数を提供します。

  2. 02

    保護ミックスを選択してください

    値、関数呼び出し頻度、読み込み制約に関する SO および VMP 保護を構成します。

  3. 03

    あらゆるアーキテクチャを受け入れる

    ターゲット ABI および OS バージョンで実際のパスを実行し、障害を記録し、ロールバック構成を保持します。

お客様からよくいただくご質問

すべての記事を見る

購入前の質問

SO の強化は JNI の呼び出しに影響しますか?

はい。登録、シンボルの可視性、ロード順序、サードパーティの依存関係は、すべてのターゲット アーキテクチャで検証する必要があります。

シンボルを削除するだけで SO を保護できますか?

いいえ、1 クラスの手がかりが削除されます。文字列、定数、制御フロー、読み込み、および実行時マテリアルは、依然として別個の関心事です。

ABI がハードゲートなのはなぜですか?

ABI は、命令、リンク、依存関係が異なります。別のアーキテクチャからの結果では互換性を確立できません。

SO VMP はどの機能をカバーする必要がありますか?

明確な入力、出力、独立した回帰パスを使用して、貴重なネイティブ関数を優先します。初期化パスや頻繁に実行されるパスを包括的にカバーすることは避けてください。

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

  1. Android NDK ABI guide

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

  2. Android security best practices

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

  3. OWASP MASVS

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

  4. Android app signing

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

  5. Play Integrity API

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