長年にわたってエンドユーザーの秘密を保存するために、パスワードマネージャーと多数のツールが作成されてきました。この急増により、セキュリティを改善するためのぼんやりとした機会が混在しています。
要するに、これは以下のグループに分けられると思います。 (代替のシナリオが必要)
私は、認証資格情報を保存できる場所、および各アプローチのリスク/脅威を示すリスク図を作成しようとしています。
目標は、アプリケーション開発者またはセキュリティコンサルタントに、エンドユーザーが秘密キーを格納し、ハッシュされていないパスワードを否認防止の目的で格納する場所についてのガイドを提供することです。
質問
存在するローカル認証パターンと、否認防止を保証する上での相対的な強みは何ですか?
これは、認証方法の概要です。誰かがこのマップを完成させ、否認防止のために適切にスコープを設定することを願っています。
私のセキュリティ知識のほとんどはiOSに基づいていますが、他のプラットフォームでの入力も歓迎します。
ローカルのみの認証
主な違いは、リモートユーザーがすべての正しい情報を持っている場合でも、リモート攻撃(SSH/RDP/HTTP 401 Unauthorized)は不可能であることです。ここでの利点は、人がデバイスを物理的に制御している場合、デバイス自体が「持っているもの」として機能し、それほど厳格でないセキュリティルールが適用される可能性があることです。
さらに、この認証資格情報は、認証トークンに直接変換できない場合があります。
秘密鍵の素材がハードウェアで保護されているかどうか(次のセクション)によっては、デバイスの安全なストレージにアクセスすることで特権を昇格させる場合があります。このセキュリティ機能を利用するネットワーク認証は確認していないため、この違いに注目する必要があるかどうかはわかりません。
Windows
Android
iOS
Apple Watch
ハードウェア保護
これは、秘密鍵を転送できない場所、および/または検証アルゴリズムがハードウェアによって保護される場所です。秘密鍵の抽出は、侵入の物理的な兆候を提供する可能性があり、認証デバイス自体を操作不能にする危険を冒す可能性があります。
これらのモードは、ネットワーク全体で使用できません。
これらの認証モードは、以前のローカル認証方法に基づいています。
ハードウェア保護パート2
RDPでは別のマシンを介してリモートマシンを認証できるため、スマートカードの分類方法がわかりません。前のセクションで理論的に使用できる他の「プロキシ」ソリューションとは対照的に、スマートカードのプライベート「プロキシ」がどのように機能するかをさらに分析する必要があります
OS経由で保護されたソフトウェア
これは、OSがセキュリティ対策を提供する場所です。ジェイルブレイクされたデバイスまたはルート化されたデバイスは、他の方法では利用可能なセキュリティ保証を危険にさらす可能性があります。
これらは、信頼できるエコシステムの外で条件付きで転送できる可能性があります(他のものより簡単です)。
iOS
Windows
クローム
Android
ソフトウェア保護/パスワードマネージャー
多くの場合、パスワードマネージャーは、これらの転送可能/ベアラートークンを「探すための追加の場所」を提供し、ハードウェアの保護された秘密が提供するのと同じレベルの整合性を提供せず、OSレベルの保証もありません。
バックアップ
バックアップは、侵入先のコンピューターまたは他のデバイスで弱く暗号化され、すべてのベアラートークンを取得するために使用されるか、「ローカルのみ」ではない可能性があります