MASTG-TEST-0248 安全な画面ロックを検出するための API への参照 (References to APIs for Detecting Secure Screen Lock)

概要

このテストでは、アプリが安全な 画面ロック (パスコードなど) が設定されたデバイス上でアプリが実行されているかどうかを検証します。

iOS では、アプリは LocalAuthentication フレームワークを使用して、安全な画面ロックが設定されているかどうかを判断できます。具体的には、LAContext.canEvaluatePolicy(_:error:) メソッドを .deviceOwnerAuthentication または .deviceOwnerAuthenticationWithBiometrics ポリシーを指定して使用し、パスコードなどの認証メカニズムが利用可能かどうかをチェックできます。

Keychain Services API を活用するアプリは、kSecAttrAccessibleWhenPasscodeSetThisDeviceOnly 属性を使用して機密データにアクセスする前にパスコード認証を要求できます。

手順

  1. radare2 for iOS などの静的解析ツールをアプリバイナリに対して実行して、LAContext.canEvaluatePolicy(.deviceOwnerAuthentication) API の使用、または kSecAttrAccessibleWhenPasscodeSetThisDeviceOnly 属性で保存されたデータを探します。

結果

出力には関連する API が使用されている場所のリストを含む可能性があります。

評価

アプリが安全な画面ロックの存在を検証するための API を使用していない場合、そのテストは不合格です。

Last updated

Was this helpful?