JPCERTコーディネーションセンター(JPCERT/CC)と情報処理推進機構(IPA)が運営する脆弱性対策情報ポータル「JVN」は10月26日、富士電機の作画ソフト「V-SFT」に7件の脆弱性があると公表した。細工されたV7形式のファイルをこのソフトで開くと、情報が漏えいしたり、任意のコードを実行されたりする可能性がある。影響を受けるのはver 6.2.11.0とそれ以前の版で、富士電機は修正を含むver 6.2.12.0を公開している。
V-SFTの脆弱性がJVNで公表されるのは、4月1日に続いて今年2回目。2回とも、マイケル・ハインツル氏がJPCERT/CCに報告し、JPCERT/CCが開発者との調整を担った。
工場の操作盤の画面を作るソフト
V-SFTは、プログラマブル表示器「MONITOUCH(モニタッチ)」に映す画面を作るためのソフトだ。発紘電機の英語サイトでは、MONITOUCHは「HMI」の製品として掲げられ、V-SFTは「Screen Configuration Software(画面作成ソフト)」と説明されている。HMIはヒューマン・マシン・インターフェースの略で、機械と人の間で操作と表示を受け持つ機器を指す。利用者はパソコン上のV-SFTで、スイッチや数値表示、アラームなどを並べた「画面データ」を作り、表示器本体へ転送する。
富士電機の資料ダウンロードサイトでは、V-SFTは「プログラマブル制御機器」の「プログラマブル表示器」の中の「モニタッチ用ソフトウェア」に分類されている。JVNのベンダ欄には富士電機と、プログラマブル表示器を手がける発紘電機の2社が並ぶ。改善情報の一覧によると、現行のV-SFT-6はTS・V8、V9、V10、X1の各シリーズの画面データを扱う。
今回の欠陥は、表示器本体ではなく、画面を作るパソコン側のソフトにある。影響を受けるのは、V-SFTで画面データのファイルを開く操作だ。産業分野のサイバー対策の指針については、経産省、産業向けサイバー対策の指針を7年ぶり改訂へ NIST CSF 2.0に合わせ6機能に再編で伝えた。
メモリーの範囲外を読み書きする欠陥
JVNによると、7件の内訳は、スタックと呼ばれるメモリー領域で確保した範囲をあふれて書き込む「スタックベースのバッファオーバーフロー」が1件、確保した範囲の外へ書き込む「境界外書き込み」が1件、範囲の外を読み取る「境界外読み取り」が5件。境界外読み取りの5件は、それぞれ別の内部の関数で見つかった。
| CVE番号 | 欠陥の種類 |
|---|---|
| CVE-2026-107894 | スタックベースのバッファオーバーフロー |
| CVE-2026-107895 | 境界外書き込み |
| CVE-2026-107896 | 境界外読み取り(load_gr_item関数) |
| CVE-2026-107897 | 境界外読み取り(set_temp_type_default関数) |
| CVE-2026-107898 | 境界外読み取り(MacroCommandCheck関数) |
| CVE-2026-107899 | 境界外読み取り(CheckSymbolMacroParam関数) |
| CVE-2026-107900 | 境界外読み取り(ItemCheck関数) |
出典: JVN「JVNVU#96549652」
深刻度を示すCVSSの基本値は、7件とも新しい算定方式のv4.0で10点満点の8.4、従来のv3.1で7.8。JVNが示した評価の内訳は、攻撃元区分が「ローカル」、攻撃に必要な特権は「不要」で、利用者による操作が必要とされている。ネットワーク越しに直接乗っ取られる種類ではなく、攻撃者が用意したファイルを利用者が開いて初めて成り立つ。一方で、成り立った場合の機密性・完全性・可用性への影響はいずれも「高」と評価されている。
対策版は6.2.12.0、改善56項目の一つ
JVNは対策として、開発者が提供する情報をもとにパッチを適用するよう求めた。発紘電機のサイトによると、ver 6.2.12.0の更新版は10月15日に公開された。JVNの公表より11日早い。富士電機の資料サイトに載る「V-SFT-6 改善情報 Ver.6.2.12.0」も2026年10月発行の技術資料で、ログインせずにダウンロードできる。
改善情報の一覧のうち作画ソフトの表には、6.2.12.0での改善が20項目並ぶ。脆弱性への対応は「No.26A0H18」で、項目名は「脆弱性」、内容は「不正な画面データを開こうとすると、強制終了する問題を改善しました。(JVNVU#96549652)」と書かれている。TS・V8、V9、V10、X1の4系統すべてに印が付いている。表示器本体や通信ドライバの表まで含めると、6.2.12.0の改善項目は計56項目にのぼる。
一覧の記載は、JVNが示した「任意のコードを実行される可能性」には触れず、症状を強制終了として説明している。JVNの公表と照らし合わせなければ、56項目の中のどれが脆弱性への対応なのか、どの程度の影響があるのかは読み取りにくい。
4月にも5件、同じ名前の関数で再び
V-SFTは4月にも欠陥が公表されている。JVNが4月1日に公表した「JVNVU#90448293」は、ver 6.2.10.0とそれ以前を対象に、5件の脆弱性を挙げた。内訳はスタックベースのバッファオーバーフローが2件、境界外読み取りが3件で、CVSSの基本値はv4.0で8.4、v3.1で7.8と今回と同じだった。影響も「細工されたV7形式ファイルを当該製品で開くことで、情報漏えいや任意コード実行に至る可能性」と、今回とほぼ同じ文言で記されている。
4月の5件の中には、今回と同じ「set_temp_type_default」という名前の関数で見つかった境界外読み取りが含まれていた。4月の対策版である6.2.11.0は、発紘電機のサイトによるとJVNの公表と同じ4月1日に公開され、改善情報には「破損したV7ファイルを開くとV-SFTが異常終了する問題を改善しました」とある。その6.2.11.0が、今回の影響を受ける版に含まれている。
改善情報の一覧をさかのぼると、脆弱性への対応はさらに前の版にもある。6.2.8.0には「V7ファイルに関する脆弱性対応」として、ヒープベースとスタックベースのバッファオーバーフローによるリモートコード実行の脆弱性への対応が記されている。6.2.6.0と、6.1.8.0、6.1.6.0にも、不正な画面データを開いたときの異常終了や、シミュレーターで開く際の扱いを改めた項目がある。画面データを開く処理をめぐる修正が、版を重ねて続いている。
