DxShieldに関してのよくあるご質問のページです。
Android版に関するご質問
一般的なご質問
DxShieldはモバイルアプリケーションシールドとも呼ばれており、
モバイルアプリケーション開発者向けのセキュリティ付加サービスです。
あらゆる攻撃をリアルタイムに検知・遮断、利便性の高い管理コンソール画面では攻撃を可視化することが可能。
モバイルアプリをハッキングから守ることが可能です。
攻撃手法の特徴種別、さらにptraceやprotectsなどのkernel API フックに対する検査により、
JavaやNativeフックなど脅威のあるフック攻撃手法の全般に対して検知が可能です。
また、弊社は日々進化する攻撃手法を素早くリサーチ・キャッチアップし、
新たな攻撃手法に対するセキュリティを随時アップデートしていきます。
適用に関するご質問
ビルド済みのapkファイルを展開し、DxShieldエンジン、ローダーの追加およびパッケージの難読化・暗号化の処理が行われます。
DxShieldのセキュリティ適用はわずか3ステップです。
適用の際には、CLIクライアントもご利用いただけます。
- セキュリティを適用したいアプリのAPKファイルをWeb画面またはCLIクライアントからアップロードします。
- 初期セキュリティ保護ポリシーを選択します。
- セキュリティの適用が完了したAPKファイルをダウンロードし、Google Playに公開します。
dxsignerという署名専用のCLIツールがございます。
こちらをご利用いただくことで、サーバの証明書を登録することなく
CIプロセスの中などで署名を行っていただけます。
必要です。
DxShieldエンジンを更新する場合には、再度DxShieldを適用していただいた上で
アプリを再配布する必要があります。
最新エンジンを適用する場合には、再リリースが必要になります。
しかし、DxShieldは多層防御を行いますので必ずしも検知パターンのみには依存しません。
動作に関するご質問
DxShieldの適用前後で、使用するリソースの量は以下のように変化します。
検証端末スペック: CPU: Qualcomm 808 1.8GHz 6コア メモリ: 3GB OS: Android OS 5.1
DxShieldを適用したアプリとDxShieldクラウドサーバ間における通信の内容は以下の内容です。
- アプリ起動時
新しいハッキングパターンおよびポリシーのダウンロード(およそ1KB程度) - 不正利用検知時
不正利用検知ログのアップロード(およそ100bytes程度)
また、DxShieldが不正利用を検知した際に、サーバと端末の間で発生する通信の内容は以下の通りです。
端末からDxShieldサーバに送信される情報は、攻撃に関する情報の収集およびMAU・DAU集計のために利用されます。
現在の推奨スペックは下記の通りです。
- OS
Android2.3以上 - ハードウェア
ARMシリーズ1.4GHz/RAM1GB以上
日本国内および海外の各端末でテストを行っており、DxShieldの適用によって互換性が著しく低下することはございません。
また、互換性については追加で最大200種類の端末互換性チェックレポートをご提供することが可能です。
インターネット接続環境が良くない場合にも、アプリを保護することが可能です。
通常はアプリ起動時に最新のポリシーをサーバからダウンロードし適用しますが、
もし何らかの理由で通信状態が悪くポリシーをダウンロードできなかった場合には、
前回に取得・適用したポリシーに従ってアプリの保護を行います。
また、ログ送信に失敗した場合は次回起動時にログ送信を試みます。
- APKファイルのサイズ
DxShieldの適用後に、およそ1MBほど増加します。
(xshieldおよびobserverの追加分) - 実行性能
アプリ起動時に以下の処理が行われるため、およそ0.5秒ほどの遅延が発生します。- DxShieldのロード
- 最新ポリシーの取得
- メモリ使用量
およそ0.7MB〜2.0MBほど増加します。
基本的に、メジャーなツールであればすでに対応が完了していますので問題ございません。
また、万が一ご利用のSDKとの相性による不具合が発生した場合には、その旨を
お申し付けいただければ迅速に修正・対応致しますのでご安心ください。
DxShieldが攻撃を検知した際の動作には、以下の3つのパターンがございます。
- アプリの遮断はせず、攻撃ログの収集のみを行う
→攻撃の動向を把握するのに最適です。 - アプリにコールバックする
→攻撃検知時の動作をアプリ側で自由にカスタマイズすることができます。 - アラートを表示し、即座にアプリを終了する
→攻撃検知のアラートを表示し、即座にアプリを終了します。
機能に関するご質問
DxShieldの機能は、以下のものが挙げられます。
コア機能
DxShieldの必須セキュリティ機能です。ON/OFFの設定は出来ません。
- 暗号化(MultiDex対応)
- 偽造・改ざん防止
- メモリ攻撃検知
- アンチデバッグ
- APIフック検知
- 共有ライブラリ整合性検証
ハイレベルセキュリティ機能
より高度な解析防止機能です。DxShieldの適用時にON/OFFを設定することができます。
- Dexファイル難読化比率調節
- リソースID難読化
- 文字列難読化
- 関数呼び出し難読化
- soファイルアンチデコンパイル
- 汎用API例外処理
リアルタイム制御可能機能
リアルタイムにON/OFFの変更が可能な機能です。管理コンソールからそれぞれのON/OFFを設定することができます。
- ハッキングツール検知
- 潜在的危険性のあるアプリ検知
- マクロツール検知
- 仮想マシン検知
- ミラーリングアプリケーション検知
- ルート化検知
- ルート化偽装検知
- ルート権限を持つシェル検知
- FakeGPS検知
- アンドロイドエラーレポート
詳しくは、機能一覧のページをご覧ください。
暗号化は行いませんが、アンチデコンパイル処理を行います。
for iOS basicに関するご質問
現在の必要スペックは下記の通りです。
- iOSバージョン
iOS 6.0以上
年に3〜4回のペースでアップデートを行います。
DxShield for iOS Basicには、ログを採取するロジックは含まれていません。
iPhone7 plusにて行ったテスト結果は以下のようになっております。
- アプリサイズ
- Bitcodeあり:155KB
- Bitcodeなし:156KB
- メモリ使用量
およそ2.5MBほど増加します。
- CPU使用量
最大で50%増加(アップデートとスキャン時)
A.空のプロジェクト:34%
B.SDKを導入したプロジェクト:87%
iPhone7 plusにて行ったテスト結果は以下のようになっております。
アップデート:0.5s
スキャン:0.05s
以下の場合に、新たなバージョンのSDKをリリースします。
- OSのアップデート時
以下のような問題が見つかった場合には、10営業日以内に原則対応する
- 最終のβバージョンアップデート後にSDKに不具合が見つかった場合
- メジャーアップデート後にSDKに不具合が見つかった場合
- 新デバイスの発売
- バグフィックス
個人情報に関連した情報は取得いたしません。