公開日:2016/07/20 最終更新日:2016/08/12

JVNVU#99625371
Objective Systems ASN1C で生成したソースコードにバッファオーバーフローの脆弱性

概要

ASN.1 は、ネットワークや通信アプリケーションにおける標準的なデータ構造の記法です。Objective Systems が提供する ASN1C を使用して生成した C または C++ のソースコード内にヒープベースのバッファオーバーフローの脆弱性が存在する問題があります。

影響を受けるシステム

  • ASN1C 7.0.1.x およびそれ以前で作成された C または C++ のソースコード

詳細情報

ヒープベースのバッファオーバーフロー (CWE-122) - CVE-2016-5080
ASN1C は、ASN.1 構文から高級言語のソースコードを生成するのに使用されます。報告者によれば、ASN1C で生成された C または C++ のソースコードには、ヒープマネージャの rtxMemHeapAlloc 関数にヒープベースのバッファオーバーフローの脆弱性が存在します。2016年7月20日現在、類似する脆弱性が Java や C# などで出力されたソースコードに存在するかは不明です。

攻撃者がこのバッファオーバーフローを使用して、認証なしで遠隔からシステム上で任意のコードを実行することが考えられますが、本脆弱性を使用した攻撃による影響は、システムがどのように rtxMemHeapAlloc 関数を使用しているかによって異なります。具体的には、信頼できない通信相手から受信した ASN.1 データを処理すると、本脆弱性の影響を受ける可能性があります。自社製品の開発に ASN1C を使用している開発者は、自社製品に本脆弱性が含まれるかどうか、ソースコードを検証する必要があります。

報告者は、さらに詳しい情報をセキュリティアドバイザリとして公開しています。

想定される影響

本脆弱性による影響はアプリケーションによって異なります。最も深刻な場合、信頼できない通信相手から受信した ASN.1 データを処理することで、遠隔の第三者によってアプリケーションの権限 (root または SYSTEM 権限など) で任意のコードを実行される可能性があります。

対策方法

アップデートする
Objective Systems は本脆弱性を修正した ASN1C 7.0.1.x シリーズ向けの hotfix をリリースしています。ASN1C のユーザは Objective Systems へお問い合わせください。ユーザは別のヒープマネージャを使用するか、生成されたソースコードを編集し、本脆弱性を取り除くことも可能です。

ASN1C 7.0.2 では本脆弱性が修正される予定ですが、2016年7月20日現在、ASN1C 7.0.2 のリリース日時は未定です。

ベンダ情報

ベンダ ステータス ステータス
最終更新日
ベンダの告知ページ
NTT-CERT 該当製品無し 2016/08/12
アライドテレシス株式会社 該当製品無し 2016/07/20
日本電気株式会社 該当製品無し(調査中) 2016/08/12
株式会社バッファロー 脆弱性情報提供済み 2016/07/20
株式会社リコー 該当製品無し(調査中) 2016/07/20
ベンダ リンク
Objective Systems, Inc. ASN1C ASN.1 Compiler

参考情報

  1. CERT/CC Vulnerability Note VU#790839
    Objective Systems ASN1C generates code that contains a heap overlow vulnerability
  2. Programa STIC
    Heap memory corruption in ASN.1 parsing code generated by Objective Systems Inc. ASN1C compiler for C/C++ - GitHub
  3. NCSC-NL
    Kwetsbaarheid verholpen in ASN1C

JPCERT/CCからの補足情報

JPCERT/CCによる脆弱性分析結果

CVSS v3 CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
基本値: 8.1
攻撃元区分(AV) 物理 (P) ローカル (L) 隣接 (A) ネットワーク (N)
攻撃条件の複雑さ(AC) 高 (H) 低 (L)
必要な特権レベル(PR) 高 (H) 低 (L) 不要 (N)
ユーザ関与レベル(UI) 要 (R) 不要 (N)
スコープ(S) 変更なし (U) 変更あり (C)
機密性への影響(C) なし (N) 低 (L) 高 (H)
完全性への影響(I) なし (N) 低 (L) 高 (H)
可用性への影響(A) なし (N) 低 (L) 高 (H)
CVSS v2 AV:N/AC:M/Au:N/C:C/I:C/A:C
基本値: 9.3
攻撃元区分(AV) ローカル (L) 隣接 (A) ネットワーク (N)
攻撃条件の複雑さ(AC) 高 (H) 中 (M) 低 (L)
攻撃前の認証要否(Au) 複数 (M) 単一 (S) 不要 (N)
機密性への影響(C) なし (N) 部分的 (P) 全面的 (C)
完全性への影響(I) なし (N) 部分的 (P) 全面的 (C)
可用性への影響(A) なし (N) 部分的 (P) 全面的 (C)

分析結果のコメント

本脆弱性による影響はアプリケーションによって異なります。この CVSS では、考え得る最も深刻な影響について評価しています。

謝辞

関連文書

JPCERT 緊急報告
JPCERT REPORT
CERT Advisory
CPNI Advisory
TRnotes
CVE CVE-2016-5080
JVN iPedia

更新履歴

2016/07/20
複数の開発者のベンダステータスを更新しました
2016/07/21
株式会社リコーのベンダステータスが更新されました
2016/08/12
NTT-CERTのベンダステータスが更新されました
2016/08/12
日本電気株式会社のベンダステータスが更新されました