Dolibarr ERP & CRMのdolibarr erp/crmにおけるパストラバーサルの脆弱性

JVNDB

概要

Dolibarrのバージョン9.0.0から23.0.4までは、受信メールの添付ファイルをメッセージのMIMEヘッダーで指定された名前のまま保存しており、安全なベースネームに変換していません。htdocs/emailcollector/lib/emailcollector.lib.php内のグローバル関数saveAttachment()は、$filepath = $path . $filename . ‘.’ . $extを生成し、それをfile_put_contents()に渡します。また、htdocs/emailcollector/class/emailcollector.class.php内のプライベート関数saveAttachment()は$destdir.’/’.$filenameに書き込みます。ファイル名は添付ファイルのgetName()またはgetFilename()の値から取得され、レコード結合、チケット作成、プロジェクト作成操作を経由して渡されます。したがって、ファイル名に含まれるディレクトリトラバーサルのシーケンスはそのまま残ります。EmailCollectorが監視するメールボックスにメールを送信できる送信者は、Dolibarrアカウントを持たなくても攻撃者が制御するコンテンツを各オブジェクトの添付ファイルディレクトリ外に配置できる状態です。DolibarrのSECURITY.mdで要求される強化されたレイアウト(htdocsが読み取り専用の場合)では、書き込みがドキュメントツリーに制限されているため、他のオブジェクトのドキュメントを破損または偽造してしまう可能性があります。htdocsが書き込み可能な場合、同じ脆弱性はウェブで実行可能なパスに到達してしまいます。バージョン24.0.0では、書き込み前にdol_sanitizePathName()とdol_sanitizeFileName()が適用されて対策されています。

技術情報

  • 公開日: 2026-09-01T17:03:09+09:00
  • 更新日: 2026-09-01T17:03:09+09:00

参考リンク

JVNDB の詳細はこちら

対処方法

該当ソフトウェアの最新版への更新、または開発元が提供する緩和策の適用を推奨します。運用環境に応じて事前検証の上で実施してください。

免責

本記事は公開情報をもとに自動集約された速報です。正確性・完全性は保証できません。必ず一次情報(上記リンク等)をご確認ください。