製造システムの分野でもデジタルトランスフォーメーションが推進されていく状況において、インターネットに接続されたIoT機器の導入が進み、適用範囲も拡大しています。これに伴い、IoT機器はサイバーセキュリティ上の脅威にさらされることとなり、セキュリティ対策が急務となっています。

この状況において、当社はIoT機器のファームウェア向けに、BOF 脆弱性を突いてリターンアドレスを改ざんする攻撃を根絶する製品 「ATTC Control Flow Integrity」を2021年12月にリリースしました。

 
 

製品の特徴

ATTC CFIの4つの特徴

 

【製品比較】

A社 B社 ATTC CFI
特徴 アセンブリの専用命令で関数戻り位置のポインタに認証コードを埋め込む。この認証コードのチェック。 予めすべての関数呼び出しと戻り位置のパターンを作成。実行時の動作がパターンに合うかチェック。 二重の防御機能。プログラムに改ざん検知機能を埋め込むと同時に、監視プロセスでもリターンアドレスの改ざんをチェック。
防御対象 64bit でビルドしたプログラム 組み込みシステム向けプログラム Raspberry Pi OS上で動作するC言語で書かれたプログラム
コントロールフロー防御
(シェルコード挿入/
ROP/COP/JOP/未知の攻撃)
対応 対応 対応
プログラム性能影響
プログラムサイズ増加
使用方法 プログラムビルド時に対応ビルドツールを利用 提供されるソフトウェア上でコールフローマップを作り登録 プログラムビルド時にATTC CFI専用ビルドツール利用
対応プラットフォーム ARMv8.3-A以降のCPU搭載デバイス(64bit modeで動作すること) 要問い合せ Raspberry Pi 3 Model B+ 以降
Raspberry Pi OS 32bit
サポート - 有償提供 有償提供
開発元(国内/海外) 海外ベンダー 海外ベンダー 国内ベンダー
価格 -(CPU内組み込み機能) 要問い合わせ 要問い合せ
(低単価デバイスにも
組み込める価格帯を予定)
無料トライアル 無し 要問い合わせ ご提供可能

 

【利用例】

ATTC CFIの利用例

機能概要

本製品の主な機能は次の通りです。

アプリケーションビルド時

ビルドする時に、リターンアドレス改変を検査する処理を埋め込む。同時に監視プロセスからの監視で必要となる情報を取得する。どちらもATTC CFIが自動で実施するため、ユーザは特別なことをする必要はない。

セキュア化プログラム実行時

セキュア化プログラムを実行すると、関数がコールされる度にリターンアドレス検査処理を実行する。また、同時に監視プログラムも起動され、監視プログラムのメモリ内に保持するチェック用リターンアドレスを検査する。この2重の検査によりリターンアドレス改変を確実に検知し、改ざんを検知した場合にはセキュア化プログラムを終了させる。

製品仕様

本製品の主な仕様は次の通りです。

利用可能プラットフォーム

・デバイス
 Raspberry Pi 4 2GB/4GB/8GB
 Raspberry Pi 3 model B+
 それぞれEthernet Adapter 又は Wireless Adapterを接続

・OS
 Raspberry Pi OS (32bit Raspbian GNU/Linux 10(Buster))
 with desktop
 with desktop and recommended software

・基盤ソフトウェア
 gcc (Rasbian 8.3.0-6+rpi1)以上
 GNU make 4.2.1以上
 GNU C Library 2.28-10+rpi1

・ネットワーク環境
 デバイスが、インターネットと接続可能なネットワーク環境に接続可能である必要があります。