|
| 1 | +This release is a security, maintenance and bug-fix release. |
| 2 | + |
| 3 | +<h4>Security Fixes</h4> |
| 4 | + |
| 5 | +This release has a number of important security fixes relating to API authorization bypasses & cross-site scripting that |
| 6 | +may facilitate additional attacks against administrators of your server. We recommend all users upgrade to this version to |
| 7 | +safeguard your GoCD server. |
| 8 | + |
| 9 | +We assess the most severe of these issues as of _high_ severity (<%= link_to 'CVSS v4.0', 'https://www.first.org/cvss/v4.0/' %> |
| 10 | +base score of 7.0), which you are vulnerable to if |
| 11 | +your GoCD environment allows polling of materials with changes submitted from low-trust or untrusted users. |
| 12 | + |
| 13 | +All other resolved issues are all of _low-to-medium_ severity (CVSS v4.0 base scores between 2.3 and 5.9) and require a |
| 14 | +valid GoCD user account to exploit - representing vulnerabilities only to attacks from malicious or compromised |
| 15 | +_existing GoCD users_. Effectively all historical GoCD versions prior to 26.1.0 are affected by one of the top 3-4 vulnerabilities. |
| 16 | + |
| 17 | +_If you cannot upgrade immediately_, we recommend you mitigate the more severe issues by taking these three steps: |
| 18 | + |
| 19 | +1. Pause or remove use of materials which automatically poll for changes contributed by un-trusted upstream users, e.g. |
| 20 | + tracking pull/merge requests from forks on open-source style repositories |
| 21 | +2. Use your reverse proxy/CDN to block access to URLs prefixed by `/go/admin/restful/*`. This has no impact on GoCD functionality. |
| 22 | +3. Review all configured _<%= link_to 'Pipeline Tracking Tool', 'https://docs.gocd.org/current/integration/' %>_ regular expressions for correctness. |
| 23 | + |
| 24 | +These security vulnerabilities were responsibly disclosed via high quality research performed by |
| 25 | +<%= link_to 'Aditya Bisht', 'https://github.com/cherry-bisht' %>, |
| 26 | +<%= link_to 'b0b0haha', 'https://github.com/b0b0haha' %>, |
| 27 | +<%= link_to 'j311yl0v3u', 'https://github.com/j311yl0v3u' %>, |
| 28 | +<%= link_to 'Jan Kahmen', 'https://github.com/kah-ja' %> (<%= link_to 'turingpoint', 'https://turingpoint.de/' %>), |
| 29 | +<%= link_to 'Ori Gabriel', 'https://github.com/origabriel' %>, |
| 30 | +<%= link_to 'Markus Magnuson', 'https://www.linkedin.com/in/mamagnuson/' %> (<%= link_to 'GitHub', 'https://github.com/alimony' %>) & |
| 31 | +<%= link_to 'Mohammed Amer', 'https://github.com/0nlymohammed' %> (<%= link_to 'hackerone', 'https://hackerone.com/0nlymohammed' %>) |
| 32 | +- the team extend our thanks for their efforts. |
| 33 | + |
| 34 | +Like many projects in the wider industry, the recent marked improvement |
| 35 | +in generative AI / LLM penetration testing harnesses has lead to a large increase in both discovered vulnerabilities and |
| 36 | +average report quality of reports - hence there are 10 distinct vulnerabilities resolved in this release. |
| 37 | + |
| 38 | +To give users some time to mitigate or upgrade, these vulnerabilities will be disclosed 2-4 weeks from now via |
| 39 | +GitHub Security Advisories and formal CVEs according to our <%= link_to 'disclosure policy', 'https://github.com/gocd/gocd/security/policy#disclosure-policy' %>. |
| 40 | + |
| 41 | +<h4>Java 21 is now the minimum supported version</h4> |
| 42 | + |
| 43 | +Java 21 was released in September 2023, and has had complete support within GoCD since version 24.1.0, over 2.5 years |
| 44 | +before this release. Since then it has been packaged with both GoCD container images & installers by default. |
| 45 | + |
| 46 | +This has proven to be very stable, so to reduce maintenance overhead and support upgrades to some dependencies that |
| 47 | +require Java 21, we are now making Java 21 the minimum supported version. |
| 48 | + |
| 49 | +If you are _aiming for minimal agent/server downtime_ in an upgrade to GoCD 26.1.0+, you can do so by following: |
| 50 | + |
| 51 | +1. Ensure your existing agents are running with Java 21+. |
| 52 | + - If your agents are using GoCD 24.2.0+ from _official GoCD containers_ there is _nothing extra to do_. These already package and run Java 21+. |
| 53 | + - If your agents are using GoCD 23.2.0+ from _other install approaches_, they are already Java 21-compatible. Ensure they are running with Java 21+. |
| 54 | +1. Ensure your existing server is running with Java 21+. |
| 55 | + - If your server is using GoCD 24.2.0+ from _official GoCD containers_ there is _nothing extra to do_. These already package and run Java 21+. |
| 56 | + - If your server is using GoCD 23.2.0+ from _other install approaches_, it is already Java 21-compatible. Ensure it is running with Java 21+. |
| 57 | +1. Upgrade your server to GoCD 26.1.0 without worry about Java issues. |
| 58 | + - Older agents running Java 21+ will restart automatically against a GoCD 26.1.0 server. |
| 59 | + - You can now validate your installation and agents are working fine. |
| 60 | +1. (Optionally) You can now upgrade your agents to GoCD 26.1.0 whenever you choose. |
| 61 | + - Technically GoCD agent installs are only a "bootstrapper" which downloads the matching agent code from the server for |
| 62 | + each release. It is wise to avoid too much discrepancy in versions to make upgrades (like this one!) easier, but it is |
| 63 | + not critical. |
| 64 | + |
| 65 | +If you have issues, _downgrades_ back to 23.2.0+ should be fine - there have been no breaking database or configuration |
| 66 | +changes within these versions. If you have any further queries/issues, please ask on [GitHub Discussions](https://github.com/gocd/gocd/discussions) or the [Google Group](https://groups.google.com/g/go-cd). |
| 67 | + |
| 68 | + |
| 69 | +<h4>Enhancements</h4> |
| 70 | + |
| 71 | +* <%= link_to_issue 14174 %>, <%= link_to_issue 14172 %>, <%= link_to_issue 14442, 'Add job console log support for ANSI faint, italic, underline and URL linking/highlighting' %>. |
| 72 | +* <%= link_to_issue 14308, 'Improve rendering of long pipeline names in pipeline activity/history, config & comparison views' %>. |
| 73 | +* <%= link_to_issue 14120, 'Change baseline to require Java 21 minimum' %>. |
| 74 | +* <%= link_to_issue 14326, 'Bundle latest Java 25.0.3 release with non-Linux installers & containers' %> |
| 75 | +* <%= link_to_issue 14119, 'Allow Adoptium / Eclipse Temurin JRE installs to meet linux dependency requirement' %>. |
| 76 | +* Starting this release, Ubuntu 26.04 (Resolute Raccoon) based docker images for GoCD Agent are <%= link_to 'available', 'https://hub.docker.com/r/gocd/gocd-agent-ubuntu-26.04' %>. |
| 77 | + |
| 78 | +<h4>Bug fixes</h4> |
| 79 | + |
| 80 | +* <%= link_to_issue 14362, 'GoCD 25.4.0 broke Stage Status email notifications' %> |
| 81 | +* <%= link_to_issue 14124, 'GoCD 25.4.0 introduced date format nuisances in UI and Log' %> |
| 82 | +* <%= link_to_issue 14134, 'GoCD 25.4.0 logs spurious errors during job status processing for jobs cancelled prior to assignment' %> |
| 83 | +* <%= link_to_issue 10052, 'Modification duplicate removal can fail for large source control histories' %> |
| 84 | +* <%= link_to_issue 14394, 'Console log copying on Job completion can fail with spurious errors when jobs are completely re-run' %> |
| 85 | +* <%= link_to_issue 12006, 'CCTray reporting old failures for stages which no longer exist on the pipeline' %> |
| 86 | +* <%= link_to_issue 14396, 'Dashboard-Queue-Processor throws spurious exceptions after pipeline conversion to template' %> |
| 87 | +* <%= link_to_issue 12427, 'Unable to move pipeline group when using pipeline filter' %> |
| 88 | +* <%= link_to_issue 12672, 'JSON API calls can fail while running a pipeline' %> |
| 89 | +* <%= link_to_issue 14397, 'Validate supplied template/pipeline names exist when creating via the template creation API' %> |
| 90 | +* <%= link_to_issue 14409, 'Redirect-after-login can redirect user to non UI views' %> |
| 91 | +* <%= link_to_issue 14282, 'Ensure container image safe shutdown by use tini as PID 1 from initial boot' %> |
| 92 | +* <%= link_to_issue 14357, 'Ensure Test Drive experience works correctly when users use SSH keys for Git GPG' %> |
| 93 | +* <%= link_to_issue 14360, 'Background of hovered locked pipeline icon is incorrect when user lacks unlock permissions' %> |
| 94 | +* Correct rendering of package material comments across various views |
| 95 | + |
| 96 | +<h4>Other changes</h4> |
| 97 | + |
| 98 | +* <%= link_to_issue 14398, 'Remove Stage Detail admin-only Config XML tab' %> |
| 99 | +* <%= link_to_issue 14398, 'Remove legacy /go/api/admin/config/current.xml and /go/api/admin/config/:md5.xml APIs (without directly replacement)' %> |
| 100 | +* <%= link_to_issue 14112, 'Drop macOS x64 support' %> |
| 101 | + |
| 102 | +<h4>APIs</h4> |
| 103 | + |
| 104 | +Improvements, deprecations and breaking changes in the API and plugin API have been moved to their respective changelogs |
| 105 | +- <%= link_to_versioned_api '26.1.0','changes-in-26-1-0', 'API changelog for 26.1.0' %> and |
| 106 | + <%= link_to_versioned_plugin_api '26.1.0','changes-in-gocd-26-1-0', 'Plugin API changelog for 26.1.0' %>. |
| 107 | + |
| 108 | +<h4>Contributors</h4> |
| 109 | + |
| 110 | +<%= [ |
| 111 | + "Aditya Bisht (cherry-bisht, bisht-ji, oceany)", |
| 112 | + "Aravind SV", |
| 113 | + "Arthur Embleton", |
| 114 | + "Asish Kumar", |
| 115 | + "b0b0haha (b0b0hahaxixi)", |
| 116 | + "Chad Wilson", |
| 117 | + "Chris Gillatt", |
| 118 | + "Gareth Coles", |
| 119 | + "Jan Kahmen (of turingpoint.de)", |
| 120 | + "j311yl0v3u", |
| 121 | + "Markus Magnuson (alimony / peppersghost)", |
| 122 | + "Mohammed Amer (0nlymohammed)", |
| 123 | + "Ori Gabriel (climaxx)", |
| 124 | + "Ryan Dutton", |
| 125 | + "Samuel Goncalves", |
| 126 | + "Yelin Aung", |
| 127 | +].sort.uniq.join(', ') |
| 128 | +%> |
| 129 | + |
| 130 | +<h4>Note</h4> |
| 131 | + |
| 132 | +A more comprehensive list of changes for this release can be found <%= link_to_full_changelog 'here.', 'Release 26.1.0' %> |
| 133 | + |
| 134 | +Found a security issue that needs fixing? Please report it to <%= link_to 'https://hackerone.com/gocd', 'https://hackerone.com/gocd' %> |
| 135 | + |
| 136 | +Please report any issues that you observe on [GitHub issues](https://github.com/gocd/gocd/issues). |
0 commit comments