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

・認証情報のダンプ のバックアップ(No.16)


情報システム開発契約のセキュリティ仕様作成のためのガイドライン(案)?
MITRE ATT&CKに基づく詳細設定対策

戦術:認証情報アクセス

概説

認証情報のダンプは、OSに保存されているアカウントのIDとパスワードを取得するプロセスです。その後、窃取した資格情報を利用して、情報の収集や水平展開を図ります。このため、認証情報のダンプを阻止することは、被害の拡大を防ぐ重要なポイントとなります。
認証情報はOSによってHashされ安全な状態で保管され、AdministratorやSYSTEM権限でアクセスされますので、一般的な標準ユーザー権限でログオンしている状態では脆弱性がない限り、悪意あるプログラム(マルウェア)は、認証情報にアクセスできません。しかし、Administrator権限でログオン中に悪意あるプログラムの実行を招くと、認証情報のアクセスを許してしまうこととなります。
MITRE ATT&CKでは、主にWindowsからの認証情報の窃取にフォーカスしていますが、これ以外にも、DBへの接続情報やアプリケーションの認証情報などが探索される可能性もあることから、本項では、セキュアコーディングで注意事項を加えてあります。

緩和の方針

認証情報の窃取は管理者権限が必要なため、利用者の権限を標準ユーザーにすることは大変効果的で、この攻撃の緩和に役立ちます。管理者に対しては、厳重な保護が必要です。システム管理者、もしくは管理者特権が必要な業務には多角的な防御を検討します。

運用やNetworkが変更された場合の影響の有無

  • 意図しない管理者権限でのアプリケーションのインストールや、電子メール、Webサイトの閲覧は悪意あるプログラムに高位の権限を与えるため、十分な管理が必要です。

優先すべき措置

多角的な防御が必要です。以下のすべての措置を優先的に検討して下さい。

  • ローカル Administrators
    • ドメインユーザーはローカル Administratorsのメンバーから除外します。
    • ローカル Administrators のメンバーを監査します。
    • LAPSの導入を検討します。
  • その他の事項
    • 互換性維持のための弱いハッシュ、暗号方式、平文パスワードの使用を禁止します。
    • LSASSプロセスを保護します。 アクセスコントロールを参照してください。

ユーザー運用管理責任

リスクの受容

優先すべき措置を講じることができない場合、このリスクの回避は困難です。慎重な検討を行ってください。

業務特権リスク受容のための条件例
すべてLocal AdministratorLAPSを導入し、すべての端末、サーバーのLocal Administratorのパスワードをユニークにする。ドメインユーザーはLocal Administrators から除外する。
プログラム開発担当者Local AdministratorWindows Defender Credential Guardの導入。多要素認証の導入。定期的なトレーニング。
Help Desk 担当者Domain/Local Administrator
システム管理者Enterprise/Domain/Local Administrator
部門管理者(OUの委任)OUのパスワードリセット、グループ管理、ドメイン参加等
役職者、研究者、秘書標準ユーザー標準ユーザーでの運用。Local Administrators に含めない。
上記以外の一般業務担当者標準ユーザー

Windows Defender Credential Guard はWindows 10 Enterprise Editionが必要ですが、Windows Defender Credential Guard は管理者特権のWindows で実行されるマルウェアに対して、仮想化ベースのセキュリティで資格情報を保護するため、リスク受容に対しては有効な手段といえます。

啓発・教育

  • 対象:システム管理者
    • 認証情報のダンププロセスと攻撃プロセスを理解させるとともに、管理者の認証情報の適切な保護や、運用について検討させます。

利用規定

以下の規程の整備を検討します。

  • ローカル Administrator 権限を有するドメインユーザーの管理規程。

情報システム設計開発部門・運用部門(ベンダー代行を含む)

ポリシー

以下のポリシーの適用を検討します。
① ローカルAdministratorの無効化をします。Windows 10、Windows Server 2016以降ではDefaultでローカルAdministratorは無効になっていますが、Windows 8.1、Windows Server 2012R2以前は有効となっています。グループポリシーで以下の設定します。

[コンピュータの構成]>[Windowsの設定]>[セキュリティの設定]>[ローカルポリシー]>[セキュリティオプション]>[アカウント: Administrator アカウントの状態] を [無効] に設定する。
なお、ビルトインローカルAdministratorを有効にし、他のIDに設定する方法がありますが、ローカルのAdministratorの識別子(Security Identifier:SID)は公知の情報なため、攻撃側からは容易にIDを特定できるため、他のIDに設定する方法は推奨できません。

② LSASSプロセスを保護します。 資格情報を管理するLSASSプロセスへの攻撃を防御します。

[グループポリシー]-[コンピュータの構成]-[基本設定]-[Windowsの設定]-[レジストリ] で [\HKLM\SYSTEM\CurrentControlSet\Control\Lsa] に値を新規に設定 します。

③ WDigest認証プロトコルを無効化します。

[コンピュータの構成]>[ポリシー]>[Windows の設定]>[管理用テンプレート]>[MS Security Guide] を [無効] に設定する。(・L1 MS Security Guide を参照して下さい。)

④ MITRE ATT&CKの緩和策では、Protected Users や NTLM認証の無効が提案されていますが、広範な影響が出ますので、慎重にテストを行ってください。

モニタリング

以下の監査を検討して下さい。

  • 管理者端末、重要資産を有する端末、メンバーサーバー、ドメインコントローラー
    • 「17章・コマンドラインインターフェースの悪用」、「18章・PowerShellの悪用」を参照し、監査を実施してください。
    • セキュリティイベントログ Evenmt ID 4624 でWDigestのプロセスの使用を監査して下さい。存在する場合は、侵害が疑われるため、専門家の助言を得てください。
      • グオンプロセス:WDigest
        認証パッケージ:WDigest
  • ドメインコントローラー
    • セキュリティイベントログ:イベントEvent ID 4776 でWDigestパッケージの使用を監査して下さい。存在する場合は、侵害が疑われるため、専門家の助言を得てください。
      • 認証パッケージ:WDigest

ネットワークデザイン

  • 該当しません。

アクセスコントロール

  1. ドメインユーザーをローカルAdministratorグループから外す ローカルのAdministratorグループに所属しているドメインユーザーをすべて削除します。
  2. クレデンシャルガードを導入し、資格情報を仮想化ベースのセキュリティ で保護します。

    Windows Defender Credential Guard の要件:https://docs.microsoft.com/ja-jp/windows/security/identity-protection/credential-guard/credential-guard-requirements

フィルタリング

該当しません。

仮想端末運用

該当しません。

エンドポイント対策

Endpoint Detection and Response の導入を検討します。

受託開発ベンダー管理責任

セキュアコーディング

  • 特権が必要なサービスに対する認証を行う場合は、システムの認証ダイアログ(またはOSが提供する仕組み)を使用する。
  • アプリケーション自身に認証情報等をハードコーディングすることは禁止です。app.configなどに認証情報や接続文字列を記述する場合は、暗号化を行ってください。(必須)
  • プレーンテキストで認証情報をメモリ、ディスクに格納する事を禁止します。(必須)
  • 物理メモリから機密情報がスワップされディスクに書き出されないようにする。(推奨:権限によりロックできない場合がある。)
  • JPCERT/CC Java コーディングスタンダード MSC03-J. センシティブな情報をハードコードしない を参照してください。

    https://www.jpcert.or.jp/java-rules/msc03-j.html

    • JPCERT/CC CERT C コーディングスタンダード MSC18-C. プログラムコードの中でパスワードなどの機密情報を扱うときは注意する を参照してください。

      https://www.jpcert.or.jp/sc-rules/c-msc18-c.html

開発環境管理

  • ユーザー運用管理責任、情報システム設計開発部門・運用部門責任に準じる。 例外はすべて文書化し、適切な監査を実施する。

サプライチェーン正常性維持"

  • ユーザー運用管理責任、情報システム設計開発部門・運用部門責任に準じる。 例外はすべて文書化し、適切な監査を実施する。