Trustworthy システム

Trustworthy システム

シスコの信頼できるテクノロジーにより、製品保証と基本的なセキュリティ機能が提供されます。これらの機能により、シスコのソリューションのセキュリティとレジリエンスが強化されます。

デバイスの偽造やハードウェアおよびソフトウェアへの悪意のある攻撃から保護し、デバイスの真正性と完全性を確認するために、シスコはデジタル署名付きソフトウェアイメージ、ハードウェアアンカー 型セキュアブート、Secure Unique Device Identifier(SUDI)、その他の信頼できるテクノロジーを利用しています。

これらのセキュリティ機能により、

  • 偽造やソフトウェア変更からデバイスが保護され、

  • 暗号化されたセキュアな通信を確立するのに役立ち、

  • シスコのネットワークデバイスが意図されたように機能できるようになります。

信頼できるテクノロジーにより、デバイスのハードウェアおよびソフトウェアに対して自動化された完全性チェックが実行されます。デバイスへの信頼は、ハードウェアレベルから始まり、ブートプロセス、オペレーティングシステムのカーネル、およびオペレーティングシステムのランタイムまで継続されます。デバイスが侵害された場合は、ブートプロセスをシャットダウンしてシステムを保護することができます。

Trustworthy システムの必要性

複雑なコンピューティングネットワークと通信ネットワークを当てにして、サービス運用を中断なしで継続しています。ネットワークをセキュアな状態に保ち、ユーザーの信頼を維持するには、信頼性の高いデータと IT インフラストラクチャが必要です。いつでもどこからでも個人データにアクセスできるようになるため、すべてのネットワークにわたって一貫性のあるアクセス権とセキュリティが期待されます。

攻撃者はますます攻撃的になっているため、急速に変化する脅威状況にさらされています。悪意のある攻撃者による攻撃や、偽造または改ざんされた製品からネットワークを保護する必要があります。Trustworthy システムは、ネットワークセキュリティを維持し、ユーザーの信頼を保護し、ますます巧妙になっている脅威に備えることに役立ちます。

SUDI

SUDI は、X.509 証明書を使用してデバイスに改ざん防止 ID を提供します。秘密キーは製造時にシスコのトラストアンカーモジュール(TAm)に安全に格納されるため、デバイスの ID が確認されて、偽造から保護されるようになります。

デバイスは、製品 ID とシリアル番号を組み合わせた SUDI によって一意に識別されます。X.509 バージョン 3 証明書は、IEEE 802.1AR に準拠し、RSA または ECC 暗号化が使用されているため、ID の複製やスプーフィングが防止され、偽造のリスクから機器を保護できます。

トラストアンカーモジュール

Cisco TAm は、シスコデバイスに埋め込まれる改ざん防止チップです。これには、不揮発性セキュアストレージが含まれており、デバイスの信頼チェーンの基盤として機能します。メーカーの公開キーは、デバイスの TAm チップ内に安全に格納されます。

デバイスには、ACT および ACT2 と呼ばれる専用ハードウェアチップをデバイス内に埋め込むことによる偽造防止テクノロジー(ACT)が含まれています。

TAm には次の機能があります。

ID

製造時に、デバイスの ACT2 チップは、X.509v3 ECDSA または RSA 証明書(またはその両方)としての Cisco SUDI、およびキーペアと証明書チェーンを受信します。SUDI は、ハードウェア偽造防止チェックの基礎を形成し、デバイスの初期ネットワーク ID を確立するのに役立ちます。

エントロピー

ACT2 は、NIST SP 800-90B 準拠のエントロピーソースを備えているため、ホストベースの疑似乱数ジェネレータのシードに最適です。

キー管理

ACT2 は、対称キーだけでなく、ECC および RSA の非対称キーペアを生成できます。重要なのは、対称キーおよびこれらのキーペアの秘密部分がチップから解放されないことです。これらの保護されたキーへのアクセスは、暗号化 API を介してのみ行われ、ACT2 によって生成されたキーペアに対して証明書を登録できます。

セキュアなストレージ

ACT2 は、物理的に改ざんされる恐れがない約 50 KB のホストデータストレージを提供します。そのため、ライセンスなどの機密情報やクレデンシャルなどの機密データを格納するのに最適なリポジトリです。重要なのは、重要なデバイスキーやパスワードもこの安全なストレージ内で保護されることです。

デバイス内の TAm および SUDI は、モバイルデバイスの IMEI 番号と同様に、一意のハードウェア識別子として機能し、追加機能も提供します。

TAm は、アプリケーションが TAm ライブラリを介してアクセスする暗号キー用のセキュアな不揮発性ストレージを備えています。デバイスが起動すると、SUDI と TAm に格納されている起動測定値によって、デバイスが正当であることが確認され、ブートプロセスが期待どおりに動作すること、および改ざんの検出に役立ちます。

セキュアブート

Cisco Secure Boot により、デバイスで実行されるコードの真正性と完全性が保証されます。ハードウェアアンカー型セキュアブートにより、改ざん防止ハードウェア内のマイクロローダー(ブートコード最初の部分)が保護されます。これにより、信頼の基点が作り出され、汚染されたネットワークソフトウェアがシスコ デバイスで実行されるのを効果的に防止できます。

シスコは、製造元の秘密キーを使用してすべてのイメージにデジタル署名します。これは、セキュアな監査済み環境で行われます。キーペアは、2048 ビットモジュラスの RSA 暗号化を使用して生成されます。

デバイスは、ブート後に SUDI を介して TAm で認証されるため、ハードウェアが偽造または侵害されたユニットではなく、本当に純正シスコ製品であることが保証されます。

ハードウェアに直接埋め込まれている公開キーには、TAm ライブラリを介してアクセスできます。Cisco IOS XE ソフトウェアイメージは、ビルド DevOps リリース環境から削除されることがない秘密キーを使用して署名されます。ブートプロセスで、これらのキーが比較され、ハードウェアとソフトウェアの両方がシスコによって署名されていることが確認されます。

TAm が CPU にロードされる前にマイクロローダーの完全性を確認するときにセキュアチェーンが開始されます。次に、マイクロローダーが TAm の API を使用して BIOS またはブートローダーをチェックし、ロードする前にイメージが正当であることを確認します。この検証は、Cisco IOS XE イメージのロード時にも行われます。

CPU がイメージをロードすると、オペレーティングシステムは TAm API を使用して、KLM、RPM、ASIC SDK などのソフトウェアモジュールを確認してからアクティブ化します。

チップガード(チップ保護)

シスコ デバイスには、ハードウェアの完全性を保証するチップ保護機能が組み込まれています。この保護メカニズムでは、製造時に各デバイスの署名が記録され、デバイスのブートごとに署名が比較されるため、デバイスの周辺機器が偽造されていないことが保証されます。

製造時間データベース

製造時間データベースは、シスコの ASIC、CPU、SoC、およびその他のデバイスの一意の ID と、ボードに特有のデバイスタイプのオリジナルコピーです。ほとんどの場合、一意の ID は、デバイスのシリアル番号またはそのデバイスのその他の適切な値です。製造データベースは、ボードに特有の Known Good Values(KGV)データベースであり、製造プロセスの一環として TAm デバイスにプログラミングされます。

収集対象データベース

収集対象データベースは、ボードがブートされて TAm デバイスに拡張されるたびにファームウェアによって収集されます。測定値は、ファームウェアまたはシステムドライバによって収集されます。

BIOS ブートプロセスでは、TAm ライブラリが組み込まれて、収集対象データベースに値が入力されます。BIOS は初期化の一環としてさまざまなハードウェアコンポーネントを検出し、検出されたデバイスが製造時間データベースの一部である場合は、TAm ライブラリ API を使用してデバイスタイプと一意の ID を記録します。すべてのデバイスタイプと一意の ID が収集対象データベースに書き込まれると、プラットフォームのオペレーティングシステムが TAm ライブラリ API を呼び出して、製造時間データベースと照合して収集対象データベースを検証します。不一致がある場合、プラットフォームはブートプロセスを保留します。

乱数生成とエントロピーソース

強力な乱数生成(RNG)は暗号化の中核を成しており、弱い RNG では暗号化システム全体が弱体化する可能性があります。乱数ジェネレータは、暗号キーの作成、ユーザーと Web サイト間の非常にセキュアな通信の確立、電子メールアカウントのパスワードのリセットにおいて、重要な役割を果たします。確実にランダムでなければ、攻撃者はシステムが生成しようとするものを予測し、アルゴリズムを弱体化させることができます。シスコのデバイスでは Linux の RNG が使用されています。RNG では通常、ハードウェア乱数ジェネレータ(HRNG)から得られるランダムな値がシードとして使用されるため、推測することは不可能です。ハードウェアには、NIST 仕様に準拠していて、トラストアンカー内の真のランダムソースからエントロピーを抽出するはるかに効果的な RNG を提供できる、トラストアンカーモジュールも組み込まれています。

マルチステージ BIOS

BIOS は、RAM 内で完全にロード、検証、および実行して BIOS を外部変更(Time-of-Check to Time-of-Use 攻撃など)から保護できるように、複数の小さな部分に分割されています。1を押します)。BIOS は次のもので構成されています。

  • Pre-EFI 初期化(PEI)

  • ファームウェア依存関係モジュール(FDM)

  • ドライバ実行環境(DXE)

デバイスにマルチステージ BIOS があると、Cisco BIOS をバイパスするのが非常に困難になります。BIOS に介入すると、ブートローダーによる OS イメージのロードが停止されます。

ランタイム防御(RTD)

ランタイム防御は、実行中のソフトウェアに対する悪意のあるコードのインジェクション攻撃を対象としています。シスコのランタイム防御には、アドレス空間配置のランダム化(ASLR)、組み込みのオブジェクトサイズチェック(BOSC)、X-Space などがあります。これらの防御策により、攻撃者が実行中のソフトウェアの脆弱性を悪用することが困難または不可能になります。

アドレス空間配置のランダム化(ASLR)

アドレス空間配置のランダム化(ASLR)は、シスコのデバイスのすべてのプロセスとカーネルのセクションの場所をランダム化して、攻撃者が既存の脆弱性を悪用するのを困難にする、重要なセキュリティ強化機能です。ASLR は、実行保護と併用される保護です。実行保護では、許可されていない領域からのコードの不用意な実行が阻止され、実行可能領域へのコードの上書きが禁止されます。

プロセスに対する ASLR 機能は、シスコのバイナリとサードパーティのバイナリに分類され、どちらも ASLR をサポートする必要があります。ASLR をサポートするには、シスコおよびサードパーティのバイナリと共有ライブラリが、正しいフラグを使用してビルドされている必要があります。シスコのバイナリおよびサードパーティの共有オブジェクトでは、シスコのバイナリ自体のランダム化を侵害しないようにライブラリがランダム化されるようにしておく必要があります。サードパーティのバイナリおよび共有ライブラリでは、それらをランダム化するためにベンダーのサポートが必要になる場合があります。

Linux カーネルに対する ASLR 機能では、ブート時にカーネルコードが配置される場所をランダム化することで、Linux カーネルイメージを実行するためのアドレス空間のランダム化がサポートされます。カーネル ASLR サポートはシスコのデバイスに存在し、ハッカーが悪意のあるコードを挿入するのを阻止します。

実行保護(X-Space)

実行保護(X-Space)は、シスコのデバイスで最も重要なセキュリティ保護の 1 つです。この機能により、デバイスに対する実行保護が有効になります。これにより、許可されていない領域からのコードの実行が阻止され、実行可能領域へのコードの上書きが禁止されます。

X-Space は、デバイスへのハッカーの侵入を阻止し、デバイスをセキュアな状態に保ちます。

オブジェクトサイズチェック(OSC)

バッファ オーバーフローはおそらく、ソフトウェアのセキュリティ脆弱性の最もよく知られた形式です。バッファ オーバーフロー状態は、バッファに保持できるよりも多くのデータをプログラムがバッファに配置しようとした場合、またはバッファ領域を超えてメモリ領域にプログラムがデータを配置しようとした場合に発生します。この場合のバッファは、文字列から整数の配列までのあらゆるもの入れるために割り当てられた、メモリの連続セクションです。割り当てられたメモリのブロック境界の範囲外に書き込むと、データの破損、プログラムのクラッシュ、または悪意のあるコードの実行が発生する可能性があります。シスコのデバイスは、書き込みコールの前にオブジェクトサイズチェックを行うことによって、C または C++ コードでのバッファオーバーフローを判別するための完全な保護を備えています。

SafeC ライブラリ

Cisco IOS XE ソフトウェアでは、より安全でよりセキュアな C または C++ 言語プログラミングを促進し、ISO/IEC 9989:2011(C11)仕様に基づいている、効率的なライブラリ関数が使用されています。いくつかの標準 C ライブラリ関数は、より巧妙な攻撃の開始点として機能する脆弱性の影響を受けやすい状態になっています。

SafeC は、一貫性のある命名スキーマで標準関数の「安全な」代替を提供する一方で、バッファ オーバーフローによるセキュリティ侵害を軽減することを目的としており、ネイティブライブラリに存在しない可能性のある境界チェックを提供し、文字列の終端および切り捨てのエラーを防止します。この SafeC により、シスコのデバイスのハードウェアがバッファ オーバーフロー攻撃から保護されます。

シスコの署名付きカーネルモジュール

署名付きカーネルモジュールにより、デバイスにロードされるすべてのカーネルモジュールが真性であり、変更されていないことが保証されます。これにより、未承認または信頼できない実行可能コードが従来の方法でカーネルにロードされることが阻止されます。

シスコによって署名されていないモジュールは、Cisco IOS XE ソフトウェアでは使用できません。この機能により、未承認のソフトウェアがシスコのデバイス上で実行されることが阻止されます。これらの強化機能により、Cisco IOS XE ソフトウェアとそのコンポーネントが攻撃から保護されます。

セキュア JTAG(sJTAG)

JTAG は、FPGA のプログラミングにも採用されており、CPU デバッグアクセスポートを提供します。多くの場合、組み込み CPU にアクセスしてファームウェアイメージの取得、メモリのダンプ、およびソフトウェア実行のモニタリングを可能にするために必要なものは、ラップトップと JTAG デバッガだけで済みます。高度なツールセットと組み合わされた小規模なインターフェイスにより、システムを悪用するためのポータブルでありながら強力な手段が攻撃者に提供されます。

シスコのデバイスにセキュア JTAG を備えることにより、知的財産(IP)の盗難を軽減し、メモリからパスワードやキーの盗むことを阻止することができます。

安全消去

セキュア消去機能により、シスコのデバイス内のすべてのお客様情報が消去されます。セキュア消去は、Return Merchandise Authorization(RMA)、アップグレードや交換、システムのサポート終了によって製品を除去するために、識別可能な顧客情報をすべて削除する操作です。

  • デバイスの返品許可(RMA):RMA のためにデバイスをシスコに返却する必要がある場合は、そのデバイスの RMA 証明書を取得する前に、お客様特有のデータをすべて削除します。

  • 侵害を受けたデバイスのリカバリ:デバイスに保存されているキーマテリアルまたはクレデンシャルが侵害を受けた場合は、デバイスを初期設定にリセットし、デバイスを再設定してください。

1 Time-of-Check to Time-of-Use(TOC/TOU)攻撃は、プログラムが条件をチェックし、そのチェック結果に基づいてアクションを実行するときに発生する競合状態の脆弱性の一種です。ただし、別のプログラムによってチェック時から使用時までに条件が変更された場合に、変更された条件に基づいてアクションが実行されるため、意図しない結果になる可能性があります。