【要点抽出】NIST SP800-53 rev.5, 53B その9

いよいよ今回でNIST SP800-53の読み解きは終わりです。
今回は以下目次の2つの管理策ファミリーを読みます。

https://www.ipa.go.jp/security/reports/oversea/nist/about.html

システムおよび情報の完全性(SI)ファミリー

このファミリーには101個の管理策が属します。
一つ前のSCに続いて技術的対策が集まったファミリーですが、SCがインフラの管理策が多いのに対し、SIはソフトウェアやデータの管理策が中心という印象を受けました。
子レベルの管理策は以下です。(グレー字は撤回された管理策)

表1.SIファミリーの管理策

「低」レベルのベースラインとして、ソフトウェアやファームウェアの欠陥を特定し、解消のためにアップデートすることを求めています(SI-2)。
この際、アップデートの配布元を署名を用いて検証することもあわせて重要です。
また、脅威の監視として、悪意のあるコード(文脈的にマルウェアのことと思われる)に対する定期およびリアルタイムスキャン(SI-3)や、ネットワークの内部境界・外部境界における監視を行う必要があります(SI-4)。
米国ではCISA(サイバーセキュリティ庁)からのセキュリティアラートや勧告が時々出ますので、それを受け取って対処することも求められます(SI-5)。

「中」レベルのベースラインとして、「低」で記載したソフトウェアのアップデートや脅威の監視を自動化することを求めています(SI-2(2)、SI-4(2))。監視の自動化の手法としてSIEMに言及しています。
監視機器類が発するアラートはしかるべき人に通知します(SI-4(5))。
これ以外に以下のような管理策が求められますが、雑多感があるため箇条書きにします。

  • メール等から届くスパムに対し、署名を用いて対策する(SI-8)

  • ソフトウェアやファームウェアの完全性チェックを行い、許可していない変更を見つけた場合はインシデント対応を行う(SI-7、SI-7(1)、SI-7(7))

  • システムに対する入力値の妥当性チェックを行う(SI-10)

  • システムから出力するエラーメッセージに、攻撃者にとってヒントとなる情報を含まないよう注意する(SI-11)

  • バッファオーバーフロー等への対策として、データ実行防止やメモリのアドレス空間のランダム化によるメモリ保護を行う(SI-16)

「高」レベルのベースラインとして、
「低」で記載した監視について様々な観点の拡張管理策があります。

  • 暗号通信の復号化(SI-4(10))

  • 認可されていないワイヤレスのアクセスポイントの存在(SI-4(14))

  • 認可されていないネットワークサービスの存在(SI-4(22))

  • 特権ユーザに対する追加の監視(SI-4(20))

また、「中」で触れたソフトウェアやファームウェアの完全性チェックについても、異常を検出した際の通知や対処を自動化する管理策(SI-7(2))(SI-7(5))や、ソフトウェアをインストールする前に署名を検証することを求める管理策があります(SI-7(15))。
ここまでに挙げたセキュリティ機能やプライバシー機能が正しく動いていることを検証し、問題があれば即座にアラートを出した上で対処を求めます(SI-6)。

この他の管理策は90個ありますが、特徴的なものを大きく分けると「よりレベルの高い技術的対策」「個人情報の保護策」の2つです。
「よりレベルの高い技術的対策」については、勝手にそうまとめましたが、既にある程度のレベルの対策をしている組織にとって追加の補強策として考えられるものがありそうです。

  • 「悪意のあるコードの保護メカニズム」の検証のために既知の良性コードを使う(SI-3(6))
    #実際のマルウェア等を用いて行うのが危険なのでeicarのようなものを指しているのかと思います。

  • リバースエンジニアリングやサンドボックス等による動作解析を用いて悪意のあるコードを分析し、セキュリティ保護策へのインプットとする(SI-3(10))

  • 侵入検知の仕組みとFirewallなどを連動させ、脅威を検出したら自動的に分離・遮断する(SI-4(3))

  • システムの通常時のトラフィックパターンから監視のベースラインを決め(SI-4(13))、アウトバウンド通信を分析し、異常に大きなファイル転送や想定していないプロトコルやポートの使用などを検出する(SI-4(11))

  • 人事など様々な情報源からリスクが高いと判断された個人(例えば退職予定者など)に追加の監視を行う(SI-4(19))

  • 入手したIoC(悪性のIPアドレスやURL等の情報)をセキュリティ保護策へのインプットとする。(SI-4(24))

  • ランタイム計装を使用して、実行中のソフトウェアからの情報をもとに、脆弱性の悪用の試みを監視する(SI-7(17))
    #恐らくRASPのことと推測

  • 学習能力を備えるスパム保護機能を採用する(SI-8(3))

  • 攻撃者が時間をかけて侵入することを阻害するために、システムに非永続性をもたせる(SI-14)
    #非永続性とは、例えばサインアウトの度に初期化される仮想デスクトップなど、脅威が存在し続けにくい環境のイメージです。

  • 組織のデータに偽のメールアドレス等のダミーデータを仕込み、そのメールアドレス宛にメールが届いた場合に情報漏洩を判断する(SI-20)

「個人情報の保護」に関する管理策は以下です。

  • 個人情報の正確性・関連性・適時性・完全性を確認し、古いまたは誤った情報を削除する(SI-18)また、この修正や削除をタグなどを用いて自動化することも有効(SI-18(1)、SI-18(2))。

  • 個人情報の持ち主の要望に応じて、情報を修正または削除し(SI-18(4))、その旨を個人に通知する(SI-18(5))

  • 必要がない個人情報の要素をそもそも収集しない、あるいは収集後に匿名化する(SI-19、SI-19(1))また、アーカイブデータや外部に公開するデータについても匿名化を考慮する(SI-19(2)、SI-19(3))

  • 匿名化は妥当性確認済のソフトウェアを用いて行い、侵入テストを行うことで匿名化の十分性を評価する(SI-19(7)、SI-19(8))


サプライチェーンのリスクマネジメント(SR)ファミリー

このファミリーには27個の管理策が属します。
子レベルの管理策は以下です。

表2.SRファミリーの管理策

「低」レベルのベースラインとして、サプライチェーンリスクの管理計画を立て(SR-2)、主導チームを設置します(SR-2(1))。
サプライチェーンには多くのプロセスが含まれます。例えばシステム開発、保守、廃棄、発送、構成管理などがあり、その中で攻撃に対して十分に保護できていない弱点を見つけ、修正するプロセスを作ることを求めています(SR-3)。
サプライチェーンリスクを低減できる方法はそう多くなく、以下に集約されます。

  • 契約に様々な条件を盛り込む
    例えば汚染や偽造を禁止する文言を組み入れる(SR-5)、サプライチェーンが侵害された場合に通知をもらえるようにする(SR-8)

  • サプライヤを評価する
    「中」ベースラインで触れます

  • コンポーネントを検査する
    定期的あるいはサプライヤの環境変化などのタイミングで、コンポーネントに改ざんがないことを確認する(SR-10、SR-11)

  • しっかり廃棄する
    データ残存がないよう、ディスクのクリーニングや暗号鍵の消去を行う(SR-12)

「中」レベルのベースラインとして、自組織または独立したサードパーティがサプライヤを評価します。サプライヤのリスクマネジメントプロセス、外国の所有権、再委託先に対する管理能力等をチェックします(SR-6)。

「高」レベルのベースラインとして、システムやサービスに対するリバースエンジニアリングや改ざんから守るために、耐タンパ性や改ざん検知の仕組みを取り入れることを求めています(SR-9、SR-9(1))。

その他、ベースラインに選ばれていないものは以下です。

  • コンポーネントの供給元を多様化することでサプライチェーンの冗長性を高める(SR-3(1))

  • できるだけカスタマイズは避け業界で定評のある承認済みベンダを採用する(SR-3(2))

  • サプライヤとの契約に含まれる管理策が、その奥にいる再委託先にも適用されるようにする(SR-3(3))

  • サプライチェーンに誰が、何が含まれるのかを識別し、いつ作られてどう変更されたか年代記を作る(SR-4)


感想

セキュリティ担当たるものNIST SP800-53は一度は読んでおかねばならない気がする。しかし、開くたびにその分量に圧倒される。大体、1200個近くも何をそんなに書くことがあるのか。なんか怖い。
そんな葛藤を数年続けた末、とうとう一通りじっくり読めました。

苦労しながら読み込んだ結果、私はまた一歩、セキュリティ担当として新たな高みへ進化…した感はありません。
あくまで本書は「セキュリティ管理策のカタログ」でしかなく、活用のためには組織にあわせて取捨選択や追加する必要があり、そちらの方がセキュリティマネジメントの世界では重要だからです。
また、本書の管理策を深堀するには他のSP800シリーズも読む必要があります。認証認可はSP800-63、システム開発ライフサイクルはSP800-160、暗号鍵周りはSP800-56というように、専門的なミソの部分はまた別のドキュメントに記されています。
そうした道のりの長さを考えると、組織のセキュリティレベルを手っ取り早く評価して改善するベースラインとしては、恐らくCIS Controlsのほうが適していると思います(数も現実的)。

が、それでも一度本書を読んでみたかったのは「東京に住んでるのに東京タワー登ったことない」的なすわりの悪さからです。
本書をベースにSP800-171が、またSP800-171を参考に日本の政府統一基準が作られている関係を踏まえると、やはり大元のドキュメントは知っておく必要があると思いました。


***NIST SP800-53シリーズのリンク***

  1. NIST SP800-53の読み方:こちら

  2. 管理策の概観、ACファミリー:こちら

  3. AT、AU、CA、CMファミリー:こちら

  4. CP、IA、IRファミリー:こちら

  5. MA、MP、PEファミリー:こちら

  6. PL、PM、PS、PTファミリー:こちら

  7. RA、SAファミリー:こちら

  8. SCファミリー:こちら

  9. SI、SRファミリー:こちら(この記事)

***はじめての方へ***
これは何のnoteだ?と思われた方はこちらをご覧ください。
これまでにまとめたガイドライン類の一覧はこちら

この記事が気に入ったらサポートをしてみませんか?