@kyanny's blog

理想主義のない現実主義は無意味である。現実主義のない理想主義は無血液である - ロマン・ロラン フランス思想家

iPhone のパスコードロックを突破されている状態で Evernote をパスコードロックで守ることは可能か

自分自身に不便を強いれば理論上は可能っぽい。

以下、思わぬ落とし穴で突破されうる、という妄想の話。

Evernote を有料プランにすると iOS アプリに独自のパスコードロックをかけられる。4桁の数字を設定可能。生体認証で代用も可能(Touch ID、Face ID)。

ここでは、 iPhone の生体認証も突破可能になっている、という通常は考えにくい条件下だとする(Face ID の2つ目の顔に登録済みとかそういう)。

突破までの手順

  1. Face ID で iPhone のロックを解除
  2. Evernote を開く
  3. パスコード入力を5回連続で失敗する
  4. すると、 Evernote アプリの仕様で強制ログアウトする
  5. Evernote アプリに再ログインを試みる
  6. iCloud キーチェーンに Evernote のユーザー名とパスワードが保存されていた!(盲点)
  7. Face ID で iCloud キーチェーン解除→ Evernote アプリに自動ログイン完了

iCloud キーチェーンから削除したとしても、

  • 1Password に Evernote のアカウント情報を保存している
  • 1Password のロックを生体認証で解除可能にしていると、、
  • Evernote のログイン情報を入手可能
    • パスワードの平文も手に入る
    • iCloud キーチェーンでも同じことだが、、

水際で防止するためには、

  • 1Password のロック解除に生体認証を利用しない(マスターパスワードは知られていない前提)
  • Evernote のログイン情報は暗記する、生体認証ではロック解除できない方法で iPhone 内に保管する、他のデバイスに保管しておく、など管理方法を変える

などの対策を、

  • Evernote のロック解除に生体認証を利用しない
  • Evernote のパスコードを知られていない

に加えて行う必要がありそう。十分に強力なパスワードを暗記するのは厳しいので、不便とセキュリティのトレードオフなところがある(そもそも生体認証を突破されている時点でセキュリティもクソもないが)。

余談。 Evernote アプリのパスコードロックを突破されたことはほぼ確実にわかる。なぜなら、

  • 再ログイン時にパスコードロックが無効化されるので、、
  • 次に自分が Evernote アプリを開いたとき、パスコードロック画面が出ない→突破されている!(おそらく5連続失敗→強制ログアウト→再ログイン、の手順で)とわかる

しかし、以下のケースと見分ける方法はおそらく無い。

  • たまたま Evernote アプリに入力したパスコードが「当たり」だった
    • 強制ログアウトを経由せずにアプリを開ける
    • アプリの設定からパスコードロックを無効化する

この場合、「ロックは解除されてしまったが、 iCloud キーチェーンなどの穴を塞いだ上で再度パスコードロックをかければ安心」と油断させておいて、実はパスコードを知っている(が、持ち主は知られていることを知らない)、ので気づかれずに覗き放題、という致命的な事態に陥る可能性がある。ので、一度でもロックを突破されたらパスコードも変えたほうがよい。

(そもそも、「当たり」のパスコードが分かった時点で、パスコードロックを無効化する必要はないのだが。持ち主に気づかれないまま、同じパスコードで解除し放題だから)

さらに、非常に考えづらいが以下のようなケースもありうる。

  • 5連続失敗からの手順で Evernote アプリにアクセス成功
  • 設定からパスコードロックを有効化(!)
  • その際に入力したパスコードが偶然元々設定されていたパスコードと一致した(!!!)

すると、本人が Evernote アプリを使うとき、

  • パスコードロックはかかっており、
  • 自分が設定したパスコードでロック解除できる

ので、ずっとパスコードで守られていたのと見分けることができない(Evernote はログイン都度メールでお知らせとかはやってないと思う)。

そんな偶然はほとんどないだろう。もし覚えのある4桁の数字なら、パスコードロックを解除できていただろうし。

なお、もしでたらめに再設定したパスコードが本人が設定した番号と異なる場合、本人がパスコードロックを解除できない→強制ログアウト、の流れに入るので、「これは↑のようなパターンで再設定されたな」と気づくことができる。