Log escaping and security enhancements

Starting with Bamboo 10.2, we've introduced several improvements to log handling to enhance security and protect against log injection, in line with OWASP recommendations.

Newline Conversion

Newline characters (\\n, \\r, \\r\\n) are now automatically converted into visible new lines. Each new line includes "(log message continued...)" phrase to indicate continuation from the previous line. This prevents forging log entries by passing newline characters to the log message.

Character Escaping

The characters < and > are escaped to &lt; and &gt; respectively. This prevents the injection of HTML and Javascript code into logs and ensures logs display correctly in HTML-sensitive environments.

Log Line Length Limit

Bamboo enforces a default log line length limit of 10,000 characters.

システム プロパティ

  • -Dbamboo.log.message.escape.enabled
    Controls whether log message escaping is enabled. By default, escaping is enabled.

  • -Dbamboo.log.message.max.length
    Defines the maximum length for a single log message. The default is set to 10,000 characters.

Escaping

Prior to Bamboo 10.2

[2023-10-05 14:22:01] <Build started>
Compiling source code...

Starting from 10.2

[2023-10-05 14:22:01] &lt;Build started&gt;

(log message continued...) Compiling source code...

Log Line Length Limit

Prior to Bamboo 10.2

2024-12-17 18:16:22,981 INFO [main] [JDKFilterConfigurator] Global serial filter set to JDK 8 DeserializationFilter

Starting from Bamboo 10.2

This example assumes setting the max line length value to 25 characters for demonstration only. The default value is 10000 characters.

2024-12-18 15:12:30,441 INFO [main] [JDKFilterConfigurator] Global serial filter set ... (This log message was truncated from 55 characters to 25 characters)

最終更新日: 2024 年 12 月 20 日

この内容はお役に立ちましたか?

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.