SLMPはEthernetを使用して相手機器からSLMP対応機器にアクセスするためのプロトコルで,三菱電機製品のエコシステム等で使用することができます。
GithubリポジトリとCrates.ioは以下となります。
本ライブラリは,Rustプロジェクト内で以下のコマンドを実行することで使用可能となります。
三菱電機より
脆弱性に関する情報 が公開されています。この中で,SLMP通信に関連する情報とその内容を抜粋します。
三菱電機製 MELSEC CPU ユニットと GX Works間の通信が平文で行われている脆弱性 (2020/06/23)
MELSEC iQ-R/iQ-F/Q/L/FXシリーズのCPU ユニットとGX Works2/3間の通信は平文で行われるため,情報漏えい,情報改ざん,不正操作,サービス拒否(DoS)の脆弱性があります(CWE-319)。信頼できないネットワークやホストを経由した通信を行った場合,悪意のある攻撃者により,通信データの盗聴・改ざん,不正な操作及びサービス妨害(DoS)攻撃を受けるリスクがあります。
複数の三菱電機製品のTCPプロトコルスタックにセッション管理不備の脆弱性 (2020/8/31)
複数の当社製品のTCPプロトコルスタックにおいて,セッション管理の不備があるため,なりすましの脆弱性が存在することが判明しました。これらの脆弱性を悪意のある攻撃者に悪用された場合,正規の機器になりすまし,任意のコマンドを実行されることにより,情報の漏えい,情報の破壊・改ざん等の影響を受ける恐れがあります。
三菱電機製複数のFA製品における複数の脆弱性 (2023/11/2)
攻撃者は,特定のパケットを該当製品に対して送信することにより,該当製品上で任意のコマンドを実行し,制御プログラムの読み出し又は書き込みを行うことによって,情報の窃取や改ざんを行なったり,該当製品のメモリーの内容を工場出荷状態に戻す又はリモートリセットすることによって,該当製品をサービス停止(DoS)状態に陥らせることができる可能性があります。
三菱電機製MELSEC iQ-F CPUユニットにおける複数の脆弱性 (2025/8/28)
MELSEC iQ-F シリーズにおいて,重要な機能に対する認証の欠如(CWE-3061)による情報漏えい,情報改ざんおよびサービス拒否(DoS)の脆弱性が存在することが判明しました。当該製品のMODBUS/TCPには認証の機能がないため,攻撃者は,当該製品のデバイス値の参照,変更を行える可能性があります。また,攻撃者は,プログラムの演算を停止させることができる可能性があります。
MELSEC iQ-F シリーズにおいて,重要な情報の平文での送信(CWE-3191)による情報漏えいの脆弱性が存在することが判明しました。攻撃者は,SLMPの通信伝文を傍受することにより,認証情報を入手することができ(CVE-2025-7731),入手した認証情報を用いて,当該製品のデバイス値の参照,変更を行える可能性があります。また,攻撃者は,プログラムの演算を停止させることができる可能性があります。
三菱電機製MELSEC iQ-F CPUユニットのTCP通信におけるサービス運用妨害(DoS)の脆弱性 (2025/11/6)
攻撃者は当該製品に対して細工したTCPパケットを送信することにより,コネクションを切断し,サービス停止(DoS)状態に陥らせることができる可能性があります。なお,攻撃を受けたコネクション以外への影響はありません。また,復帰には再度コネクションを確立する必要があります。
SLMP通信はCC-Link協会の説明にある様に簡単なクライアント・サーバ型通信であり,伝文が非常に明瞭な平文形式で通信を行います。
そのため,中間者攻撃(Man in the middle: MitM)に対しては非常に脆弱です。
また,SLMP通信によるコマンド実行は認証を求められることがなく,その記録が残らないため,SLMP通信を行うクライアントは特別な要件なく悪意ある任意コマンドの実行が可能となります。
以上の事由により,SLMP通信を行う場合には厳格なネットワーク管理を行うことを心がけてください。注意喚起のため,以下に想定される危険を例示します。
GxWorksよりEthernet通信のポート自動オープン機能をONにしている
自動でオープンされるポート(例: TCP 5007番)はSLMP通信が可能であり,周辺機器が接続されていない,またはこちらをデバッグポートとして残している場合にはこちらのポートを使用してSLMP通信によるコマンドの実行が可能です。
周辺機器の接続を遮断し,開放状態のポートを奪取してSLMP通信を実行する
物理的にRJ45コネクタからEthernetケーブルを外す以外にも,周辺機器のソフトウェアを終了することで接続が解除され,ポートの占有が解除される可能性があります。標準では認証機能が提供されていないため,正規の周辺機器との接続有効性を確認する対策が別途必要となります。
一度接続が確立した後には,リモートRUN/STOPによる動作制御およびデバイスリセット,リモートロック/アンロックによる通信リソースのロック等のユニット制御機能が実行可能となります。
これらのユニット制御コマンドは非常に危険な動作を引き起こす可能性があるため,意図的に使用する場合にも細心の注意を払って使用してください。
また,接続を確立した後にクライアント側がTCP接続を正常に終了しない場合には,通信リソースをロックして一時的にサービス拒否(Denial of Service: DoS)状態となる場合があります。
本ライブラリを使用する場合には接続を正常に遮断することを心がけてください。