トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS

V2 認証検証の要件 のバックアップ(No.2)


セキュアコーディングガイド?

管理目標

認証とは誰か (あるいは何か) を真正であるとして確立または確認する行為であり、個人またはデバイスに関する申し出は正しく、なりすましに耐性があり、パスワードの回復や傍受を防ぐことです。
ASVS が最初にリリースされたとき、ユーザー名 + パスワードは高度なセキュリティシステム以外で最も一般的な認証形式でした。多要素認証 (MFA) はセキュリティサークルで一般的に受け入れられていますが、他ではほとんど必要とされていません。パスワード侵害の数が増加するにつれ、ユーザー名は何かしらの形で機密情報であり、パスワードは不明であるという考えでは、多くのセキュリティコントロールは維持できなくなりました。例えば、NIST 800-63 はユーザー名とナレッジベース認証 (KBA) を公開情報、SMS および電子メール通知を "restricted" authenticator types 、パスワードを pre-breached としています。この本質は、知識ベースの認証符号、SMS および電子メールでのリカバリー、パスワード履歴、複雑さ、ローテーションコントロールを無用とします。これらのコントロールはまったく役に立たず、ユーザーは数か月ごとに脆弱なパスワードを考えてきました。しかし、50億を超えるユーザー名とパスワード侵害のリリースにより、先に進む時がきました。
ASVS のすべての章の中で、認証とセッション管理の章が最も変更されています。効果的で、エビデンスベースのリーディングプラクティスの採用は多くの人にとって挑戦となるでしょうが、それはまったく問題ありません。今ここでポストパスワードの将来への移行を開始する必要があります。

NIST 800-63 - 最新のエビデンスベースの認証標準

NIST 800-63b は最新のエビデンスベースの標準であり、適用可能性とは関係なく、利用可能な最適なアドバイスを表しています。この標準は世界中のすべての組織に役立ちますが、特に米国の代理店および米国の代理店を扱う組織に関連します。
NIST 800-63 の用語は、特にユーザー名 + パスワードの認証にしか慣れていない場合には、最初は少しわかりにくいかもしれません。最新の認証に進歩する必要があるため、将来一般的になるであろう用語を導入する必要がありますが、業界がこれらの新しい用語に落ち着くまで理解の難しさを理解しています。この章の最後に支援のための用語集があります。要件の表記ではなく、要件の意図を満たすために多くの要件を言い換えました。例えば、NIST が「記憶された秘密 (memorized secret)」を使用する場合、ASVS では「パスワード」という用語を使用します。
ASVS V2 認証、V3 セッション管理、および範囲は狭いですが、V4 アクセス制御は選択された NIST 800-63b コントロールの準拠サブセットに適応し、一般的な脅威と一般的に悪用される認証の脆弱性に焦点を当てています。NIST 800-63 に完全に準拠する必要がある場合には、NIST 800-63 を確認してください。

適切な NIST AAL レベルの選択

アプリケーションセキュリティ検証標準は ASVS L1 を NIST AAL1 要件に、L2 を AAL2 に、L3 を AAL3 にマップしようとしました。しかし、「必須」コントロールとしての ASVS レベル 1 のアプローチはアプリケーションや API を検証するための正しい AAL レベルであるとは限りません。例えば、アプリケーションがレベル 3 アプリケーションである場合や AAL3 とする規制要件がある場合には、セクション V2 および V3 セッション管理でレベル 3 を選択すべきです。NIST 準拠の認証アサーションレベル (AAL) の選択は NIST-63b ガイドラインに従って実行すべきです。NIST 800-63b Section 6.2 の Selecting AAL に記載されています。

凡例

特に最新の認証がアプリケーションのロードマップ上にある場合には、アプリケーションは常に現在のレベルの要件を超える可能性があります。以前は、ASVS には必須の MFA を要求していました。NIST は必須の MFA を要求しません。したがって、この章では ASVS が推奨するがコントロールを要求しない場所を示すために、オプションの指定を使用しました。この標準では以下のキーが使用されます。

記号説明
必須ではない
o推奨、但し必須ではない
必須