NIST SP 800-63B改訂のポイントとは?企業に求められるパスワード・認証対策

Share

Security NEWS TOPに戻る
バックナンバー TOPに戻る

企業の認証セキュリティ強化に欠かせないNIST(米国国立標準技術研究所)のガイドライン「NIST SP 800-63」シリーズ。2024年8月、「NIST SP 800-63B」の第2次公開草案(2nd Public Draft)が発表され、パスワード管理や多要素認証に関する実務対応が注目を集めています。本記事では、企業の情報システム担当者向けに改訂のポイントと対策をわかりやすく解説します。

NIST SP 800-63シリーズの構成と企業における役割

「NIST SP 800-63」は世界的に強い影響力を持つガイドラインの一つです。日本では「電子認証に関するガイドライン」という名前で独立行政法人情報処理推進機構(IPA)からも日本語訳が公開されています。本シリーズは以下の4つの文書で構成されており、それぞれがID管理と本人認証の異なる側面を担います。

NIST SP800-63の構成

SP 800-63(概要)フレームワーク全体とリスクベース認証の考え方を解説
SP 800-63A(IDの証明)本人確認プロセスの信頼性を定義
SP 800-63B(認証とライフサイクル管理)パスワード、多要素認証、セッション管理などを規定
SP 800-63C(フェデレーション)外部IDプロバイダー連携の仕組みを定義

この中でも、企業におけるID・アクセス管理(IAM)設計に最も影響を与えるのが「SP 800-63B」です。2024年8月に改訂されたNIST SP800-63B-4第2次公開草案では、パスワード関連において、初期公開版からいくつかの変更点があります。

NIST SP800-63B-4第2次公開草案の4つの注目ポイント

2024年8月に公開されたNIST SP 800-63B-4 第2次公開草案では、現代の攻撃手法や認証環境の変化を踏まえた見直しが行われています。以下の4点は、企業の認証ポリシーに直接影響を与える重要な改訂ポイントです。

パスワードの文字数要件の強化

パスワードの長さについては、最小8文字という基準を維持しつつ、15文字以上を推奨するようになりました。最大長は少なくとも64文字に設定する必要があります。

強制的な定期変更の廃止

定期的なパスワード変更要求については、2017年の第3版から引き続き、セキュリティ侵害の証拠がない限り不要としています。

複雑性ルールの削除

複雑性要件に関しては、特定の文字タイプの混合を要求するなどの合成規則を課すことを明確に禁止しています。代わりに、Unicode文字の使用を推奨し、パスワードの選択肢を広げています。

脆弱な認証手段の廃止

「秘密の質問」など、再現性が高く推測されやすい認証手段は非推奨と明記。代替手段としてFIDO2やOTP(ワンタイムパスワード)などの強力な要素の活用が求められます

この他にも、ブロックリストの使用については、過度に大きなリストは不要であるとの見解を示しています。オンライン攻撃はすでにスロットリング要件によって制限されているためです。新たにパスワードにはフィッシング耐性がないことを明記されており、この脆弱性に対する認識を高めています。また、パスワード管理ツールの使用については、引き続き許可すべきとしていますが、関連する参考文献が追加されました。

特にパスワード文字数に関する問題は、弊社の脆弱性診断においても頻繁に検出されております。下表に2024年上半期に実施したWebアプリケーション脆弱性診断結果の中で順位が高い項目をまとめました。

弊社「SQAT® Security Report」2024-2025年秋冬号 p.18より

この中で3位となる「脆弱なパスワードの許容」は、パスワードの長さが8文字未満の場合に弊社では「高」リスクと判定し、指摘しているものとなります。最近、米国のセキュリティ企業が発表したAIを用いたパスワードの解析にかかる時間の調査結果では、8文字未満のパスワードは、例え大文字・小文字のアルファベット、数字、記号がすべて含まれていたとしても6分以内に解析できることが分かりました。(ちなみに、14文字ではパスワードがすべて小文字のアルファベットで構成されていたとしても、解析に49年かかる結果が出ています)このことからも、世の多くのシステムが大きな危険に晒されているというのが分かるかと思います。パスワードの長さについては、これまでにもMicrosoftやFBIからガイダンスが出ていますので、気になる方はあわせてご確認ください。

■Microsoft
https://support.microsoft.com/en-us/windows/create-and-use-strong-passwords-c5cebb49-8c53-4f5e-2bc4-fe357ca048eb
■FBI
https://www.fbi.gov/contact-us/field-offices/portland/news/press-releases/oregon-fbi-tech-tuesday-building-a-digital-defense-with-passwords

パスワード認証の限界と多要素認証への移行

企業における認証基盤では、依然としてパスワードに依存した運用が多く見られます。しかし、NIST SP 800-63Bでは単要素認証の限界が明確に指摘されており、セキュリティ強化には多要素認証(MFA)の導入が不可欠です。

特に今回のNIST SP 800-63B-4 第2次公開草案では、従来のパスワード運用を見直す方向性がより強調されています。たとえば「複雑性ルール」や「定期変更の義務」が削除される一方、15文字以上の長文パスワード(パスフレーズ)を受け入れることが求められています。これは、従来の複雑なルールよりも、ユーザが記憶しやすく、かつ安全な認証方法へと進化させる意図があります。

とはいえ、パスワードそのものが攻撃対象となる現実は変わりません。パスワードリスト攻撃やフィッシング、キーロガーなどによってパスワードが盗まれる事例は後を絶ちません。これに対応する手段として、NISTは「フィッシング耐性を持つMFA」の採用を推奨しています。中でもFIDO2(WebAuthn)やスマートカード、生体認証などは、高い安全性を備えています。

企業のセキュリティ担当者は、パスワード運用の見直しと同時にMFAの段階的導入を検討すべきフェーズにあります。特に「シングルサインオン(SSO)」や「IDaaS(Identity as a Service)」との連携により、ユーザ負担を軽減しながら高いセキュリティを実現する設計が可能です。

主な認証技術

まず、そもそも認証にはどのような要素があるかを振り返りましょう。認証の要素になり得るのは、その本人だけに属するモノ・コトです。それらとしては、下図のとおり、「知識」「所持」「生体」の3種類の要素が挙げられます。

Webサービスやスマホアプリにおいて使用されている認証方式には、前述した3要素のうち1つだけを用いる単要素認証(パスワードのみの認証など)、2つ以上の要素を組み合わせる多要素認証(パスワード+スマホで受信した認証コードなど)、また、認証を二段階で行うが、認証要素自体は同じ場合もある二段階認証(パスワード+秘密の質問など)があり、いずれの方式も、次のような認証技術を組み合わせて行われます。

多要素認証「FIDO2」など先進的認証技術の導入メリット

FIDO2は公開鍵暗号を用いたパスワードレス認証で、認証情報をサーバに送信しないため、フィッシングやリプレイ攻撃に強いのが特長です。

多要素認証「FIDO2」

FIDO2はユーザ視点ではスマートフォンなどでの生体認証を行うというステップで認証が完了するように見えることから、利便性が高いと考えられます。他方、システム側から見た場合、公開鍵認証と生体認証などの多要素による認証がセットになっていることから、ユーザの設定による認証強度の低下に影響されにくい方式であることは、サービスを提供する側からみて大きな利点といえます。また、ユーザは指紋や顔認証、セキュリティキーなどを用いて高速かつ直感的な認証が可能となり、IT部門のパスワード管理コストも削減できます。企業のゼロトラスト構築やセキュリティポリシー整備にも貢献するFIDO2は、今後の多要素認証のスタンダードといえるでしょう。

自社システムでの評価・実装方法

NIST SP 800-63のガイドラインに準拠した認証設計を進めるには、まず現行のシステムにおける認証手段の棚卸とリスク評価が必要です。パスワードの強度、多要素認証の有無、認証情報の保管方式などを精査し、SP 800-63Bが推奨する項目と照らし合わせることで、改善すべき点が明確になります。

また、FIDO2やOTPの導入にあたっては、SSOやIDaaSとの連携も視野に入れ、ユーザ体験と運用負荷のバランスを考慮することが重要です。小規模な範囲から段階的に展開することで、移行リスクを抑えた実装が可能となります。

まずは現状の認証が安全か確認することから

安全な認証機構を実現するための第一歩として、現在実装している認証機構や情報漏洩対策が安全かどうか確認することが推奨されます。確認には定期的なセキュリティ診断の実施が有効です。様々なセキュリティサービスベンダより各種メニューが提供されているため、対象システムにあわせて実施するとよいでしょう。

セキュリティ診断によりセキュリティ状態が可視化された後は、対策の実施レベルや時期を検討しましょう。対策にあたっては、リスクに応じて優先度を定めた上で行うことが有効です。システム特性ごとに必要十分なセキュリティを保持した認証を実現するためには、認証に関してどのような技術があるのか、どのようなセキュリティリスクに対応できる仕組みなのか把握しておくことが大切です。

【参考】ガイドライン
NISC「インターネットの安全・安心ハンドブック
https://security-portal.nisc.go.jp/guidance/handbook.html

BBSecでは

サイバーインシデント緊急対応

サイバーセキュリティ緊急対応電話受付ボタン
SQAT緊急対応バナー

SQAT脆弱性診断サービス

Webアプリケーション脆弱性診断-SQAT® for Web-

Webサイトを攻撃するハッカーの手法を用いて、外部から動的に脆弱性を診断することで、攻撃の入口となる可能性のある箇所を検出します。診断は最新のセキュリティ情報に基づき実施されますので、開発時やリリース前ばかりでなく、既存システムに対する定期的な実施といった、現状の脆弱性対策の有効性を確認するために活用することをおすすめしています。 以下より、サービス内容が記載されている資料のダウンロードもいただけます。

Webアプリケーション脆弱性診断バナー

ウェビナー開催のお知らせ

  • 2025年6月25日(水)13:00~14:00
    リモートワークの落とし穴を塞ぐ!セキュリティ情報の効率的な収集法&対策のポイント
  • 2025年7月2日(水)13:00~14:00
    いまWeb担当者が知るべきプライバシー対応と情報セキュリティ-プライバシー保護規制と進化するサイバー攻撃手法への対応-
  • 2025年7月16日(水)14:00~15:00
    進化するランサムウェア攻撃-国内最新事例から学ぶ!被害を防ぐ実践ポイント10項目を解説-
  • 最新情報はこちら


    Security NEWS TOPに戻る
    バックナンバー TOPに戻る


    資料ダウンロードボタン
    年二回発行されるセキュリティトレンドの詳細レポート。BBSecで行われた診断の統計データも掲載。
    お問い合わせボタン
    サービスに関する疑問や質問はこちらからお気軽にお問合せください。

    Security Serviceへのリンクバナー画像
    BBsecコーポレートサイトへのリンクバナー画像
    セキュリティ緊急対応のバナー画像

    セッション管理の不備/アクセス制御の不備の脆弱性
    -Webアプリケーションの脆弱性入門 3-

    Share

    Security NEWS TOPに戻る
    バックナンバー TOPに戻る

    セッション管理の不備やアクセス制御の不備が存在すると、情報漏えいや不正アクセスのリスクが高まります。本記事では、セッション管理とアクセス制御についての基本的な知識から、脆弱性の概要、脆弱性を悪用した攻撃の手口、そして攻撃を防ぐための対策方法についてご紹介します。

    前回までの内容

    SQLインジェクションは、Webアプリケーションの脆弱性の一つです。攻撃者は不正なSQL文を挿入してデータベースを操作することにより、データベースの内容を改ざんし、顧客の情報を不正に取得します。SQLインジェクション攻撃はSQL文の組み立て方法に問題があり、攻撃者が挿入した不正なSQL文を誤った命令文として認識してしまうことで発生します。攻撃を受けてしまった場合、顧客情報や決済履歴などの機密情報が漏洩する恐れがあり、企業の信用やブランドイメージに大きなダメージを与えます。対策方法ととして、プレースホルダを使用したSQL文の構成、特殊文字のエスケープ処理、SQLエラー情報の非表示化、アカウントの適切な権限付与などがあります。これらの対策は、データベースのセキュリティを維持し、攻撃を防ぐために重要です。また、SQLインジェクションの脆弱性を検出する方法として、入力フィールドに本来許可されていない文字列を設定し、Webアプリケーションの反応を観察する方法があります。このようなテストを通じて、企業のセキュリティ担当者がSQLインジェクションの脆弱性に対する問題を理解し、社内で情報を共有し、適切な対策とることで、攻撃を未然に防ぐことが可能になります。また、Webサイトの機能追加や新しい攻撃手法の発見等によって生まれた新たな脆弱性には、定期的にセキュリティ診断を実施することで適切な脆弱性対策をすることができます。

    前回記事「SQLインジェクションの脆弱性 -Webアプリケーションの脆弱性入門 2-」より

    セッションとは

    セッションとは、クライアントがサーバに接続してから切断(あるいはログインしてからログアウト)するまでの一連の流れのことです。この一連の流れを管理することをセッション管理と呼びます。セッション管理はユーザの識別や状態の維持のために必要とされます。例えば、オンラインショッピングサイトで商品をカートに追加した際、その情報はセッションとして保存されます。

    セッション管理の不備とは

    セッション管理の不備/アクセス制御の不備の脆弱性(2人とデータの紙アイコンマーク)イメージ

    Webアプリケーションの中には、セッションID(ユーザを識別するための情報)を発行し、セッション管理を行うものがあります。このときセッションIDを固定化できたり、日付・誕生日・ユーザ名で作られたりしているなど、有効なセッションIDが推測可能であるといったセッション管理の不備があると、セッションハイジャックと呼ばれる攻撃が成立する危険性があります。これにより、攻撃者が本来のユーザになりすまして権利を行使することで、プライベートな情報の閲覧や、設定の変更などが行われる可能性があります。

    セッション管理の不備の脆弱性を悪用した攻撃

    セッションハイジャック

    セッションハイジャックは、攻撃者が他のユーザのセッションIDを盗み取り、そのIDを使用してユーザのアカウントに不正アクセスする行為を指します。有効なセッションIDを推測あるいは奪取する手段が存在している場合に、セッションハイジャックが成立するリスクが高まります。

    セッションハイジャックが成立するリスクを高める要因となる脆弱性および攻撃方法には、以下のようなものがあります。

    セッションIDの固定化(セッションフィクセーション)

    攻撃者が事前にセッションIDを設定し、そのIDをユーザに強制的に使用させることができる脆弱性を悪用してユーザのセッションを乗っ取る攻撃方法です。この攻撃は、ユーザがログインする前にセッションIDが設定され、その後も変更されない場合に発生します。

    セッションIDの推測

    セッションIDが日付や誕生日、ユーザ名で構成されていたり、連番で発行されていたりするなど、簡単に予測できるものであった場合、攻撃者はそのIDを推測してユーザのアカウントにアクセスできてしまいます。また、セッションハイジャックの原因は多岐にわたり、他の脆弱性を悪用されることで有効なセッションIDが奪取される場合もあります。

    Webアプリケーション/ネットワークの脆弱性の悪用

    攻撃者によりWebサイトの脆弱性を突かれ、不正にユーザとWebサイトの間に介入されたり、ネットワークを盗聴されたりするなどして、ユーザのセッションIDを奪取される可能性があります。代表的な攻撃手法のひとつには、以前の記事で解説した「クロスサイトスクリプティング」も挙げられます。また、通信のやり取りではセッションIDが暗号化されておらず、平文のままデータのやり取りをしている場合にも、攻撃者に狙われやすくなります。

    セッション管理の不備の脆弱性を悪用した攻撃を防ぐための対策方法

    セッションIDの取り扱いや、セッションの有効期限の設定などに問題がある場合、攻撃者がセッションを乗っ取ることが容易になり、機密情報を盗み見られたり、不正な操作をされたりするなどのリスクが発生します。では攻撃を防ぐためにどのような対策方法をとればよいのでしょうか。以下に例をご紹介いたします。

    セッションIDを推測困難なものにする

    攻撃者によってセッションIDを推測されてしまった場合、そのユーザになりすまして、本来アクセスできないサイトに第三者がアクセスできてしまう恐れがあるため、セッションIDは推測困難な値にする必要があります。

    ログイン、ログアウトといった処理を行う際は、新しいセッションIDを発行する

    ログイン時にセッションIDの正当性を検証することで、攻撃者があらかじめ用意したセッションIDを強制的に使用させられることを防ぎます。

    セッションハイジャック対策

    有効なセッションIDを奪われないようにすることだけでなく、セッションIDを奪われたとしてもセッションハイジャックを成立させないような環境を作るのが対策のポイントです。

    • セッションIDとワンタイムトークン付与によるユーザの確認:セッションIDとは別にログイン成功後にワンタイムトークンを発行し、画面遷移ごとにサーバ側で管理しているトークンと照合します。発行するワンタイムトークンは、推測困難かつランダムな文字列で構成する必要があります。
    • IPアドレスによるユーザの確認:ユーザを特定する情報として、IPアドレスを使用することが可能です。さらに、セッションIDをCookieで管理している場合には、Cookieにsecure属性およびHttpOnly属性を設定することで、攻撃者によるCookie情報奪取のリスクを緩和できます。

    対策例としては、上記のとおりですが、セキュリティ専門家への相談も重要です。現在の技術環境では、常に新しい脅威が出現するため、対策は継続的に見直し、強化する必要があります。

    アクセス制御の不備とは

    アクセス制御の不備とは、Webアプリケーションにおいて、本来付与されている権限の範囲内でのみ動作するような制御が実装されていない問題を指します。例えば、一般ユーザとしてログインした際に管理者としての権利を行使できてしまう権限昇格、パラメータを操作することで、本来制限された領域外のファイルやディレクトリにアクセスすることが可能となるパストラバーサルなどです。不正アクセスや意図しない情報の公開をはじめとした、様々なリスクが生じます。

    アクセス制御の不備の脆弱性

    権限昇格

    ログインすることなくユーザとしてシステムに対する操作を実行できたり、一般ユーザが本来与えられていない上位権限(管理者権限等)を一時的に取得することで、システムに対する不正な操作や機能の実行が可能になったりする問題。

    パストラバーサル

    外部からのパラメータでWebサーバ内のファイル名を直接指定するWebアプリケーションにおいて、URLパラメータを操作して不正なパス名を渡すことで、本来アクセスを許可されていないディレクトリやファイルに対して、攻撃者がアクセス可能になる問題。

    不適切な情報の出力

    本来権限が与えられているユーザのみアクセスできるものに対して、不正なユーザが本来許可されていない特定のURLにアクセスしたり、操作を行ったりすることで、外部に公開されていない情報(機密情報・ユーザ情報)が閲覧可能になる問題。

    アクセス制御の不備を悪用した攻撃を防ぐための対策方法

    主な対策方法は以下の通りです。

    権限昇格

    権限管理を行う際は、外部から値を操作可能なパラメータは使用せずサーバ側で行う実装とし、権限による機能制限を実装する際には、各機能へのアクセス時に実行者のアカウントと権限のチェックを実施します。

    パストラバーサル

    アプリケーションが取得するファイルは既定のディレクトリに保存し、アクセスするファイルパスを操作できないようにし、サーバ上でアプリケーションを実行するアカウントのアクセス権限を見直します。また、あらかじめ定義したホワイトリストに基づいた入力値検証を実施し、ファイル名に不正な文字列が含まれる場合は、適切なエラー処理を行うことが推奨されます。

    不適切な情報の出力

    外部への公開が不要なディレクトリやファイルは、外部からアクセスできないように適切なアクセス制御を行います。ログイン認証によるアクセス制御を実施する場合には、適切なセッション管理を伴った認証機構を実装してください。また、アプリケーションの動作に必要がないディレクトリやファイルは削除することを推奨します。

    まとめ

    セッション管理の不備/アクセス制御の不備の脆弱性(3人と上部にランプがついたアイコンマーク)イメージ

    セッション管理の不備は、セッション管理に不備があることで、ユーザになりすまし、プライベートな情報の閲覧や、設定の変更などができてしまう問題です。対策方法としては、セッションIDを容易に推測できないものにし、ワンタイムトークンの発行やIPアドレスによるユーザの確認を行うなど、適切なセッション管理を実装することで、ユーザの情報やデータを安全に保護することができます。

    アクセス制御の不備は、Webアプリケーションにおいて、本来付与されている権限の範囲内でのみ動作するような制御が実装されていない問題を指します。ユーザに対して、あらかじめ与えられた権限から外れた操作を実行できないようにポリシーを適用することにより、情報の漏えいやシステムの不正操作を防ぎます。

    セキュリティ対策を適切に実施することが、Webアプリケーションの安全性を高めるための鍵となります。ユーザの情報やデータを保護するために、セキュリティ専門家への相談、常に最新のセキュリティ情報の収集をすることなどが重要です。

    Security NEWS TOPに戻る
    バックナンバー TOPに戻る


    資料ダウンロードボタン
    年二回発行されるセキュリティトレンドの詳細レポート。BBSecで行われた診断の統計データも掲載。
    お問い合わせボタン
    サービスに関する疑問や質問はこちらからお気軽にお問合せください。

    Security Serviceへのリンクバナー画像
    BBsecコーポレートサイトへのリンクバナー画像
    セキュリティ緊急対応のバナー画像
    セキュリティトピックス動画申し込みページリンクへのバナー画像