Macのキーチェーンにパスワードを安全に保存する


3

最近の誰かと同じように、私はたくさんのパスワードを持っています。特にデータベースとサーバーのパスワードを覚えなければならないとき、それらを追跡することは本当に苦痛です。

これらを保存するためにOSXに付属のキーチェーンアプリケーションを使用することを検討していましたが、これは良いアイデアです、安全ですか?

A)マシンへのアクセス権があり、B)マシンのユーザーログインパスワードを入力した場合にのみ、プレーンテキストでパスワードが表示されることを知っています。


回答:


4

A)マシンにアクセスできる場合、およびB)マシンのユーザーログインパスワードを入力する場合にのみ、プレーンテキストでパスワードが表示されることを知っています。

Bは、キーチェーンアクセスには当てはまりますが、一般的なセキュリティシステムには当てはまりません。ログイン時のデフォルトのように、ログインキーチェーンのロックが解除されている場合はsecurity、パスワードを入力せずにログインキーチェーン内のすべてのパスワードを表示できます。

security dump-keychain -d ~/Library/Keychains/login.keychain

security find-internet-password -s accounts.google.com -w

許可ボタンを押すだけで、パスワードはプレーンテキストで表示されます。実際、Keychain AccessとSafariがパスワードを表示しようとするときにキーチェーンのパスワードを入力する必要があるのは奇妙です(そして誤解を招く)。

シングルユーザーモードまたはリカバリパーティションからログインパスワードをリセットするに、少なくとも3つの方法があります。ただし、ログインキーチェーンのパスワードはリセットされません。ログインパスワードをリセットした後にログインしようとすると、ログインキーチェーンにパスワードが表示されなかったり、Safariで自動入力を使用したり、Mailに自動的にログインしたりできません。ただし、たとえば、Apple IDにGmailアドレスを使用し、GmailのWebインターフェイスで自動ログインを有効にし、Apple IDに2段階認証を使用しない場合、攻撃者はGmailアカウントを使用してAppleをリセットできますIDパスワード。「ユーザーとグループ」環境設定パネルの「ユーザーがApple IDを使用してパスワードをリセットできるようにする」オプションが有効になっている場合、攻撃者はApple IDを使用してログインキーチェーンのパスワードをリセットできます。

ログインパスワードのハッシュは、/var/db/dslocal/nodes/Default/users/username.plist10.7および10.8に保存されます。ログインパスワード(通常はログインキーチェーンのパスワードでもある)が非常に単純な場合、ハッシュはDaveGrohlを使用して実用的な時間内に解読できます。

$ sudo dave -u $USER
-- Loaded PBKDF2 (Salted SHA512) hash...
-- Starting attack

-- Found password : 'y8d'
-- (incremental attack)

Finished in 879.274 seconds / 31,385 guesses...
35 guesses per second.

10.7は、より弱いキー派生関数を使用していたため、比較的複雑なパスワードでも簡単に解読できました。10.8はPBKDF2に切り替え、クラッキングツールをコアあたり1秒あたり約10推測に制限します。

自動ログインを有効にしている場合、ログインキーチェーンのパスワードは、10.8の時点で解読しやすい形式で/ etc / kcpasswordに保存されます。

誰かにアカウントの使用を許可しsecurity、パスワードは表示しない場合は、Keychain Accessまたはからログインキーチェーンをロックできますsecurity lock-keychain

コンピューターから離れているときは、たとえば、[セキュリティ]設定ペインで[スリープまたはスクリーンセーバーの開始後すぐにパスワードを要求する]をオンにし、control-shift-ejectを押してディスプレイをオフにすることでロックできます。

キーチェーンアクセスからログインキーチェーンのロックを自動的に有効にすることもできます。

コンピューターに物理的にアクセスできるユーザーがシングルユーザーモードで起動するのを防ぐ(およびログインパスワードをリセットする、またはログインパスワードのハッシュを表示する)場合は、FileVault 2を有効にします。


物理的なアクセス権を持つ人は、あなたのアカウントおよび/または管理者アカウントにログインできる必要がありますが、正しいですか?ゲストアカウントを開いて、sudoパスワードなしでキーチェーンをダンプすることはできません。これは、気密ハッチの脆弱性のようです。-ニールネイマン1時間前
ニールネイマン

@NeilNeymanええ、彼らはログインする必要があり、ログインキーチェーンのパスワードがログインパスワードと異なる場合は、ログインキーチェーンのロックを解除する必要もあります。私はそれが脆弱性だとは言っていませんでしたが、パスワードを表示しようとするとキーチェーンアクセスとSafariはキーチェーンのパスワードを入力する必要があるのでsecurity、キーチェーンシステムが一般的にどのように機能するのに。
Lri

1

パスワードのプレーンテキスト表現を取得することを可能にするあらゆる種類のデータストアは脆弱です。リバーシブルである場合、それはブルートフォースリバーシブルでもあることを意味します。

とはいえ、Apple KeychainはトリプルDESを使用しますが、これは総当たり攻撃される可能性は低いです。パスワードとSecure Notesのみが暗号化されることに注意してください。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.