JPCERTコーディネーションセンター(JPCERT/CC: Japan Computer Emergency Response Team Coordination Center)は2021年11月25日、「JVNTA#94851885: Apache log4netにおけるXML外部実体参照(XXE)の脆弱性」において、オープンソースのロギングライブラリ「Apache log4net」に報告されたXML外部実体参照(XXE)の脆弱性に関して、自組織のソフトウェア資産が影響を受けないか改めて確認するように注意喚起を行った。

Apache log4netは、ロギングライブラリであるApache log4jをMicrosoft .NETランタイムに移植したものである。該当する脆弱性はCVE-2018-1285として追跡されており、2017年9月に発見され、2020年9月に修正版がリリースされている。修正版のリリースに関する情報は次のページにまとめられている。

  • log4net function having XXE vulnerability

    log4net function having XXE vulnerability

この脆弱性はlog4netの設定ファイルを処理する関数に存在するもので、DTDに外部エンティティを含む任意のXMLファイルを設定ファイルとして読み込むと、その外部エンティティを参照してしまう問題があるという。そのため、攻撃者によって悪意をもって細工された外部エンティティが参照され、対象システムのローカルリソースやそこから参照可能な外部リソースにアクセスされて機微な情報が窃取されたり、サービス運用妨害(DoS)状態に陥らされたりする危険性があるとのことだ。

JPCERT/CCによると、2021年10月末にPEPPERL+FUCHS社より同社のDTM関連製品およびVisuNetにXXE脆弱性が存在するという情報が公表され、それがApache log4netのCVE-2018-1285に起因するものであることが明らかになったという。PEPPERL+FUCHS社の製品にはフィールド機器とオートメーションシステムの間でデータ交換を行うための標準規格であるFDT技術を実装したものがあり、この実装のログ出力にApache log4netを採用したと考えられている。

FDT 2.0規格ではMicrosoft .NET Frameworkを使った実装を求められることから、FDT技術を採用する制御システムベンダーは、PEPPERL+FUCHS社以外にもApache log4netを採用している可能性があるとJPCERT/CCは指摘している。そのため、自組織の製品にCVE-2018-1285の影響を受けるバージョンのApache log4netが利用されていないのかを改めて確認するように呼びかけている。

もし影響を受けるバージョンのApache log4netが使用されている場合は、信頼されたApache log4netの設定ファイルのを使うよう徹底することで脆弱性の影響を軽減できるという。また、Apache log4netライブラリを使用する開発者向けには、CVE-2018-1285に対する修正が完了しているバージョン2.0.10以降にアップデートすることが推奨されている。