| Summary |
脆弱性について説明します。org.apache.linkis.metadata.util.HiveUtils.decode() がBase64デコードに失敗した場合、入力パラメータの文字列全体を logger.error(str + "decode failed", e) を通じてログに記録します。もし入力パラメータにHive Metastoreのキーなどの機密情報が含まれていると、デコード失敗時に平文のパスワードがログファイルに残り、情報漏洩が発生します。影響範囲は hive-site.xml の機密フィールド(例:javax.jdo.option.ConnectionPassword)やBase64でエンコードされたその他のフィールドを含むコンポーネントに及び、対象バージョンはApache Linkis 1.0.0から1.7.0までです。トリガー条件は、設定項目の値が無効なBase64文字列であり、hive-site.xml管理者以外のユーザーがログファイルを読み取れる場合に成立します。深刻度は低く、Base64デコード失敗の確率は低いです。また、エラーレベルのログが公開された場合にのみ情報漏洩が発生します。対応策として、Apache Linkis 1.8.0以降ではログ出力がマスクされた内容に置き換えられました(logger.error("URL decode failed: {}", e.getMessage()); // 文字列は出力されません)。ユーザーには問題を修正したバージョン1.8.0へのアップグレードを推奨します。
|