Cente IPv6

【脆弱性情報】TCPで不正なMSSオプションを受信すると誤動作する可能性がある

発行番号: Cente001-0074
Rev: 第2版
発行日: 2025/02/12
題名: 【脆弱性情報】TCPで不正なMSSオプションを受信すると誤動作する可能性がある

適用製品
・Cente TCP/IPv4 Ver.1.51およびそれ以前
・Cente TCP/IPv4 SNMPv2 Ver.2.30およびそれ以前
・Cente TCP/IPv4 SNMPv3 Ver.2.30およびそれ以前
・Cente IPv6 Ver.1.60およびそれ以前
・Cente IPv6 SNMPv2 Ver.2.30およびそれ以前
・Cente IPv6 SNMPv3 Ver.2.30およびそれ以前

【該当するユーザ環境】
TCPで不正なMSSオプションを受信するユーザ環境。

【詳細】
TCPのMSSオプションは、「TCPで受信できる最大セグメントサイズ」を相手に通知します。
Centeミドルウェアは、MSSオプションが不正なときにMSSが負値となってしまう場合があり、そのMSSを送信してきた通信相手へのTCP送信処理で、不正なメモリにアクセスをします。
結果として、機器の動作が停止するなどの可能性があります。

【回避方法】
不正なMSSを無視するよう、ソースコードの改変が必要です。
修正箇所については、support_XXXatmarkXXX_cente.jpまでお問い合わせください(XXXatmarkXXXは@にしてください)。

以上。

MLD(Multicast Listener Discovery)でマルチキャストグループ管理ができなくなることがある

発行番号: Cente002-0025
Rev: 第1版
発行日: 2025/01/31
題名: MLD(Multicast Listener Discovery)でマルチキャストグループ管理ができなくなることがある

適用製品
・Cente IPv6 Ver1.40 – Ver.1.60
・Cente IPv6 SNMPv2 Ver2.11 – Ver.2.30
・Cente IPv6 SNMPv3 Ver2.11 – Ver.2.30

【該当するユーザ環境】
Cente IPv6でMLDv2を有効にしているユーザ。

【詳細】
MLDは機器が受信を希望するマルチキャストグループをルータに登録/削除するプロトコルです。
Cente IPv6はネットワークインターフェイス(Ethernet等)がリンクアップした時に、MLDコンテキスト(マルチキャストグループを管理するためのリソース)を確保します。
MLDコンテキストはリンクダウン時に解放する必要がありますが処理が抜けていました。
このためリンクアップダウンを繰り返すとMLDコンテキスト領域が枯渇し、マルチキャストグループ管理ができなくなります。

【回避方法】
ソースコードの改変が必要です。
修正箇所については、support_XXXatmarkXXX_cente.jpまでお問い合わせください(XXXatmarkXXXは@にしてください)。

以上。

TCPのハンドシェイクが完了しているにもかかわらずまれに着信に失敗する

発行番号: Cente001-0075
Rev: 第1版
発行日: 2025/01/31
題名: TCPのハンドシェイクが完了しているにもかかわらずまれに着信に失敗する

適用製品
・Cente TCP/IPv4 Ver.1.51およびそれ以前
・Cente TCP/IPv4 SNMPv2 Ver.2.30およびそれ以前
・Cente TCP/IPv4 SNMPv3 Ver.2.30およびそれ以前
・Cente IPv6 Ver.1.60およびそれ以前
・Cente IPv6 SNMPv2 Ver.2.30およびそれ以前
・Cente IPv6 SNMPv3 Ver.2.30およびそれ以前

【該当するユーザ環境】
接続要求待ち関数tcp_acp_cep()、tcp_acp_cep_ip46()をタイムアウト指定で使用しているユーザ。
・製品に同梱されているSSHdのサンプルプログラムは該当します。
・タイムアウトなし(TMO_FEVRを指定)で使用している場合は非該当です。
・BSDソケットAPIのTCP接続受け付け関数ctaccept()は非該当です。

【詳細】
通常、接続要求待ち関数を呼んだ状態で通信相手からの接続を受けるとハンドシェイクが完了した時点で関数から返ります。また、タイムアウトを指定してその時間までに通信相手からの接続を受信しなかった場合はタイムアウトエラーで関数から返ります。
しかし、上記適用製品では通信相手からの接続と関数のタイムアウトが同時に発生した場合、まれに通信相手に対してはハンドシェイク完了(接続成功)となり、関数からはタイムアウトエラーで返る、という不正な状態となっていました。
この状態では、通信相手は接続が完了してデータ通信をしようとしても、こちら側は接続状態となっていないため通信ができない状態となります。

【回避方法】
ソースコードの改変が必要です。
修正箇所については、support_XXXatmarkXXX_cente.jpまでお問い合わせください(XXXatmarkXXXは@にしてください)。

以上。

Cente IPv6

・Cente TCP/IPv4部バージョンアップ
詳細はCente TCP/IPv4(Ver.1.50)改変履歴を参照のこと。

・IPv6アドレス自動生成アルゴリズムの変更
IPアドレスの追跡を防ぐために、IPv6アドレス自動生成アルゴリズムを、RFC4291準拠(MACアドレスから生成)からRFC7217準拠(ランダムに生成)にした。

・不正なIPv6パケットを受信すると誤動作する可能性がある(Cente障害情報: 002-0023)
IPv6ヘッダやNDPパケットのオプション長が不正に短い場合、実際のパケットデータより後ろ側のメモリ参照を行う可能性があった。これを修正した。

・DHCPv6のトランザクションIDなどが予測可能である(Cente障害情報: 002-0024)
DHCPv6のトランザクションID、IPv6フラグメントヘッダのIDが予測可能であった。これを修正した。

リンクアップ直後にリンクダウンが発生すると、その後リンクアップしても通信できなくなることがまれにある

発行番号: Cente001-0073
Rev: 第1版
発行日: 2024/04/12
題名: リンクアップ直後にリンクダウンが発生すると、その後リンクアップしても通信できなくなることがまれにある

適用製品
・Cente TCP/IPv4 Ver.1.41およびそれ以前
・Cente TCP/IPv4 SNMPv2 Ver.2.30およびそれ以前
・Cente TCP/IPv4 SNMPv3 Ver.2.30およびそれ以前
・Cente IPv6 Ver.1.51およびそれ以前
・Cente IPv6 SNMPv2 Ver.2.30およびそれ以前
・Cente IPv6 SNMPv3 Ver.2.30およびそれ以前

【該当するユーザ環境】
Cente TCP/IPv4およびCente IPv6で、リンクアップ処理(elap_start()の呼び出し)とリンクダウン処理(elap_stop()の呼び出し)を別タスクから実行する環境が該当します。
ネットワークインタフェースにCente USB Host RNDIS、Cente USB Host CDC-ECMをお使いの場合はこれに該当します。
elap_start()とelap_stop()を同一タスクから実行する環境(CenteパッケージのBSPのLANドライバはこれにあたります)は非該当です。

【詳細】
Centeミドルウェアは、ネットワークのリンクアップ時にはelap_start()を、リンクダウン時にはelap_stop()を、デバイスドライバから実行するという仕様です。これらを別タスクから実行する構成の場合、リンクアップ直後にリンクダウンが発生すると、elap_start()実行中にelap_stop()が割り込む可能性があります。
elap_start()で内部変数のセット待ち処理があり、この待ち処理中にelap_stop()が割り込むと、セットされた変数がクリアされ(その後セットされることはない)、セット待ちが解除されずに、elap_start()からリターンしなくなることがあります。その後リンクダウン・アップが発生しても状態は復旧せず、通信ができなくなります。
elap_start()とelap_stop()を同一タスクから実行する環境では、elap_start()処理中にelap_stop()が割り込むことはないので、問題ありません。

【回避方法】
elap_start()の実行中にelap_stop()が割り込まれても問題なく処理できるよう、ソースコードの改変が必要です。
修正箇所については、support_XXXatmarkXXX_cente.jpまでお問い合わせください(XXXatmarkXXXは@にしてください)。

以上。

DHCPc動作時、複数の機器に同一のIPv4アドレスが割り当たる可能性がある

発行番号: Cente001-0072
Rev: 第1版
発行日: 2024/04/12
題名: DHCPc動作時、複数の機器に同一のIPv4アドレスが割り当たる可能性がある

適用製品
・Cente TCP/IPv4 Ver.1.41およびそれ以前
・Cente TCP/IPv4 SNMPv2 Ver.2.30およびそれ以前
・Cente TCP/IPv4 SNMPv3 Ver.2.30およびそれ以前
・Cente IPv6 Ver.1.51およびそれ以前
・Cente IPv6 SNMPv2 Ver.2.30およびそれ以前
・Cente IPv6 SNMPv3 Ver.2.30およびそれ以前

【該当するユーザ環境】
同一LAN上で、Cente TCP/IPv4およびCente IPv6含めた複数の機器が一斉にDHCPcにてIPv4アドレス取得を実行する環境。

【詳細】
CenteのDHCPcは、DHCPサーバからの応答が自分宛かどうかを、XIDのみで判断しています。
このため、電源一斉投入などで複数の機器が同時にDHCPを実行し、偶然自分のXIDが他機器のXIDと重複した場合、自分宛と誤認識して他機器向けのIPv4アドレスを自らに設定してしまいます。

【回避方法】
受信したDHCPパケットのCHADDRも自分宛か否かの判断に使用するよう、ソースコードの改変が必要です。
修正箇所については、support_XXXatmarkXXX_cente.jpまでお問い合わせください(XXXatmarkXXXは@にしてください)。

以上。

【脆弱性情報】UDP,TCPの送信元ポート番号などが予測可能である

発行番号: Cente001-0071
Rev: 第1版
発行日: 2024/04/01
題名: 【脆弱性情報】UDP,TCPの送信元ポート番号などが予測可能である

適用製品
・Cente TCP/IPv4 Ver.1.41およびそれ以前
・Cente TCP/IPv4 SNMPv2 Ver.2.30およびそれ以前
・Cente TCP/IPv4 SNMPv3 Ver.2.30およびそれ以前
・Cente IPv6 Ver.1.51およびそれ以前
・Cente IPv6 SNMPv2 Ver.2.30およびそれ以前
・Cente IPv6 SNMPv3 Ver.2.30およびそれ以前

【該当するユーザ環境】
Cente TCP/IPv4およびCente IPv6の全てのユーザ。

【詳細】
Cente TCP/IPv4では、以下の値が予測可能となっていました。

  • UDP,TCPの自動割り当てされる送信元ポート番号
  • DHCPv4のトランザクションID
  • IPv4ヘッダのID

予測された値を使用した第三者による通信妨害を受ける可能性があります。

【補足】
本情報はJVN(Japan Vulnerability Notes)サイトに公開済みです。
https://jvn.jp/vu/JVNVU94016877/index.html

【回避方法】
ソースコードの改変が必要です。
修正箇所については、support_XXXatmarkXXX_cente.jpまでお問い合わせください(XXXatmarkXXXは@にしてください)。

【脆弱性情報】不正なIPv6パケットを受信すると誤動作する可能性がある

発行番号: Cente002-0023
Rev: 第1版
発行日: 2024/04/01
題名: 【脆弱性情報】不正なIPv6パケットを受信すると誤動作する可能性がある

適用製品
・Cente IPv6 Ver.1.51およびそれ以前
・Cente IPv6 SNMPv2 Ver.2.30およびそれ以前
・Cente IPv6 SNMPv3 Ver.2.30およびそれ以前

【該当するユーザ環境】
以下の不正なIPv6パケットを送信する機器が存在する環境。
-IPv6ヘッダのオプション長が不正に短い
-NDPパケットのオプション長が不正に短い

【詳細】
IPv6ヘッダやNDPパケットにはオプションが付加される場合があります。そのオプション長が不正に短い(必要な分のデータがない)場合、実際のパケットデータより後ろ側のメモリ参照を行う可能性があります。
結果として、他機器とのIPv6通信ができなくなる、機器の動作が停止するなどの可能性があります。

【補足】
本情報はJVN(Japan Vulnerability Notes)サイトに公開済みです。
https://jvn.jp/vu/JVNVU94016877/index.html

【回避方法】
ソースコードの改変が必要です。
修正箇所については、support_XXXatmarkXXX_cente.jpまでお問い合わせください(XXXatmarkXXXは@にしてください)。

以上。

【脆弱性情報】DHCPv6のトランザクションIDなどが予測可能である

発行番号: Cente002-0024
Rev: 第1版
発行日: 2024/04/01
題名: 【脆弱性情報】DHCPv6のトランザクションIDなどが予測可能である

適用製品
・Cente IPv6 Ver.1.51およびそれ以前
・Cente IPv6 SNMPv2 Ver.2.30およびそれ以前
・Cente IPv6 SNMPv3 Ver.2.30およびそれ以前

【該当するユーザ環境】
Cente IPv6のユーザ。

【詳細】
Cente IPv6では、以下の値が予測可能となっていました。

  • DHCPv6のトランザクションID
  • IPv6フラグメントヘッダのID

予測された値を使用した第三者による通信妨害を受ける可能性があります。

【補足】
本情報はJVN(Japan Vulnerability Notes)サイトに公開済みです。
https://jvn.jp/vu/JVNVU94016877/index.html

【回避方法】
ソースコードの改変が必要です。
修正箇所については、support_XXXatmarkXXX_cente.jpまでお問い合わせください(XXXatmarkXXXは@にしてください)。

以上。

Cente IPv6 SNMPv2

・Cente TCP/IPv4 バージョンアップ
Cente TCP/IPv4 をVer.1.41にバージョンアップした。

・Cente IPv6 バージョンアップ
Cente IPv6 をVer.1.51にバージョンアップした。

・ボードサポートパッケージの変更
ボードサポートパッケージを以下の4機種とした。
・コンピューテックス社 CKB-RZ/A1H
・ルネサスエレクトロニクス社 RSK+RX65N
・ルネサスエレクトロニクス社 RSK+RX71M
・STマイクロエレクトロニクス社 STM32756G-EVAL

・SNMPのipAddressSpinLockのSET動作で値が変化しない(Cente障害情報:004-0010)
IP MIBのipAddressSpinLockのSET動作で1増加させる処理の実装に誤りがあり、2回目以降のSETに失敗していた。これを修正した。

・その他改善
実害はないが意味のないコードを修正した。
環境によってビルドエラーが発生するコードがあったので修正した。

Page 1 of 14