2021年10月21日木曜日

脅威に満ちた世界でのエッジセキュリティ~その2

 

 


 ~その1の続き

通信

インターフェイスやプロトコルへの攻撃は、多層的です。ですから、データセキュリティを含む、クラウドとの通信自体のセキュリティと、HTTPなどの1つまたは複数のプロトコルによるデバイスへのアクセスセキュリティについて考える必要があります。

TLS(トランスポート・レイヤー・セキュリティ)は、デバイスのすべての通信を保護します。この暗号化プロトコルには、通信相手を確認するための認証と、傍受攻撃を防ぐためのデータの暗号化が含まれています。インターネットのような公共ネットワークを利用してリモートクラウドと通信するエッジデバイスに最適です。

データがIPネットワークを介して送信される速度を考えると、認証やデータの暗号化・復号化を効率的に管理するには、ハードウェア・アクセラレーションが必須になります。テキサス・インスツルメンツ社の「EK-TM4C129EXLのようにハードウェア暗号化アクセラレーションに対応したプロセッサには、TLS用のオンチップ暗号アクセラレーションが搭載されており、リモートシステムとの安全な通信を確保します。

 

また、ケルベロス認証などのプロトコルを使用することによって、クライアントとサーバ間の身元確認を行うことができます。ケルベロス認証は、共通鍵暗号または公開鍵暗号を用いており、どちらも暗号化エンジンを搭載したプロセッサを使用して高速化することができます。

プロトコルポート

ネットワークインターフェイスで使用されるプロトコルポートは、インターネットに接続されたデバイスの最大の攻撃ベクトルの1つになります。これらのポートによって、デバイスへのプロトコルアクセスが公開されるので(例えば、ウェブインターフェイスは、通常80番ポートを使って公開されます)、攻撃者には、どのようなエクスプロイトが利用できるのか情報を提供することになります。

プロトコルポートを保護する最も簡単な方法の1つは、ファイアウォールです。ファイアウォールは、ポートへのアクセス制限を設定してポートを保護できるデバイス上のアプリケーションです。例えば、ファイアウォールでは、事前定義された信頼できるホスト以外は、特定のポートへのアクセスを禁止するルールを設定できます。これにより、ポートへのアクセスが制限されるので、バッファオーバーフローなどのようなプロトコルエクスプロイトを利用したよくある攻撃を防ぐことができます。

ファームウェアアップデート

エッジデバイスは、ますます複雑になり、機械学習など、旧世代のデバイスよりも高度な機能を実行するようになりました。このような複雑化に伴い、問題を修正して、デバイスにアップデートをリリースする必要があります。ただし、このファームウェアの更新プロセスが、新たな攻撃ベクトルを生み出すことになります。エッジセキュリティプランにおいてファームウェアアップデートのセキュリティ対策を行うことで、攻撃者によるリスクを軽減できます。

悪意のあるコードのデバイスへの侵入を防ぐための一般的なセキュリティ手法にコード署名があります。これは、ファームウェアイメージを暗号ハッシュでデジタル署名するもので、ファームウェア更新プロセスの前にデバイスで使用することで、コードが本物であり、署名プロセス以降にデータが改ざんされていないことを証明します。

 
また、コー
ド署名を起動時に使用して、ローカルストレージデバイスのファームウェアが改ざんされていないかを確認することもできます。これは、デバイスの更新プロセスで悪用されたイメージでデバイスが更新されることと、ローカルストレージデバイスに不正に挿入されたイメージからデバイスを守ることの2つの攻撃ベクトルに対応することができます。

デバイスで使用するプロセッサは、ハッシュ生成および確認用の安全な暗号エンジンが実装されているものが、特に有用です。その一例がマイクロチップ社の 「CEC1302で、このプロセッサには、暗号化AES(高度暗号化標準)とハッシュエンジンが内蔵されています。

 


また、TPM(トラステッドプラットフォームモジュール)を使用するのも有効です。TPMは、セキュリティ機能を提供するセキュアな暗号プロセッサで、通常、ハッシュ生成、キーストレージ、ハッシュおよび暗号化アクセラレーションなど、さまざまな機能を備えています。マイクロチップ社の「AT97SC3205Tがその一例で、8ビットのマイクロコントローラの中にTPMを搭載しています。

物理的セキュリティ対策

耐タンパー性能を設計に盛り込むことで、デバイスが物理的に開けられたり、何らかの形でセキュリティが侵害された場合、それを検知することができます。また、可能な限り外部信号を小さくすることで、攻撃者が手に入れたデバイスを監視しても、エクスプロイトが見つけにくくなります。攻撃者はバス信号を監視して、セキュリティ情報を取得しようとしたり、極端なケースでは、デバイスに温度変化を与えたり、クロック信号を変化させたり、さらには放射線を使ってエラーを誘発することもあります。デバイスについて知るために、その気になれば攻撃者が取るかもしれない手口について理解しておくことは、より安全な製品を作る上で極めて重要です。

さらに詳しく知るには 

サイバー戦争が熾烈化する今日、諸々の目的から個人も国家もデバイスを悪用しようと狙っており、エッジセキュリティでは厳しい戦いが続いています。しかし、最新のセキュリティ手法を実装し、製品開発初期段階からセキュリティを考慮に入れておくことは、デバイスの安全性の確保に大いに役立ちます。デバイスの攻撃対象領域を早期に分析しておくことによって、より安全なデバイス開発するにはどの点に注意するべきなのかが明らかになるはずです。さらに詳しくは、マウザーのセキュリティに関するブログをご覧になることをお勧めします。

 

★★★★★★★★★★★★★★★★★★★★
★★★★★★★★★★★★★★★★★★★★


著者

 


M・ティム・ジョーンズ

 

組み込みファームウェアアーキテクトとして30年以上のアーキテクチャ開発実績を持つ。ソフトウェア・ファームウェア開発関連の著書数冊、執筆記事多数。エンジニアとしての実績は、地球周回軌道宇宙船のカーネル開発から組込みシステムアーキテクチャ・プロトコル開発まで多岐にわたる。

 

 

 

脅威に満ちた世界でのエッジセキュリティ~その1

 

 

組み込みネットワーク機器は、低価格化が進むにつれて(その好例Raspberry Piです)、今やあらゆる場所で使用されるようになりました。しかし、この普及の隠れた代償として、こうしたデバイスはセキュリティに欠け、悪用されやすいという負の側面があります。セキュリティへの投資を行わなければ、デバイスから動画、画像、音声などの個人情報が流出したり、デバイスがボットネットに乗っ取られ、世界中を大混乱に陥れることになりかねません。 

エッジコンピューティングとは

エッジコンピューティングとは、集中していたコンピューティングリソースをデータの発生源の近くに分散させるというパラダイムシフトです。これによって、多くのメリットが生まれます。

  • 切断時操作
  • 応答時間の高速化
  • 各領域のコンピューティングニーズのバランスを向上

 

1が示すように、クラウドインフラストラクチャはエッジでデバイスを管理しています。IoT(モノのインターネット)デバイスは、エッジゲートウェイなどのエッジデバイスを介してクラウドに接続し、グローバルな通信を最小限に抑えます。

 

1:クラウドインフラストラクチャとエッジのコネクテッドデバイスとの関係を示すエッジコンピューティングアーキテクチャ図。(画像:執筆者)

 

ドイツの統計データベース会社Statistaは、2018年にIoTコネクテッドデバイスの数は世界で230億台であったと推定しており、専門家はこの数が2025年には750億台にまで増加すると予測しています。2016年にIoTデバイスを標的とし、数百万人のインターネットアクセスを妨害したマルウェア「Mirai」は、IoTデバイスのセキュリティ強化の必要性を示唆しています。攻撃者は特定のデバイスのエクスプロイトを見つければ、他の同一デバイスにもそのエクスプロイトを一斉適用することができるのです。

エッジでのデバイスの数が増えるにつれて、デバイスのリスクも高まっています。注目されたいため、あるいはボットネットを拡散させるために悪用を試みる攻撃者たちにとって、コネクテッドデバイスは格好の標的です。そこで今回は、エッジコンピューティングデバイスを保護する方法について見ていきたいと思います。

 

デバイスを保護するには

デバイスが悪用される手口を理解するには、攻撃対象領域と言われるものに注目する必要があります。デバイスの攻撃対象領域とは、攻撃者が悪用したり、デバイスからデータの抽出を試みることのできるあらゆる攻撃点を表します。攻撃対象領域には次のようなものがあります。

  • デバイスに接続するネットワークポート
  • シリアルポート
  • デバイスのアップグレードのためのファームウェア更新プロセス
  • 物理的デバイス

攻撃ベクトル

攻撃対象領域は、デバイスが外界にさらされている領域を指し、セキュリティのための防御の焦点になります。デバイスを保護するには、デバイスの潜在的な攻撃ベクトルについて理解し、攻撃対象領域を小さくすることが必要です。

一般的な攻撃ベクトルには以下があります。

  • インターフェイス
  • プロトコル
  • サービス

2を見ると、攻撃ベクトルは、ネットワークやローカルのインターフェイス、デバイス上で実行されているファームウェアの周辺の攻撃対象領域、さらには物理的パッケージ自体にもあるのがわかります。次に、さまざまな攻撃ベクトルに目を向け、その対策方法について見てみましょう。


2:シンプルなエッジデバイスの潜在的な攻撃ベクトル (画像:執筆者)

 

~その2に続く 

 

 

★★★★★★★★★★★★★★★★★★★★
★★★★★★★★★★★★★★★★★★★★


著者

 


M・ティム・ジョーンズ

 

組み込みファームウェアアーキテクトとして30年以上のアーキテクチャ開発実績を持つ。ソフトウェア・ファームウェア開発関連の著書数冊、執筆記事多数。エンジニアとしての実績は、地球周回軌道宇宙船のカーネル開発から組込みシステムアーキテクチャ・プロトコル開発まで多岐にわたる。

 

デジタル治療でヘルスケアの未来が変わる

  医療ヘルスケアの未来   「あのう、先生、こうすると痛むんですが」。「その症状に関するアプリは、もうダウンロードしてみましたか」。医師と患者との間で こ んな会話が、不整脈、うつ病、パーキンソン病など、多くの病気について交わされるようになるのは、もうそんなに遠い先...