<?xml version="1.0" encoding="UTF-8"?><feed xmlns="http://www.w3.org/2005/Atom"><title>GitLab Releases</title><id>https://docs.gitlab.com/releases/</id><link href="https://docs.gitlab.com/releases/" rel="alternate"/><updated>2026-04-22T00:00:00Z</updated><author><name>The GitLab Team</name></author><entry><title>GitLab Patch Release: 18.11.1, 18.10.4, 18.9.6</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-11-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-11-1-released/</id><published>2026-04-22T00:00:00Z</published><updated>2026-04-22T00:00:00Z</updated><author><name>Greg Myers</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On April 22, 2026, we released versions 18.11.1, 18.10.4, 18.9.6 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, please visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring that all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. To maintain good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/2020/05/20/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, it means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-11-1-released/#cve-2026-4922---cross-site-request-forgery-issue-in-graphql-api-impacts-gitlab-ceee">Cross-Site Request Forgery issue in GraphQL API impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-11-1-released/#cve-2026-5816---improper-resolution-of-path-equivalence-issue-in-web-ide-asset-impacts-gitlab-ceee">Improper Resolution of Path Equivalence issue in Web IDE asset impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-11-1-released/#cve-2026-5262---cross-site-scripting-issue-in-storybook-impacts-gitlab-ceee">Cross-site Scripting issue in Storybook impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-11-1-released/#cve-2025-0186---denial-of-service-issue-in-discussions-endpoint-impacts-gitlab-ceee">Denial of Service issue in discussions endpoint impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-11-1-released/#cve-2026-1660---denial-of-service-issue-in-jira-import-impacts-gitlab-ceee">Denial of Service issue in Jira import impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-11-1-released/#cve-2025-6016---denial-of-service-issue-in-notes-endpoint-impacts-gitlab-ceee">Denial of Service issue in notes endpoint impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-11-1-released/#cve-2025-3922---denial-of-service-issue-in-graphql-api-impacts-gitlab-ceee">Denial of Service issue in GraphQL API impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-11-1-released/#cve-2026-6515---insufficient-session-expiration-issue-in-virtual-registry-credentials-validation-impacts-gitlab-ceee">Insufficient Session Expiration issue in virtual registry credentials validation impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-11-1-released/#cve-2026-5377---improper-access-control-issue-in-issue-description-renderer-impacts-gitlab-ceee">Improper Access Control issue in issue description renderer impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-11-1-released/#cve-2026-3254---improper-restriction-of-rendered-ui-layers-or-frames-issue-in-mermaid-sandbox-impacts-gitlab-ceee">Improper Restriction of Rendered UI Layers or Frames issue in Mermaid sandbox impacts GitLab CE/EE</a></td>
          <td>Low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-11-1-released/#cve-2025-9957---improper-access-control-issue-in-project-fork-relationship-api-impacts-gitlab-ceee">Improper Access Control issue in project fork relationship API impacts GitLab CE/EE</a></td>
          <td>Low</td>
      </tr>
  </tbody>
</table>
<h3 id="cve-2026-4922---cross-site-request-forgery-issue-in-graphql-api-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-4922">CVE-2026-4922</a> - Cross-Site Request Forgery issue in GraphQL API impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an unauthenticated user to execute GraphQL mutations on behalf of authenticated users due to insufficient CSRF protection.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 17.0 before 18.9.6, 18.10 before 18.10.4, and 18.11 before 18.11.1 <br>
<strong>CVSS</strong> 8.1 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/ahacker1">ahacker1</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2026-5816---improper-resolution-of-path-equivalence-issue-in-web-ide-asset-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-5816">CVE-2026-5816</a> - Improper Resolution of Path Equivalence issue in Web IDE asset impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an unauthenticated user to execute arbitrary JavaScript in a user&rsquo;s browser session due to improper path validation under certain conditions.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 18.10 before 18.10.4 and 18.11 before 18.11.1 <br>
<strong>CVSS</strong> 8.0 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2026-5262---cross-site-scripting-issue-in-storybook-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-5262">CVE-2026-5262</a> - Cross-site Scripting issue in Storybook impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that under certain conditions could have allowed an unauthenticated user to access tokens in the Storybook development environment due to improper input validation.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 16.1 before 18.9.6, 18.10 before 18.10.4, and 18.11 before 18.11.1 <br>
<strong>CVSS</strong> 8.0 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-0186---denial-of-service-issue-in-discussions-endpoint-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-0186">CVE-2025-0186</a> - Denial of Service issue in discussions endpoint impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to cause denial of service under certain conditions by exhausting server resources by making crafted requests to a discussions endpoint.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 10.6 before 18.9.6, 18.10 before 18.10.4, and 18.11 before 18.11.1 <br>
<strong>CVSS</strong> 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/pwnie">pwnie</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2026-1660---denial-of-service-issue-in-jira-import-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-1660">CVE-2026-1660</a> - Denial of Service issue in Jira import impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that under certain conditions could have allowed an authenticated user to cause denial of service when importing issues due to improper input validation.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 12.3 before 18.9.6, 18.10 before 18.10.4, and 18.11 before 18.11.1 <br>
<strong>CVSS</strong> 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/a92847865">a92847865</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-6016---denial-of-service-issue-in-notes-endpoint-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-6016">CVE-2025-6016</a> - Denial of Service issue in notes endpoint impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to cause denial of service due to insufficient resource allocation limits when retrieving notes under certain conditions.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 9.2 before 18.9.6, 18.10 before 18.10.4, and 18.11 before 18.11.1 <br>
<strong>CVSS</strong> 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/pwnie">pwnie</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-3922---denial-of-service-issue-in-graphql-api-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-3922">CVE-2025-3922</a> - Denial of Service issue in GraphQL API impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to cause denial of service by overwhelming system resources under certain conditions due to insufficient resource allocation limits in the GraphQL API.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 12.4 before 18.9.6, 18.10 before 18.10.4, and 18.11 before 18.11.1 <br>
<strong>CVSS</strong> 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/pwnie">pwnie</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2026-6515---insufficient-session-expiration-issue-in-virtual-registry-credentials-validation-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-6515">CVE-2026-6515</a> - Insufficient Session Expiration issue in virtual registry credentials validation impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed a user to use invalidated or incorrectly scoped credentials to access Virtual Registries under certain conditions.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 18.2 before 18.9.6, 18.10 before 18.10.4, and 18.11 before 18.11.1 <br>
<strong>CVSS</strong> 5.4 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N</code></a>)</p>
<p>This vulnerability has been discovered internally by GitLab team member David Fernandez</p>
<h3 id="cve-2026-5377---improper-access-control-issue-in-issue-description-renderer-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-5377">CVE-2026-5377</a> - Improper Access Control issue in issue description renderer impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to access titles of confidential or private issues in public projects due to improper access control in the issue description rendering process.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 18.11 before 18.11.1 <br>
<strong>CVSS</strong> 4.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/yvvdwf">yvvdwf</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2026-3254---improper-restriction-of-rendered-ui-layers-or-frames-issue-in-mermaid-sandbox-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-3254">CVE-2026-3254</a> - Improper Restriction of Rendered UI Layers or Frames issue in Mermaid sandbox impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that under certain conditions could have allowed an authenticated user to load unauthorized content into another user&rsquo;s browser due to improper input validation in the Mermaid sandbox.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 18.11 before 18.11.1 <br>
<strong>CVSS</strong> 3.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:L/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-9957---improper-access-control-issue-in-project-fork-relationship-api-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-9957">CVE-2025-9957</a> - Improper Access Control issue in project fork relationship API impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that under certain conditions could have allowed an authenticated user with project owner permissions to bypass group fork prevention settings due to improper authorization checks.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 11.2 before 18.9.6, 18.10 before 18.10.4, and 18.11 before 18.11.1 <br>
<strong>CVSS</strong> 2.7 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:N/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:N/I:L/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/theluci">theluci</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="18111">18.11.1</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/231458">Backport- Use force_index_repo task type for Zoekt schema_version bump reindexing</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/231430">Backport docs: Update PostgreSQL version documentation for PG17</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/231810">[18.11] Skip re-creating of constraint when migration spec is skipped</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/231737">Backport of &quot; 18.11 What&rsquo;s new&quot;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/231836">Revert &ldquo;Merge branch &lsquo;renovate-ci-templates/auto-build-image-4.x&rsquo; into &lsquo;v18.11.0-ee&rsquo;&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/231856">Backport of &ldquo;BBM - Skip 3 migrations referencing dropped tables&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/232147">[18.11] Fix session ID dropdown never appearing during active agentic chat</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/231844">Backport of &lsquo;Fix JSON tables with non-string values&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9334">18.11 - Cherry-pick !9288 and !9311 - Remove PackageCloud CI and rename pulp jobs</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9339">Backport of &lsquo;Remove package OS check from deployer task&rsquo; - 18.11</a></li>
</ul>
<h3 id="18104">18.10.4</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/8675">[18.10] Scope start-rails-specs changes rule to MR pipelines</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/229960">Backport of &lsquo;Fix runner token reset returning 500 for unassigned project runners&rsquo; to 18.10</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/230426">Backport of &lsquo;Fix flaky new_project_spec.rb by scoping within pane&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/230319">18.10 Backport of &lsquo;Update rack to 2.2.23&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/230677">Backport of &ldquo;Skip BBMs referencing dropped tables in single-record bug retry&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/230794">Backport of Added reload to address flaky pipeline spec race condition</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/229886">Backport GITLAB_ZOEKT_INDEXER v1.11.1</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/230785">Backport of Fix flaky tests for ui_variable_non_inheritable_when_forward_pipeline_variables_false_spec</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/230877">Backport of &lsquo;Skip CI finished builds backfill when ClickHouse is not configured&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/230978">Backport to 18.10: Geo: Run concurrency limit worker on secondary sites</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/231161">Backport of &lsquo;Geo: Switch blob download to use GitLab::HTTP to avoid llhttp-ffi issue&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/231496">Backport of Release environment deploy needs Omnibus package - 18.10</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/231460">Backport- Use force_index_repo task type for Zoekt schema_version bump reindexing</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/231085">Backport of  add feature flag to gate default Sidekiq concurrency limit calculation</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/231811">[18.10] Skip re-creating of constraint when migration spec is skipped</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/231082">Docs backport: Add note about Agent Platform flow configurations not available until 18.11</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/231160">Backport of praba/release-connections-from-all-hosts and stomlinson/feature-check-dead-connections to 18.10</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/231988">Backport to 18.10: Geo: Fix site validation when outbound request filtering is enabled</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9264">Ensure postgresql_new is included in GitLab CE</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9291">18.10 backport of &lsquo;Update rack to 2.2.23&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9302">Upgrade postgresql-17 to 17.8 for 18-10-stable</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9303">Upgrade postgresql-16 to 16.13 for 18-10-stable</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9308">Backport: fix: Set sv timeout when restarting Gitaly to 18.10</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9314">[18.10] Remove Mattermost for SLES-12.5</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9335">18.10 - Cherry-pick !9288 and !9311 - Remove PackageCloud CI and rename pulp jobs</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9340">Backport of &lsquo;Remove package OS check from deployer task&rsquo; - 18.10</a></li>
</ul>
<h3 id="1896">18.9.6</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2896">chore: bump gitlab-zoekt to v1.8.2 on 18-9-stable</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/8676">[18.9] Scope start-rails-specs changes rule to MR pipelines</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/231281">18.9 Backport of &lsquo;update zlib to 3.2.3&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/231207">Backport to 18.9: Geo: Run concurrency limit worker on secondary sites</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/231497">Backport of Release environment deploy needs Omnibus package - 18.9</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/231461">Backport- Use force_index_repo task type for Zoekt schema_version bump reindexing</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/231812">[18.9] Skip re-creating of constraint when migration spec is skipped</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/231083">Docs backport: Add note about Agent Platform flow configurations not available until 18.11</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/231297">Backport of  add feature flag to gate default Sidekiq concurrency limit calculation</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/231352">Backport GITLAB_ZOEKT_INDEXER v1.8.2</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/231990">Backport to 18.9: Geo: Fix site validation when outbound request filtering is enabled</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9298">Backport: Ensure postgresql_new is included in GitLab CE</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9292">18.9 backport of &lsquo;Update rack to 2.2.23&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9305">Upgrade postgresql-17 to 17.8 for 18-9-stable</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9306">Upgrade postgresql-16 to 16.13 for 18-9-stable</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9309">Backport: fix: Set sv timeout when restarting Gitaly to 18.9</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9315">[18.9] Remove Mattermost for SLES-12.5</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9336">18.9 - Cherry-pick !9288 and !9311 - Remove PackageCloud CI and rename pulp jobs</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9297">Remove .gitlab folder under package gitlab-rails</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9341">Backport of &lsquo;Remove package OS check from deployer task&rsquo; - 18.9</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>This patch includes database migrations that may impact your upgrade process.</p>
<h3 id="impact-on-your-installation">Impact on your installation:</h3>
<ul>
<li><strong>Single-node instances</strong>: This patch will cause downtime during the upgrade as migrations must complete before GitLab can start.</li>
<li><strong>Multi-node instances</strong>: With proper <a href="https://docs.gitlab.com/ee/update/zero_downtime.html">zero-downtime upgrade procedures</a>, this patch can be applied without downtime.</li>
</ul>
<h3 id="regular-migrations">Regular migrations</h3>
<p>The following versions include regular migrations that run during the upgrade process:</p>
<ul>
<li>18.11.1</li>
<li>18.10.4</li>
<li>18.9.6</li>
</ul>
<h3 id="post-deploy-migrations">Post-deploy migrations</h3>
<p>The following versions include post-deploy migrations that can run after the upgrade:</p>
<ul>
<li>18.11.1</li>
<li>18.10.4</li>
</ul>
<p>To learn more about the impact of upgrades on your installation, see:</p>
<ul>
<li><a href="https://docs.gitlab.com/ee/update/zero_downtime.html">Zero-downtime upgrades</a> for multi-node deployments</li>
<li><a href="https://docs.gitlab.com/update/package/#downtime">Standard upgrades</a> for single-node installations</li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update">Update page</a>.
To update GitLab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->
]]></content></entry><entry><title>GitLab 18.11 released</title><link href="https://docs.gitlab.com/releases/18/18-11-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/18/18-11-released/</id><published>2026-04-16T00:00:00Z</published><updated>2026-04-16T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On April 16, 2026, GitLab 18.11 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong>Rinku C</strong>
</p>
<p>We are excited to recognize <a href="https://gitlab.com/therealrinku">Rinku C</a>, a Level 4 contributor with over 80 merged improvements across GitLab since joining in September 2025.</p>
<p>Nominated by <a href="https://gitlab.com/aharadon">Arianna Haradon</a>, Senior Fullstack Engineer on the Developer Relations team, this award celebrates his sustained and meaningful impact over time. Rinku has strengthened security-sensitive flows by <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/219236">requiring scopes on project and group access token creation forms</a>, and improved everyday GitLab experience with numerous updates like <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/217618">next/previous navigation in job logs</a>, <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/223570">excluding empty searches from recent</a>, and <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/224628">reducing file tree clutter</a> through thoughtful UI refinements that make common workflows clearer and easier to navigate. Rinku tackles the work that often goes unclaimed, keeping the codebase healthy and compounding to meaningful, lasting value. Thank you for your contributions!</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>Vulnerability resolution generally available on GitLab Duo Agent Platform</strong>
    <p><p>Agentic SAST Vulnerability Resolution is now generally available in GitLab 18.11 on the GitLab Duo Agent Platform. It runs as part of your SAST scan, after SAST false positive detection runs, or when manually triggered for individual SAST vulnerabilities.</p>
<p>Agentic SAST Vulnerability Resolution:</p>
<ul>
<li>Autonomously analyzes the finding and reasons through the surrounding code context.</li>
<li>Automatically creates a ready-to-review merge request with proposed code fixes for critical and high severity SAST vulnerabilities.</li>
<li>Provides quality assessments so reviewers can quickly gauge confidence in the proposed remediation.</li>
<li>Allows you to apply resolutions directly from vulnerability details pages.</li>
</ul>
<p>We welcome your feedback in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/585626">issue 585626</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/vulnerabilities/agentic_vulnerability_resolution/">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Data Analyst Foundational Agent now generally available</strong>
    <p><p>The Data Analyst Agent is a specialized AI chat assistant that helps you query, visualize, and surface data across the GitLab platform.</p>
<p>Backed by the <a href="https://docs.gitlab.com/user/glql">GitLab Query Language (GLQL)</a>, the Data Analyst can retrieve and analyze data about each of the supported <a href="https://docs.gitlab.com/user/glql/data_sources/">data sources</a>, and provide clear, actionable insights about your software development health and engineering efficiency.</p>
<p>These insights can be visualized directly in the agent output and embedded directly into issues and epics for further evaluation.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/duo_agent_platform/agents/foundational_agents/data_analyst/">View Documentation</a></p>
  </li>
  <li>
    <strong>CI Expert Agent launches in beta</strong>
    <p><p>The AI-powered CI Expert Agent is now available in beta. This agent helps teams get from GitLab code to a first working pipeline without starting from a blank <code>.gitlab-ci.yml</code>.</p>
<p>Using GitLab Duo Agent Platform, the agent inspects your repository, asks a few guided questions about your build and test process, and generates a ready-to-run pipeline you can review, edit, and commit.</p>
<p>This turns pipeline creation into a conversational, context-aware experience, while still letting you take full control of the YAML after you&rsquo;re ready to evolve and optimize your configuration.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/duo_agent_platform/agents/foundational_agents/ci_expert_agent/">View Documentation</a></p>
  </li>
  <li>
    <strong>Automated vulnerability severity overrides</strong>
    <p><p>Default vulnerability severities don&rsquo;t always reflect your organization&rsquo;s actual risk. A critical CVE in an internal-only service might not warrant the same urgency as one in a public-facing application, yet teams spend significant time triaging findings that don&rsquo;t match their risk model.</p>
<p>Vulnerability management policies can now automatically adjust the severity of vulnerabilities based on conditions like CVE ID, CWE ID, file path, and directory. When applied, the policy updates the severity of any vulnerability that matches the criteria on the default branch. Manual overrides still take precedence, and all changes are logged in the vulnerability&rsquo;s history and audit events.</p>
<p>This reduces triage work and ensures developers focus on the findings that matter most to your business.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/policies/vulnerability_management_policy/#severity-override-policies">View Documentation</a></p>
  </li>
  <li>
    <strong>Create Service Account in subgroups and projects</strong>
    <p>Teams can now create service accounts in subgroups and projects. Instead of broad, top-level group bots, you can attach a dedicated service account to a single subgroup or project and manage its access like any other member of that namespace. Group and subgroup service accounts can be invited to the group where they were created or to any descendant subgroups and projects. Project service accounts are limited to their own project.</p>
    <p><a href="https://docs.gitlab.com/user/profile/service_accounts/">View Documentation</a></p>
  </li>
  <li>
    <strong>Service Accounts available on GitLab Free</strong>
    <p>Service accounts are now available on GitLab.com in all tiers. Previously limited to
Premium and Ultimate, service accounts let you perform automated actions, access data, or run
scheduled processes without tying credentials to individual team members. They&rsquo;re commonly used in
pipelines and third-party integrations where credentials must stay stable regardless of team
changes. On GitLab Free, you can create up to 100 service accounts per top-level group, including those
created in subgroups or projects.</p>
    <p><a href="https://docs.gitlab.com/user/profile/service_accounts/">View Documentation</a></p>
  </li>
  <li>
    <strong>Fine-grained permissions for personal access tokens now available (Beta)</strong>
    <p><p>Fine-grained personal access tokens (PATs) are now available in beta. Unlike legacy PATs, which grant access to every project and group you belong to, fine-grained PATs let you limit each token to specific resources and actions. This reduces the potential impact of a leaked or compromised token.</p>
<p>Your existing PATs continue to work as before, and you can still create legacy PATs without fine-grained permissions.</p>
<p>This beta release covers approximately 75% of the GitLab REST API. Full REST API coverage, GraphQL enforcement, and administrator policy controls are planned for the GA release.</p>
<p>To share feedback, see <a href="https://gitlab.com/groups/gitlab-org/-/epics/18555">epic 18555</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/auth/tokens/fine_grained_access_tokens/">View Documentation</a></p>
  </li>
  <li>
    <strong>Top CWE chart in security dashboards</strong>
    <p>The top CWE chart is now available on the new security dashboards. Identify the most common CWEs across your project or instance to identify opportunities for training, improvement, or program optimization. Users can group the dashboard data by severity and filter the dashboard by severity, project, and report type.</p>
    <p><a href="https://docs.gitlab.com/user/application_security/security_dashboard/#top-10-cwes">View Documentation</a></p>
  </li>
  <li>
    <strong>Deploy Gitaly on Kubernetes</strong>
    <p>You can now deploy Gitaly on Kubernetes as a fully supported deployment method. This gives you greater flexibility in managing your GitLab infrastructure by using Kubernetes orchestration capabilities for scaling, high availability, and resource management. Previously, Kubernetes deployments required custom configurations and weren&rsquo;t officially supported, making it difficult to maintain reliable Gitaly clusters in containerized environments.</p>
    <p><a href="https://docs.gitlab.com/administration/gitaly/kubernetes/">View Documentation</a></p>
  </li>
  <li>
    <strong>Reconfigure inputs when manually running MR pipelines</strong>
    <p><p>A powerful aspect of CI/CD inputs is that you can manually run new pipelines with new values for runtime customization.
This was not available in merge request (MR) pipelines before, but in this release you can now customize inputs in MR pipelines too.</p>
<p>After you configure inputs for MR pipelines, you can optionally modify those inputs and change the pipeline behavior any time you run a new pipeline for a merge request.</p>
</p>
    <p><a href="https://docs.gitlab.com/ci/pipelines/merge_request_pipelines/#run-a-merge-request-pipeline-with-custom-inputs">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Agentic Core</h4>
<ul>
  <li>
    <strong>Default model for GitLab Duo Agentic Chat updated from Haiku 4.5 to Sonnet 4.6</strong>
    <p><p>We&rsquo;ve made an update to improve your Agentic Chat experience in GitLab. The default model for Agentic Chat was upgraded from Claude Haiku 4.5 to Claude Sonnet 4.6, hosted on Vertex AI. Claude Sonnet 4.6 offers improved reasoning and response quality but uses a higher GitLab Credit multiplier than Haiku 4.5.</p>
<p>You can select an alternative model, including Haiku, using the <a href="https://docs.gitlab.com/user/duo_agent_platform/model_selection/#select-a-model-for-a-feature">model selection</a> setting. If you&rsquo;ve already selected a specific model, your choice is preserved. This update only affects the default and will not override any existing selections. For information about credit multipliers by model, see the <a href="https://docs.gitlab.com/subscriptions/gitlab_credits/">GitLab Credits documentation</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/duo_agent_platform/model_selection/#default-models">View Documentation</a></p>
  </li>
  <li>
    <strong>Configure tools in custom flow definitions</strong>
    <p>You can now configure tool options and parameter values directly in your custom flow definitions to supersede the LLM default values. This gives you more precise, consistent control over how tools behave within a custom flow, making it easier to enforce guardrails and specific parameter values across that flow.</p>
    <p><a href="https://docs.gitlab.com/user/duo_agent_platform/flows/custom/#create-a-flow">View Documentation</a></p>
  </li>
  <li>
    <strong>Mistral AI now supported as a self-hosted model in GitLab Duo Agent Platform</strong>
    <p>GitLab Duo Agent Platform now supports Mistral AI as an LLM platform for self-hosted model deployments. GitLab Self-Managed customers can configure Mistral AI alongside existing supported platforms, including AWS Bedrock, Google Vertex AI, Azure OpenAI, Anthropic, and OpenAI. This gives teams more choice in how they run AI-powered features.</p>
    <p><a href="https://docs.gitlab.com/administration/gitlab_duo_self_hosted/supported_llm_serving_platforms/#cloud-hosted-model-deployments">View Documentation</a></p>
  </li>
</ul>
<h4>Scale and Deployments</h4>
<ul>
  <li>
    <strong>View historical months in GitLab Credits dashboard</strong>
    <p>The GitLab Credits dashboard in Customers Portal now supports historical month navigation. Billing managers can browse past billing months to review daily usage trends, compare consumption patterns across periods, and reconcile usage with invoices. Previously, the dashboard only displayed the current billing month. With this improvement, administrators can make more informed decisions about credit allocation and forecast future needs based on historical data.</p>
    <p><a href="https://docs.gitlab.com/subscriptions/gitlab_credits/?tab=Customers&#43;Portal#view-the-gitlab-credits-dashboard">View Documentation</a></p>
  </li>
  <li>
    <strong>Set subscription-level usage cap for GitLab Credits</strong>
    <p>Administrators can now set a monthly usage cap for On-Demand Credits at the subscription level. When total on-demand credit consumption reaches the configured cap, GitLab Duo Agent Platform access is automatically suspended for all users on that subscription until the next billing period begins or the admin adjusts the cap. This setting gives organizations a hard guardrail against unexpected overage bills, removing a key barrier to broader Agent Platform rollout. Caps reset automatically each billing period, and administrators receive an email notification when the cap is reached.</p>
    <p><a href="https://docs.gitlab.com/subscriptions/gitlab_credits/#usage-controls">View Documentation</a></p>
  </li>
  <li>
    <strong>Set per-user GitLab Credits cap</strong>
    <p>Administrators can now set an optional per-user usage cap for GitLab Credits per billing period. When an individual user&rsquo;s total credit consumption reaches the configured limit, GitLab Duo Agent Platform access is suspended only for that user, while other users continue unaffected. This prevents any single user from consuming a disproportionate share of the organization&rsquo;s credit pool, and gives administrators fine-grained control over usage distribution. Per-user usage caps work alongside subscription-level usage caps, by applying the cap that is reached first.</p>
    <p><a href="https://docs.gitlab.com/subscriptions/gitlab_credits/#usage-control-status">View Documentation</a></p>
  </li>
  <li>
    <strong>Linux package improvements</strong>
    <p><p>In GitLab 19.0, the minimum-supported version of PostgreSQL will be version 17. To prepare for this change, on instances that don&rsquo;t use <a href="https://docs.gitlab.com/administration/postgresql/replication_and_failover/">PostgreSQL Cluster</a>, upgrades to GitLab 18.11 will attempt to automatically upgrade PostgreSQL to version 17.</p>
<p>If you use <a href="https://docs.gitlab.com/administration/postgresql/replication_and_failover/">PostgreSQL Cluster</a> or <a href="https://docs.gitlab.com/omnibus/settings/database/#opt-out-of-automatic-postgresql-upgrades">opt out of this automated upgrade</a>, you must <a href="https://docs.gitlab.com/omnibus/settings/database/#upgrade-packaged-postgresql-server">manually upgrade to PostgreSQL 17</a> to be able to upgrade to GitLab 19.0.</p>
</p>
    <p><a href="https://docs.gitlab.com/omnibus/settings/database/#upgrade-packaged-postgresql-server">View Documentation</a></p>
  </li>
  <li>
    <strong>Backup and Restore Support for Container Registry Metadata Database</strong>
    <p>The GitLab <a href="https://docs.gitlab.com/administration/backup_restore/">backup Rake task</a> for Linux package installations and the <a href="https://docs.gitlab.com/charts/backup-restore/">backup-utility</a> for Cloud Native (Helm) installations now support the <a href="https://docs.gitlab.com/administration/packages/container_registry_metadata_database/">container registry metadata database</a>. You can now back up references to blobs, manifests, tags, and other data stored in the metadata database, enabling recovery in the event of malicious or accidental data corruption.</p>
    <p><a href="https://docs.gitlab.com/administration/backup_restore/#metadata-database">View Documentation</a></p>
  </li>
  <li>
    <strong>New navigation experience for groups in Explore</strong>
    <p><p>We&rsquo;re excited to announce improvements to the groups list in <strong>Explore</strong>, making it easier to discover groups across your GitLab instance.
The redesigned interface introduces a tabbed layout with two views:</p>
<ul>
<li><strong>Active</strong> tab: Browse all accessible groups, helping you discover relevant communities and projects.</li>
<li><strong>Inactive</strong> tab: View archived groups and groups pending deletion for visibility into group lifecycle status.</li>
</ul>
<p>These changes streamline group discovery and provide clearer visibility into which groups are available to join.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/group/#explore-groups">View Documentation</a></p>
  </li>
  <li>
    <strong>Asynchronous transfer of projects</strong>
    <p>In previous versions of GitLab, transfers of large groups and projects could timeout. As we move groups and projects to use a unified state model for operations such as transfer, archive, and deletion, you get more consistent behavior, better visibility into state history and audit details, and fewer timeouts, specifically, for long running transfer operations through asynchronous processing.</p>
    <p><a href="https://docs.gitlab.com/user/group/manage">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>ClickHouse is generally available for Self-Managed deployments</strong>
    <p><p>For GitLab Self-Managed instances, we now have improved recommendations and configuration guidance for the GitLab <a href="https://docs.gitlab.com/integration/clickhouse/">ClickHouse integration</a>. Customers have options to bring their own cluster, or use the ClickHouse Cloud (recommended) setup option. This integration powers multiple dashboards and unlocks access to various API endpoints within the analytics space.</p>
<p>This scalable, high-performance database is part of the larger architectural improvements planned for the GitLab analytics infrastructure.</p>
</p>
    <p><a href="https://docs.gitlab.com/integration/clickhouse/#set-up-clickhouse">View Documentation</a></p>
  </li>
  <li>
    <strong>Enhanced GitLab Duo Agent Platform analytics on Duo and SDLC trends dashboard</strong>
    <p>The GitLab Duo and SDLC trends dashboard delivers improved analytics capabilities to measure the impact of GitLab Duo
on software delivery. The dashboard now includes new single stat panels for monthly Agent Platform unique users and Agentic Chat sessions.
Additionally, metrics previously displayed as a % usage compared to seat assignments have been updated to strictly report usage counts.
This change resolves the <a href="https://gitlab.com/gitlab-org/gitlab/-/work_items/590326">issue</a> where counts were missing Agent Platform usage controlled under the new usage billing model.</p>
    <p><a href="https://docs.gitlab.com/user/analytics/duo_and_sdlc_trends/">View Documentation</a></p>
  </li>
  <li>
    <strong>GLQL now has access to projects, pipelines, and jobs data sources</strong>
    <p>The <a href="https://docs.gitlab.com/user/glql/">GitLab Query Language (GLQL)</a> now has access to three new data sources: projects, pipelines, and jobs. These new data sources are also available as embedded views, letting teams surface pipeline results, job statuses, and project overviews directly in wikis, issue and merge request descriptions, and repository Markdown files.
GLQL also powers the <a href="https://docs.gitlab.com/user/duo_agent_platform/agents/foundational_agents/data_analyst/">Data Analyst Agent</a>. With these new types, the agent can inspect CI/CD job results, debug failures, and provide detailed overviews of pipeline execution, as well as provide an accurate overview of projects in a namespace.</p>
    <p><a href="https://docs.gitlab.com/user/glql/data_sources/">View Documentation</a></p>
  </li>
  <li>
    <strong>Dependency resolution for Maven and Python SBOM scanning</strong>
    <p>GitLab dependency scanning using SBOM now supports generating a dependency graph automatically for Maven and Python projects.
Previously, dependency scanning required users to provide a lock file or a graph file to get an accurate dependency analysis.
Now, when a lock file or graph file is not available, the analyzer automatically attempts to generate one.
This improvement makes it easier for Maven and Python projects to enable dependency scanning without requiring a lock file.</p>
    <p><a href="https://docs.gitlab.com/user/application_security/dependency_scanning/dependency_scanning_sbom/#dependency-resolution">View Documentation</a></p>
  </li>
  <li>
    <strong>Incremental scanning for Advanced SAST</strong>
    <p><p>You can now perform incremental scans that analyze only changed parts of the codebase with GitLab Advanced SAST, significantly reducing scan times compared to full repository scans. This feature is a further iteration of diff-based scanning, because it produces full results for codebases.</p>
<p>By scanning just the code that has changed rather than the entire codebase, your teams can integrate security testing more seamlessly into their development workflow without sacrificing speed or adding friction.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/sast/gitlab_advanced_sast/#incremental-scanning">View Documentation</a></p>
  </li>
  <li>
    <strong>Unverified vulnerabilities (Beta)</strong>
    <p><p>Advanced SAST can now surface unverified vulnerabilities (findings that cannot be fully traced from source to sink) directly in the vulnerability report. Enable this feature if you have a higher tolerance for false positives over false negatives.</p>
<p>This feature is in beta status. Provide feedback in <a href="https://gitlab.com/gitlab-org/gitlab/-/work_items/596512">issue 596512</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/sast/gitlab_advanced_sast/#report-unverified-vulnerabilities">View Documentation</a></p>
  </li>
  <li>
    <strong>Kubernetes 1.35 support</strong>
    <p>GitLab now fully supports Kubernetes version 1.35. If you want to deploy your applications to Kubernetes
and access all features, upgrade your connected clusters to the most recent version.
For more information, see <a href="https://docs.gitlab.com/user/clusters/agent/#supported-kubernetes-versions-for-gitlab-features">supported Kubernetes versions for GitLab features</a>.</p>
    <p><a href="https://docs.gitlab.com/user/clusters/agent/#supported-kubernetes-versions-for-gitlab-features">View Documentation</a></p>
  </li>
  <li>
    <strong>Prefer mode for the container registry metadata database</strong>
    <p><p>You can now set the container registry metadata database to <code>prefer</code> mode, a new configuration option alongside the existing <code>true</code> and <code>false</code> values. In prefer mode, the registry automatically detects whether it should use the metadata database or fall back to legacy storage based on the current state of your installation.</p>
<p>If your registry has existing filesystem metadata that has not been imported to the database, the registry continues to use legacy storage until you complete a metadata import. If the database is already in use, or on a fresh installation, the registry uses the database directly.</p>
<p>In a later release, <code>prefer</code> mode will become the default for new Linux package installations. Existing installations will not be affected. For more information, see <a href="https://gitlab.com/gitlab-org/gitlab/-/work_items/595480">issue 595480</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/packages/container_registry_metadata_database/#prefer-mode">View Documentation</a></p>
  </li>
  <li>
    <strong>Package protection rules now support Terraform modules</strong>
    <p><p>Teams publishing Terraform modules through the built-in GitLab Terraform module registry had
no way to restrict who could push new module versions. Package protection rules supported
several package formats but did not include <code>terraform_module</code>, leaving infrastructure
teams without a project-level push control.</p>
<p>You can now create package protection rules scoped to <code>terraform_module</code>, restricting push
access based on minimum role. Support is available in the UI package type dropdown, the
REST API, the GraphQL API, and the GitLab Terraform provider resource.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/packages/package_registry/package_protection_rules/">View Documentation</a></p>
  </li>
  <li>
    <strong>Release evidence now includes packages</strong>
    <p><p>When creating a GitLab Release, packages published to the package registry were not
automatically associated with it. Teams had to manually construct package URLs and attach
them as release links through the API or pipeline scripts, adding friction and risk of
incomplete release records.</p>
<p>GitLab now automatically includes packages in release evidence when the package version
matches the release tag. This creates a verifiable, auditable link between your release and
its associated packages without any manual steps, keeping source code, artifacts, and
packages together in one complete release snapshot.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/releases/release_evidence/#include-packages-as-release-evidence">View Documentation</a></p>
  </li>
  <li>
    <strong>Wiki sidebar toggle repositioned for easier access</strong>
    <p><p>The wiki sidebar toggle is now positioned on the left side, directly next to the sidebar
it controls.</p>
<p>When the sidebar is collapsed, the toggle remains visible as a floating
control so you can reopen it without scrolling back to the top of the page.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/wiki/#sidebar">View Documentation</a></p>
  </li>
  <li>
    <strong>Sticky action bar on wiki pages</strong>
    <p>The action bar on wiki pages is now sticky, so it remains visible as you scroll
through a page. Previously, you had to scroll back to the top to access actions
like editing, viewing page history, or managing templates. Now the page title
and key actions, including Edit, New page, Templates, Page history, and more,
stay within reach no matter how far down the page you are.</p>
    <p><a href="https://docs.gitlab.com/user/project/wiki/">View Documentation</a></p>
  </li>
  <li>
    <strong>Epic weights</strong>
    <p><p>Epics now support weights, making it easier to estimate and prioritize large-scale
initiatives during planning.</p>
<p>Before breaking down an epic into child issues, you can assign a preliminary weight
to represent your initial estimate.
As you decompose the epic, the weight automatically updates to reflect the rolled-up total
from all child issues.
This is consistent with how weight rollup works for issues and tasks.</p>
<p>On the epic detail page, you can see both the preliminary weight and the rolled-up weight
from child issues, giving you the insight needed to refine estimates over time.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/work_items/weight/">View Documentation</a></p>
  </li>
  <li>
    <strong>Block merge requests with high exploitability risk</strong>
    <p><p>Previously, merge request (MR) approval policies could block MRs based on vulnerability severity, but not all vulnerabilities carry the same risk. CVSS severity alone doesn&rsquo;t tell you whether a CVE is being exploited or how likely exploitation is. This leads to noisy approval policies and wasted time for developers and security teams.</p>
<p>You can now configure MR approval policies using Known Exploited Vulnerability (KEV) and Exploit Prediction Scoring System (EPSS) data. Block or require approval when a finding is in the KEV catalog (actively exploited in the wild), or when its EPSS score is above a threshold. Policy violations in the MR include KEV and EPSS context so developers understand why the security gate was triggered.</p>
<p>This gives security teams precise control over which findings block or warn, reduces alert fatigue, and keeps enforcement aligned with the current threat landscape.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/policies/merge_request_approval_policies/#vulnerability_attributes-object">View Documentation</a></p>
  </li>
  <li>
    <strong>Assign CVSS 4.0 scores to vulnerabilities</strong>
    <p>CVSS 4.0 is the latest version of the industry standard used to assess and rate the severity of a vulnerability. You can now view and access CVSS 4.0 score in the UI, including the vulnerability details page and the vulnerability report. You can also query the score using the API.</p>
    <p><a href="https://docs.gitlab.com/user/application_security/vulnerabilities/severities/">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved row interaction in the vulnerability report</strong>
    <p><p>Previously, you had to select the row description to navigate to a vulnerability details page from the vulnerability report.</p>
<p>You can now select anywhere in the row to go directly to its details. Link styling for the vulnerability description and file location only appears when you hover over each link, and keyboard navigation has been improved.</p>
<p>These changes make the vulnerability report more intuitive and accessible.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/vulnerability_report/">View Documentation</a></p>
  </li>
  <li>
    <strong>Export a security dashboard as a PDF</strong>
    <p>You can export the security dashboard as a PDF for use in reports and presentations. The export captures the current state of all of the charts and panels in the dashboard, including any active filters.</p>
    <p><a href="https://docs.gitlab.com/user/application_security/security_dashboard/#export-as-pdf">View Documentation</a></p>
  </li>
  <li>
    <strong>SAST scanning in security configuration profiles</strong>
    <p><p>In GitLab 18.9, we introduced security configuration profiles with the <strong>Secret Detection - Default</strong> profile. In GitLab 18.11, profiles now extend to SAST with the <strong>Static Application Security Testing (SAST) - Default</strong> profile, giving you a unified control surface to apply standardized static analysis coverage across all your projects without touching a single CI/CD configuration file.</p>
<p>The profile activates two scan triggers:</p>
<ul>
<li><strong>Merge Request Pipelines</strong>: Automatically runs a SAST scan each time new commits are pushed to a branch with an open merge request. Results only include new vulnerabilities introduced by the merge request.</li>
<li><strong>Branch Pipelines (default only)</strong>: Runs automatically when changes are merged or pushed to the default branch, providing a complete view of your default branch&rsquo;s SAST posture.</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/configuration/security_configuration_profiles/">View Documentation</a></p>
  </li>
  <li>
    <strong>Security attribute filters in group security dashboards</strong>
    <p><p>You can now filter the results in a group security dashboard based on the security attributes that you have applied to the projects in that group.</p>
<p>The available security attributes include the following:</p>
<ul>
<li>Business impact</li>
<li>Application</li>
<li>Business unit</li>
<li>Internet exposure</li>
<li>Location</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/security_dashboard/#filter-the-entire-dashboard">View Documentation</a></p>
  </li>
  <li>
    <strong>Security Manager role (Beta)</strong>
    <p><p>The Security Manager role is now available as a beta feature, providing a new default set of permissions designed specifically for security professionals. Security teams no longer need Developer or Maintainer roles to access security features, eliminating over-privileging concerns while maintaining separation of duties.</p>
<p>Users with the Security Manager role have the following access:</p>
<ul>
<li><strong>Vulnerability management</strong>: View, triage, and manage vulnerabilities across groups and projects, including vulnerability reports and security dashboards.</li>
<li><strong>Security inventory</strong>: View a group&rsquo;s security inventory to understand scanner coverage across all projects.</li>
<li><strong>Security configuration profiles</strong>: View security configuration profiles for a group.</li>
<li><strong>Compliance tools</strong>: View audit events, compliance center, compliance frameworks, and dependency lists for a group or project.</li>
<li><strong>Secret push protection</strong>: Enable secret push protection for a group.</li>
<li><strong>On-demand DAST</strong>: Create and run on-demand DAST scans for a group.</li>
</ul>
<p>To get started, go to a group and select <strong>Manage</strong> &gt; <strong>Members</strong>  to invite and assign members to the Security Manager role.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/permissions/">View Documentation</a></p>
  </li>
  <li>
    <strong>Identifier list popover in the vulnerability report</strong>
    <p>The vulnerability report now shows the primary CVE identifier as a clickable link in each row. When multiple identifiers exist, a <strong>&quot;+N more&quot;</strong> popover lists all of the identifiers. Each identifier in the list links to its external reference (for example, in the CVE, CWE, or WASC databases) so you can quickly access more details without leaving the report.</p>
    <p><a href="https://docs.gitlab.com/user/application_security/vulnerability_report/">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner 18.11</strong>
    <p><p>We&rsquo;re also releasing GitLab Runner 18.11 today! GitLab Runner is the highly-scalable build agent that runs your CI/CD jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.</p>
<h4 id="whats-new">What&rsquo;s New:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/work_items/39286">Create <code>concrete</code> helper image with bundled dependencies</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/work_items/39280">Read the job router feature flag from the runner configuration instead of an environment variable</a></li>
</ul>
<h4 id="bug-fixes">Bug Fixes:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/work_items/39329">Incorrect runner binary path after refactoring</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/work_items/39279">Pipeline hangs on cache operations</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/work_items/39276">The <code>docker-machine</code> binary in GitLab Runner 18.9.0 references CVE-2025-68121</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/work_items/39201">Runner silently falls back to job payload credentials when credential helper binary is missing from <code>DOCKER_AUTH_CONFIG</code></a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/work_items/38307"><code>CONCURRENT_PROJECT_ID </code>not unique in different jobs, which causes a conflict in the builds directory</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/work_items/37220">Artifact upload fails with timeout awaiting response headers</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/work_items/3116">User-defined <code>after_script</code> executes after failed <code>pre_build_script</code> and bypasses <code>post_build_script</code></a></li>
</ul>
<p>The list of all changes is in the GitLab Runner <a href="https://gitlab.com/gitlab-org/gitlab-runner/blob/18-11-stable/CHANGELOG.md">CHANGELOG</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/runner">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab Patch Release: 18.10.3, 18.9.5, 18.8.9</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-10-3-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-10-3-released/</id><published>2026-04-08T00:00:00Z</published><updated>2026-04-08T00:00:00Z</updated><author><name>Félix Veillette-Potvin</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On April 8, 2026, we released versions 18.10.3, 18.9.5, 18.8.9 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, please visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring that all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. To maintain good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/2020/05/20/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, it means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-10-3-released/#cve-2026-5173---exposed-method-issue-in-websocket-connections-impacts-gitlab-ceee">Exposed Method issue in websocket connections impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-10-3-released/#cve-2026-1092---denial-of-service-issue-in-terraform-state-lock-api-impacts-gitlab-ceee">Denial of Service issue in Terraform state lock API impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-10-3-released/#cve-2025-12664---denial-of-service-issue-in-graphql-api-impacts-gitlab-ceee">Denial of Service issue in GraphQL API impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-10-3-released/#cve-2026-1403---denial-of-service-issue-in-csv-import-impacts-gitlab-ceee">Denial of Service issue in CSV import impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-10-3-released/#cve-2026-1101---denial-of-service-issue-in-graphql-sbom-api-impacts-gitlab-ee">Denial of Service issue in GraphQL SBOM API impacts GitLab EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-10-3-released/#cve-2026-1516---code-injection-issue-in-code-quality-reports-impacts-gitlab-ee">Code Injection issue in Code Quality reports impacts GitLab EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-10-3-released/#cve-2026-4332---cross-site-scripting-issue-in-analytics-dashboards-impacts-gitlab-ee">Cross-site Scripting issue in analytics dashboards impacts GitLab EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-10-3-released/#cve-2026-2619---incorrect-authorization-issue-in-vulnerability-flags-ai-detection-api-impacts-gitlab-ee">Incorrect Authorization issue in vulnerability flags AI detection API impacts GitLab EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-10-3-released/#cve-2025-9484---information-disclosure-issue-in-certain-graphql-query-impacts-gitlab-ee">Information disclosure issue in certain GraphQl query impacts GitLab EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-10-3-released/#cve-2026-1752---improper-access-control-issue-in-environments-api-impacts-gitlab-ee">Improper Access Control issue in Environments API impacts GitLab EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-10-3-released/#cve-2026-2104---information-disclosure-issue-in-csv-export-impacts-gitlab-ceee">Information disclosure issue in CSV export impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-10-3-released/#cve-2026-4916---missing-authorization-issue-in-custom-role-permissions-impacts-gitlab-ceee">Missing Authorization issue in custom role permissions impacts GitLab CE/EE</a></td>
          <td>Low</td>
      </tr>
  </tbody>
</table>
<h3 id="cve-2026-5173---exposed-method-issue-in-websocket-connections-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-5173">CVE-2026-5173</a> - Exposed Method issue in websocket connections impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to invoke unintended server-side methods through websocket connections due to improper access control.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 16.9.6 before 18.8.9, 18.9 before 18.9.5, and 18.10 before 18.10.3 <br>
<strong>CVSS</strong> 8.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:L/A:N</code></a>)</p>
<p>This vulnerability has been discovered internally by GitLab team member Simon Tomlinson</p>
<h3 id="cve-2026-1092---denial-of-service-issue-in-terraform-state-lock-api-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-1092">CVE-2026-1092</a> - Denial of Service issue in Terraform state lock API impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an unauthenticated user to cause denial of service due to improper input validation of JSON payloads.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 12.10 before 18.8.9, 18.9 before 18.9.5, and 18.10 before 18.10.3 <br>
<strong>CVSS</strong> 7.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/a92847865">a92847865</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-12664---denial-of-service-issue-in-graphql-api-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-12664">CVE-2025-12664</a> - Denial of Service issue in GraphQL API impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an unauthenticated user to cause denial of service by sending repeated GraphQL queries.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 13.0 before 18.8.9, 18.9 before 18.9.5, and 18.10 before 18.10.3 <br>
<strong>CVSS</strong> 7.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/foxribeye">foxribeye</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2026-1403---denial-of-service-issue-in-csv-import-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-1403">CVE-2026-1403</a> - Denial of Service issue in CSV import impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that when importing CSV files could have allowed an authenticated user to cause denial of service to Sidekiq workers due to improper validation of CSV file structure.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 11.7 before 18.8.9, 18.9 before 18.9.5, and 18.10 before 18.10.3 <br>
<strong>CVSS</strong> 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/a92847865">a92847865</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2026-1101---denial-of-service-issue-in-graphql-sbom-api-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-1101">CVE-2026-1101</a> - Denial of Service issue in GraphQL SBOM API impacts GitLab EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to cause denial of service to the GitLab instance due to improper input validation in GraphQL queries.</p>
<p><strong>Impacted Versions:</strong> GitLab EE: all versions from 18.2 before 18.8.9, 18.9 before 18.9.5, and 18.10 before 18.10.3 <br>
<strong>CVSS</strong> 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/sim4n6">sim4n6</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2026-1516---code-injection-issue-in-code-quality-reports-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-1516">CVE-2026-1516</a> - Code Injection issue in Code Quality reports impacts GitLab EE</h3>
<p>GitLab has remediated an issue that in Code Quality reports could have allowed an authenticated user to leak IP addresses of users viewing the report via specially crafted content.</p>
<p><strong>Impacted Versions:</strong> GitLab EE: all versions from 18.0.0 before 18.8.9, 18.9 before 18.9.5, and 18.10 before 18.10.3 <br>
<strong>CVSS</strong> 5.7 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/maksyche">maksyche</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2026-4332---cross-site-scripting-issue-in-analytics-dashboards-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-4332">CVE-2026-4332</a> - Cross-site Scripting issue in analytics dashboards impacts GitLab EE</h3>
<p>GitLab has remediated an issue that, in customizable analytics dashboards, could have allowed an authenticated user to execute arbitrary JavaScript in the context of other users&rsquo; browsers due to improper input sanitization.</p>
<p><strong>Impacted Versions:</strong> GitLab EE: all versions from 18.2 before 18.8.9, 18.9 before 18.9.5, and 18.10 before 18.10.3 <br>
<strong>CVSS</strong> 5.4 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/go7f0">go7f0</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2026-2619---incorrect-authorization-issue-in-vulnerability-flags-ai-detection-api-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-2619">CVE-2026-2619</a> - Incorrect Authorization issue in vulnerability flags AI detection API impacts GitLab EE</h3>
<p>GitLab has remediated an issue that under certain circumstances could have allowed an authenticated user with auditor privileges to modify vulnerability flag data in private projects due to incorrect authorization.</p>
<p><strong>Impacted Versions:</strong> GitLab EE: all versions from 18.6 before 18.8.9, 18.9 before 18.9.5, and 18.10 before 18.10.3 <br>
<strong>CVSS</strong> 4.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/sage_cyberlord">sage_cyberlord</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-9484---information-disclosure-issue-in-certain-graphql-query-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-9484">CVE-2025-9484</a> - Information Disclosure issue in certain GraphQl query impacts GitLab EE</h3>
<p>GitLab has remediated an issue that under certain circumstances could have allowed an authenticated user to have access to other users&rsquo; email addresses via certain GraphQL queries.</p>
<p><strong>Impacted Versions:</strong> GitLab EE: all versions from 16.6 before 18.8.9, 18.9 before 18.9.5, and 18.10 before 18.10.3 <br>
<strong>CVSS</strong> 4.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/mateuszek">mateuszek</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2026-1752---improper-access-control-issue-in-environments-api-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-1752">CVE-2026-1752</a> - Improper Access Control issue in Environments API impacts GitLab EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user with developer-role permissions to modify protected environment settings due to improper authorization checks in the API.</p>
<p><strong>Impacted Versions:</strong> GitLab EE: all versions from 11.3 before 18.8.9, 18.9 before 18.9.5, and 18.10 before 18.10.3 <br>
<strong>CVSS</strong> 4.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/modhanami">modhanami</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2026-2104---information-disclosure-issue-in-csv-export-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-2104">CVE-2026-2104</a> - Information Disclosure issue in CSV export impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to access confidential issues assigned to other users via CSV export due to insufficient authorization checks.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 18.2 before 18.8.9, 18.9 before 18.9.5, and 18.10 before 18.10.3 <br>
<strong>CVSS</strong> 4.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/ahacker1">ahacker1</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2026-4916---missing-authorization-issue-in-custom-role-permissions-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-4916">CVE-2026-4916</a> - Missing Authorization issue in custom role permissions impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user with custom role permissions to demote or remove higher-privileged group members due to improper authorization checks on member management operations.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 18.2 before 18.8.9, 18.9 before 18.9.5, and 18.10 before 18.10.3 <br>
<strong>CVSS</strong> 2.7 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:N/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:N/I:L/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/theluci">theluci</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="18103">18.10.3</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/228257">Fix regression: &ldquo;Git operations for Deploy keys fail on a Geo Site&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/227862">18.10 Backport of &lsquo;Stop archiving projects when marking for deletion&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/228765">[18.10] Ignore Net::SMTPServerBusy errors in SLIs</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/228570">[Backport] Add improvements to migration helper so that the backfill migration completes faster</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/228968">[BACKPORT] Fix agentic flows for DAP self-hosted</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/228728">Backport of 594064-geo-handle-record-not-found-on-sync to 18.10</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9250">[18.10] Fix AmazonLinux 2023 not working with epoll_pwait2 glibc call</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9257">18.10 - Stop uploading packages to PackageCloud</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/229095">Backport of Match MergeRequests::ApplicationController auth checks in MCP conflicts tool</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/229203">Backport of &lsquo;Add null user guard to adjourned group deletion service&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/229448">[18.10] Fix composite identity support for dependency proxy access</a></li>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2889">[18.10] Revert &ldquo;Merge branch &lsquo;segregate-buildx-build-among-rails-ce-and-ee&rsquo; into &lsquo;master&rsquo;&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2888">chore: bump gitlab-zoekt to v1.11.1 on 18-10-stable</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/229779">Backport of Validate parallel:matrix expanded job name length</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/229852">Fix flaky spec in spec/requests/api/merge_requests_spec.rb</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/229869">Backport of Fix remaining failures in new_project_spec.rb after !228726</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/230008">Backport of &lsquo;Fixes <code>gitlab-rspec</code> test failures on stable branches&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/229844">Backport of &lsquo;Upgrade http and llhttp-ffi&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/230127">Backport &lsquo;595107/fix-model-selection-ui-regression&rsquo; into 18.10</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9269">[18.10] Remove me-south-1 region from AMI publishing list</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9280">Backport 18.10: Do not include Spamcheck with the SLES12 package</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9282">Backport 18-10: Set strategy:mirror to propagate downstream failure on check-packages-functionality trigger job</a></li>
</ul>
<h3 id="1895">18.9.5</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/228269">Fix regression: &ldquo;Git operations for Deploy keys fail on a Geo Site&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/227869">18.9 Backport of &lsquo;Stop archiving projects when marking for deletion&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/228970">[BACKPORT] Fix agentic flows for DAP self-hosted</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/228725">Backport of 594064-geo-handle-record-not-found-on-sync to 18.9</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9249">[18.9] Fix AmazonLinux 2023 not working with epoll_pwait2 glibc call</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9258">18.9 - Stop uploading packages to PackageCloud</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/229454">[18.9] Fix composite identity support for dependency proxy access</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/229790">Fix flaky spec in spec/requests/api/merge_requests_spec.rb</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/229871">Backport of Fix remaining failures in new_project_spec.rb after !228726</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/230128">Backport &lsquo;595107/fix-model-selection-ui-regression&rsquo; into 18.9</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9270">[18.9] Remove me-south-1 region from AMI publishing list</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9281">Backport 18.9: Do not include Spamcheck with the SLES12 package</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9283">Backport 18-9: Set strategy:mirror to propagate downstream failure on check-packages-functionality trigger job</a></li>
</ul>
<h3 id="1889">18.8.9</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/228271">Fix regression: &ldquo;Git operations for Deploy keys fail on a Geo Site&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/228056">18.8 Backport of &lsquo;Stop archiving projects when marking for deletion&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/228731">Backport of 594064-geo-handle-record-not-found-on-sync to 18.8</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/228974">[BACKPORT] Fix agentic flows for DAP self-hosted</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9259">18.8 - Stop uploading packages to PackageCloud</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9248">[18.8] Fix AmazonLinux 2023 not working with epoll_pwait2 glibc call</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/229874">Backport of Fix remaining failures in new_project_spec.rb after !228726</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/230129">Backport &lsquo;595107/fix-model-selection-ui-regression&rsquo; into 18.8</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9271">[18.8] Remove me-south-1 region from AMI publishing list</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9284">Backport 18-8: Set strategy:mirror to propagate downstream failure on check-packages-functionality trigger job</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>These versions do not include any new migrations, and for multi-node deployments, <a href="https://docs.gitlab.com/ee/update/#upgrading-without-downtime">should not require any downtime</a>.</p>
<p>Please be aware that by default the Omnibus packages will stop, run migrations,
and start again, no matter how “big” or “small” the upgrade is. This behavior
can be changed by adding a <a href="https://docs.gitlab.com/ee/update/zero_downtime.html"><code>/etc/gitlab/skip-auto-reconfigure</code></a> file,
which is only used for <a href="https://docs.gitlab.com/omnibus/update/README.html">updates</a>.</p>
<p>The SLES 12.5 packages for 18.10.3 and 18.9.5 are not present in this release.</p>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update">Update page</a>.
To update GitLab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<p>Note: GitLab releases have skipped 18.10.2, 18.9.4 and 18.8.8. There are no patches with these version numbers.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 18.10.1, 18.9.3, 18.8.7</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-10-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-10-1-released/</id><published>2026-03-25T00:00:00Z</published><updated>2026-03-25T00:00:00Z</updated><author><name>Félix Veillette-Potvin</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On March 25, 2026, we released versions 18.10.1, 18.9.3, 18.8.7 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, please visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring that all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. To maintain good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/2020/05/20/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, it means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-10-1-released/#cve-2026-2370---improper-handling-of-parameters-issue-in-jira-connect-installations-impacts-gitlab-ceee">Improper Handling of Parameters issue in Jira Connect installations impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-10-1-released/#cve-2026-3857---cross-site-request-forgery-issue-in-glql-api-impacts-gitlab-ceee">Cross-Site Request Forgery issue in GLQL API impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-10-1-released/#cve-2026-2995---html-injection-in-vulnerability-report-impacts-gitlab-ee">HTML Injection in vulnerability report impacts GitLab EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-10-1-released/#cve-2026-3988---denial-of-service-issue-in-graphql-api-impacts-gitlab-ceee">Denial of Service issue in GraphQL API impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-10-1-released/#cve-2026-2745---improper-access-control-issue-in-webauthn-2fa-impacts-gitlab-ceee">Improper Access Control issue in WebAuthn 2FA impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-10-1-released/#cve-2026-1724---improper-access-control-issue-in-graphql-query-impacts-gitlab-ee">Improper Access Control issue in GraphQL query impacts GitLab EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-10-1-released/#cve-2025-13436---denial-of-service-issue-in-ci-configuration-processing-impacts-gitlab-ceee">Denial of Service issue in CI configuration processing impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-10-1-released/#cve-2025-13078---denial-of-service-issue-in-webhook-configuration-impacts-gitlab-ceee">Denial of Service issue in webhook configuration impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-10-1-released/#cve-2026-2973---cross-site-scripting-issue-in-mermaid-diagram-renderer-impacts-gitlab-ceee">Cross-site Scripting issue in Mermaid diagram renderer impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-10-1-released/#cve-2026-2726---improper-access-control-issue-in-merge-requests-impacts-gitlab-ceee">Improper Access Control issue in Merge Requests impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-10-1-released/#cve-2025-14595---access-control-issue-in-graphql-api-impacts-gitlab-ee">Access Control issue in GraphQL API impacts GitLab EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-10-1-released/#cve-2026-4363---incorrect-authorization-issue-in-authorization-caching-impacts-gitlab-ee">Incorrect Authorization issue in authorization caching impacts GitLab EE</a></td>
          <td>Low</td>
      </tr>
  </tbody>
</table>
<h3 id="cve-2026-2370---improper-handling-of-parameters-issue-in-jira-connect-installations-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-2370">CVE-2026-2370</a> - Improper Handling of Parameters issue in Jira Connect installations impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue affecting Jira Connect installations that could have allowed an authenticated user with minimal workspace permissions to obtain installation credentials and impersonate the GitLab app due to improper authorization checks.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 14.3 before 18.8.7, 18.9 before 18.9.3, and 18.10 before 18.10.1 <br>
<strong>CVSS</strong> 8.1 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/maksyche">maksyche</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2026-3857---cross-site-request-forgery-issue-in-glql-api-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-3857">CVE-2026-3857</a> - Cross-Site Request Forgery issue in GLQL API impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an unauthenticated user to execute arbitrary GraphQL mutations on behalf of authenticated users due to insufficient CSRF protection.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 17.10 before 18.8.7, 18.9 before 18.9.3, and 18.10 before 18.10.1 <br>
<strong>CVSS</strong> 8.1 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/ahacker1">ahacker1</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2026-2995---html-injection-in-vulnerability-report-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-2995">CVE-2026-2995</a> - HTML Injection in vulnerability report impacts GitLab EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to add email addresses to targeted user accounts due to improper sanitization of HTML content.</p>
<p><strong>Impacted Versions:</strong> GitLab EE: all versions from 15.4 before 18.8.7, 18.9 before 18.9.3, and 18.10 before 18.10.1 <br>
<strong>CVSS</strong> 7.7 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:H/I:H/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/a_m_a_m">a_m_a_m</a> and <a href="https://hackerone.com/yvvdwf">yvvdwf</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2026-3988---denial-of-service-issue-in-graphql-api-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-3988">CVE-2026-3988</a> - Denial of Service issue in GraphQL API impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an unauthenticated user to cause a denial of service by making the GitLab instance unresponsive due to improper input validation in GraphQL request processing.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 18.5 before 18.8.7, 18.9 before 18.9.3, and 18.10 before 18.10.1 <br>
<strong>CVSS</strong> 7.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/svalkanov">svalkanov</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2026-2745---improper-access-control-issue-in-webauthn-2fa-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-2745">CVE-2026-2745</a> - Improper Access Control issue in WebAuthn 2FA impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an unauthenticated user to bypass WebAuthn two-factor authentication and gain unauthorized access to user accounts due to inconsistent input validation in the authentication process.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 7.11 before 18.8.7, 18.9 before 18.9.3, and 18.10 before 18.10.1 <br>
<strong>CVSS</strong> 6.8 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/a0xnirudh">a0xnirudh</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2026-1724---improper-access-control-issue-in-graphql-query-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-1724">CVE-2026-1724</a> - Improper Access Control issue in GraphQL query impacts GitLab EE</h3>
<p>GitLab has remediated an issue that could have allowed an unauthenticated user to access API tokens of self-hosted AI models due to improper access control.</p>
<p><strong>Impacted Versions:</strong> GitLab EE: all versions from 18.5 before 18.8.7, 18.9 before 18.9.3, and 18.10 before 18.10.1 <br>
<strong>CVSS</strong> 6.8 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:N/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/maksyche">maksyche</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-13436---denial-of-service-issue-in-ci-configuration-processing-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-13436">CVE-2025-13436</a> - Denial of Service issue in CI configuration processing impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to cause a denial of service due to excessive resource consumption when handling certain CI-related inputs.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 13.7 before 18.8.7, 18.9 before 18.9.3, and 18.10 before 18.10.1 <br>
<strong>CVSS</strong> 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/a92847865">a92847865</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-13078---denial-of-service-issue-in-webhook-configuration-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-13078">CVE-2025-13078</a> - Denial of Service issue in webhook configuration impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to cause a denial of service due to excessive resource consumption when processing certain webhook configuration inputs.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 16.10 before 18.8.7, 18.9 before 18.9.3, and 18.10 before 18.10.1 <br>
<strong>CVSS</strong> 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/lucky_luke">lucky_luke</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2026-2973---cross-site-scripting-issue-in-mermaid-diagram-renderer-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-2973">CVE-2026-2973</a> - Cross-site Scripting issue in Mermaid diagram renderer impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to execute arbitrary JavaScript in a user&rsquo;s browser due to improper sanitization of entity-encoded content in Mermaid diagrams.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 17.7 before 18.8.7, 18.9 before 18.9.3, and 18.10 before 18.10.1 <br>
<strong>CVSS</strong> 5.4 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/go7f0">go7f0</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2026-2726---improper-access-control-issue-in-merge-requests-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-2726">CVE-2026-2726</a> - Improper Access Control issue in Merge Requests impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to perform unauthorized actions on merge requests in other projects due to improper access control during cross-repository operations.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 11.10 before 18.8.7, 18.9 before 18.9.3, and 18.10 before 18.10.1 <br>
<strong>CVSS</strong> 4.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/pkkr">pkkr</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-14595---access-control-issue-in-graphql-api-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-14595">CVE-2025-14595</a> - Access Control issue in GraphQL API impacts GitLab EE</h3>
<p>GitLab has remediated an issue that under certain conditions could have allowed an authenticated user with Planner role to view security category metadata and attributes in group security configuration due to improper access control.</p>
<p><strong>Impacted Versions:</strong> GitLab EE: all versions from 18.6 before 18.8.7, 18.9 before 18.9.3, and 18.10 before 18.10.1 <br>
<strong>CVSS</strong> 4.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/kamikaze1337">kamikaze1337</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2026-4363---incorrect-authorization-issue-in-authorization-caching-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-4363">CVE-2026-4363</a> - Incorrect Authorization issue in authorization caching impacts GitLab EE</h3>
<p>GitLab has remediated an issue that under certain conditions could have allowed an authenticated user to gain unauthorized access to resources due to improper caching of authorization decisions.</p>
<p><strong>Impacted Versions:</strong> GitLab EE: all versions from 18.1 before 18.8.7, 18.9 before 18.9.3, and 18.10 before 18.10.1 <br>
<strong>CVSS</strong> 3.7 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:L/I:L/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:L/I:L/A:N</code></a>)</p>
<p>This vulnerability was discovered internally by GitLab team member Fred de Gier.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="18101">18.10.1</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/8577">Backport gocloud version and checksum fix to 18-10 stable</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/227950">[18.10] Zero downtime reindexing make setting async-durability optional</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/227835">Backport &ldquo;CI: Update CNG mirror skip job regex&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/227763">Backport of &lsquo;Revert Code review flow automatic reviews enabled by default for groups&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/228063">Backport Handle http-abort panic and pass http execution error</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/228199">Backport 18.10: Do not check column default in state machine initialization</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/228241">Backport of What&rsquo;s new - 18.10</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/228254">[18.10 Backport] Fix statement timeouts on p_ci_job_artifacts during pipeline deletion</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/228389">Backport of &ldquo;Execute BBM affected by single record table bug&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/228257">Fix regression: &ldquo;Git operations for Deploy keys fail on a Geo Site&rdquo;</a></li>
</ul>
<h3 id="1893">18.9.3</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/8576">Backport gocloud version and checksum fix to 18-9 stable</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/226264">[Backport 18.9] Fix gitlab:setup failure on fresh database</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/226447">[18.9] Update dependency oj to v3.16.15</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/226351">Backport of &lsquo;Use v-safe-html for commit.titleHtml in collapsible commit info&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/226721">18.9 Backport of &lsquo;Fix re-archiving projects and subgroups after group unarchive&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/227023">Backport of &lsquo;Fix edit in pipeline editor button not showing on ci file on file navigation&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/227276">[18.9] GLQL advanced finder, remove project_ids</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/227193">Backport of &lsquo;Update rack gem to 2.2.22&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/227490">Backport <code>oj</code> and <code>oj-introspect</code> gem updates</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/227473">[18.9] Exclude group-covered projects from search authorization to reduce redundant payload</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/227834">Backport &ldquo;CI: Update CNG mirror skip job regex&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/227951">[18.9] Zero downtime reindexing make setting async-durability optional</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/228201">Backport 18.9: Do not check column default in state machine initialization</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/227826">Backport of &ldquo;Execute BBM affected by single record table bug&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/228255">[18.9 Backport] Fix statement timeouts on p_ci_job_artifacts during pipeline deletion</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/228269">Fix regression: &ldquo;Git operations for Deploy keys fail on a Geo Site&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9198">Backport: Fix Valkey version detection</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9210">18.9 Backport CI: Fix the package install for zypper based distros</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9205">[18.9] Backport Mattermost Security Updates February 23, 2026</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9222">Backport 18-9-stable - check-packages uses Pulp</a></li>
</ul>
<h3 id="1887">18.8.7</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/226555">Fix command execution race condition in Agentic Chat</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/225307">Backport of &lsquo;fix: allow explain for all add ons&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/226448">[18.8] Update dependency oj to v3.16.15</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/226720">18.8 Backport of &lsquo;Fix re-archiving projects and subgroups after group unarchive&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/225856">Add DAP self-hosted model DAP check in user_authorizable</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/227036">Backport of &lsquo;Fix edit in pipeline editor button not showing on ci file on file navigation&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/227277">[18.8] GLQL advanced finder, remove project_ids</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/227488">Backport <code>oj</code> and <code>oj-introspect</code> gem updates</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/227202">Backport of &lsquo;Update rack gem to 2.2.22&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/227832">Backport &ldquo;CI: Update CNG mirror skip job regex&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/227474">[18.8] Exclude group-covered projects from search authorization to reduce redundant payload</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/227952">[18.8] Zero downtime reindexing make setting async-durability optional</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/228000">Backport of &ldquo;Execute BBM affected by single record table bug&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/228256">[18.8 Backport] Fix statement timeouts on p_ci_job_artifacts during pipeline deletion</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/228271">Fix regression: &ldquo;Git operations for Deploy keys fail on a Geo Site&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9211">18.8 Backport CI: Fix the package install for zypper based distros</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9206">[18.8] Backport Mattermost Security Updates February 23, 2026</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9223">Backport 18-8-stable - check-packages uses Pulp</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>The SLES 12.5 package is not available for GitLab 18.10.1.</p>
<p>This patch includes database migrations that may impact your upgrade process.</p>
<h3 id="impact-on-your-installation">Impact on your installation:</h3>
<ul>
<li><strong>Single-node instances</strong>: This patch will cause downtime during the upgrade as migrations must complete before GitLab can start.</li>
<li><strong>Multi-node instances</strong>: With proper <a href="https://docs.gitlab.com/ee/update/zero_downtime.html">zero-downtime upgrade procedures</a>, this patch can be applied without downtime.</li>
</ul>
<h3 id="post-deploy-migrations">Post-deploy migrations</h3>
<p>The following versions include post-deploy migrations that can run after the upgrade:</p>
<ul>
<li>18.10.1</li>
<li>18.9.3</li>
<li>18.8.7</li>
</ul>
<p>To learn more about the impact of upgrades on your installation, see:</p>
<ul>
<li><a href="https://docs.gitlab.com/ee/update/zero_downtime.html">Zero-downtime upgrades</a> for multi-node deployments</li>
<li><a href="https://docs.gitlab.com/update/package/#downtime">Standard upgrades</a> for single-node installations</li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update">Update page</a>.
To update GitLab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab 18.10 released</title><link href="https://docs.gitlab.com/releases/18/18-10-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/18/18-10-released/</id><published>2026-03-19T00:00:00Z</published><updated>2026-03-19T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On March 19, 2026, GitLab 18.10 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong>Harshith Sudar</strong>
</p>
<p>Harshith is currently a Level 3 Contributor who has made impactful contributions improving community tooling and analytics, from triage automation and contributor recognition to <a href="https://about.gitlab.com/gitlab-duo/">GitLab Duo</a> usage insights.</p>
<p>Harshith&rsquo;s contributions were first recognized by <a href="https://gitlab.com/leetickett-gitlab">Lee Tickett</a>, Fullstack Engineer in DevRel Engineering at GitLab, who nominated him. His work has strengthened how we support contributors behind the scenes through improvements to our automation and contributor-facing experiences. For example, he expanded our triage automation by <a href="https://gitlab.com/gitlab-org/quality/triage-ops/-/merge_requests/3589">updating the <code>IssueSummary</code> processor in triage-ops to work with multiple projects</a>, including <a href="https://contributors.gitlab.com">contributors.gitlab.com</a>, making it easier for us to keep more community projects consistently summarized and visible. He also helped recognize community-created content through the <a href="https://gitlab.com/gitlab-org/developer-relations/contributor-success/contributors-gitlab-com/-/merge_requests/1250">new “Add content” button and flow</a>, which lets contributors log blog posts, videos, and other content directly from their profile and get rewarded.</p>
<p>Harshith has also contributed to our analytics and GitLab Duo usage insights. Highlights include <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/207511">refining how GitLab Duo usage is calculated</a>, improving how AI impact over time can be explored by <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/218870">removing the 180-day default</a>, and <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/216715">consolidating DORA metric date range constants</a>, as well as enhancing analytics at scale with improvements like adding <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/207796">infinite scroll for the Value Stream Analytics custom stage label picker</a>. Together, these changes help teams better understand how GitLab is used in real projects.</p>
<p>In his own words:</p>

<blockquote><p>&ldquo;One thing I&rsquo;ve really enjoyed while contributing is how thoughtfully ideas are discussed within the community. It&rsquo;s encouraging to see suggestions explored collaboratively, like in the discussion around <a href="https://gitlab.com/gitlab-org/developer-relations/contributor-success/contributors-gitlab-com/-/merge_requests/1288">MR !1288</a>, which turned into a great learning experience.
I&rsquo;m really happy to be part of this community and look forward to making many more contributions in the future.&rdquo;</p></blockquote><p>Thank you, Harshith, for your ongoing work to improve the GitLab codebase and contributor experience!</p>
<p>Want to connect with Harshith and learn more about his contributions? Visit Harshith&rsquo;s <a href="https://gitlab.com/official.harshith1">GitLab profile</a> and his <a href="https://www.linkedin.com/in/harshith-s-a44169282/">LinkedIn profile</a>.</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>SAST false positive detection with GitLab Duo Agent Platform</strong>
    <p><p>SAST false positive detection, which was first introduced as a beta in GitLab 18.7, is now generally available in GitLab 18.10.</p>
<p>When a security scan runs, GitLab Duo Agent Platform analyzes each critical and high severity SAST vulnerability and determines the likelihood that it&rsquo;s a false positive.
The assessment appears directly in the vulnerability report, giving teams the context they need to triage with confidence rather than uncertainty.</p>
<p>Key capabilities include:</p>
<ul>
<li>Automatic analysis: False positive detection runs automatically after each security scan with no manual intervention required.</li>
<li>Manual option: Users can manually run false positive detection for individual vulnerabilities on the vulnerability details page for on-demand analysis.</li>
<li>Focus on high-impact findings: Limiting the analysis to critical and high severity SAST vulnerabilities cuts through the noise where it matters most.</li>
<li>Contextual AI reasoning: Each assessment explains why a finding may or may not be a false positive, factoring in code context, data flow, and vulnerability characteristics specific to static analysis.</li>
<li>Seamless workflow integration: Results surface directly in the vulnerability report alongside existing severity, status, and remediation information — no changes to existing workflows required.</li>
</ul>
<p>This feature is available for Ultimate customers with GitLab Duo Agent Platform. The feature must be enabled in your group or project settings.
We welcome your feedback in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/583697">issue 583697</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/vulnerabilities/false_positive_detection">View Documentation</a></p>
  </li>
  <li>
    <strong>Purchase GitLab Credits on the Free tier on GitLab.com</strong>
    <p><p>Free tier group Owners on GitLab.com can now unlock AI with GitLab Credits. Purchase a monthly credit amount, commit to an annual term, and get access to <a href="https://docs.gitlab.com/subscriptions/gitlab_credits/#for-the-free-tier-on-gitlabcom">GitLab Duo Agent Platform agents and flows</a>. Credits refresh automatically each month, so your team always has what it needs to build faster and smarter.</p>
<p>Key highlights:</p>
<ul>
<li><strong>Usage-based pricing</strong>: Purchase a monthly credit commitment without needing a base plan subscription.</li>
<li><strong>Self-service purchasing</strong>: Buy credits through the GitLab purchase flow.</li>
<li><strong>Seamless upgrade path</strong>: Your credit commitment transfers if you later upgrade to Premium or Ultimate.</li>
<li><strong>Consumption tracking</strong>: Monitor your credit usage through the GitLab Credits dashboard.</li>
</ul>
<p>This <a href="https://docs.gitlab.com/subscriptions/gitlab_credits/?tab=GitLab.com#buy-gitlab-credits">purchase option</a> is currently only available for free GitLab.com top-level groups.</p>
</p>
    <p><a href="https://docs.gitlab.com/subscriptions/gitlab_credits/#for-the-free-tier-on-gitlabcom">View Documentation</a></p>
  </li>
  <li>
    <strong>Sign in securely with passkeys</strong>
    <p><p>GitLab now supports passkeys for passwordless sign-in and as a phishing-resistant two-factor authentication (2FA) method. Passkeys use public-key cryptography and biometric authentication (fingerprint, face recognition) or your device PIN to securely access your account.</p>
<p>Passkeys offer the following benefits:</p>
<ul>
<li><strong>Passwordless convenience</strong>: Sign in with your device&rsquo;s biometrics or PIN instead of remembering a password.</li>
<li><strong>Multi-device support</strong>: Use passkeys on desktop browsers, mobile devices (iOS 16 or later, Android 9 or later), and FIDO2/WebAuthn-compatible hardware security keys.</li>
<li><strong>Phishing-resistant security</strong>: Your private key never leaves your device. GitLab only stores the public key, protecting your account even if GitLab servers are compromised.</li>
<li><strong>Automatic 2FA integration</strong>: For accounts with 2FA enabled, passkeys become available as your default 2FA method.</li>
</ul>
<p>To get started, add a passkey in your account settings. We welcome your questions and feedback in issue <a href="https://gitlab.com/gitlab-org/gitlab/-/work_items/366758">366758</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/auth/passkeys/">View Documentation</a></p>
  </li>
  <li>
    <strong>Introducing the work items list and saved views</strong>
    <p><p>The GitLab planning experience is getting a significant upgrade with the work items list and saved views,
bringing together two long-requested capabilities:</p>
<ul>
<li>
<p>The work items list combines epics, issues, and other work items into a single unified list,
eliminating the need to switch between separate pages for different work item types.
This makes it easier to understand relationships across your planning objects.</p>
</li>
<li>
<p>Saved views allow you to create and save customized list configurations, including filters,
sort order, and display options. This makes routine checks more efficient, and supports standardized
ways of viewing work across your team.</p>
</li>
</ul>
<p>This is the next step in the GitLab work items journey, a unified architecture designed to deliver
consistency and unlock new capabilities across GitLab planning tools.</p>
<p>Share your thoughts and feedback in <a href="https://gitlab.com/gitlab-org/gitlab/-/work_items/590689">issue 590689</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/work_items/">View Documentation</a></p>
  </li>
  <li>
    <strong>Custom agents can use MCP to access external data</strong>
    <p><p>You can now connect custom agents in the AI Catalog to external data sources and tools through the Model Context Protocol (MCP), without leaving GitLab.</p>
<p>This feature is an experiment. Share your feedback in <a href="https://gitlab.com/gitlab-org/gitlab/-/work_items/593219">issue 593219</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/gitlab_duo/model_context_protocol/ai_catalog_mcp_servers/">View Documentation</a></p>
  </li>
  <li>
    <strong>Enforce merge request title naming conventions with regex</strong>
    <p><p>Maintaining consistent merge request titles is important for teams that rely on structured
naming conventions. Whether that&rsquo;s following the Conventional Commits format,
or linking to an internal tracking system. Teams previously needed external tooling or
custom CI/CD pipeline jobs to enforce these conventions, but this approach had a
critical gap. If someone changed the merge request title after the pipeline ran, there was no
re-validation, and the MR could still be merged with a non-compliant title.</p>
<p>You can now configure a required title regex for merge requests in your project settings.
When configured, GitLab evaluates the merge request title against the pattern as a
mergeability check — blocking the merge until the title is updated to comply, regardless
of when the title was last changed.</p>
<p>To set this up, go to your project&rsquo;s <strong>Settings &gt; Merge requests</strong> and enter a regex
pattern in the <strong>Merge request title must match regex</strong> field.</p>
<p>Your existing merge request workflows continue to work as before. This check only
applies to projects where you explicitly configure a title regex.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/merge_requests/title_validation/">View Documentation</a></p>
  </li>
  <li>
    <strong>Secret false positive detection with AI (beta)</strong>
    <p><p>Security teams spend significant time investigating secret detection findings that turn out to be false positives. For example, test credentials, example values, and placeholder tokens that are incorrectly flagged as actual secrets.
False positives create alert fatigue, erode trust in scan results, and divert attention from genuine security risks.</p>
<p>GitLab 18.10 introduces AI-powered secret false positive detection (beta) to focus on the secrets that actually matter.
When a security scan runs, GitLab Duo automatically analyzes each <strong>Critical</strong> and <strong>High</strong> severity secret detection vulnerability to determine if it&rsquo;s a false positive.</p>
<p>The AI assessment appears directly in the vulnerability report, giving security engineers immediate context to make faster and confident triage decisions.</p>
<p>Key capabilities include:</p>
<ul>
<li>Automatic analysis: False positive detection runs automatically after each security scan without manual trigger.</li>
<li>Manual trigger option: You can manually trigger false positive detection for individual vulnerabilities on the vulnerability details page for on-demand analysis.</li>
<li>Focus on high-impact findings: Scoped for <strong>Critical</strong> and <strong>High</strong> severity vulnerabilities to maximize signal-to-noise improvement.</li>
<li>Contextual AI reasoning: Each assessment includes an explanation of why the finding may or may not be a true positive, based on code context and vulnerability characteristics.</li>
<li>Confidence scoring: Each detection includes a confidence score to help teams prioritize review based on the model&rsquo;s certainty.</li>
<li>Seamless workflow integration: Results surface directly in the vulnerability report alongside existing severity, status, and remediation information.</li>
</ul>
<p>This feature is available as a free beta for Ultimate customers and must be enabled in your group or project settings.
Share feedback in <a href="https://gitlab.com/gitlab-org/gitlab/-/work_items/592861">issue 592861</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/vulnerabilities/secret_false_positive_detection/">View Documentation</a></p>
  </li>
  <li>
    <strong>Use runtime inputs with CI/CD jobs</strong>
    <p><p>Using CI/CD variables for dynamic job configuration can be challenging. Variables follow a complex override hierarchy that&rsquo;s difficult to manage, and they can&rsquo;t be used for a variety of use cases.</p>
<p>Now you can use <code>inputs</code> to define explicit, typed inputs at the job level. Use job inputs to define and control the values that a job accepts at runtime. With job inputs, you get:</p>
<ul>
<li>Type safety (string, number, boolean, array).</li>
<li>Default values that can be static or reference existing variables.</li>
<li>The option to define a strict list of possible values to use.</li>
<li>Regex support for validating input values.</li>
</ul>
<p>Job inputs can use the default values without any user interaction, but you can modify the values when retrying a job or running a manual job.</p>
</p>
    <p><a href="https://docs.gitlab.com/ci/jobs/job_inputs/">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Agentic Core</h4>
<ul>
  <li>
    <strong>GitLab Blob Search for group and instance code search</strong>
    <p><p>The <a href="https://docs.gitlab.com/user/duo_agent_platform/agents/tools/#:~:text=REST%20API%20endpoint.-,GitLab%20Blob%20Search,-gitlab_blob_search"><code>gitlab_blob_search</code></a> tool now enables GitLab AI agents to search your code:</p>
<ul>
<li>Across all projects in a group.</li>
<li>Across all accessible projects on an instance.</li>
</ul>
<p>Previously, blob search was limited to a single project, or required specifying explicit project IDs. This change makes it easier for AI-powered workflows to discover and reuse code that&rsquo;s spread across multiple related projects.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/duo_agent_platform/agents/tools/#:~:text=REST%20API%20endpoint.-,GitLab%20Blob%20Search,-gitlab_blob_search">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab MCP server tool for pipeline management</strong>
    <p><p>You can now manage your CI/CD pipelines in a GitLab project with the new <code>manage_pipeline</code> tool.
This GitLab MCP server tool lets AI agents create, cancel, retry, delete, and update pipeline metadata in a single call.
With this tool, you no longer have to piece together multiple steps to automate your pipeline workflows.</p>
<p>If you want to see other GitLab MCP sever tools, let us know in the <a href="https://gitlab.com/gitlab-org/gitlab/-/work_items/566375">feedback issue</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/gitlab_duo/model_context_protocol/mcp_server_tools/#manage_pipeline">View Documentation</a></p>
  </li>
  <li>
    <strong>Project Maintainers can enable custom agents and flows</strong>
    <p><p>Previously, enabling AI agents and flows from the AI Catalog required top-level group permissions.</p>
<p>Now, when browsing the AI Catalog at the explore level or project level, project Maintainers can enable agents and flows directly in their projects.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/duo_agent_platform/flows/custom/#enable-a-flow">View Documentation</a></p>
  </li>
  <li>
    <strong>Configure network access control for remote flows in projects</strong>
    <p><p>You can now configure <a href="https://docs.gitlab.com/user/duo_agent_platform/environment_sandbox/">network access controls</a> for flows using GitLab runners in projects.</p>
<p>This provides secure external integrations, while maintaining control over network destinations. This also gives project maintainers the flexibility to allow necessary API connections, MCP servers, and third-party services while enforcing security boundaries.</p>
<p>Configure network access controls in the <code>network_policy</code> section of <code>agent-config.yml</code>. The <code>agent-config.yml</code> is protected by branch protection rules and MR approval workflows.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/duo_agent_platform/environment_sandbox/#configure-a-network-policy">View Documentation</a></p>
  </li>
  <li>
    <strong>Self-hosted Vertex AI for GitLab Duo Agent Platform</strong>
    <p><p>Vertex AI is now a supported LLM platform within GitLab Duo Agent Platform Self-Hosted.</p>
<p>Customers can now configure Anthropic models hosted on Vertex AI for use with GitLab Duo Agent Platform features.</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/gitlab_duo_self_hosted/supported_llm_serving_platforms/#configure-authentication-with-google-vertex-ai">View Documentation</a></p>
  </li>
  <li>
    <strong>Users can enable agents and flows directly from projects</strong>
    <p><p>Maintainers and Owners can now enable agents and flows directly from their project or the explore page, without navigating away from their current context.</p>
<p>Top-level group Owners can also select their group, and the specific projects where they want to activate agents and flows, streamlining their workflow setup.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/duo_agent_platform/agents/custom/#enable-an-agent">View Documentation</a></p>
  </li>
  <li>
    <strong>Support for Agent Skills in IDEs and CI/CD pipelines</strong>
    <p><p>GitLab Duo Agent Platform now supports the <a href="https://agentskills.io/specification">Agent Skills specification</a>,
an emerging standard for giving AI agents new capabilities and expertise.</p>
<p>You can define Agent Skills at the workspace level for your project
to give agents specialized knowledge and workflows for specific tasks, like writing
tests in a specific framework. Agents automatically discover and load relevant skills
as they encounter matching tasks.</p>
<p>You can also trigger skills manually by name, file path, or custom slash commands.
Agent Skills are accessible for flows and Agentic Chat in your IDE, and for
flows run in CI/CD pipelines. They also work with any other AI tool that supports
the specification.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/duo_agent_platform/customize/agent_skills/">View Documentation</a></p>
  </li>
</ul>
<h4>Scale and Deployments</h4>
<ul>
  <li>
    <strong>Download credit usage data as CSV</strong>
    <p><p>Billing managers can now download credit usage data as a CSV file directly from the GitLab Credits dashboard in Customers Portal.</p>
<p>The export provides a daily, per-action breakdown of credit consumption for the current billing month, including commitment, waiver, trial, on-demand, and included credits used.</p>
<p>Finance and operations teams can use this data to perform cost allocation, chargeback reporting, and usage analysis in Excel, Google Sheets, or BI tools without manual data gathering or support requests.</p>
</p>
    <p><a href="https://docs.gitlab.com/subscriptions/gitlab_credits/#export-usage-data">View Documentation</a></p>
  </li>
  <li>
    <strong>Link credit usage to GitLab Duo Agent Platform sessions</strong>
    <p><p>The GitLab Credits dashboard now links credit consumption directly to the GitLab Duo Agent Platform session that generated it.</p>
<p>In the per-user drill-down view, the <strong>Action</strong> column for Agent Platform usage rows (such as <strong>Agentic Chat</strong> or <strong>Foundational Agents</strong>) is now a clickable hyperlink that navigates to the corresponding session details.</p>
<p>This link provides a direct audit trail from billing to AI session behavior, so administrators can investigate credit usage, support escalations, and compliance reviews without manually correlating timestamps across separate systems.</p>
</p>
    <p><a href="https://docs.gitlab.com/subscriptions/gitlab_credits/#gitlab-credits-dashboard">View Documentation</a></p>
  </li>
  <li>
    <strong>Sort users in the GitLab Credits dashboard</strong>
    <p><p>Enterprise administrators can now sort the <strong>Usage by User</strong> table in the GitLab Credits dashboard by total credits used or by username.</p>
<p>The default sort order is by total credits consumed (highest first), so the top consumers are immediately visible without scrolling.</p>
<p>With this view, administrators managing thousands of GitLab Duo users can quickly identify high-usage individuals for cost allocation, chargeback reporting, and license utilization audits.</p>
</p>
    <p><a href="https://docs.gitlab.com/subscriptions/gitlab_credits/#view-the-gitlab-credits-dashboard">View Documentation</a></p>
  </li>
  <li>
    <strong>New navigation experience for projects in Explore</strong>
    <p><p>We&rsquo;ve streamlined the projects page in <strong>Explore</strong> to reduce clutter and remove redundant options that accumulated over time.
The simplified interface now focuses on two core views:</p>
<ul>
<li><strong>Active</strong> tab: Discover projects with recent activity and ongoing development.</li>
<li><strong>Inactive</strong> tab: Access archived projects and those scheduled for deletion.</li>
</ul>
<p>We&rsquo;ve removed several redundant tabs:</p>
<ul>
<li><strong>Most starred</strong> projects can be found by sorting <strong>Active</strong> or <strong>Inactive</strong> tabs by star count.</li>
<li><strong>All</strong> projects are available by viewing both <strong>Active</strong> and <strong>Inactive</strong> tabs.</li>
<li><strong>Trending</strong> tab will be fully removed in GitLab 19.0 due to limited functionality and low usage.</li>
</ul>
<p>The cleaner design aligns with other project lists for visual consistency. You can still access all the same content through more logical organization and flexible sorting options.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/working_with_projects/#explore-all-projects-on-an-instance">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>Dependency Scanning with SBOM support for Java Gradle build files</strong>
    <p><p>GitLab dependency scanning by using SBOM now supports scanning Java <code>build.gradle</code> and <code>build.gradle.kts</code> build files.</p>
<p>Previously, dependency scanning for Java projects using Gradle required a lock file to be present.
Now, when a lock file is not available, the analyzer automatically falls back to scanning <code>build.gradle</code> and <code>build.gradle.kts</code> files, extracting and reporting only direct dependencies for vulnerability analysis.
This improvement makes it easier for Java projects using Gradle to enable dependency scanning without requiring a lock file.</p>
<p>To enable manifest fallback, set the <code>DS_ENABLE_MANIFEST_FALLBACK</code> CI/CD variable to <code>&quot;true&quot;</code>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/dependency_scanning/dependency_scanning_sbom/#manifest-fallback">View Documentation</a></p>
  </li>
  <li>
    <strong>Dependency scanning SBOM-based scanning extended to self-managed</strong>
    <p><p>In GitLab 18.10, we&rsquo;re extending limited availability status to self-managed instances for the new SBOM-based dependency scanning feature.</p>
<p>This feature was initially released in GitLab 18.5 with limited availability for GitLab.com only, behind the feature flag <code>dependency_scanning_sbom_scan_api</code> and disabled by default.</p>
<p>With additional improvements and fixes, we now have confidence to reliably use the new SBOM scanning internal API and enable this feature flag by default.
This internal API allows the dependency scanning analyzer to generate a dependency scanning report containing all component vulnerabilities.
Unlike the previous behavior (Beta) that processed SBOM reports after CI/CD pipeline completion, <a href="https://docs.gitlab.com/user/application_security/dependency_scanning/dependency_scanning_sbom/#how-it-scans-an-application">this improved process</a> generates scan results immediately during the CI/CD job, giving users instant access to vulnerability data for custom workflows.</p>
<p>Self-managed customers who encounter issues can disable the <code>dependency_scanning_sbom_scan_api</code> feature flag. The analyzer will then fall back to the previous behavior.</p>
<p>To use this feature, import the v2 dependency scanning template <code>Jobs/Dependency-Scanning.v2.gitlab-ci.yml</code>.</p>
<p>We welcome feedback on this feature. If you have questions, comments, or would like to engage with our team, please reach out in this <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/523458">feedback issue</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/dependency_scanning/dependency_scanning_sbom/">View Documentation</a></p>
  </li>
  <li>
    <strong>License scanning support for Dart/Flutter projects using Pub package manager</strong>
    <p><p>GitLab now supports license scanning for Dart and Flutter projects that use the <code>pub</code> package manager.
Previously, teams building with Dart or Flutter were unable to identify the licenses of their open source dependencies directly within GitLab, creating compliance blind spots for organizations with license policy requirements.</p>
<p>License data is sourced directly from <a href="https://pub.dev">pub.dev</a>, the official Dart package repository, and results are surfaced alongside other supported ecosystems.
Dart/Flutter dependency scanning and vulnerability detection were already supported.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/compliance/license_scanning_of_cyclonedx_files/#data-sources">View Documentation</a></p>
  </li>
  <li>
    <strong>Conan 2.0 package registry support (Beta)</strong>
    <p><p>C and C++ development teams using Conan as their package manager have long requested registry support in GitLab. Previously, the Conan package registry was experimental and only supported Conan 1.x clients, limiting adoption for teams that have migrated to the modern Conan 2.0 toolchain.</p>
<p>The Conan package registry now supports Conan 2.0 and has been promoted from Experimental to Beta. This release includes full v2 API compatibility, recipe revision support, improved search capabilities, and proper handling of upload policies including the <code>--force</code> flag. Teams can publish and install Conan 2.0 packages directly from GitLab using standard Conan client workflows, reducing the need for external artifact management solutions like JFrog Artifactory.</p>
<p>With this update, platform engineering teams managing C and C++ dependencies can consolidate their package management within GitLab alongside their source code, CI/CD pipelines, and security scanning. The Conan registry supports both project-level and instance-level endpoints, and works with personal access tokens, deploy tokens, and CI/CD job tokens for authentication.</p>
<p>We welcome feedback as we work toward general availability. Please share your experience in the <a href="https://gitlab.com/groups/gitlab-org/-/work_items/6816">epic</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/packages/conan_2_repository/">View Documentation</a></p>
  </li>
  <li>
    <strong>Manage container virtual registries with a dedicated UI (Beta)</strong>
    <p><p>When the container virtual registry launched in beta last milestone, platform engineers could aggregate multiple upstream container registries — Docker Hub, Harbor, Quay, and others — behind a single pull endpoint. However, all configuration required direct API calls, meaning teams had to maintain scripts or manual curl commands to create and manage their registries, configure upstreams, and handle changes over time. This added operational overhead and made the feature inaccessible to users who weren&rsquo;t comfortable working directly with the API.</p>
<p>Container virtual registries can now be created and managed directly from the GitLab UI. From the group-level container registry page, you can create new virtual registries, configure upstream sources with authentication credentials, edit existing configurations, and delete registries you no longer need — all without leaving GitLab or writing a single API call. The UI integrates seamlessly with the existing container registry experience, making virtual registries a first-class part of your group&rsquo;s artifact management workflow.</p>
<p>This feature is in beta. To share feedback, please comment in the <a href="https://gitlab.com/gitlab-org/gitlab/-/work_items/589630">feedback issue</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/packages/virtual_registry/container/">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Helm Chart registry generally available</strong>
    <p><p>Teams using Helm to manage Kubernetes application deployments can now rely on the GitLab Helm Chart registry for production workloads. Previously in beta, the registry is now generally available following the resolution of key architectural and reliability concerns.</p>
<p>The path to GA included resolving a hard limit that prevented the <code>index.yaml</code> endpoint from returning more than 1,000 charts, fixing a background indexing bug that caused newly published chart versions to be missing from the index, completing a full AppSec security review, and adding Geo replication support for Helm metadata cache, ensuring high availability for self-managed customers running GitLab Geo.</p>
<p>Platform and DevOps teams can publish and install Helm charts directly from GitLab using standard Helm client workflows, with support for project-level endpoints and authentication using personal access tokens, deploy tokens, and CI/CD job tokens. Now you can keep charts alongside the source code, pipelines, and security scanning that depend on them.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/packages/helm_repository/">View Documentation</a></p>
  </li>
  <li>
    <strong>Task item support in Markdown tables</strong>
    <p><p>You can now use task item checkbox syntax directly in Markdown table cells.</p>
<p>Previously, achieving this required a combination of raw HTML and Markdown, which was
cumbersome and difficult to maintain.</p>
<p>This improvement makes it easier to track task completion directly within structured table
layouts in issues, epics, and other content.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/markdown/#task-lists-in-tables">View Documentation</a></p>
  </li>
  <li>
    <strong>Pipeline secret detection in security configuration profiles</strong>
    <p><p>In GitLab 18.9, we introduced security configuration profiles with the <strong>Secret Detection - Default</strong> profile, starting with push protection. You use the profile to apply standardized secret scanning across hundreds of projects without touching a single CI/CD configuration file.</p>
<p>The <strong>Secret Detection - Default</strong> profile now also covers pipeline-based scanning, providing a unified control surface for secret detection across your entire development workflow.</p>
<p>The profile activates three scan triggers:</p>
<ul>
<li><strong>Push Protection</strong>: Scans all Git push events and blocks pushes where secrets are detected, preventing secrets from ever entering your codebase.</li>
<li><strong>Merge Request Pipelines</strong>: Automatically runs a scan each time new commits are pushed to a branch with an open merge request. Results only include new vulnerabilities introduced by the merge request.</li>
<li><strong>Branch Pipelines (default only)</strong>: Runs automatically when changes are merged or pushed to the default branch, providing a complete view of your default branch&rsquo;s secret detection posture.</li>
</ul>
<p>Applying the profile requires no YAML configuration. The profile can be applied to a group to propagate coverage across all projects in the group, or to individual projects for more granular control.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/configuration/security_configuration_profiles/">View Documentation</a></p>
  </li>
  <li>
    <strong>macOS Tahoe 26 and Xcode 26 job image</strong>
    <p><p>You can now create, test, and deploy applications for the newest
generations of Apple devices using macOS Tahoe 26 and Xcode 26.</p>
<p>With <a href="https://docs.gitlab.com/ci/runners/hosted_runners/macos/">hosted runners on macOS</a>,
your development teams can build and deploy macOS applications faster in a secure,
on-demand build environment integrated with GitLab CI/CD.</p>
<p>Try it out today by using the <code>macos-26-xcode-26</code> image in your <code>.gitlab-ci.yml</code> file.</p>
</p>
    <p><a href="https://docs.gitlab.com/ci/runners/hosted_runners/macos/">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner 18.10</strong>
    <p><p>We&rsquo;re also releasing GitLab Runner 18.10 today!
GitLab Runner is the highly-scalable build agent that runs your CI/CD jobs and sends the results back to a GitLab instance.
GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.</p>
<h4 id="whats-new">What&rsquo;s New:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/work_items/39085">Allow k8s runner to define Pod Level Resources for build pod</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/work_items/39192">Add automation to update Go versions and packages for all Runner projects</a></li>
</ul>
<h4 id="bug-fixes">Bug Fixes:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/work_items/39105">S3 cache with RoleARN returns 403 instead of 404 for non-existent cache</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/work_items/37872">Using helper image <code>gitlab-runner-helper:x86_64-v16.11.1-nanoserver21H2</code> results in <code>init-permissions</code> error</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/work_items/28136">MacOS: LaunchAgent - Service could not initialize on M1 architecture</a></li>
</ul>
<p>The list of all changes is in the GitLab Runner <a href="https://gitlab.com/gitlab-org/gitlab-runner/blob/18-10-stable/CHANGELOG.md">CHANGELOG</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/runner">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab Patch Release: 18.9.2, 18.8.6, 18.7.6</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-9-2-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-9-2-released/</id><published>2026-03-11T00:00:00Z</published><updated>2026-03-11T00:00:00Z</updated><author><name>Greg Myers</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On March 11, 2026, we released versions 18.9.2, 18.8.6, 18.7.6 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, please visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring that all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. To maintain good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/2020/05/20/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, it means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-9-2-released/#cve-2026-1090---cross-site-scripting-issue-in-markdown-placeholder-processing-impacts-gitlab-ceee">Cross-site Scripting issue in Markdown placeholder processing impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-9-2-released/#cve-2026-1069---denial-of-service-issue-in-graphql-api-impacts-gitlab-ceee">Denial of Service issue in GraphQL API impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-9-2-released/#cve-2025-13929---denial-of-service-issue-in-repository-archive-endpoint-impacts-gitlab-ceee">Denial of Service issue in repository archive endpoint impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-9-2-released/#cve-2025-14513---denial-of-service-issue-in-protected-branches-api-impacts-gitlab-ceee">Denial of Service issue in protected branches API impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-9-2-released/#cve-2025-13690---denial-of-service-issue-in-webhook-custom-headers-impacts-gitlab-ceee">Denial of Service issue in webhook custom headers impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-9-2-released/#cve-2025-12576---denial-of-service-issue-in-webhook-endpoint-impacts-gitlab-ceee">Denial of Service issue in webhook endpoint impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-9-2-released/#cve-2026-3848---improper-neutralization-of-crlf-sequences-issue-impacts-gitlab-ceee">Improper Neutralization of CRLF Sequences issue impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-9-2-released/#cve-2025-12555---improper-access-control-issue-in-runners-api-impacts-gitlab-ceee">Improper Access Control issue in runners API impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-9-2-released/#cve-2026-0602---improper-access-control-issue-in-snippet-rendering-impacts-gitlab-ceee">Improper Access Control issue in snippet rendering impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-9-2-released/#cve-2026-1732---information-disclosure-issue-in-inaccessible-issues-impacts-gitlab-ceee">Information Disclosure issue in inaccessible issues impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-9-2-released/#cve-2026-1663---missing-authorization-issue-in-group-import-impacts-gitlab-ceee">Missing Authorization issue in Group Import impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-9-2-released/#cve-2026-1230---incorrect-reference-issue-in-repository-download-impacts-gitlab-ceee">Incorrect Reference issue in repository download impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-9-2-released/#cve-2026-1182---information-disclosure-issue-in-confidential-issues-impacts-gitlab-ceee">Information Disclosure issue in confidential issues impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-9-2-released/#cve-2025-12704---incorrect-authorization-issue-in-virtual-registry-impacts-gitlab-ee">Incorrect Authorization issue in Virtual Registry impacts GitLab EE</a></td>
          <td>Low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-9-2-released/#cve-2025-12697---improper-escaping-of-output-issue-in-datadog-integration-impacts-gitlab-ceee">Improper Escaping of Output issue in Datadog integration impacts GitLab CE/EE</a></td>
          <td>Low</td>
      </tr>
  </tbody>
</table>
<h3 id="cve-2026-1090---cross-site-scripting-issue-in-markdown-placeholder-processing-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-1090">CVE-2026-1090</a> - Cross-site Scripting issue in Markdown placeholder processing impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user, when the <code>markdown_placeholders</code> feature flag was enabled, to inject JavaScript in a browser due to improper sanitization of placeholder content in markdown processing.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 10.6 before 18.7.6, 18.8 before 18.8.6, and 18.9 before 18.9.2 <br>
<strong>CVSS</strong> 8.7 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/yvvdwf">yvvdwf</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2026-1069---denial-of-service-issue-in-graphql-api-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-1069">CVE-2026-1069</a> - Denial of Service issue in GraphQL API impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an unauthenticated user to cause a denial of service condition by sending specially crafted GraphQL requests due to uncontrolled recursion under certain circumstances.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 18.9 before 18.9.2 <br>
<strong>CVSS</strong> 7.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/a92847865">a92847865</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-13929---denial-of-service-issue-in-repository-archive-endpoint-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-13929">CVE-2025-13929</a> - Denial of Service issue in repository archive endpoint impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an unauthenticated user to cause a denial of service condition by issuing specially crafted requests to repository archive endpoints under certain conditions.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 10.0 before 18.7.6, 18.8 before 18.8.6, and 18.9 before 18.9.2 <br>
<strong>CVSS</strong> 7.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-14513---denial-of-service-issue-in-protected-branches-api-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-14513">CVE-2025-14513</a> - Denial of Service issue in protected branches API impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an unauthenticated user to cause a denial of service condition due to improper input validation when processing specially crafted JSON payloads in the protected branches API.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 16.11 before 18.7.6, 18.8 before 18.8.6, and 18.9 before 18.9.2 <br>
<strong>CVSS</strong> 7.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/a92847865">a92847865</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-13690---denial-of-service-issue-in-webhook-custom-headers-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-13690">CVE-2025-13690</a> - Denial of Service issue in webhook custom headers impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to cause a denial of service condition due to improper input validation on webhook custom header names under certain conditions.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 16.11 before 18.7.6, 18.8 before 18.8.6, and 18.9 before 18.9.2 <br>
<strong>CVSS</strong> 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/sim4n6">sim4n6</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-12576---denial-of-service-issue-in-webhook-endpoint-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-12576">CVE-2025-12576</a> - Denial of Service issue in webhook endpoint impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that under certain conditions could have allowed an authenticated user to cause a denial of service condition due to improper handling of webhook response data.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 9.3 before 18.7.6, 18.8 before 18.8.6, and 18.9 before 18.9.2 <br>
<strong>CVSS</strong> 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/sim4n6">sim4n6</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2026-3848---improper-neutralization-of-crlf-sequences-issue-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-3848">CVE-2026-3848</a> - Improper Neutralization of CRLF Sequences issue impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to make unintended internal requests through proxy environments under certain conditions due to improper input validation in import functionality.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 8.11 before 18.7.6, 18.8 before 18.8.6, and 18.9 before 18.9.2 <br>
<strong>CVSS</strong> 5.0 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/shells3c">shells3c</a> for reporting this vulnerability.</p>
<h3 id="cve-2025-12555---improper-access-control-issue-in-runners-api-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-12555">CVE-2025-12555</a> - Improper Access Control issue in runners API impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that, under certain conditions, could have allowed an authenticated user to access previous pipeline job information on projects with repository and CI/CD disabled due to improper authorization checks.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 15.1 before 18.7.6, 18.8 before 18.8.6, and 18.9 before 18.9.2 <br>
<strong>CVSS</strong> 4.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/iamgk808">iamgk808</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2026-0602---improper-access-control-issue-in-snippet-rendering-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-0602">CVE-2026-0602</a> - Improper Access Control issue in snippet rendering impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to disclose metadata from private issues, merge requests, epics, milestones, or commits due to improper filtering in the snippet rendering process under certain circumstances.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 15.6 before 18.7.6, 18.8 before 18.8.6, and 18.9 before 18.9.2 <br>
<strong>CVSS</strong> 4.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/go7f0">go7f0</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2026-1732---information-disclosure-issue-in-inaccessible-issues-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-1732">CVE-2026-1732</a> - Information Disclosure issue in inaccessible issues impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to disclose confidential issue titles due to improper filtering under certain circumstances.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 12.6 before 18.7.6, 18.8 before 18.8.6, and 18.9 before 18.9.2 <br>
<strong>CVSS</strong> 4.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/modhanami">modhanami</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2026-1663---missing-authorization-issue-in-group-import-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-1663">CVE-2026-1663</a> - Missing Authorization issue in Group Import impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user with group import permissions to create labels in private projects due to improper authorization validation in the group import process under certain circumstances.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 14.4 before 18.7.6, 18.8 before 18.8.6, and 18.9 before 18.9.2 <br>
<strong>CVSS</strong> 4.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/go7f0">go7f0</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2026-1230---incorrect-reference-issue-in-repository-download-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-1230">CVE-2026-1230</a> - Incorrect Reference issue in repository download impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to cause repository downloads to contain different code than displayed in the web interface due to incorrect validation of branch references under certain circumstances.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 1.0 before 18.7.6, 18.8 before 18.8.6, and 18.9 before 18.9.2 <br>
<strong>CVSS</strong> 4.1 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:N/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:N/I:L/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/st4nly0n">st4nly0n</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2026-1182---information-disclosure-issue-in-confidential-issues-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-1182">CVE-2026-1182</a> - Information Disclosure issue in confidential issues impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to gain unauthorized access to confidential issue titles created in public projects under certain circumstances.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 8.14 before 18.7.6, 18.8 before 18.8.6, and 18.9 before 18.9.2 <br>
<strong>CVSS</strong> 4.1 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/yvvdwf">yvvdwf</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-12704---incorrect-authorization-issue-in-virtual-registry-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-12704">CVE-2025-12704</a> - Incorrect Authorization issue in Virtual Registry impacts GitLab EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to access Virtual Registry data in groups where they are not members due to improper authorization under certain conditions.</p>
<p><strong>Impacted Versions:</strong> GitLab EE: all versions from 18.2 before 18.7.6, 18.8 before 18.8.6, and 18.9 before 18.9.2 <br>
<strong>CVSS</strong> 3.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/mateuszek">mateuszek</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-12697---improper-escaping-of-output-issue-in-datadog-integration-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-12697">CVE-2025-12697</a> - Improper Escaping of Output issue in Datadog integration impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user with maintainer-role permissions to reveal Datadog API credentials under certain conditions.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 15.5 before 18.7.6, 18.8 before 18.8.6, and 18.9 before 18.9.2 <br>
<strong>CVSS</strong> 2.2 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:L/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/shells3c">shells3c</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1892">18.9.2</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2850">Fix GitLab base caching (Backport 18.9)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/8528">config: Add configuration to control GOMAXPROCS [backport to 18.9]</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/225012">Backport of &lsquo;Fix test pollution from simulate_saas rake task&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/224916">Backport of &lsquo;Add backtrace to placeholder user reassignment failure logs&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/225031">[Backport 18.9] Update bitbucket cloud importer to fetch workspace scoped repositories</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/224683">Backport of &ldquo;Remove old DAP troubleshooting docs&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/225026">Backport BBM - Fix helper with single record</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/224721">[18.9] Backport of &lsquo;Reduce logs by ConcurrencyLimit::WorkerExecutionTracker&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/224826">Backport of Reduce batch size for text-embedding-005 requests</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/225488">[Backport]- Fix transpilers for zoekt filters</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/225589">Backport of &lsquo;Fix exclude types in session query&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/225679">[Backport]- Skip param validation for MCP requests</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/225282">Backport of 591296 Historical Addon Assignments - Ignore Namespace Path For SM</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/225788">Backport of &lsquo;Handle Jira Server/Data Center Issue pagination&rsquo; (18.9)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/224861">Backport &lsquo;Improve Deployments and Size quota specs for clarity and consistency&rsquo; to 18-9-stable-ee</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/225506">Backport- Code search returns no results at intermediate group level</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/225755">Backport of &lsquo;Move ConcurrencyLimit::ResumeWorker cron config to CE&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/225694">Backport of &lsquo;Extend package migrate task to metadata caches and symbols&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/225290">Backport of &lsquo;Stop unblocking policy approvals when security jobs get canceled&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/225790">Backport of Revert &ldquo;Clean up gpg_commit_delegate_to_signature feature flag&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/226030">Support default AI access rules - Backport of 225728</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/226116">Backport of &lsquo;Fix maintainers editing when they own a fork&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9161">[18-9-stable] Remove release instance deployment trigger from Ubuntu-20.04-staging job</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9173">[18.9] Backport Mattermost Security Updates February 18, 2026</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9172">Backport: Simplify pg-upgrade initdb by removing locale parameters</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9194">[18.9] Patch io-event gem to drop epoll_pwait2 check for RedHat 9</a></li>
</ul>
<h3 id="1886">18.8.6</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2844">Backport Go 1.25.7 to 18.8 Stable</a></li>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2851">Fix GitLab base caching (Backport 18.8)</a></li>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2826">Backport of &ldquo;fix(bug): Schema check should not fail when ClickHouse DB is uninitialized&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/8536">config: Add configuration to control GOMAXPROCS [backport to 18.8]</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/224745">18.8 Backport of &lsquo;Fix PipelineSecurityReportFindings query timeout&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/224527">Backport 18.8 - CI - Token used for release environments</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/223650">Handle RecordInvalid in SyncProjectPolicyWorker</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/225028">[Backport 18.8] Update bitbucket cloud importer to fetch workspace scoped repositories</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/224720">[18.8] Backport of &lsquo;Reduce logs by ConcurrencyLimit::WorkerExecutionTracker&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/225101">Backport BBM - Fix helper with single record</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/222779">Backport of &lsquo;Fix Duo sidebar absent for user with Agentic Chat access but without Classic Chat access&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/225489">[Backport]- Fix transpilers for zoekt filters</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/225278">Backport of 591296 Historical Addon Assignments - Ignore Namespace Path For SM</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/225598">Backport of &lsquo;Handle Jira Server/Data Center Issue pagination&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/224862">Backport &lsquo;Improve Deployments and Size quota specs for clarity and consistency&rsquo; to 18-8-stable-ee</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/225508">Backport- Code search returns no results at intermediate group level</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/225754">Backport of &lsquo;Move ConcurrencyLimit::ResumeWorker cron config to CE&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/226114">Support default AI access rules - Backport of 225728</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9158">Backport Go 1.25.7 to GitLab 18.8</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9162">[18-8-stable] Remove release instance deployment trigger from Ubuntu-20.04-staging job</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9174">[18.8] Mattermost Security Updates February 18, 2026</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9195">[18.8] Patch io-event gem to drop epoll_pwait2 check for RedHat 9</a></li>
</ul>
<h3 id="1876">18.7.6</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2843">Backport Go 1.25.7 to 18.7 Stable</a></li>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2849">Fix GitLab base caching (Backport 18.7)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/224530">Backport 18.7 - CI - Token used for release environments</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/223652">Handle RecordInvalid in SyncProjectPolicyWorker</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/225025">[Backport 18.7] Update bitbucket cloud importer to fetch workspace scoped repositories</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/224717">[18.7] Backport of &lsquo;Reduce logs by ConcurrencyLimit::WorkerExecutionTracker&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/225491">[Backport]- Fix transpilers for zoekt filters</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/225511">Backport- Code search returns no results at intermediate group level</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/225211">Backport of 591296 Historical Addon Assignments - Ignore Namespace Path For SM</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/225599">Backport of &lsquo;Handle Jira Server/Data Center Issue pagination&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/224863">Backport &lsquo;Improve Deployments and Size quota specs for clarity and consistency&rsquo; to 18-7-stable-ee</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/225753">Backport of &lsquo;Move ConcurrencyLimit::ResumeWorker cron config to CE&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/226561">[18.7] Fix image resizing assertion logic for RTE</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9159">Backport Go 1.25.7 to GitLab 18.7</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9163">[18-7-stable] Remove release instance deployment trigger from Ubuntu-20.04-staging job</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9175">[18.7] Backport Mattermost Security Updates February 18, 2026</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9196">[18.7] Patch io-event gem to drop epoll_pwait2 check for RedHat 9</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>This patch includes database migrations that may impact your upgrade process.</p>
<h3 id="impact-on-your-installation">Impact on your installation:</h3>
<ul>
<li><strong>Single-node instances</strong>: This patch will cause downtime during the upgrade as migrations must complete before GitLab can start.</li>
<li><strong>Multi-node instances</strong>: With proper <a href="https://docs.gitlab.com/ee/update/zero_downtime.html">zero-downtime upgrade procedures</a>, this patch can be applied without downtime.</li>
</ul>
<h3 id="regular-migrations">Regular migrations</h3>
<p>The following versions include regular migrations that run during the upgrade process:</p>
<ul>
<li>18.9.2</li>
<li>18.8.6</li>
</ul>
<p>To learn more about the impact of upgrades on your installation, see:</p>
<ul>
<li><a href="https://docs.gitlab.com/ee/update/zero_downtime.html">Zero-downtime upgrades</a> for multi-node deployments</li>
<li><a href="https://docs.gitlab.com/update/package/#downtime">Standard upgrades</a> for single-node installations</li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update">Update page</a>.
To update GitLab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 18.9.1, 18.8.5, 18.7.5</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-9-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-9-1-released/</id><published>2026-02-25T00:00:00Z</published><updated>2026-02-25T00:00:00Z</updated><author><name>Greg Myers</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On February 25, 2026, we released versions 18.9.1, 18.8.5, 18.7.5 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, please visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring that all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. To maintain good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/2020/05/20/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, it means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-9-1-released/#cve-2026-0752---cross-site-scripting-issue-in-mermaid-sandbox-impacts-gitlab-ceee">Cross-site Scripting issue in Mermaid sandbox impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-9-1-released/#cve-2025-14511---denial-of-service-issue-in-container-registry-impacts-gitlab-ceee">Denial of Service issue in container registry impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-9-1-released/#cve-2026-1662---denial-of-service-issue-in-jira-events-endpoint-impacts-gitlab-ceee">Denial of Service issue in Jira events endpoint impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-9-1-released/#cve-2026-1388---regular-expression-denial-of-service-issue-in-gitlab-merge-requests-impacts-gitlab-ceee">Regular Expression Denial of Service issue in GitLab merge requests impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-9-1-released/#cve-2026-2845---missing-rate-limit-in-bitbucket-server-importer-impacts-gitlab-ceee">Missing rate limit in Bitbucket Server importer impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-9-1-released/#cve-2025-3525---denial-of-service-issue-in-ci-trigger-api-impacts-gitlab-ceee">Denial of Service issue in CI trigger API impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-9-1-released/#cve-2026-1725---denial-of-service-issue-in-token-decoder-impacts-gitlab-ceee">Denial of Service issue in token decoder impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-9-1-released/#cve-2026-1747---improper-access-control-issue-in-conan-package-registry-impacts-gitlab-ee">Improper Access Control issue in Conan package registry impacts GitLab EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-9-1-released/#cve-2025-14103---access-control-issue-in-ci-job-mutation-impacts-gitlab-ceee">Access Control issue in CI job mutation impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
  </tbody>
</table>
<h3 id="cve-2026-0752---cross-site-scripting-issue-in-mermaid-sandbox-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-0752">CVE-2026-0752</a> - Cross-site Scripting issue in Mermaid sandbox impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that under certain circumstances, could have allowed an unauthenticated user to inject arbitrary scripts into the Mermaid sandbox UI.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 16.2 before 18.7.5, 18.8 before 18.8.5, and 18.9 before 18.9.1 <br>
<strong>CVSS</strong> 8.0 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/aphantom">aphantom</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-14511---denial-of-service-issue-in-container-registry-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-14511">CVE-2025-14511</a> - Denial of Service issue in container registry impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an unauthenticated user to cause denial of service by sending specially crafted files to the container registry event endpoint under certain conditions.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 12.2 before 18.7.5, 18.8 before 18.8.5, and 18.9 before 18.9.1 <br>
<strong>CVSS</strong> 7.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/a92847865">a92847865</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2026-1662---denial-of-service-issue-in-jira-events-endpoint-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-1662">CVE-2026-1662</a> - Denial of Service issue in Jira events endpoint impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an unauthenticated user to cause Denial of Service by sending specially crafted requests to the Jira events endpoint.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 14.4 before 18.7.5, 18.8 before 18.8.5, and 18.9 before 18.9.1 <br>
<strong>CVSS</strong> 7.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/a92847865">a92847865</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2026-1388---regular-expression-denial-of-service-issue-in-gitlab-merge-requests-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-1388">CVE-2026-1388</a> - Regular Expression Denial of Service issue in GitLab merge requests impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an unauthenticated user to cause regular expression denial of service by sending specially crafted input to a merge request endpoint under certain conditions.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 9.2 before 18.7.5, 18.8 before 18.8.5, and 18.9 before 18.9.1 <br>
<strong>CVSS</strong> 7.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/sim4n6">sim4n6</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2026-2845---missing-rate-limit-in-bitbucket-server-importer-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-2845">CVE-2026-2845</a> - Missing rate limit in Bitbucket Server importer impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to cause denial of service by exploiting a Bitbucket Server import endpoint via repeatedly sending large responses.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 11.2 before 18.7.5, 18.8 before 18.8.5, and 18.9 before 18.9.1 <br>
<strong>CVSS</strong> 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>This vulnerability has been discovered internally by GitLab team member <a href="https://gitlab.com/SamWord">Sam Word</a></p>
<h3 id="cve-2025-3525---denial-of-service-issue-in-ci-trigger-api-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-3525">CVE-2025-3525</a> - Denial of Service issue in CI trigger API impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have, under certain circumstances, allowed an authenticated user with certain access to cause denial of service by creating specially crafted CI triggers via the API.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 9.0 before 18.7.5, 18.8 before 18.8.5, and 18.9 before 18.9.1 <br>
<strong>CVSS</strong> 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/pwnie">pwnie</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2026-1725---denial-of-service-issue-in-token-decoder-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-1725">CVE-2026-1725</a> - Denial of Service issue in token decoder impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have under certain conditions, allowed an unauthenticated user to cause denial of service by sending specially crafted requests to a CI jobs API endpoint.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: versions from 18.9 before 18.9.1 <br>
<strong>CVSS</strong> 5.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/vinax">vinax</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2026-1747---improper-access-control-issue-in-conan-package-registry-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-1747">CVE-2026-1747</a> - Improper Access Control issue in Conan package registry impacts GitLab EE</h3>
<p>GitLab has remediated an issue that, under certain conditions, could have allowed Developer-role users with insufficient privileges to make unauthorized modifications to protected Conan packages.</p>
<p><strong>Impacted Versions:</strong> GitLab EE: all versions from 17.11 before 18.7.5, 18.8 before 18.8.5, and 18.9 before 18.9.1 <br>
<strong>CVSS</strong> 4.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/modhanami">modhanami</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-14103---access-control-issue-in-ci-job-mutation-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-14103">CVE-2025-14103</a> - Access Control issue in CI job mutation impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an unauthorized user with Developer-role permissions to set pipeline variables for manually triggered jobs under certain conditions.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 17.7 before 18.7.5, 18.8 before 18.8.5, and 18.9 before 18.9.1 <br>
<strong>CVSS</strong> 4.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/go7f0">go7f0</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1891">18.9.1</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/224070">Backport of fix semantic code search for Premium plans</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/223896">Backport of &ldquo;Implement usage of namespace AI data collection setting&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/224130">Backport of AI data collection docs</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/223889">Backport of &ldquo;Add exclude_types to the get_agent_flows query&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/223770">Backport of &ldquo;Bypass group membership lock for service accounts&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/224472">Backport 18.9 - CI - Token used for release environments</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/223926">[Backport] Zoekt Fix the bug of includeForked</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/224478">Backport of Fix adding flows when member invites are disabled</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/224642">Backport of Fix workspace PAT creation with short PAT lifetime</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/224434">Backport of Remove API dependency on composite identity onboarding</a></li>
</ul>
<h3 id="1885">18.8.5</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/222533">Disable gitlab credits dashboard page for SM trial</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/222688">Backport: Workhorse: Ignore misconfigured redis for DWS locking</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/222523">Backport of skip rebase check for detailed merge status</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/222618">Backport of &lsquo;Time to first byte degradation on list merge requests API&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/222792">Backport of Update gitlab-cloud-connector gem to 1.44</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/222969">Backport - Remove orphaned zoektCrossNamespaceSearch feature flag reference</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/222471">Move bot avatar assets to app/assets for proper asset pipeline inclusion</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/223201">Backport of &lsquo;Geo Primary Verification: Check actual verification state when checksumming&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/223088">Backport of Fix introspection query</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/222986">Backport PG::UntranslatableCharacter fixes for MoveCiBuildsMetadata background migration</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/222864">Backport optimizing of the MergeRequestResetApprovals Worker</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/223356">Backport of &lsquo;Remove unused retag-gdk-image CI job&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/223406">Backport of &ldquo;Docs: Added support for Credits and DAP from 18.8 and later&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/223398">Backport of &lsquo;Enable the disable_all_mentions FF by default &lsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/222856">Backport of Validate milestone title for group import</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/223122">Backport of workhorse: Return 400 from /cable without valid websocket upgrade</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/224518">Skip Feature.enabled? override in test environment - 18.8</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/223927">[Backport] Zoekt Fix the bug of includeForked</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/223769">Backport of &ldquo;Bypass group membership lock for service accounts&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/224478">Backport of Fix adding flows when member invites are disabled</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/222646">Backport of Reset group_push_rules primary key sequence</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/224642">Backport of Fix workspace PAT creation with short PAT lifetime</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/224146">Backport Use new auth in advanced wiki search</a></li>
</ul>
<h3 id="1875">18.7.5</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/222264">Backport of &lsquo;Fix Zoekt indexing by cleaning up replicas without indices&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/222629">Backport of &lsquo;Time to first byte degradation on list merge requests API&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/222859">Backport of Validate milestone title for group import</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/223749">Backport of &lsquo;Remove unused retag-gdk-image CI job&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/223123">Backport of workhorse: Return 400 from /cable without valid websocket upgrade</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/222645">Backport of Reset group_push_rules primary key sequence</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/224146">Backport Use new auth in advanced wiki search</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>The SLES 12.5 package is not available for GitLab 18.9.1.</p>
<p>This patch includes database migrations that may impact your upgrade process.</p>
<h3 id="impact-on-your-installation">Impact on your installation:</h3>
<ul>
<li><strong>Single-node instances</strong>: This patch will cause downtime during the upgrade as migrations must complete before GitLab can start.</li>
<li><strong>Multi-node instances</strong>: With proper <a href="https://docs.gitlab.com/ee/update/zero_downtime.html">zero-downtime upgrade procedures</a>, this patch can be applied without downtime.</li>
</ul>
<h3 id="post-deploy-migrations">Post-deploy migrations</h3>
<p>The following versions include post-deploy migrations that can run after the upgrade:</p>
<ul>
<li>18.8.5</li>
</ul>
<p>To learn more about the impact of upgrades on your installation, see:</p>
<ul>
<li><a href="https://docs.gitlab.com/ee/update/zero_downtime.html">Zero-downtime upgrades</a> for multi-node deployments</li>
<li><a href="https://docs.gitlab.com/update/package/#downtime">Standard upgrades</a> for single-node installations</li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update">Update page</a>.
To update GitLab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab 18.9 released</title><link href="https://docs.gitlab.com/releases/18/18-9-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/18/18-9-released/</id><published>2026-02-19T00:00:00Z</published><updated>2026-02-19T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On February 19, 2026, GitLab 18.9 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong>Pooja Ghanghas</strong>
</p>
<p>Pooja has made significant contributions to ongoing efforts at GitLab to migrate legacy dropdown components to our modern dropdown architecture. These migrations require careful attention to detail and an understanding of both the old and new component systems. Pooja has consistently delivered high-quality work across multiple migrations, including updates to the <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/189621">diff file header</a>, <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/194129">code block bubble menu</a>, <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/186247">oncall schedules rotation assignee component</a>, and the <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/209598">new resource dropdown</a>.</p>
<p><a href="https://gitlab.com/peterhegman">Peter Hegman</a>, Staff Frontend Engineer on Tenant Scale::Organizations at GitLab, nominated Pooja for this recognition, noting: &ldquo;These migrations can be pretty tricky and she has completed a number of them. Thanks for your contributions!&rdquo;</p>
<p>Beyond these migration efforts, Pooja has also contributed to feature development, including <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/524100">adding statuses to milestones and iterations</a>, a feature she put significant effort into getting merged. <a href="https://gitlab.com/msaleiko">Marc Saleiko</a>, Staff Fullstack Engineer on Plan:Project Management at GitLab, recognised her work: &ldquo;This is a valuable contribution and you did a great job delivering this functionality!&rdquo; Reflecting on her experience, Pooja shared: &ldquo;I&rsquo;m proud of how it turned out and it was a great learning experience for me.&rdquo;</p>
<p>She has also contributed numerous bug fixes and maintenance improvements across the GitLab codebase. Pooja&rsquo;s work directly improves the maintainability and consistency of the GitLab user interface, making it easier for both contributors and team members to build and maintain features, and helping move the GitLab frontend architecture forward.</p>
<p>Thank you, Pooja, for your continued contributions to improving the GitLab codebase and for being such a reliable member of our contributor community!</p>
<p>Want to learn more about Pooja&rsquo;s contributions? Check out her <a href="https://gitlab.com/poojaghanghas479">GitLab profile</a>.</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>GitLab Duo Agent Platform Self-Hosted models now available for cloud licenses</strong>
    <p><p>GitLab Duo Agent Platform is now generally available for GitLab Self-Managed customers with a cloud license. Billing for this feature is <a href="https://docs.gitlab.com/subscriptions/gitlab_credits/">usage-based</a>.</p>
<p>Administrators can configure <a href="https://docs.gitlab.com/administration/gitlab_duo_self_hosted/supported_models_and_hardware_requirements/#compatible-models">compatible models</a> for use with GitLab Duo Agent Platform. Administrators using AWS Bedrock or Azure OpenAI can also configure Anthropic Claude or OpenAI GPT models.</p>
<p>Not yet on Ultimate? <a href="/#gitlab-duo-agent-platform-available-in-ultimate-trials">Start a free trial with Duo Agent Platform included</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/gitlab_duo_self_hosted/#gitLab-duo-agent-platform">View Documentation</a></p>
  </li>
  <li>
    <strong>Vulnerability resolution with GitLab Duo Agent Platform (Beta)</strong>
    <p><p>Triaging and remediating SAST vulnerabilities is one of the most time-consuming tasks in application security. After identifying a real vulnerability, developers need to understand the finding, locate the affected code, and write an appropriate fix. All of which take time and specialized knowledge.
In GitLab 18.9, we&rsquo;re introducing Agentic SAST Vulnerability Resolution. When you trigger resolution for a SAST vulnerability, GitLab Duo autonomously analyzes the finding, reasons through the surrounding code context, generates a context-aware fix, and creates a merge request without any manual intervention.</p>
<p>Key capabilities include:</p>
<ul>
<li>Agentic multi-step resolution: Rather than producing a single code suggestion, the GitLab Duo Agent Platform reasons through the vulnerability, evaluates the codebase, and produces a well-informed fix.</li>
<li>Automatic merge request creation: Generates a ready-to-review merge request with the proposed code fix for critical and high severity SAST vulnerabilities.</li>
<li>Quality scoring: Each generated fix includes a quality assessment so reviewers can quickly gauge confidence in the proposed remediation.</li>
</ul>
<p>SAST vulnerability resolution is available from the vulnerability report and the individual vulnerability details pages. You can trigger a resolution directly from the individual vulnerability details page.</p>
<p>This feature is available as a free beta for Ultimate customers. We welcome your feedback in <a href="https://gitlab.com/gitlab-org/gitlab/-/work_items/585626">issue 585626</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/duo_agent_platform/flows/foundational_flows/agentic_sast_vulnerability_resolution/">View Documentation</a></p>
  </li>
  <li>
    <strong>Navigate repositories with collapsible file tree</strong>
    <p><p>You can now browse repository files with a collapsible file tree. The tree provides
a comprehensive view of your project structure, so you can expand and collapse directories
inline, jump between files in different parts of your repository, and maintain context
while you work.</p>
<p>The file tree appears as a resizable sidebar when you view repository files or directories.
You can toggle visibility with keyboard shortcuts, filter files by name or extension,
and navigate through complex project hierarchies. The tree synchronizes with your current
location, so when you select a file in the main content area, the tree updates to show
that file.</p>
<p>Your existing repository structure and file organization remain unchanged. With fewer page
loads required to move between files, this feature scales from small projects to large
codebases with thousands of files.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/repository/files/file_tree_browser/">View Documentation</a></p>
  </li>
  <li>
    <strong>Include CI/CD inputs from a file</strong>
    <p><p>Previously, pipeline inputs could only be defined directly within a pipeline&rsquo;s spec section. This limitation made it challenging to reuse input configuration across multiple projects.</p>
<p>In this release you can now include input definitions from external files using the familiar <code>include</code> keyword. Being able to maintain a list of inputs in a separate place helps you have a manageable solution across many projects or pipelines. You can maintain centralized input configurations and even dynamically manage input values from external sources.</p>
</p>
    <p><a href="https://docs.gitlab.com/ci/inputs/#use-inputs-from-external-files">View Documentation</a></p>
  </li>
  <li>
    <strong>Web-based commit signing on GitLab.com</strong>
    <p><p>Ensuring commits are cryptographically signed is essential for code integrity and meeting
compliance requirements. Previously, web-based commit signing was only available for GitLab Self-Managed.</p>
<p>GitLab.com now supports web-based commit signing. When enabled for a group or project, commits
created through the GitLab web interface are automatically signed with the GitLab signing key and are
displayed with a <strong>Verified</strong> badge, providing cryptographic proof of authenticity for your repositories.</p>
<p>Key details:</p>
<ul>
<li>Enable in group or project settings based on your requirements.</li>
<li>All web-based commits (Web IDE edits, merges, API operations) are automatically signed when enabled.</li>
</ul>
<p>This brings the GitLab.com security capabilities in line with GitLab Self-Managed and provides
the foundation for comprehensive commit signing policies across your organization.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/repository/signed_commits/web_commits/">View Documentation</a></p>
  </li>
  <li>
    <strong>Container virtual registry now available (Beta)</strong>
    <p><p>Modern container-based development requires accessing images from multiple registries including Docker Hub, Harbor, Quay, and private registries. Without a container virtual registry, platform engineers must configure each project and CI/CD pipeline to authenticate with and pull from multiple registries individually. This creates configuration complexity, slows pulls with sequential registry queries, and makes it difficult to implement consistent security policies across container sources.</p>
<p>The container virtual registry addresses these challenges by aggregating multiple upstream container registries behind a single endpoint. Platform engineers can configure Docker Hub, Harbor, Quay, and other registries with long-lived token authentication through one URL. Intelligent caching improves pull performance while integrating with the GitLab authentication systems for centralized access control and audit logging.</p>
<p>The container virtual registry API is currently available in beta for GitLab Premium and Ultimate customers. Beta participants can use the <a href="https://docs.gitlab.com/api/container_virtual_registries/">GitLab API</a> to create container virtual registries, configure multiple upstream sources with shareable configurations, and pull container images through the virtual registry. Please note the beta does not support registries that require IAM authentication. Support for cloud provider registries requiring IAM authentication is tracked in <a href="https://gitlab.com/groups/gitlab-org/-/work_items/20919">this epic</a>.</p>
<p>On GitLab.com, this feature is behind a feature flag. To request access or share feedback, please comment in the <a href="https://gitlab.com/gitlab-org/gitlab/-/work_items/589630">feedback issue</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/packages/virtual_registry/container/">View Documentation</a></p>
  </li>
  <li>
    <strong>New security dashboard chart: Vulnerabilities by age</strong>
    <p><p>The new <strong>Vulnerabilities by age</strong> chart helps you understand how long vulnerabilities have been open in your environment.</p>
<p>The chart shows the distribution of unresolved vulnerabilities based on the amount of time since they were first detected. You can group vulnerabilities by severity or by report type, helping you identify where remediation activities may be needed.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/security_dashboard/#vulnerabilities-by-age">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Agentic Core</h4>
<ul>
  <li>
    <strong>OAuth support in JetBrains IDEs for Self-Managed and Dedicated</strong>
    <p>The GitLab Duo plugin for JetBrains IDEs now supports OAuth authentication for GitLab Self-Managed and GitLab Dedicated. This means all JetBrains users can now enjoy a faster, more secure sign-in experience. No personal access token required.</p>
    <p><a href="https://docs.gitlab.com/editor_extensions/jetbrains_ide/setup/#authenticate-with-gitlab">View Documentation</a></p>
  </li>
</ul>
<h4>Scale and Deployments</h4>
<ul>
  <li>
    <strong>Non-billable Minimal Access users</strong>
    <p>Previously, organizations that used identity providers to automate user provisioning on GitLab Self-Managed Premium might run into a potential problem. When identity provider syncs attempt to add users beyond the licensed seat limit, administrators must either purchase extra seats for users who don&rsquo;t need active access, or manually intervene to prevent failures.
Now, users with the Minimal Access role on GitLab Self-Managed Premium subscriptions no longer count as billable seats, bringing them in line with how minimal access works on GitLab.com Premium, GitLab.com Ultimate, and GitLab Self-Managed Ultimate.
This change unlocks the <a href="https://docs.gitlab.com/administration/settings/sign_up_restrictions/#restricted-access">restricted access</a> feature, which automatically assigns the Minimal Access role to users who would otherwise exceed the seat limit during identity provider syncs. This change keeps syncs running smoothly without unexpected billing overages or manual intervention.</p>
    <p><a href="https://docs.gitlab.com/user/permissions/#users-with-minimal-access">View Documentation</a></p>
  </li>
  <li>
    <strong>Geo data management view on primary site</strong>
    <p><p>You can now troubleshoot and verify data integrity directly from the primary site, thanks to the new data management view that brings detailed verification status information to the primary Geo site. This enhancement eliminates the need to access secondary sites for basic verification and troubleshooting tasks.</p>
<p>Previously, this verification status was only accessible through the secondary site UI. Now, with the data management view on the primary site, you can:</p>
<ul>
<li>View detailed verification status for all replicable data types on the primary site</li>
<li>Perform data sanitization and troubleshooting tasks directly from the primary UI</li>
<li>Set up and verify your Geo configuration on the primary site before adding secondary sites</li>
</ul>
<p>This enhancement is the first step toward comprehensive self-serve troubleshooting with the UI, reducing the need to access multiple sites for routine maintenance and issue resolution.</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/admin_area/#data-management">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Duo Agent Platform available in Ultimate trials</strong>
    <p><p>Teams evaluating GitLab can now test agentic AI capabilities that automate complex development workflows and reduce manual tasks. Sign up for a GitLab Ultimate trial and get access to Duo Agent Platform with 24 evaluation credits per user, enabling hands-on experience with autonomous task execution and multi-step workflow orchestration during a 30-day evaluation. Evaluation credits are available for 30 days from the provision date, so consider your team&rsquo;s readiness before starting.</p>
<p><a href="https://gitlab.com/-/trial_registrations/new">Start your free trial</a>. Current paid customers can access evaluation credits through their account team. <a href="https://about.gitlab.com/sales/">Contact Sales</a> to learn more.</p>
</p>
    <p><a href="https://docs.gitlab.com/subscriptions/free_trials/#gitlab-duo-agent-platform-trials">View Documentation</a></p>
  </li>
  <li>
    <strong>Zero Downtime Upgrades now supported for Cloud Native Hybrid deployments</strong>
    <p><p>Zero Downtime Upgrades are now officially supported for Cloud Native Hybrid deployments.</p>
<p>Enterprise customers require their DevSecOps platform to be available at all times, making upgrade-related downtime a significant operational concern.
Until now, Zero Downtime Upgrades were only supported for Linux package-based high availability deployments, which drove many customers toward VM-based architectures even when cloud-native Kubernetes deployments would have better suited their infrastructure strategy.</p>
<p>We&rsquo;ve been upgrading our own Cloud Native Hybrid SaaS instances with zero downtime for years.
With this release, we&rsquo;re bringing that same operational experience to self-managed customers running GitLab on Kubernetes.</p>
<p>The upgrade procedure has been comprehensively tested and is now fully documented, giving you the confidence to maintain availability during version upgrades.</p>
</p>
    <p><a href="https://docs.gitlab.com/charts/installation/upgrade/#upgrade-with-zero-downtime">View Documentation</a></p>
  </li>
  <li>
    <strong>Archive a group and its content</strong>
    <p><p>Managing completed initiatives and abandoned projects is now easier.
You can now archive entire groups, including all subgroups and projects, in one action, eliminating the need to manually archive each project individually.</p>
<p>When you archive a group:</p>
<ul>
<li>All nested subgroups and projects are automatically archived.</li>
<li>Archived content moves to the <strong>Inactive</strong> tab with clear status badges.</li>
<li>Group data remains fully accessible in read-only mode for reference or restoration.</li>
<li>Write permissions are disabled across the archived group and its content.</li>
</ul>
<p>Beyond the <strong>Settings</strong> page, you can archive groups and projects directly from the actions menu in list views. No more navigating through multiple screens for simple administrative tasks.
This highly requested feature dramatically reduces administrative overhead while keeping your workspace organized with clear separation between active and inactive work.
Share your feedback in <a href="https://gitlab.com/groups/gitlab-org/-/epics/18616">epic 18616</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/group/manage/#archive-a-group">View Documentation</a></p>
  </li>
  <li>
    <strong>Valkey as replacement option for Redis (Beta)</strong>
    <p><p>Starting with GitLab 18.9, Valkey is bundled as an opt-in replacement for Redis in the Linux package.
Redis changed their license to AGPLv3, which is not suitable for open source customers. To guarantee security and maintainability for our
GitLab Self-Managed customers, we are transitioning from Redis to Valkey, a community-driven fork that maintains the permissive BSD license.</p>
<p>Transition timeline:</p>
<ul>
<li>GitLab 18.9 (this release): Valkey is bundled as an opt-in replacement (beta). You can switch from Redis to Valkey at your convenience. Valkey Sentinel support
is included.</li>
<li>GitLab 19.0 (May 2026): Valkey becomes the default and Redis binaries are removed from the Linux package. Existing Redis configuration settings remain
functional and are honored for backwards compatibility.</li>
</ul>
<p>This transition only affects the bundled Redis in Linux packages. Customers on scaled architectures using external Redis deployments can continue to use Redis.
We are monitoring the potential feature divergence between Redis and Valkey and will provide guidance as the ecosystem evolves.</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/redis/#use-valkey-instead-of-redis">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>Dependency Scanning with SBOM support for Java pom.xml manifest files</strong>
    <p><p>GitLab <a href="https://docs.gitlab.com/user/application_security/dependency_scanning/dependency_scanning_sbom/">dependency scanning by using SBOM</a> now supports scanning Java <code>pom.xml</code> manifest files.
Previously, dependency scanning for Java projects using Maven required a graph file to be present.
Now, when a graph file is not available, the analyzer automatically falls back to scanning <code>pom.xml</code> files, extracting and reporting only direct dependencies for vulnerability analysis.
This improvement makes it easier for Java projects to enable dependency scanning without requiring a graph file.</p>
<p>To enable manifest fallback, set the <code>DS_ENABLE_MANIFEST_FALLBACK</code> CI/CD variable to <code>&quot;true&quot;</code>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/dependency_scanning/dependency_scanning_sbom/#manifest-fallback">View Documentation</a></p>
  </li>
  <li>
    <strong>Dependency Scanning with SBOM support for Python requirements.txt manifest files</strong>
    <p><p>GitLab <a href="https://docs.gitlab.com/user/application_security/dependency_scanning/dependency_scanning_sbom/">dependency scanning by using SBOM</a> now supports scanning Python <code>requirements.txt</code> manifest files.
Previously, dependency scanning for Python projects required a lock file to be present.
Now, when a lock file is not available, the analyzer automatically falls back to scanning <code>requirements.txt</code> files, extracting and reporting only direct dependencies for vulnerability analysis.
This improvement makes it easier for Python projects to enable dependency scanning without requiring a lock file.</p>
<p>To enable manifest fallback, set the <code>DS_ENABLE_MANIFEST_FALLBACK</code> CI/CD variable to <code>&quot;true&quot;</code>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/dependency_scanning/dependency_scanning_sbom/#manifest-fallback">View Documentation</a></p>
  </li>
  <li>
    <strong>Restrict personal snippets for enterprise users</strong>
    <p><p>Organizations using GitLab.com need to ensure that enterprise users don&rsquo;t accidentally expose
sensitive code through personal snippets.
Previously, there was no way to prevent users from creating snippets in their personal namespace,
which can pose a security risk if snippets are inadvertently set to public.</p>
<p>Group Owners can now restrict personal snippet creation for enterprise users, helping maintain
tighter control over where code is shared.
When restricted, enterprise users cannot create snippets in their personal namespace.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/group/manage/#restrict-personal-snippets-for-enterprise-users">View Documentation</a></p>
  </li>
  <li>
    <strong>Rapid Diffs improves performance for commit changes</strong>
    <p><p>Reviewing commits with many changed files or substantial modifications can be slow.
Rapid Diffs technology now powers the commits page (<code>/-/commits/&lt;SHA&gt;</code>), delivering faster
loading times, smoother scrolling, and more responsive interactions.</p>
<p>With Rapid Diffs, you&rsquo;ll notice:</p>
<ul>
<li>A pagination-free experience.</li>
<li>Faster initial load, so you can start working with code sooner.</li>
<li>A refreshed interface with a new file browser for quicker navigation between files.</li>
<li>Responsive interactions, even with large numbers of changed files.</li>
</ul>
<p>All existing functionality is preserved. As Rapid Diffs expands to other areas of GitLab, the same performance benefits will follow.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/repository/commits/">View Documentation</a></p>
  </li>
  <li>
    <strong>Support for Bitbucket Cloud API tokens in import API</strong>
    <p><p>The GitLab import API now supports Bitbucket Cloud API tokens, providing a more secure way to
import repositories from Bitbucket Cloud.</p>
<p><a href="https://www.atlassian.com/blog/bitbucket/bitbucket-cloud-transitions-to-api-tokens-enhancing-security-with-app-password-deprecation">Atlassian has deprecated app passwords</a>
in favor of API tokens, and we&rsquo;re planning to remove support for app passwords in 19.0.</p>
<p>Importing from Bitbucket Cloud through the GitLab UI is not affected by this change.</p>
</p>
    <p><a href="https://docs.gitlab.com/api/import/#import-repository-from-bitbucket-cloud">View Documentation</a></p>
  </li>
  <li>
    <strong>Centralized security governance and configuration</strong>
    <p><p>Manage and visualize security scanner coverage across your organization. This release introduces security configuration profiles, starting with the secret detection profile.
Security teams now have a more powerful command center to secure your organization at scale.</p>
<p><strong>Profile-based security configuration</strong></p>
<p>Instead of manually editing YAML files for each project, you can now use preconfigured security configuration profiles that provide several advantages:</p>
<ul>
<li>Standardized governance: Preconfigured profiles apply appropriate boundaries without interrupting productivity. You can apply standardized security best practices, without requiring custom role configurations.</li>
<li>Scalable management: Apply the same profile across hundreds or thousands of projects with a single action.</li>
</ul>
<p>The secret detection profile is the first security configuration profile available. It provides the following advantages:</p>
<ul>
<li>Actively identifies and blocks secrets from being committed to your repositories.</li>
<li>One profile manages secret detection across your entire development workflow. No need to manage separate configurations for different trigger types.</li>
</ul>
<p><strong>Enhanced security inventory</strong></p>
<p>The security inventory has been upgraded to act as your primary dashboard to assess each group&rsquo;s security posture:</p>
<ul>
<li>Group and project hierarchies: Easily distinguish between subgroups and projects in the inventory with clear iconography.</li>
<li>Bulk actions: A new <strong>Bulk Action</strong> menu allows you to apply or disable security scanner profiles across all selected projects and subgroups simultaneously.</li>
<li>Visual coverage status: Quickly identify gaps with color-coded status bars (Enabled, Not Enabled, or Failed) with tooltips for details.</li>
<li>Profile status indicators: See which trigger types are available in the profile details.</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/configuration/security_configuration_profiles.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Security attributes</strong>
    <p><p>Security attributes, <a href="/releases/2025/11/20/gitlab-18-6-released/#security-attributes-beta">introduced as a beta in GitLab 18.6</a>, are now generally available.</p>
<p>Security attributes allow security teams to apply business context to their projects, including business impact, application, business unit, internet exposure, and location. You can also create custom attribute categories to match your organization&rsquo;s taxonomy. By applying these attributes, you can filter and prioritize the items in your security inventory based on risk posture and organizational context.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/attributes/">View Documentation</a></p>
  </li>
  <li>
    <strong>Security dashboards: Vulnerabilities over time chart improvements</strong>
    <p><p>The <strong>Vulnerabilities over time</strong> chart is updated to provide a more accurate view of your vulnerability inventory.</p>
<p>The chart previously included vulnerabilities that were no longer detected, leading to inflated numbers that did not accurately represent the state of active vulnerabilities.</p>
<p>We are aware of two additional issues that may slightly alter counts in some cases. Follow <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/590022">issue 590022</a> and <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/590018">issue 590018</a> for updates.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/security_dashboard/#vulnerabilities-over-time">View Documentation</a></p>
  </li>
  <li>
    <strong>View CI/CD job metrics for projects (limited availability)</strong>
    <p>GitLab CI/CD analytics now combines CI/CD pipeline and CI/CD job performance trends, which enables developers to identify
inefficient or problematic CI/CD jobs quickly. These capabilities are included directly in the GitLab UI, so developers
have the tools they need in context to identify and fix CI/CD performance problems that can significantly impact
development teams&rsquo; velocity and overall productivity. For platform administrators, the CI/CD jobs data in this view also
reduces the need to rely on external or custom-built CI/CD observability solutions when you operate GitLab at an enterprise
scale.</p>
    <p><a href="https://docs.gitlab.com/user/analytics/ci_cd_analytics/#cicd-job-performance-metrics">View Documentation</a></p>
  </li>
  <li>
    <strong>Add timestamps to CI job logs</strong>
    <p>You can now view timestamps on each CI job log line to identify performance bottlenecks and debug long-running jobs. Timestamps are displayed in UTC format. Use timestamps to troubleshoot performance issues, identify bottlenecks, and measure the duration of specific build steps. Requires GitLab Runner 18.7 or later for GitLab Self-Managed.</p>
    <p><a href="https://docs.gitlab.com/ci/jobs/job_logs/#timestamps">View Documentation</a></p>
  </li>
  <li>
    <strong>CI/CD Catalog component analytics</strong>
    <p>Previously, teams lacked visibility into how CI/CD Catalog component projects were being used across their organization. Now you can view usage counts and adoption patterns at a high level, helping you understand which component projects are most valuable and optimize your catalog investments.</p>
    <p><a href="https://docs.gitlab.com/ci/components/#view-catalog-resource-analytics">View Documentation</a></p>
  </li>
  <li>
    <strong>View security reports from child pipelines in merge requests</strong>
    <p><p>You can now view security and compliance reports from child pipelines directly in merge request widgets. Previously, you had to manually navigate through multiple pipelines to identify security issues, creating inefficient workflows especially with monorepos and complex testing setups.</p>
<p>With this enhancement, the merge request widget displays reports from child pipelines directly alongside parent pipeline results, with each child pipeline&rsquo;s reports presented individually and artifacts available for download. This provides a unified view of all security checks, significantly reducing time spent investigating failures and enables faster merge request reviews when using parent-child pipelines.</p>
</p>
    <p><a href="https://docs.gitlab.com/ci/pipelines/downstream_pipelines/#view-child-pipeline-reports-in-merge-requests">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab Patch Release: 18.8.4, 18.7.4, 18.6.6</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-8-4-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-8-4-released/</id><published>2026-02-10T00:00:00Z</published><updated>2026-02-10T00:00:00Z</updated><author><name>Félix Veillette-Potvin</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On February 10, 2026, we released versions 18.8.4, 18.7.4, 18.6.6 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, please visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring that all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. To maintain good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/2020/05/20/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, it means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-8-4-released/#cve-2025-7659---incomplete-validation-issue-in-web-ide-impacts-gitlab-ceee">Incomplete Validation issue in Web IDE impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-8-4-released/#cve-2025-8099---denial-of-service-issue-in-graphql-introspection-impacts-gitlab-ceee">Denial of Service issue in GraphQL introspection impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-8-4-released/#cve-2026-0958---denial-of-service-issue-in-json-validation-middleware-impacts-gitlab-ceee">Denial of Service issue in JSON validation middleware impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-8-4-released/#cve-2025-14560---cross-site-scripting-issue-in-code-flow-impacts-gitlab-ceee">Cross-site Scripting issue in Code Flow impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-8-4-released/#cve-2026-0595---html-injection-issue-in-test-case-titles-impacts-gitlab-ceee">HTML Injection issue in test case titles impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-8-4-released/#cve-2026-1458---denial-of-service-issue-in-markdown-processor-impacts-gitlab-ceee">Denial of Service issue in Markdown processor impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-8-4-released/#cve-2026-1456---denial-of-service-issue-in-markdown-preview-impacts-gitlab-ceee">Denial of Service issue in Markdown Preview impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-8-4-released/#cve-2026-1387---denial-of-service-issue-in-dashboard-impacts-gitlab-ee">Denial of Service issue in dashboard impacts GitLab EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-8-4-released/#cve-2025-12575---server-side-request-forgery-issue-in-virtual-registry-impacts-gitlab-ee">Server-Side Request Forgery issue in Virtual Registry impacts GitLab EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-8-4-released/#cve-2026-1094---improper-validation-issue-in-diff-parser-impacts-gitlab-ceee">Improper Validation issue in diff parser impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-8-4-released/#cve-2025-12073---server-side-request-forgery-issue-in-git-repository-import-impacts-gitlab-ceee">Server-Side Request Forgery issue in Git repository import impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-8-4-released/#cve-2026-1080---authorization-bypass-issue-in-iterations-api-impacts-gitlab-ee">Authorization Bypass issue in iterations API impacts GitLab EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-8-4-released/#cve-2025-14592---missing-authorization-issue-in-glql-api-impacts-gitlab-ceee">Missing Authorization issue in GLQL API impacts GitLab CE/EE</a></td>
          <td>Low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-8-4-released/#cve-2026-1282---stored-html-injection-issue-in-project-label-impacts-gitlab-ceee">Stored HTML Injection issue in project label impacts GitLab CE/EE</a></td>
          <td>Low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-8-4-released/#cve-2025-14594---authorization-bypass-issue-in-pipeline-schedules-api-impacts-gitlab-ceee">Authorization Bypass issue in Pipeline Schedules API impacts GitLab CE/EE</a></td>
          <td>Low</td>
      </tr>
  </tbody>
</table>
<h3 id="cve-2025-7659---incomplete-validation-issue-in-web-ide-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-7659">CVE-2025-7659</a> - Incomplete Validation issue in Web IDE impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an unauthenticated user to steal tokens and access private repositories by abusing incomplete validation in the Web IDE.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 18.2 before 18.6.6, 18.7 before 18.7.4, and 18.8 before 18.8.4 <br>
<strong>CVSS</strong> 8.0 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/cav0ur">cav0ur</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-8099---denial-of-service-issue-in-graphql-introspection-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-8099">CVE-2025-8099</a> - Denial of Service issue in GraphQL introspection impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that, under certain conditions, could have allowed an unauthenticated user to cause denial of service by sending repeated GraphQL queries.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 10.8 before 18.6.6, 18.7 before 18.7.4, and 18.8 before 18.8.4 <br>
<strong>CVSS</strong> 7.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/foxribeye">foxribeye</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2026-0958---denial-of-service-issue-in-json-validation-middleware-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-0958">CVE-2026-0958</a> - Denial of Service issue in JSON validation middleware impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an unauthenticated user to cause denial of service through memory or CPU exhaustion by bypassing JSON validation middleware limits.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 18.4 before 18.6.6, 18.7 before 18.7.4, and 18.8 before 18.8.4 <br>
<strong>CVSS</strong> 7.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/elbo7">elbo7</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-14560---cross-site-scripting-issue-in-code-flow-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-14560">CVE-2025-14560</a> - Cross-site Scripting issue in Code Flow impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that, under certain conditions could have allowed an authenticated user to perform unauthorized actions on behalf of another user by injecting content into vulnerability code flow.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 17.1 before 18.6.6, 18.7 before 18.7.4, and 18.8 before 18.8.4 <br>
<strong>CVSS</strong> 7.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> and <a href="https://hackerone.com/yvvdwf">yvvdwf</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2026-0595---html-injection-issue-in-test-case-titles-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-0595">CVE-2026-0595</a> - HTML Injection issue in test case titles impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that, under certain conditions, could have allowed an authenticated user to add unauthorized email addresses to user accounts through HTML injection in test case titles.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 13.9 before 18.6.6, 18.7 before 18.7.4, and 18.8 before 18.8.4 <br>
<strong>CVSS</strong> 7.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2026-1458---denial-of-service-issue-in-markdown-processor-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-1458">CVE-2026-1458</a> - Denial of Service issue in Markdown processor impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that, under certain conditions, could have allowed an unauthenticated user to cause denial of service by uploading specifically crafted files.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 8.0 before 18.6.6, 18.7 before 18.7.4, and 18.8 before 18.8.4 <br>
<strong>CVSS</strong> 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/maksyche">maksyche</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2026-1456---denial-of-service-issue-in-markdown-preview-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-1456">CVE-2026-1456</a> - Denial of Service issue in Markdown Preview impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an unauthenticated user to cause denial of service through CPU exhaustion by submitting specially crafted markdown files that trigger exponential processing in markdown preview.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 18.7 before 18.7.4, and 18.8 before 18.8.4 <br>
<strong>CVSS</strong> 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/maksyche">maksyche</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2026-1387---denial-of-service-issue-in-dashboard-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-1387">CVE-2026-1387</a> - Denial of Service issue in dashboard impacts GitLab EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to cause denial of service by uploading a specially crafted file to the dashboard and repeatedly sending GraphQL queries to parse it.</p>
<p><strong>Impacted Versions:</strong> GitLab EE: all versions from 15.6 before 18.6.6, 18.7 before 18.7.4, and 18.8 before 18.8.4 <br>
<strong>CVSS</strong> 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/a92847865">a92847865</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-12575---server-side-request-forgery-issue-in-virtual-registry-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-12575">CVE-2025-12575</a> - Server-Side Request Forgery issue in Virtual Registry impacts GitLab EE</h3>
<p>GitLab has remediated an issue that, under certain conditions, could have allowed an authenticated user with certain permissions to perform server-side request forgery against internal network services.</p>
<p><strong>Impacted Versions:</strong> GitLab EE: all versions from 18.0 before 18.6.6, 18.7 before 18.7.4, and 18.8 before 18.8.4 <br>
<strong>CVSS</strong> 5.4 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/go7f0qho">go7f0qho</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2026-1094---improper-validation-issue-in-diff-parser-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-1094">CVE-2026-1094</a> - Improper Validation issue in diff parser impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated developer to hide specially crafted file changes from the WebUI.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 18.8 before 18.8.4 <br>
<strong>CVSS</strong> 4.6 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/u3mur4">u3mur4</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-12073---server-side-request-forgery-issue-in-git-repository-import-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-12073">CVE-2025-12073</a> - Server-Side Request Forgery issue in Git repository import impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that, under certain conditions, could have allowed an authenticated user to perform server-side request forgery against internal services by bypassing protections in the Git repository import functionality.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 18.0 before 18.6.6, 18.7 before 18.7.4, and 18.8 before 18.8.4 <br>
<strong>CVSS</strong> 4.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/yunus0x">yunus0x</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2026-1080---authorization-bypass-issue-in-iterations-api-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-1080">CVE-2026-1080</a> - Authorization Bypass issue in iterations API impacts GitLab EE</h3>
<p>GitLab has remediated an issue that, under certain conditions, could have allowed an authenticated user to access iteration data from private descendant groups by querying the iterations API endpoint.</p>
<p><strong>Impacted Versions:</strong> GitLab EE: all versions from 16.7 before 18.6.6, 18.7 before 18.7.4, and 18.8 before 18.8.4 <br>
<strong>CVSS</strong> 4.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/go7f0">go7f0</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-14592---missing-authorization-issue-in-glql-api-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-14592">CVE-2025-14592</a> - Missing Authorization issue in GLQL API impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that, under certain conditions, could have allowed an authenticated user to perform unauthorized operations by submitting GraphQL mutations through the GLQL API endpoint.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 18.6 before 18.6.6, 18.7 before 18.7.4, and 18.8 before 18.8.4 <br>
<strong>CVSS</strong> 3.7 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/go7f0">go7f0</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2026-1282---stored-html-injection-issue-in-project-label-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-1282">CVE-2026-1282</a> - Stored HTML Injection issue in project label impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to inject content into project labels titles.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 18.6 before 18.6.6, 18.7 before 18.7.4, and 18.8 before 18.8.4 <br>
<strong>CVSS</strong> 3.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:L/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/rafabd1">rafabd1</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-14594---authorization-bypass-issue-in-pipeline-schedules-api-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-14594">CVE-2025-14594</a> - Authorization Bypass issue in Pipeline Schedules API impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that, under certain conditions, could have allowed an authenticated user to view certain pipeline values by querying the API.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 17.11 before 18.6.6, 18.7 before 18.7.4, and 18.8 before 18.8.4 <br>
<strong>CVSS</strong> 3.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/sndd">sndd</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1884">18.8.4</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2810">Backport dependency update golang/go to v1.24.12</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/221855">Backport of Fix project state getting out of sync when deletion fails</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/222004">Backport of &lsquo;Add migrations for missing merge_requests stage 2 indexes for bigint&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/221891">Backport-Group/Global search should not show code tab if no zoekt nodes are available &amp; advanced search is off</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/218753">[Backport 18.8] Exclude Git LFS paths from Git HTTP throttling</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/222075">Backport of Add REST endpoint for seeding external agents</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/222073">Backport of Update seeded third party flows descriptions</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/222257">Backport of Add seed external agents button to Admin &gt; GitLab Duo</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/222214">Backport of &lsquo;Fix Duo Enterprise add-on check to use seat assignment instead of namespace membership&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/222204">Backport of &lsquo;Add paidTierTrial to subscriptionUsage GraphQL API&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/222164">[Backport] Add preflight checks to resume_indexing rake task</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/221951">Backport: DAP onboarding UX</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/222354">Backport of &lsquo;Add usage billing paid tier trial card&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/222427">Backports &lsquo;Fixes duo chat visible if user does not have permission&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/222263">Backport of &lsquo;Fix Zoekt indexing by cleaning up replicas without indices&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/222504">Flip <code>dap_onboarding_empty_states</code> back off</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/222510">Disable credits page for SM in trial</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/222446">Backport of &lsquo;Update dependency gitlab-cloud-connector to 1.43.0&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9071">Backport Go 1.24.12 to 18-8-Stable</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9098">[18.8] Backport Mattermost Security Updates January 15, 2026</a></li>
</ul>
<h3 id="1874">18.7.4</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/219063">Backport of &lsquo;Fix: DAP enablement setting availability&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/222190">18.7 Backport of &lsquo;Fix PipelineSecurityReportFindings query timeout&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/222165">[Backport] Add preflight checks to resume_indexing rake task</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9099">[18.7] Backport Mattermost Security Updates January 15, 2026</a></li>
</ul>
<h3 id="1866">18.6.6</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/222189">18.6 Backport of &lsquo;Fix PipelineSecurityReportFindings query timeout&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/222166">[Backport] Add preflight checks to resume_indexing rake task</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9100">[18.6] Backport Mattermost Security Updates January 15, 2026</a></li>
</ul>
<h2 id="gitlab-ultimate-trials-updated-to-include-gitlab-duo-agent-platform">GitLab Ultimate trials updated to include GitLab Duo Agent Platform</h2>
<p>GitLab.com Ultimate trials now include evaluation credits for GitLab Duo Agent Platform. On GitLab.com, signing up for an Ultimate trial provides 24 evaluation credits per user for 30 days to exercise agentic AI capabilities such as autonomous task execution and multi‑step workflow orchestration. Self-managed customers should update to GitLab 18.9 upon release to get the best trial experience. GitLab.com free tier namespaces can start an Ultimate trial today.</p>
<p><a href="https://gitlab.com/-/trial_registrations/new">Start your free trial</a>. Current paid customers can request evaluation credits through their account team and begin technical setup ahead of the 18.9 release <a href="https://about.gitlab.com/sales/">contact Sales</a> to learn more.</p>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>This patch includes database migrations that may impact your upgrade process.</p>
<h3 id="impact-on-your-installation">Impact on your installation:</h3>
<ul>
<li><strong>Single-node instances</strong>: This patch will cause downtime during the upgrade as migrations must complete before GitLab can start.</li>
<li><strong>Multi-node instances</strong>: With proper <a href="https://docs.gitlab.com/ee/update/zero_downtime.html">zero-downtime upgrade procedures</a>, this patch can be applied without downtime.</li>
</ul>
<h3 id="post-deploy-migrations">Post-deploy migrations</h3>
<p>The following versions include post-deploy migrations that can run after the upgrade:</p>
<ul>
<li>18.8.4</li>
</ul>
<p>To learn more about the impact of upgrades on your installation, see:</p>
<ul>
<li><a href="https://docs.gitlab.com/ee/update/zero_downtime.html">Zero-downtime upgrades</a> for multi-node deployments</li>
<li><a href="https://docs.gitlab.com/update/package/#downtime">Standard upgrades</a> for single-node installations</li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update">Update page</a>.
To update GitLab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab AI Gateway Critical Patch Release: 18.6.2, 18.7.1, and 18.8.1</title><link href="https://docs.gitlab.com/releases/other-patches/patch-release-gitlab-ai-gateway-18-8-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/other-patches/patch-release-gitlab-ai-gateway-18-8-1-released/</id><published>2026-02-06T00:00:00Z</published><updated>2026-02-06T00:00:00Z</updated><author><name>Greg Myers</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<p>On February 6, 2026, we released versions 18.6.2, 18.7.1, and 18.8.1 of the GitLab AI Gateway.</p>
<p>These versions contain a critical security fix for GitLab Duo Self-Hosted AI Gateway, and we strongly recommend that all Self Managed customers with <a href="https://docs.gitlab.com/administration/gitlab_duo_self_hosted/">GitLab Duo Self-Hosted installations</a> update to one of these versions immediately.</p>
<p>A fix has already been deployed for the GitLab-hosted AI Gateway. Customers using GitLab.com, GitLab Dedicated, and GitLab Self Managed instances with GitLab-hosted AI Gateway are protected and do not need to take action.</p>
<h2 id="recommended-action">Recommended Action</h2>
<p>We strongly recommend that all GitLab Duo Self-Hosted installations running a version of self-hosted AI Gateway affected by the issue described below are upgraded to the latest version as soon as possible.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/other-patches/patch-release-gitlab-ai-gateway-18-8-1-released/#cve-2026-1868---insecure-template-expansion-issue-impacts-gitlab-ai-gateway">Insecure Template expansion issue impacts GitLab AI Gateway</a></td>
          <td>Critical</td>
      </tr>
  </tbody>
</table>
<h3 id="cve-2026-1868---insecure-template-expansion-issue-impacts-gitlab-ai-gateway">CVE-2026-1868 - Insecure Template expansion issue impacts GitLab AI Gateway</h3>
<p>The Duo Workflow Service component of GitLab AI Gateway before versions 18.6.2, 18.7.1, and 18.8.1 is vulnerable to insecure template expansion of user supplied data via crafted Duo Agent Platform Flow definitions. Authenticated access to the GitLab instance is required. This vulnerability could be used to cause Denial of Service or gain code execution on the Gateway.</p>
<p><strong>Impacted Versions:</strong> GitLab AI Gateway: all versions from 18.1.6, 18.2.6, and 18.3.1 before 18.6.2, 18.7.1, and 18.8.1 <br>
<strong>CVSS</strong> 9.9 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H</code></a>)</p>
<p>This vulnerability was discovered internally by GitLab team member <a href="https://gitlab.com/joernchen">Joern Schneeweisz</a>.</p>
<h2 id="updating">Updating</h2>
<p>To update GitLab Duo Self-Hosted, see the <a href="https://docs.gitlab.com/install/install_ai_gateway/">GitLab Duo Self-Hosted install documentation</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://about.gitlab.com/security-releases.xml">patch release RSS feed</a> or our <a href="https://about.gitlab.com/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 18.8.3, 18.7.3, 18.6.5</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-8-3-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-8-3-released/</id><published>2026-02-04T00:00:00Z</published><updated>2026-02-04T00:00:00Z</updated><author><name>Akinyele Cafe-Febrissy</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On February 4, 2026, we released versions 18.8.3, 18.7.3, and 18.6.5 for GitLab Community Edition and Enterprise Edition.</p>
<p>This patch release delivers a set of targeted fixes focused on reliability, entitlement handling, and feature-flag consistency across GitLab Duo Agent Platform deployments.</p>
<p>The updates reflect real-world usage across diverse environments and usage models, and are part of the normal hardening cycle for a platform that integrates deeply with GitLab workflows, identity, and usage controls. Core agent capabilities and behaviors are unchanged. This patch release does not include any security fixes.</p>
<h2 id="gitlab-community-edition-and-enterprise-edition">GitLab Community Edition and Enterprise Edition</h2>
<h3 id="1883">18.8.3</h3>
<!--  DAP Fixes (reason for this out-of-band release) -->
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/219349">Backport of &lsquo;Pass user id to workflow service&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/219447">Backport of &lsquo;Unlock Duo Workflow foundational flows from experimental features&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/220816">Backport of &lsquo;Unlock Duo Workflow foundational flows from experimental features&rsquo;</a></li>
</ul>
<!-- Other bug fixes -->
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/219609">Backport of &lsquo;Fix enforced_scans sync with inject_policy&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/219758">Backport of &ldquo;Open service desk issues and tickets on boards in legacy view instead of drawer&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/219750">Backport of &ldquo;Add info on UI for new Ticket work item type&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/219728">[Backport]Fix missing Open the file to view all results&rsquo; link in Zoekt</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/219997">Refactor Redis TLS options parsing to fix ActionCable configuration</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/219584">Backport of &lsquo;Fix route constraint for Credits dashboards&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/219717">Backport of &lsquo;Fix Zoekt filter order to avoid performance regression&rsquo; to 18.8</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/220116">Backport: Allow to better debug initialize connection</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/220133">Backport of &lsquo;Integrate work items into chat notifications as issue events&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/220160">Backport of &ldquo;Fixes preserving external author on work item move and clone&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/220830">[Backport] Remove search api preload for commits scope</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/220931">Backport of &ldquo;Regenerate openapi docs&rdquo;</a></li>
</ul>
<h3 id="1873">18.7.3</h3>
<!-- DAP Fixes -->
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/218510">Backport of &lsquo;Add FF to toggle namespace filtering for Duo Chat data&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/219831">Backport of &lsquo;Remove duo_workflow_in_ci Feature Flag&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/219877">Backport of &lsquo;Remove duo_workflow Feature Flag&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/219985">Backport of &lsquo;Pass user id to workflow service&rsquo;</a></li>
</ul>
<!-- Other bug fixes -->
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/219618">Backport of &lsquo;Fix enforced_scans sync with inject_policy&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/219719">Backport of &lsquo;Fix Zoekt filter order to avoid performance regression&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/220831">[Backport] Remove search api preload for commits scope</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/220694">[18.7] Only check optional ActionCable Redis instance if necessary</a></li>
</ul>
<h3 id="1865">18.6.5</h3>
<!-- DAP Fixes -->
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/219978">Backport of &lsquo;Pass user id to workflow service&rsquo;</a></li>
</ul>
<!-- Other bug fixes -->
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/219691">Fix MergeRequestDiff.verifiables scope</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>This version does not include any new migrations, and for multi-node deployments, <a href="https://docs.gitlab.com/ee/update/#upgrading-without-downtime">should not require any downtime</a>.</p>
<p>Please be aware that by default the Omnibus packages will stop, run migrations,
and start again, no matter how “big” or “small” the upgrade is. This behavior
can be changed by adding a <a href="https://docs.gitlab.com/ee/update/zero_downtime.html"><code>/etc/gitlab/skip-auto-reconfigure</code></a> file,
which is only used for <a href="https://docs.gitlab.com/omnibus/update/README.html">updates</a>.</p>
<h2 id="updating">Updating</h2>
<p>To update, check out our <a href="https://about.gitlab.com/update/">update page</a>.</p>
<h2 id="gitlab-subscriptions">GitLab subscriptions</h2>
<p>Access to GitLab Premium and Ultimate features is granted by a paid <a href="https://about.gitlab.com/pricing/">subscription</a>.</p>
<p>Alternatively, <a href="https://gitlab.com/users/sign_in">sign up for GitLab.com</a>
to use GitLab&rsquo;s own infrastructure.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 18.8.2, 18.7.2, 18.6.4</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-8-2-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-8-2-released/</id><published>2026-01-21T00:00:00Z</published><updated>2026-01-21T00:00:00Z</updated><author><name>Félix Veillette-Potvin</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On January 21, 2026, we released versions 18.8.2, 18.7.2, 18.6.4 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, please visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring that all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. To maintain good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/2020/05/20/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, it means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-8-2-released/#cve-2025-13927---denial-of-service-issue-in-jira-connect-integration-impacts-gitlab-ceee">Denial of Service issue in in Jira Connect integration impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-8-2-released/#cve-2025-13928---incorrect-authorization-issue-in-releases-api-impacts-gitlab-ceee">Incorrect Authorization issue in Releases API impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-8-2-released/#cve-2026-0723---unchecked-return-value-issue-in-authentication-services-impacts-gitlab-ceee">Unchecked Return Value issue in authentication services impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-8-2-released/#cve-2025-13335---infinite-loop-issue-in-wiki-redirects-impacts-gitlab-ceee">Infinite Loop issue in Wiki redirects impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-8-2-released/#cve-2026-1102---denial-of-service-issue-in-api-endpoint-impacts-gitlab-ceee">Denial of Service issue in API endpoint impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
  </tbody>
</table>
<h3 id="cve-2025-13927---denial-of-service-issue-in-jira-connect-integration-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-13927">CVE-2025-13927</a> - Denial of Service issue in Jira Connect integration impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an unauthenticated user to create a denial of service condition by sending crafted requests with malformed authentication data.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 11.9 before 18.6.4, 18.7 before 18.7.2, and 18.8 before 18.8.2 <br>
<strong>CVSS</strong> 7.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/a92847865">a92847865</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-13928---incorrect-authorization-issue-in-releases-api-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-13928">CVE-2025-13928</a> - Incorrect Authorization issue in Releases API impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an unauthenticated user to cause a denial of service condition by exploiting incorrect authorization validation in API endpoints.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 17.7 before 18.6.4, 18.7 before 18.7.2, and 18.8 before 18.8.2 <br>
<strong>CVSS</strong> 7.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/a92847865">a92847865</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2026-0723---unchecked-return-value-issue-in-authentication-services-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-0723">CVE-2026-0723</a> - Unchecked Return Value issue in authentication services impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an individual with existing knowledge of a victim&rsquo;s credential ID to bypass two-factor authentication by submitting forged device responses.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 18.6 before 18.6.4, 18.7 before 18.7.2, and 18.8 before 18.8.2 <br>
<strong>CVSS</strong> 7.4 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/ahacker1">ahacker1</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-13335---infinite-loop-issue-in-wiki-redirects-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-13335">CVE-2025-13335</a> - Infinite Loop issue in Wiki redirects impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that under certain circumstances could have allowed an authenticated user to create a denial of service condition by configuring malformed Wiki documents that bypass cycle detection.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 17.1 before 18.6.4, 18.7 before 18.7.2, and 18.8 before 18.8.2 <br>
<strong>CVSS</strong> 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/sim4n6">sim4n6</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2026-1102---denial-of-service-issue-in-api-endpoint-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2026-1102">CVE-2026-1102</a> - Denial of Service issue in API endpoint impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an unauthenticated user to create a denial of service condition by sending repeated malformed SSH authentication requests.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 12.3 before 18.6.4, 18.7 before 18.7.2, and 18.8 before 18.8.2 <br>
<strong>CVSS</strong> 5.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L</code></a>)</p>
<p>This vulnerability has been discovered internally by GitLab team member <a href="https://gitlab.com/thiagocsf">Thiago Figueiró</a>.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1882">18.8.2</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/219214">Backport of <code>Make external agent configurations GA</code></a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/219155">Backport Remove GitLab Dedicated support for semantic search until it&rsquo;s available</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/219235">Backport of &lsquo;18.8.0: Merge Request reviewer dropdown crashes and does not send request&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/219349">Backport of &lsquo;Pass user id to workflow service&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/219380">Backport of rake task to seed AI Catalogs with external agents</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/219447">Backport of <code>Separate policy logic for AI Catalog Flows and Foundational Flows</code></a></li>
</ul>
<h3 id="1872">18.7.2</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/216906">Backport of <code>Fix logic for fetching occurrences related to vulnerabilties</code></a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/217917">Backport of &ldquo;Removes feature flag enablement for svc accounts&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/217509">Backport of flaky import spec quarantine</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/217840">Backport 18.7 - Fix searchable dropdown race condition when typing fast</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/218037">Backport of <code>Recreate p_sent_notifications.reply_key index</code></a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/217768">Fix container_repositories index repair to handle 1-to-1 relationship</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/218128">[18.7] Fix migration health check endpoint</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/218571">Backport of &lsquo;Fix soft wrap not working due to accessibilitySupport conflict&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/217993">Backport of &lsquo;Fix git push error for remote flows in self-managed instances&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/218752">[Backport 18.7] Exclude Git LFS paths from Git HTTP throttling</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/218940">Backport of <code>Correct Code Review Flow history for beta</code></a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/218683">Backport of &lsquo;Fix Duo Chat button visibility for Amazon Q&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/218904">Backport Allow user namespaces to be indexed in Zoekt for self-managed</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/219407">Backport of &lsquo;Disable Sidekiq retries for ClickHouse pipeline/build sync workers&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/219445">Backport of &lsquo;Disable async_insert in build and pipeline sync operations&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8986">18.7 - Remove manual from SLES-12.5-release-pulp job</a></li>
</ul>
<h3 id="1864">18.6.4</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/217919">Backport of &ldquo;Removes feature flag enablement for svc accounts&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/217510">Backport of flaky import spec quarantine</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/217841">Backport 18.6 - Fix searchable dropdown race condition when typing fast</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/217769">Fix container_repositories index repair to handle 1-to-1 relationship</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/218625">Backport of &lsquo;Fix soft wrap not working due to accessibilitySupport conflict&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/218021">Backport of &lsquo;Fix git push error for remote flows in self-managed instances&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/218750">[Backport 18.6] Exclude Git LFS paths from Git HTTP throttling</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/218907">Backport-Allow user namespaces to be indexed in Zoekt for self-managed</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/219406">Backport of &lsquo;Disable Sidekiq retries for ClickHouse pipeline/build sync workers&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/219444">Backport of &lsquo;Disable async_insert in build and pipeline sync operations&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8987">18.6 - Remove manual from SLES-12.5-release-pulp job</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/9019">Start Pulp FIPS jobs after PC FIPS jobs - 18.6</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8974">[CI] Fix the builder image tags for the check-packages jobs 18-6</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>This patch includes database migrations that may impact your upgrade process.</p>
<h3 id="impact-on-your-installation">Impact on your installation:</h3>
<ul>
<li><strong>Single-node instances</strong>: This patch will cause downtime during the upgrade as migrations must complete before GitLab can start.</li>
<li><strong>Multi-node instances</strong>: With proper <a href="https://docs.gitlab.com/ee/update/zero_downtime.html">zero-downtime upgrade procedures</a>, this patch can be applied without downtime.</li>
</ul>
<h3 id="post-deploy-migrations">Post-deploy migrations</h3>
<p>The following versions include post-deploy migrations that can run after the upgrade:</p>
<ul>
<li>18.7.2</li>
</ul>
<p>To learn more about the impact of upgrades on your installation, see:</p>
<ul>
<li><a href="https://docs.gitlab.com/ee/update/zero_downtime.html">Zero-downtime upgrades</a> for multi-node deployments</li>
<li><a href="https://docs.gitlab.com/update/package/#downtime">Standard upgrades</a> for single-node installations</li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">Update page</a>.
To update GitLab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 18.8.1</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-8-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-8-1-released/</id><published>2026-01-19T00:00:00Z</published><updated>2026-01-19T00:00:00Z</updated><author><name>Akinyele Cafe-Febrissy</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On January 19, 2026, we released versions 18.8.1 for GitLab Community Edition and Enterprise Edition.</p>
<p>These versions resolve a number of regressions and bugs. This patch release does not include any security fixes.</p>
<h2 id="gitlab-community-edition-and-enterprise-edition">GitLab Community Edition and Enterprise Edition</h2>
<h3 id="1881">18.8.1</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/218867">Backport: Release AI Catalog External Agents</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/218815">Backport of &lsquo;Fix summarize review prompt version for DAP Duo Code Review&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/218920">Backport of Disallow creation of new external agents</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/218850">Backport of <code>Correct Code Review Flow history for beta</code></a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/218899">Backport of &lsquo;Fix incorrectly shown limited experience alert on pipeline security tab&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/218682">Backport of &lsquo;Fix Duo Chat button visibility for Amazon Q&rsquo;</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>This version does not include any new migrations, and for multi-node deployments, <a href="https://docs.gitlab.com/ee/update/#upgrading-without-downtime">should not require any downtime</a>.</p>
<p>Please be aware that by default the Omnibus packages will stop, run migrations,
and start again, no matter how “big” or “small” the upgrade is. This behavior
can be changed by adding a <a href="https://docs.gitlab.com/ee/update/zero_downtime.html"><code>/etc/gitlab/skip-auto-reconfigure</code></a> file,
which is only used for <a href="https://docs.gitlab.com/omnibus/update/README.html">updates</a>.</p>
<h2 id="updating">Updating</h2>
<p>To update, check out our <a href="https://about.gitlab.com/update/">update page</a>.</p>
<h2 id="gitlab-subscriptions">GitLab subscriptions</h2>
<p>Access to GitLab Premium and Ultimate features is granted by a paid <a href="https://about.gitlab.com/pricing/">subscription</a>.</p>
<p>Alternatively, <a href="https://gitlab.com/users/sign_in">sign up for GitLab.com</a>
to use GitLab&rsquo;s own infrastructure.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab 18.8 released</title><link href="https://docs.gitlab.com/releases/18/18-8-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/18/18-8-released/</id><published>2026-01-15T00:00:00Z</published><updated>2026-01-15T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On January 15, 2026, GitLab 18.8 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong>Wesley Yarde</strong>
</p>
<p>This month&rsquo;s Notable Contributor is <a href="https://gitlab.com/WYarde">Wesley Yarde</a> for building a foundational new feature that allows organizations to disable SSH keys for their enterprise users.</p>
<p>Wesley&rsquo;s contribution stands out for several reasons:</p>
<ul>
<li><strong>Security and compliance</strong>: This feature enables organizations to enforce SSH key requirements and enhance security across their enterprise.</li>
<li><strong>Foundational work</strong>: With no existing implementation to follow, Wesley had to collaborate extensively with the GitLab team to define requirements and architecture from scratch.</li>
<li><strong>First contribution</strong>: Remarkably, this was Wesley&rsquo;s first contribution to GitLab—demonstrating exceptional ability to navigate a complex codebase and tackle a challenging feature.</li>
<li><strong>Enables future development</strong>: This work establishes the foundation for similar features like instance-level SSH key disabling and service account controls.</li>
</ul>
<p>The implementation spanned multiple merge requests (<a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205020">!205020</a>, <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/210482">!210482</a>) with thorough review cycles. Despite the complexity, Wesley demonstrated outstanding collaboration and patience throughout the process.</p>
<p>&ldquo;It was a pleasure to collaborate with Wesley on this feature request! While both the contributor and reviewers may have felt that the review process was overwhelming, both sides showed understanding and superb collaboration to ensure the implementation is solid and complete.&rdquo; — <a href="https://gitlab.com/bdenkovych">Bogdan Denkovych</a>, who nominated Wesley for this recognition.</p>
<p>Congratulations Wesley, and thank you for this valuable contribution to GitLab!</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>GitLab Duo Agent Platform now generally available</strong>
    <p><p>GitLab Duo Agent Platform is now generally available, bringing agentic AI orchestration
across your entire software development lifecycle. Unlike AI tools that speed up individual
tasks in isolation, the Agent Platform helps teams coordinate AI agents across
planning, building, securing, and shipping software, closing the gap between faster
individual work and the collaborative, multi-stage reality of software delivery.</p>
<p>The platform provides a central AI Catalog where teams can discover, manage, and share
agents and flows across their organization. Built-in foundational agents like Planner, Security Analyst,
and Data Analyst handle structured work at key decision points, while customizable flows
automate multi-step agents and tasks in development workflows
from issue to merge request, CI/CD migration, pipeline
troubleshooting, and code reviews.</p>
<p>With governance controls, usage visibility, and flexible deployment options including
self-hosted models for offline environments, organizations can adopt AI at scale with
the transparency and control they need.</p>
<p>GitLab Premium and Ultimate users can start using the Agent Platform today on GitLab.com and
GitLab Self-Managed instances with promotional <a href="https://docs.gitlab.com/subscriptions/gitlab_credits/">GitLab Credits</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/duo_agent_platform/">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Duo Planner Agent now generally available</strong>
    <p><p>The Planner Agent is now generally available! The Planner Agent is a foundational agent built to support product managers directly in GitLab.</p>
<p>Use the Planner Agent to create, edit, and analyze GitLab work items. Instead of manually chasing updates, prioritizing work, or summarizing planning data, the Planner Agent helps you analyze backlogs, apply frameworks like RICE or MoSCoW, and surface what truly needs your attention. It&rsquo;s like having a proactive teammate who understands your planning workflow and works with you to make better, more efficient decisions.</p>
<p>Please provide your feedback in <a href="https://gitlab.com/gitlab-org/gitlab/-/work_items/583008">issue 583008</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/duo_agent_platform/agents/foundational_agents/planner/">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Duo Security Analyst Agent now generally available</strong>
    <p><p>The GitLab Duo Security Analyst Agent, <a href="https://about.gitlab.com/releases/2025/10/16/gitlab-18-5-released/#gitlab-security-analyst-agent-for-duo-agent-catalog-beta">introduced as beta in GitLab 18.5</a>, is now generally available in GitLab 18.8.</p>
<p>The Security Analyst Agent enables engineers to manage vulnerabilities through natural language commands in GitLab Duo Agentic Chat. Instead of manually clicking through vulnerability dashboards or writing custom scripts for bulk operations, security teams can now triage, assess, and provide guidance for vulnerabilities in Chat conversations.</p>
<p>As a foundational agent, the Security Analyst Agent is available by default in GitLab Duo Agentic Chat, with no manual setup required.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/duo_agent_platform/agents/foundational_agents/security_analyst_agent/">View Documentation</a></p>
  </li>
  <li>
    <strong>Auto-dismiss irrelevant vulnerabilities with vulnerability management policies</strong>
    <p><p>Security teams can now automatically dismiss vulnerabilities that don&rsquo;t apply to their organization using vulnerability management policies. Dismissing vulnerabilities that are not relevant to your organization reduces noise and helps developers focus on vulnerabilities that pose actual risk.</p>
<p>You can create policies to auto-dismiss vulnerabilities based on:</p>
<ul>
<li>File path</li>
<li>Directory</li>
<li>Identifier (CVE, CWE, or OWASP)</li>
</ul>
<p>Auto-dismissed vulnerabilities appear in the merge request&rsquo;s security widget with an <strong>Auto-dismissed</strong> label and are tracked in the vulnerability report activity with a dismissal reason for audit purposes.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/policies/vulnerability_management_policy/#auto-dismiss-policies">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Agentic Core</h4>
<ul>
  <li>
    <strong>Turn the GitLab Duo Agent Platform on or off</strong>
    <p>You can now turn on or off the <a href="https://docs.gitlab.com/user/duo_agent_platform/">GitLab Duo Agent Platform</a>, including GitLab Duo Chat (Agentic), agents, and flows for a top-level group or the entire instance. When this setting is turned off, these features are not available.</p>
    <p><a href="https://docs.gitlab.com/user/gitlab_duo/turn_on_off/#turn-gitlab-duo-agent-platform-on-or-off">View Documentation</a></p>
  </li>
  <li>
    <strong>Group access control for GitLab Duo features</strong>
    <p><p>You can now define group access rules to control who can use GitLab Duo features, enabling flexible adoption strategies from immediate organization-wide access to phased rollouts.</p>
<p>This feature provides granular governance control so you can scale adoption at your pace while maintaining security and compliance.</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/gitlab_duo/configure/access_control/">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Duo Agent Platform for GitLab Duo Self-Hosted (offline licensing) now generally available</strong>
    <p><p>GitLab Duo Agent Platform is now generally available for Duo Self-Hosted. This feature is available to GitLab Self-Managed customers with an offline license, and uses seat-based pricing.</p>
<p>Self-Managed administrators can configure <a href="https://docs.gitlab.com/administration/gitlab_duo_self_hosted/supported_models_and_hardware_requirements/#compatible-models">compatible models</a> for use with GitLab Duo Agent Platform. Administrators using AWS Bedrock or Azure OpenAI can also configure Anthropic Claude or OpenAI GPT models.</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/gitlab_duo_self_hosted/configure_duo_features/#configure-access-to-the-gitlab-duo-agent-platform">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>C/C&#43;&#43; support in Advanced SAST now generally available</strong>
    <p>Cross-file, cross-function scanning support for C/C++ is now generally available in GitLab Advanced SAST.</p>
    <p><a href="https://docs.gitlab.com/user/application_security/sast/advanced_sast_cpp/">View Documentation</a></p>
  </li>
  <li>
    <strong>Multiple Container Scanning</strong>
    <p><p>In GitLab 18.8, we released multi-container scanning in Beta.</p>
<p>Users are now able to pass in an array of images to be scanned as part of many Container Scanning jobs.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/container_scanning/multi_container_scanning/">View Documentation</a></p>
  </li>
  <li>
    <strong>Centralized credential management API for group owners</strong>
    <p><p>The Credentials Inventory API is now available for Enterprise users on GitLab.com. This adds credential management capabilities previously only available on self-hosted instances, and enables organizations to better manage and secure their authentication tokens and keys.</p>
<p>The Credentials Inventory API provides programmatic access to view credentials across your organization, including:</p>
<ul>
<li>Personal Access Tokens (PATs)</li>
<li>Group Access Tokens (GrATs)</li>
<li>Project Access Tokens (PrATs)</li>
<li>SSH Keys</li>
<li>GPG Keys</li>
</ul>
<p>This API complements the existing Credentials Inventory UI, allowing enterprise administrators to automate credential management tasks that previously required manual intervention. With the Credentials Inventory API, you can:</p>
<ul>
<li>Automate security workflows: Build automated processes to monitor, audit, and revoke credentials.</li>
<li>Enforce credential policies: Identify and revoke unused or expired tokens.</li>
<li>Improve security posture: Reduce the risk of credential misuse through regular auditing.</li>
<li>Streamline operations: Integrate credential management into your existing security tools and workflows.</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/api/groups#credentials-inventory-management">View Documentation</a></p>
  </li>
  <li>
    <strong>Group Owners can disable SSH keys for enterprise users</strong>
    <p><p>Group Owners can now disable SSH keys for all enterprise users in their group. When disabled, users cannot add new SSH keys and their existing keys are deactivated. This applies to all enterprise users in the group, including those with the Owner role.</p>
<p>Thank you to <a href="https://gitlab.com/WYarde">Wesley Yarde</a> for helping build this feature!</p>
</p>
    <p><a href="https://docs.gitlab.com/user/ssh_advanced/#disable-ssh-keys-for-enterprise-users">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner 18.8</strong>
    <p><p>We&rsquo;re also releasing GitLab Runner 18.8 today! GitLab Runner is the highly-scalable build agent that runs your CI/CD jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.</p>
<h4 id="whats-new">What&rsquo;s New:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/work_items/39163">Improved error messages for job inputs interpolation errors</a></li>
</ul>
<h4 id="bug-fixes">Bug Fixes:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/work_items/39172"><code>WaitForServicesTimeout</code> no longer supports <code>-1</code> to disable timeout</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/work_items/39170">Custom URL breaks submodule authentication with <code>insteadOf</code> rules</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/work_items/39122">Custom runner short-token on Windows 2025 uses 9 characters instead 8</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/work_items/38669">PowerShell default helper image missing for Docker executor in GitLab Runner 17.8.3</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/work_items/37906">GitLab Runner with Docker Autoscaler does not reuse available cache volumes</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/work_items/37344">VirtualBox leaves dangling VM when job is cancelled</a></li>
</ul>
<p>The list of all changes is in the GitLab Runner <a href="https://gitlab.com/gitlab-org/gitlab-runner/blob/18-8-stable/CHANGELOG.md">CHANGELOG</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/runner">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab Patch Release: 18.7.1, 18.6.3, 18.5.5</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-7-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-7-1-released/</id><published>2026-01-07T00:00:00Z</published><updated>2026-01-07T00:00:00Z</updated><author><name>Katherine Wu</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On January 7, 2026, we released versions 18.7.1, 18.6.3, 18.5.5 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, please visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring that all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. To maintain good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/2020/05/20/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, it means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-7-1-released/#cve-2025-9222---stored-cross-site-scripting-issue-in-gitlab-flavored-markdown-placeholders-impacts-gitlab-ceee">Stored Cross-site Scripting issue in GitLab Flavored Markdown placeholders impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-7-1-released/#cve-2025-13761---cross-site-scripting-issue-in-web-ide-impacts-gitlab-ceee">Cross-site scripting issue in Web IDE impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-7-1-released/#cve-2025-13772---missing-authorization-issue-in-duo-workflows-api-impacts-gitlab-ee">Missing Authorization issue in Duo Workflows API impacts GitLab EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-7-1-released/#cve-2025-10569---denial-of-service-issue-in-import-functionality-impacts-gitlab-ceee">Denial of Service issue in import functionality impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-7-1-released/#cve-2025-13781---missing-authorization-issue-in-ai-graphql-mutation-impacts-gitlab-ee">Missing Authorization issue in AI GraphQL mutation impacts GitLab EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-7-1-released/#cve-2025-11246---insufficient-access-control-granularity-issue-in-graphql-runnerupdate-mutation-impacts-gitlab-ceee">Insufficient Access Control Granularity issue in GraphQL runnerUpdate mutation impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-7-1-released/#cve-2025-3950---information-disclosure-issue-in-mermaid-diagram-rendering-impacts-gitlab-ceee">Information Disclosure issue in Mermaid diagram rendering impacts GitLab CE/EE</a></td>
          <td>Low</td>
      </tr>
  </tbody>
</table>
<h3 id="cve-2025-9222---stored-cross-site-scripting-issue-in-gitlab-flavored-markdown-placeholders-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-9222">CVE-2025-9222</a> - Stored Cross-site Scripting issue in GitLab Flavored Markdown placeholders impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to achieve stored cross-site scripting by exploiting GitLab Flavored Markdown placeholder processing.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 18.2.2 before 18.5.5, 18.6 before 18.6.3, and 18.7 before 18.7.1 <br>
<strong>CVSS</strong> 8.7 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/yvvdwf">yvvdwf</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-13761---cross-site-scripting-issue-in-web-ide-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-13761">CVE-2025-13761</a> - Cross-site Scripting issue in Web IDE impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an unauthenticated user to execute arbitrary code in the context of an authenticated user&rsquo;s browser by convincing the legitimate user to visit a specially crafted webpage.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 18.6 before 18.6.3, and 18.7 before 18.7.1 <br>
<strong>CVSS</strong> 8.0 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-13772---missing-authorization-issue-in-duo-workflows-api-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-13772">CVE-2025-13772</a> - Missing Authorization issue in Duo Workflows API impacts GitLab EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to access and utilize AI model settings from unauthorized namespaces by manipulating namespace identifiers in API requests.</p>
<p><strong>Impacted Versions:</strong> GitLab EE: all versions from 18.4 before 18.5.5, 18.6 before 18.6.3, and 18.7 before 18.7.1 <br>
<strong>CVSS</strong> 7.1 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:N</code></a>)</p>
<p>This vulnerability has been discovered internally by GitLab team member <a href="https://gitlab.com/jessieay">Jessie Young</a>.</p>
<h3 id="cve-2025-13781---missing-authorization-issue-in-ai-graphql-mutation-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-13781">CVE-2025-13781</a> - Missing Authorization issue in AI GraphQL mutation impacts GitLab EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to modify instance-wide AI feature provider settings by exploiting missing authorization checks in GraphQL mutations.</p>
<p><strong>Impacted Versions:</strong> GitLab EE: all versions from 18.5 before 18.5.5, 18.6 before 18.6.3, and 18.7 before 18.7.1 <br>
<strong>CVSS</strong> 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/pwnie">pwnie</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-10569---denial-of-service-issue-in-import-functionality-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-10569">CVE-2025-10569</a> - Denial of Service issue in import functionality impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed authenticated users to create a denial of service condition by providing crafted responses to external API calls.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 8.3 before 18.5.5, 18.6 before 18.6.3, and 18.7 before 18.7.1 <br>
<strong>CVSS</strong> 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/a92847865">a92847865</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-11246---insufficient-access-control-granularity-issue-in-graphql-runnerupdate-mutation-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-11246">CVE-2025-11246</a> - Insufficient Access Control Granularity issue in GraphQL runnerUpdate mutation impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed authenticated users with specific permissions to remove all project runners from unrelated projects by manipulating GraphQL runner associations.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 15.4 before 18.5.5, 18.6 before 18.6.3, and 18.7 before 18.7.1 <br>
<strong>CVSS</strong> 5.4 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:L"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:L</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/pwnie">pwnie</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-3950---information-disclosure-issue-in-mermaid-diagram-rendering-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-3950">CVE-2025-3950</a> - Information Disclosure issue in Mermaid diagram rendering impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed a user to leak sensitive connection information by referencing specially crafted images that bypass asset proxy protection.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 10.3 before 18.5.5, 18.6 before 18.6.3, and 18.7 before 18.7.1 <br>
<strong>CVSS</strong> 3.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/rogerace">rogerace</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="update-libpng-version-to-1651">Update Libpng version to 1.6.51</h3>
<p>Libpng has been updated to version 1.6.51, which contains fixes for security vulnerabilities including CVE-2025-65018 and CVE-2025-64720.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1871">18.7.1</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/216968">Backport of &lsquo;Revert Merge branch &lsquo;582543-opinionated-duo-chat-focus&rsquo; into &lsquo;master&rsquo;&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/217083">Backport of Add CI builds metadata migration configuration to 18.7 upgrade notes</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/216989">Backport of &ldquo;Don&rsquo;t try to return connections to the pool early in a web request&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/217225">Backport of &ldquo;Clear the query cache when releasing load balancing hosts&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/217116">Backport &ldquo;Fix version-skipping upgrade blocker for namespace traversal IDs backfill&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/217361">Backport of &lsquo;Fix Elasticsearch pagination with null sortable field values&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/217079">[Backport 18.7] No-op BackfillSlackIntegrationsScopesShardingKey BBM</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/217094">Backport of &lsquo;Wrap merge_data &amp; merge_request into single transaction&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/217253">Backport of &lsquo;Resolve GraphQL type mismatch in Cleanup policy type&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/security/gitlab/-/merge_requests/5633">Backport of &lsquo;Fix 404 errors for Duo Workflow WS connection&rsquo;</a></li>
</ul>
<h3 id="1863">18.6.3</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/8340">Log truncation to 18-6 stable branch</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/215810">Backport of &lsquo;Add status filter argument to work items CSV export&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/215588">Backport &rsquo;tskorupa/fix-check_e82ff70482-constraint-validation&rsquo; into &lsquo;18-6-stable-ee&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/215357">Backport of Add pipeline_per_user rate limit</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/215748">Backport of Dependency export fix</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/215869">18.6 Backport: &ldquo;Add type handling for findings with locations saved as Strings&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/215732">Backport: Improve handling of attachment urls and filenames, fix undercoverage 18-6</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/216082">Backport of Fix content and content-type mismatch in files e2e test</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/213644">[Backport 18.6] Exclude Git HTTP requests from authenticated web throttle</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/215937">Backport &ldquo;Fix Classic Duo Chat UI is stuck&rdquo; into 18.6-stable-ee</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/216333">Backport of: Handle updated Jira API calls to permit Jira issue imports again</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/216348">Backport of Fix scan execution policy overriding YAML variables</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/216440">Backport (18.6): Update dependency @gitlab/web-ide to ^0.0.1-dev-20251210140521</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/216563">Backport of &lsquo;Workhorse: use upstream for DWS API requests&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/216777">Backport &lsquo;Allow ClickHouse migrations to be skipped&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/217127">Backport &ldquo;Fix version-skipping upgrade blocker for namespace traversal IDs backfill&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/217365">Backport of &lsquo;Fix Elasticsearch pagination with null sortable field values&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8968">[18.6] Backport Mattermost Security Updates November 21, 2025</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8946">[Backport - 18-6-stable] Disable allow_failure for the check-packages-functionality job in the tag pipelines</a></li>
<li><a href="https://gitlab.com/gitlab-org/security/gitlab/-/merge_requests/5631">Backport of &lsquo;Fix 404 errors for Duo Workflow WS connection&rsquo;</a></li>
</ul>
<h3 id="1855">18.5.5</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/215728">Backport: Improve handling of attachment urls and filenames, fix undercoverage 18-5</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/215199">Backport of &lsquo;Handle 429s during github LFS import&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/215788">Backport of Dependency export fix</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/215892">Backport of &lsquo;Add status filter argument to work items CSV export&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/215868">18.5 Backport: &ldquo;Add type handling for findings with locations saved as Strings&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/216081">Backport of Fix content and content-type mismatch in files e2e test</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/213641">[Backport 18.5] Exclude Git HTTP requests from authenticated web throttle</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/216334">Backport of: Handle updated Jira API calls to permit Jira issue imports again</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/216441">Backport(18.5): Update dependency @gitlab/web-ide to ^0.0.1-dev-20251210140521</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/216575">Backport of &lsquo;Workhorse: use upstream for DWS API requests&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8947">[Backport - 18-5-stable] Disable allow_failure for the check-packages-functionality job in the tag pipelines</a></li>
<li><a href="https://gitlab.com/gitlab-org/security/gitlab/-/merge_requests/5632">Backport of &lsquo;Fix 404 errors for Duo Workflow WS connection&rsquo;</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>This patch includes database migrations that may impact your upgrade process.</p>
<h3 id="impact-on-your-installation">Impact on your installation:</h3>
<ul>
<li><strong>Single-node instances</strong>: This patch will cause downtime during the upgrade as migrations must complete before GitLab can start.</li>
<li><strong>Multi-node instances</strong>: With proper <a href="https://docs.gitlab.com/ee/update/zero_downtime.html">zero-downtime upgrade procedures</a>, this patch can be applied without downtime.</li>
</ul>
<h3 id="post-deploy-migrations">Post-deploy migrations</h3>
<p>The following versions include post-deploy migrations that can run after the upgrade:</p>
<ul>
<li>18.7.1</li>
<li>18.6.3</li>
</ul>
<p>To learn more about the impact of upgrades on your installation, see:</p>
<ul>
<li><a href="https://docs.gitlab.com/ee/update/zero_downtime.html">Zero-downtime upgrades</a> for multi-node deployments</li>
<li><a href="https://docs.gitlab.com/update/package/#downtime">Standard upgrades</a> for single-node installations</li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">Update page</a>.
To update GitLab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab 18.7 released</title><link href="https://docs.gitlab.com/releases/18/18-7-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/18/18-7-released/</id><published>2025-12-18T00:00:00Z</published><updated>2025-12-18T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On December 18, 2025, GitLab 18.7 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong>David Aniebo</strong>
</p>
<p>We&rsquo;re excited to recognize David Aniebo as our 18.7 Notable Contributor for his impactful contributions to GitLab
product planning capabilities and the <a href="https://contributors.gitlab.com">contributor platform</a>.</p>
<p>David&rsquo;s work on <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/207549">improving work item list functionality</a>
demonstrates his technical expertise and dedication to enhancing the user experience for GitLab planning features.
This contribution helps teams better organize and manage their work items, making project planning more efficient for
thousands of GitLab users.</p>
<p>Beyond code contributions, David has been a consistent supporter of the contributor platform, helping to improve the
experience for community contributors. His collaborative approach and responsiveness have earned praise from multiple
team members across different groups.</p>
<p>&ldquo;David has done some fantastic work helping out with some Product Planning group efforts, and we are very thankful for
his contributions,&rdquo; shared Nick Brandt, Engineering Manager for Product Planning.</p>
<p>Thank you, David, for your valuable contributions to GitLab and for being such a collaborative member of our community!
We look forward to your continued involvement.</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>Secret validity checks improved and generally available</strong>
    <p><p>When a valid secret is leaked in one of your repositories, you must react quickly.
To help you prioritize urgent threats, validity checks automatically verify whether leaked credentials can still be used.</p>
<p>In GitLab 18.7, we&rsquo;ve improved:</p>
<ul>
<li>Vendor integrations: Integrated with Google Cloud, AWS, and Postman, along with existing support for GitLab tokens.</li>
<li>Report filtering: Filter the Vulnerability Report by validity status (active, inactive, possibly active) to quickly
triage and prioritize secret findings.</li>
<li>Group-level API: Turn on validity checks across all projects in a group with a single API call and streamline
rollout across your organization.</li>
</ul>
<p>In this release, validity checks are generally available.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/vulnerabilities/validity_check/">View Documentation</a></p>
  </li>
  <li>
    <strong>Separate model selection for Agentic Chat and agents</strong>
    <p>Separate models can now be selected for Agentic Chat and for all other agents for top-level groups or instances.
This provides more options for model selection for GitLab Duo Agent Platform.</p>
    <p><a href="https://docs.gitlab.com/user/gitlab_duo/model_selection/#select-a-model-for-a-feature">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved GitLab Duo and SDLC trends dashboard</strong>
    <p><p>The GitLab Duo and SDLC trends dashboard delivers improved analytics capabilities to measure the impact of GitLab Duo
on software delivery. The dashboard now provides 6-month trend analysis across GitLab Duo feature adoption, pipeline
performance, and common development metrics such as deployment frequency and mean time to merge.</p>
<p>You can now track code generation volumes and IDE or language trends for GitLab Duo Code Suggestions, and observe
as your teams adopt new GitLab Duo Agent Platform flows. Enhanced user-level metrics enable teams to gain deeper
insight into the key Duo features providing continuous value.</p>
<p>A new <a href="https://docs.gitlab.com/api/graphql/reference/#aiinstanceusagedata">endpoint for instance-level AI usage</a>
is now available for instance administrators to extract all Duo data from either Postgres (3-month retention) or
ClickHouse.</p>
<p>Powered by the ClickHouse integration, this dashboard delivers sub-second query performance across millions of
data points. For self-managed instances, see improved recommendations and configuration guidance for
<a href="https://docs.gitlab.com/integration/clickhouse/">ClickHouse integration</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/analytics/duo_and_sdlc_trends/">View Documentation</a></p>
  </li>
  <li>
    <strong>Additional Planner Agent features available in beta</strong>
    <p><p>The Planner Agent now includes create and edit features in beta! The Planner Agent is a foundational agent built
to support product managers directly in GitLab. Use the Planner Agent to create, edit, and analyze GitLab work items.</p>
<p>Instead of manually chasing updates, prioritizing work, or summarizing planning data, the Planner Agent helps you
analyze backlogs, apply frameworks like RICE or MoSCoW, and surface what truly needs your attention. It&rsquo;s like
having a proactive teammate who understands your planning workflow and works with you to make better, more efficient
decisions.</p>
<p>Please provide your feedback in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/576622">issue 576622</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/duo_agent_platform/agents/foundational_agents/planner/">View Documentation</a></p>
  </li>
  <li>
    <strong>Dynamic input options in CI/CD pipelines</strong>
    <p><p>You can set up your CI/CD pipelines to make use of dynamic input selection when creating new pipelines through the
intuitive web interface.</p>
<p>Now, with dynamic input options, you can configure your pipelines so that input selection options update dynamically
based on previous selections. For example, when you select an input in one dropdown list, it automatically populates
a list of related input options in a second dropdown list.</p>
<p>With CI/CD inputs, you can:</p>
<ul>
<li>Trigger pipelines with pre-configured inputs, reducing errors and streamlining deployments.</li>
<li>Enable your users to select different inputs than the defaults from dropdown menus.</li>
<li>Now have cascading dropdown lists where options dynamically update based on previous selections.</li>
</ul>
<p>This dynamic capability enables you to create more intelligent, context-aware input configurations that guide you
through the pipeline creation process, reducing errors and ensuring only valid combinations of inputs are selected.</p>
</p>
    <p><a href="https://docs.gitlab.com/ci/inputs/#define-conditional-input-options-with-specinputsrules">View Documentation</a></p>
  </li>
  <li>
    <strong>SAST False Positive Detection with AI (Beta)</strong>
    <p><p>Security teams often spend significant time investigating SAST findings that turn out to be false positives,
diverting attention from genuine security risks.</p>
<p>In GitLab 18.7, we&rsquo;re introducing AI-powered SAST False Positive Detection to help teams focus on the
vulnerabilities that matter. When a security scan runs, GitLab Duo automatically analyzes each Critical and High
severity SAST vulnerability to determine the likelihood that it&rsquo;s a false positive.</p>
<p>The AI assessment appears directly in the vulnerability report, giving security engineers immediate context to
make faster, more confident triage decisions.</p>
<p>Key capabilities include:</p>
<ul>
<li>Automatic analysis: False positive detection runs automatically after each security scan with no manual
triggering required.</li>
<li>Manual trigger option: Users can manually trigger false positive detection for individual vulnerabilities on
the vulnerability details page for on-demand analysis.</li>
<li>Focused on high-impact findings: Scoped to Critical and High severity vulnerabilities to maximize signal-to-noise
improvement.</li>
<li>Contextual AI reasoning: Each assessment includes an explanation of why the finding may or may not be a true
positive, based on code context and vulnerability characteristics.</li>
<li>Seamless workflow integration: Results surface directly in the vulnerability report alongside existing severity,
status, and remediation information.</li>
</ul>
<p>This feature is available as a free beta for Ultimate customers and must be enabled in your group or project settings.
We welcome your feedback in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/583697">issue 583697</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/vulnerabilities/false_positive_detection">View Documentation</a></p>
  </li>
  <li>
    <strong>New security dashboards enabled by default</strong>
    <p><p>The new security dashboards have been updated and modernized. The dashboards were previously available on GitLab.com,
and are now enabled by default on GitLab Dedicated and GitLab Self-Managed.</p>
<p>The new features include:</p>
<ul>
<li>A vulnerabilities over time chart that supports:
<ul>
<li>Filtering based on project or report type.</li>
<li>Grouping by report type and severity.</li>
<li>Direct links to vulnerabilities in the vulnerability report.</li>
</ul>
</li>
<li>A risk score module that calculates the estimated risk for a group or project based on a GitLab algorithm.</li>
</ul>
<p>Please note that using the new dashboard requires ElasticSearch.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/security_dashboard/#new-security-dashboards">View Documentation</a></p>
  </li>
  <li>
    <strong>Instance setting to control publishing of components to the CI/CD Catalog</strong>
    <p><p>Administrators of GitLab Self-Managed and GitLab Dedicated can now restrict which projects are allowed to publish
components to the CI/CD Catalog. This new setting enables organizations to maintain a curated, trusted CI/CD Catalog
by controlling what components can be published.</p>
<p>Administrators can now specify an allowlist of projects authorized to publish components. When the allowlist is
populated with projects, only those projects can publish components. This prevents unauthorized or unapproved
components from cluttering the list of published components and ensures all components meet organizational standards
and security requirements.</p>
<p>This addresses a key governance challenge for enterprise customers who want to maintain control over their CI/CD
component ecosystem while enabling their teams to discover and reuse approved components.</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/settings/continuous_integration/#restrict-cicd-catalog-publishing">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Agentic Core</h4>
<ul>
  <li>
    <strong>Advanced search available for both merge request descriptions and comments</strong>
    <p><p>Advanced search now returns matching results from both merge request descriptions and comments. Previously, users
had to search merge request descriptions and comments separately.</p>
<p>This improvement provides a more streamlined and comprehensive search workflow for GitLab merge requests.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/search/advanced_search/">View Documentation</a></p>
  </li>
  <li>
    <strong>Support for `AGENTS.md` with GitLab Duo Chat (Agentic) in IDEs</strong>
    <p><p>GitLab Duo Chat now supports the <code>AGENTS.md</code> specification, an emerging standard for providing context and
instructions to AI coding assistants.</p>
<p>Unlike custom rules that are only available to GitLab Duo, <code>AGENTS.md</code> files are also available for other AI
coding tools to use. This makes your build commands, testing instructions, code style guidelines, and
project-specific context available to any AI tool that supports the specification.</p>
<p>GitLab Duo Chat in your IDE automatically applies available instructions from <code>AGENTS.md</code> files in your repository,
set at the user or workspace level. For monorepos, you can place <code>AGENTS.md</code> files in subdirectories to provide
tailored instructions for different components.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/gitlab_duo/customize_duo/agents_md/">View Documentation</a></p>
  </li>
  <li>
    <strong>AI agent and flow versioning</strong>
    <p><p>When you enable an agent or flow from the AI Catalog in your project, GitLab now pins it to a specific version.</p>
<p>This means your AI-powered workflows stay stable and predictable even as catalog items evolve, so you can test and
validate new versions before you upgrade.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/duo_agent_platform/ai_catalog/#agent-and-flow-versions">View Documentation</a></p>
  </li>
  <li>
    <strong>AI gateway timeout setting</strong>
    <p><p>For GitLab Duo Self-Hosted, you can now configure a timeout value for requests to self-hosted models.</p>
<p>This value can range from 60 to 600 seconds.</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/gitlab_duo_self_hosted/configure_duo_features/#configure-timeout-for-the-ai-gateway">View Documentation</a></p>
  </li>
  <li>
    <strong>Report agents and flows to administrators</strong>
    <p><p>You can now report agents and flows to instance administrators when you encounter problematic content. Submit an
abuse report that includes your feedback, and an administrator can choose to hide or delete the harmful item.</p>
<p>Use this feature to keep your agents and flows safe across your entire organization.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/report_abuse/">View Documentation</a></p>
  </li>
  <li>
    <strong>Configure foundational agent availability</strong>
    <p><p>You can now control which foundational agents are available in your top-level group or instance.</p>
<p>Turn all foundational agents on or off by default, or toggle individual agents to align with your organization&rsquo;s
security and governance policies.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/duo_agent_platform/agents/foundational_agents/#turn-foundational-agents-on-or-off">View Documentation</a></p>
  </li>
</ul>
<h4>Scale and Deployments</h4>
<ul>
  <li>
    <strong>Enhanced active trial experience for Self-Managed</strong>
    <p><p>GitLab Self-Managed users on an Ultimate trial can now access their active trial status, remaining days, accessible
features, and expiration notifications from the left sidebar.</p>
<p>These enhancements help eliminate confusion about trial duration and make it easier to evaluate paid features before purchase.</p>
</p>
    <p><a href="https://docs.gitlab.com/subscriptions/free_trials/#view-remaining-trial-period-days">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>Advanced vulnerability management available in Self-Managed and Dedicated environments</strong>
    <p><p>Advanced vulnerability management is available to all Ultimate customers and includes the following features:</p>
<ul>
<li>Grouping data by OWASP 2021 categories in the vulnerability report for a project or group.</li>
<li>Filtering based on a vulnerability identifier in the vulnerability report for a project or group.</li>
<li>Filtering based on the reachability value in the vulnerability report for a project or group.</li>
<li>Filtering by policy violation bypass reason.</li>
</ul></p>
    <p><a href="https://docs.gitlab.com/user/application_security/vulnerability_report/#advanced-vulnerability-management">View Documentation</a></p>
  </li>
  <li>
    <strong>Data Analyst foundational agent powered by GLQL (Beta)</strong>
    <p><p>The Data Analyst Agent is a specialized AI assistant that helps you query, visualize, and surface data across the
GitLab platform. It uses GitLab Query Language (GLQL) to retrieve and analyze data, then provides clear, actionable
insights about your projects.</p>
<p>You can find example prompts and use cases in the documentation.</p>
<p>This agent is currently in beta status, so please share your thoughts in the
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/574028">feedback issue</a> to help us improve and provide insight into
where you&rsquo;d like to see this go next.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/duo_agent_platform/agents/foundational_agents/data_analyst/">View Documentation</a></p>
  </li>
  <li>
    <strong>Filter and comment on compliance violations</strong>
    <p><p>The compliance violations report provides a centralized view of all compliance violations across your
organization&rsquo;s projects. The report displays comprehensive details about control violations, related audit events,
and enables teams to track violation statuses effectively.</p>
<p>In GitLab 18.7, we&rsquo;ve introduced powerful filtering capabilities to help you quickly find the violations that
matter most. You can now filter by:</p>
<ul>
<li>Status</li>
<li>Project</li>
<li>Control</li>
</ul>
<p>Teams can now also collaborate directly on resolving violations through comments. Within the violation record
itself, teams can:</p>
<ul>
<li>Tag team members for investigation</li>
<li>Discuss remediation approaches</li>
<li>Document findings—all within the violation record itself.</li>
</ul>
<p>Together, these features evolve the compliance violations report  into a dynamic collaboration platform,
enabling organizations to efficiently discover, analyze, and resolve compliance violations in their groups and
projects.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/compliance/compliance_center/compliance_violations_report/">View Documentation</a></p>
  </li>
  <li>
    <strong>Compliance framework controls show accurate scan status</strong>
    <p><p>GitLab compliance controls can be used in compliance frameworks. Controls are checks against the configuration or
behavior of projects that are assigned to a compliance framework.</p>
<p>Previously, controls related to scanners (for example, checking if SAST is enabled) required your projects to have
a passing pipeline in the default branch before the compliance centre displayed the success or failure status of your
controls.</p>
<p>In GitLab 18.7, we have changed this behavior to show whether your controls have succeeded or failed based solely on
scan completion, regardless of the overall pipeline status. This helps ease confusion because the compliance status
of your controls reflects whether security scans ran and completed, not whether the entire pipeline passed.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/compliance/compliance_frameworks/#gitlab-compliance-controls">View Documentation</a></p>
  </li>
  <li>
    <strong>Accessibility improvements for heading anchor links</strong>
    <p><p>Heading anchor links now announce with the same text as their corresponding heading, improving the experience for
screen reader users. The links also appear after the heading text, providing a cleaner visual presentation.</p>
<p>These changes make it easier for all users to understand and navigate to specific sections of documentation,
issues, and other content.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/markdown/">View Documentation</a></p>
  </li>
  <li>
    <strong>Warn mode in merge request approval policies</strong>
    <p><p>Security teams can now use warn mode to test and validate the impact of security policies before applying
enforcement or to roll out soft gates for accelerating your security program. Warn mode helps to reduce developer
friction during security policy rollouts, while continuing to ensure detected vulnerabilities are addressed.</p>
<p>When you create or edit a
<a href="https://docs.gitlab.com/user/application_security/policies/merge_request_approval_policies/">merge request approval policy</a>,
you can now choose between <code>warn</code> or <code>enforce</code> enforcement options.</p>
<p>Policies in warn mode generate informative bot comments without blocking merge requests. Optional approvers can
be designated as points of contact for policy questions. This approach enables security teams to assess policy
impact and build developer trust through transparent, gradual policy adoption.</p>
<p>Clear indicators in merge requests tell users when policies are in <code>warn</code> or <code>enforce</code> mode, and audit events
track policy violations and dismissals for compliance reporting. Developers can bypass scan finding and license
policy violations by providing a reasoning for the policy dismissal, creating a collaborative feedback loop between
developers and security teams for more effective policy enablement.</p>
<p>When policy violations are detected on a project&rsquo;s default branch, policies identify vulnerabilities that violate
the policy in the vulnerability reports for projects and groups. The dependency list for projects also displays
badges that indicate license compliance policy violations.</p>
<p>Additionally, you can use the API to query a filtered list of policy violations on the default branch in a project.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/policies/merge_request_approval_policies/#warn-mode">View Documentation</a></p>
  </li>
  <li>
    <strong>Service accounts available during trials on GitLab.com</strong>
    <p>Service accounts are now available during trial periods, allowing you to test automation and integration workflows
before purchasing.</p>
    <p><a href="https://docs.gitlab.com/user/profile/service_accounts/">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner 18.7</strong>
    <p><p>We&rsquo;re also releasing GitLab Runner 18.7 today!</p>
<p>GitLab Runner is the highly-scalable build agent that runs your CI/CD jobs and sends the results back to a GitLab
instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service
included with GitLab.</p>
<h4 id="whats-new">What&rsquo;s New:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/39161">Configurable taskscaler reservation throttling</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38378">Enable <code>FF_TIMESTAMPS</code> by default</a></li>
</ul>
<h4 id="bug-fixes">Bug Fixes:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/39150">Shell executor fails on existing Git repository if a relative <code>builds_dir</code> is specified</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/39140">Authentication failure in GitLab Runner 18.6.0 on subsequent pipeline runs (SSH executor)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/39123">Authentication failure in GitLab Runner 18.6.0 on subsequent pipeline runs (shell executor)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/39129">Docker 29 API compatibility issues</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/39124">Variables that reference file variables no longer work in GitLab Runner 18.6.0 with the shell executor</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/39050">GitLab Runner now supports Windows 11 2025 (25H2)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38365">ECR credential helper is not working with the Docker Autoscaler executor</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/27040">Job timeouts now properly enforced in GitLab Runner</a></li>
</ul>
<p>The list of all changes is in the GitLab Runner <a href="https://gitlab.com/gitlab-org/gitlab-runner/blob/18-7-stable/CHANGELOG.md">CHANGELOG</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/runner">View Documentation</a></p>
  </li>
  <li>
    <strong>View child pipeline reports in merge requests</strong>
    <p><p>Teams using parent-child CI/CD pipelines previously had to navigate through multiple pipeline pages to check test
results, code quality reports, and infrastructure changes, disrupting their merge request review workflow.</p>
<p>You can now view and download all reports in a unified view, including unit tests, code quality checks, Terraform
plans, and custom metrics, without leaving the merge request.</p>
<p>This eliminates context switching and accelerates merge request velocity, giving teams the ability to deliver
features faster without compromising quality.</p>
</p>
    <p><a href="https://docs.gitlab.com/ci/pipelines/downstream_pipelines/#view-child-pipeline-reports-in-merge-requests">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab Patch Release: 18.6.2, 18.5.4, 18.4.6</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-6-2-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-6-2-released/</id><published>2025-12-10T00:00:00Z</published><updated>2025-12-10T00:00:00Z</updated><author><name>Kayla Hagopian</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On December 10, 2025, we released versions 18.6.2, 18.5.4, 18.4.6 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, please visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring that all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. To maintain good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/2020/05/20/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, it means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-6-2-released/#cve-2025-12716---cross-site-scripting-issue-in-wiki-impacts-gitlab-ceee">Cross-site scripting issue in Wiki impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-6-2-released/#cve-2025-8405---improper-encoding-in-vulnerability-reports-impacts-gitlab-ceee">Improper encoding in vulnerability reports impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-6-2-released/#cve-2025-12029---cross-site-scripting-issue-in-swagger-ui-impacts-gitlab-ceee">Cross-site scripting issue in Swagger UI impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-6-2-released/#cve-2025-12562---denial-of-service-issue-in-graphql-endpoints-impacts-gitlab-ceee">Denial of service issue in GraphQL endpoints impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-6-2-released/#cve-2025-11984---authentication-bypass-issue-for-webauthn-users-impacts-gitlab-ceee">Authentication bypass issue for WebAuthn users impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-6-2-released/#cve-2025-4097---denial-of-service-issue-in-exiftool-processing-impacts-gitlab-ceee">Denial of service issue in ExifTool processing impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-6-2-released/#cve-2025-14157---denial-of-service-issue-in-commit-api-impacts-gitlab-ceee">Denial of service issue in Commit API impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-6-2-released/#cve-2025-11247---information-disclosure-issue-in-complianceframeworks-impacts-gitlab-ee">Information disclosure issue in compliance frameworks impacts GitLab EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-6-2-released/#cve-2025-13978---information-disclosure-through-error-messages-impacts-gitlab-ceee">Information disclosure through error messages impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-6-2-released/#cve-2025-12734---html-injection-issue-in-merge-request-titles-impacts-gitlab-ceee">HTML injection issue in merge request titles impacts GitLab CE/EE</a></td>
          <td>Low</td>
      </tr>
  </tbody>
</table>
<h3 id="cve-2025-12716---cross-site-scripting-issue-in-wiki-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-12716">CVE-2025-12716</a> - Cross-site scripting issue in Wiki impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that, under certain conditions, could have allowed an authenticated user to perform unauthorized actions on behalf of another user by creating wiki pages with malicious content.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 18.4 before 18.4.6, 18.5 before 18.5.4, and 18.6 before 18.6.2 <br>
<strong>CVSS</strong> 8.7 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/yvvdwf">yvvdwf</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-12029---cross-site-scripting-issue-in-swagger-ui-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-12029">CVE-2025-12029</a> - Cross-site scripting issue in Swagger UI impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have, under certain circumstances, allowed an unauthenticated user to perform unauthorized actions on behalf of another user by injecting malicious external scripts into the Swagger UI.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 15.11 before 18.4.6, 18.5 before 18.5.4, and 18.6 before 18.6.2 <br>
<strong>CVSS</strong> 8.0 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/x0abcd_">x0abcd_</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-8405---improper-encoding-in-vulnerability-reports-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-8405">CVE-2025-8405</a> - Improper encoding in vulnerability reports impacts GitLab CE/EE</h3>
<p>GitLab has remediated a security issue that could have allowed an authenticated user to perform unauthorized actions on behalf of other users by injecting malicious HTML into vulnerability code flow displays.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 17.1 before 18.4.6, 18.5 before 18.5.4, and 18.6 before 18.6.2 <br>
<strong>CVSS</strong> 7.7 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:H/I:H/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/yvvdwf">yvvdwf</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-12562---denial-of-service-issue-in-graphql-endpoints-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-12562">CVE-2025-12562</a> - Denial of service issue in GraphQL endpoints impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an unauthenticated user to create a denial of service condition by sending crafted GraphQL queries that bypass query complexity limits.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 11.10 before 18.4.6, 18.5 before 18.5.4, and 18.6 before 18.6.2 <br>
<strong>CVSS</strong> 7.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-11984---authentication-bypass-issue-for-webauthn-users-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-11984">CVE-2025-11984</a> - Authentication bypass issue for WebAuthn users impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to bypass WebAuthn two-factor authentication by manipulating the session state under certain conditions.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 13.1 before 18.4.6, 18.5 before 18.5.4, and 18.6 before 18.6.2 <br>
<strong>CVSS</strong> 6.8 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/jcarre">jcarre</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-4097---denial-of-service-issue-in-exiftool-processing-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-4097">CVE-2025-4097</a> - Denial of service issue in ExifTool processing impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to cause a denial of service condition by uploading specially crafted images.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 11.10 before 18.4.6, 18.5 before 18.5.4, and 18.6 before 18.6.2 <br>
<strong>CVSS</strong> 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<h3 id="cve-2025-14157---denial-of-service-issue-in-commit-api-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-14157">CVE-2025-14157</a> - Denial of service issue in Commit API impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to cause a Denial of Service condition by sending crafted API calls with large content parameters.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 6.3 before 18.4.6, 18.5 before 18.5.4, and 18.6 before 18.6.2 <br>
<strong>CVSS</strong> 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>This vulnerability has been discovered internally by GitLab team member Thong Kuah</p>
<h3 id="cve-2025-11247---information-disclosure-issue-in-compliance-frameworks-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-11247">CVE-2025-11247</a> - Information disclosure issue in compliance frameworks impacts GitLab EE</h3>
<p>GitLab has remediated an issue that could have allowed a user to disclose sensitive information from private projects by executing specifically crafted GraphQL queries.</p>
<p><strong>Impacted Versions:</strong> GitLab EE: all versions from 13.2 before 18.4.6, 18.5 before 18.5.4, and 18.6 before 18.6.2 <br>
<strong>CVSS</strong> 4.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/weasterhacker">weasterhacker</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-13978---information-disclosure-through-error-messages-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-13978">CVE-2025-13978</a> - Information disclosure through error messages impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to discover the names of private projects they do not have access through API requests.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 17.5 before 18.4.6, 18.5 before 18.5.4, and 18.6 before 18.6.2 <br>
<strong>CVSS</strong> 4.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>)</p>
<p>This vulnerability has been discovered internally by GitLab team member Rohit Shambhuni</p>
<h3 id="cve-2025-12734---html-injection-issue-in-merge-request-titles-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-12734">CVE-2025-12734</a> - HTML injection issue in merge request titles impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to, under certain conditions, render content in dialogs to other users by injecting malicious HTML content into merge request titles.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 15.6 before 18.4.6, 18.5 before 18.5.4, and 18.6 before 18.6.2 <br>
<strong>CVSS</strong> 3.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:L/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1862">18.6.2</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2719">[18.6] Backport - Fix gitlab-go build by updating Go download URL</a></li>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2725">Update azcopy to v10.31.0 [Backport 18.6]</a></li>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2727">Pipeline: Fixup gitlab-base version calculation 18-6 backport</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/214102">Backport of registration banner bugfix</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/214334">Backport of Ensure LFS imports work correctly with nil revisions</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/214517">Backport of &lsquo;Fix OAuth for relative path&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/214803">Remove redundant aria roles from recycle scroller (18.6 backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/214769">Backport 18-6 Fix Duo Chat test to work with new feedback button UI</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/215297">[18.6] CI: bump DOCKER_VERSION to 28.5.2</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/214401">Update diff note representation</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/215194">Backport of &lsquo;Bump test-tooling gem version to 3.1.0&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/215321">Backport MR flaky test fix</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/215221">Backport of &lsquo;GitHub importer fails to handle rate limits when importing note attachments&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/215243">Backport Fix: Restore branch protection check in cache_suffix_for</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/214941">Backport of &lsquo;Use Rust parser for tasklist parsing&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/215368">Backport of Fix partition missing error in project_daily_statistics backfill (18.6)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/215501">Backport of &lsquo;Add migrations for missing merge_requests indexes for bigint&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/215390">Backport of Make 4XX responses not retriable for attachment downloads 18-6</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/215197">Backport of &lsquo;Handle 429s during github LFS import&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8924">18-6 Stable Bump Container Registry to v4.31.1-gitlab</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8940">Backport Pulp support to 18.6</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8949">[18.6] Revert update to sshd_config mandating stronger algorithms</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8959">[18.6] Fix RHEL 10 not working with SELinux</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8962">Backport Pulp production release jobs to 18.6</a></li>
</ul>
<h3 id="1854">18.5.4</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2720">[18.5] Backport - Fix gitlab-go build by updating Go download URL</a></li>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2726">Update azcopy to v10.31.0 [Backport 18.5]</a></li>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2728">Pipeline: Fixup gitlab-base version calculation 18-5 backport</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/8308">middleware: Ignore non proto endpoints</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/214335">Backport of Ensure LFS imports work correctly with nil revisions</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/214804">Remove redundant aria roles from recycle scroller (18.5 backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/215300">[18.5] CI: bump DOCKER_VERSION to 28.5.2</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/215045">Backport of registration banner bugfix</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/214402">Update diff note representation</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/215375">Backport of Fix partition missing error in project_daily_statistics backfill (18.5)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/215224">Backport of &lsquo;GitHub importer fails to handle rate limits when importing note attachments&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/215246">Backport fix: Restore branch protection check in cache_suffix_for</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/215392">Backport Make 4XX responses not retriable for attachment downloads 18-5</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8944">Backport Pulp support to 18.5</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8963">Backport Pulp production release jobs to 18.5</a></li>
</ul>
<h3 id="1846">18.4.6</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2721">[18.4] Backport - Fix gitlab-go build by updating Go download URL</a></li>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2729">Pipeline: Fixup gitlab-base version calculation 18-4 backport</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/215301">[18.4] CI: bump DOCKER_VERSION to 28.5.2</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/215245">Backport Fix: Restore branch protection check in cache_suffix_for</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/214405">Update diff note representation</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/215223">Backport of &lsquo;GitHub importer fails to handle rate limits when importing note attachments&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/215398">Backport Make 4XX responses not retriable for attachment downloads 18-4</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/215203">Backport of &lsquo;Handle 429s during github LFS import&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8945">Backport Pulp support to 18.4</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8964">Backport Pulp production release jobs to 18.4</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>This patch includes database migrations that may impact your upgrade process.</p>
<h3 id="impact-on-your-installation">Impact on your installation:</h3>
<ul>
<li><strong>Single-node instances</strong>: This patch will cause downtime during the upgrade as migrations must complete before GitLab can start.</li>
<li><strong>Multi-node instances</strong>: With proper <a href="https://docs.gitlab.com/ee/update/zero_downtime.html">zero-downtime upgrade procedures</a>, this patch can be applied without downtime.</li>
</ul>
<h3 id="post-deploy-migrations">Post-deploy migrations</h3>
<p>The following versions include post-deploy migrations that can run after the upgrade:</p>
<ul>
<li>18.6.2</li>
<li>18.5.4</li>
</ul>
<p>To learn more about the impact of upgrades on your installation, see:</p>
<ul>
<li><a href="https://docs.gitlab.com/ee/update/zero_downtime.html">Zero-downtime upgrades</a> for multi-node deployments</li>
<li><a href="https://docs.gitlab.com/update/package/#downtime">Standard upgrades</a> for single-node installations</li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">Update page</a>.
To update GitLab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 18.6.1, 18.5.3, 18.4.5</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-6-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-6-1-released/</id><published>2025-11-26T00:00:00Z</published><updated>2025-11-26T00:00:00Z</updated><author><name>Kayla Hagopian</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On November 26, 2025, we released versions 18.6.1, 18.5.3, 18.4.5 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, please visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring that all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. To maintain good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/2020/05/20/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, it means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-6-1-released/#cve-2024-9183---race-condition-issue-in-cicd-cache-impacts-gitlab-ceee">Race condition issue in CI/CD cache impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-6-1-released/#cve-2025-12571---denial-of-service-issue-in-json-input-validation-middleware-impacts-gitlab-ceee">Denial of Service issue in JSON input validation middleware impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-6-1-released/#cve-2025-12653---authentication-bypass-issue-in-account-registration-impacts-gitlab-ceee">Authentication bypass issue in account registration impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-6-1-released/#cve-2025-7449---denial-of-service-issue-in-http-response-processing-impacts-gitlab-ceee">Denial of Service issue in HTTP response processing impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-6-1-released/#cve-2025-6195---improper-authorization-issue-in-markdown-rendering-impacts-gitlab-ee">Improper authorization issue in markdown rendering impacts GitLab EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-6-1-released/#cve-2025-13611---information-disclosure-issue-in-terraform-registry-impacts-gitlab-ceee">Information disclosure issue in terraform registry impacts GitLab CE/EE</a></td>
          <td>Low</td>
      </tr>
  </tbody>
</table>
<h3 id="cve-2024-9183---race-condition-issue-in-cicd-cache-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2024-9183">CVE-2024-9183</a> - Race condition issue in CI/CD cache impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to obtain credentials from higher-privileged users and perform actions in their context under specific conditions.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 18.4 before 18.4.5, 18.5 before 18.5.3, and 18.6 before 18.6.1 <br>
<strong>CVSS</strong> 7.7 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:H/I:H/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/aphantom">aphantom</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-12571---denial-of-service-issue-in-json-input-validation-middleware-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-12571">CVE-2025-12571</a> - Denial of Service issue in JSON input validation middleware impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an unauthenticated user to cause a Denial of Service condition by sending specifically crafted requests containing malicious JSON payloads.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 17.10 before 18.4.5, 18.5 before 18.5.3, and 18.6 before 18.6.1 <br>
<strong>CVSS</strong> 7.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/a92847865">a92847865</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-12653---authentication-bypass-issue-in-account-registration-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-12653">CVE-2025-12653</a> - Authentication bypass issue in account registration impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that under specific conditions could have allowed an unauthenticated user to join arbitrary organizations by changing headers on some requests.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 18.3 before 18.4.5, 18.5 before 18.5.3, and 18.6 before 18.6.1 <br>
<strong>CVSS</strong> 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/pwnie">pwnie</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-7449---denial-of-service-issue-in-http-response-processing-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-7449">CVE-2025-7449</a> - Denial of Service issue in HTTP response processing impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user with specific permissions to cause a denial of service condition through HTTP response processing.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 8.3 before 18.4.5, 18.5 before 18.5.3, and 18.6 before 18.6.1 <br>
<strong>CVSS</strong> 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/a92847865">a92847865</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-6195---improper-authorization-issue-in-markdown-rendering-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-6195">CVE-2025-6195</a> - Improper authorization issue in markdown rendering impacts GitLab EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to view information from security reports under certain configuration conditions.</p>
<p><strong>Impacted Versions:</strong> GitLab EE: all versions from 13.7 before 18.4.5, 18.5 before 18.5.3, and 18.6 before 18.6.1 <br>
<strong>CVSS</strong> 4.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/mateuszek">mateuszek</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-13611---information-disclosure-issue-in-terraform-registry-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-13611">CVE-2025-13611</a> - Information disclosure issue in terraform registry impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user with access to certain logs to obtain sensitive tokens under specific conditions.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 13.12 before 18.4.5, 18.5 before 18.5.3, and 18.6 before 18.6.1 <br>
<strong>CVSS</strong> 2.4 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:U/C:L/I:N/A:N</code></a>)</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1861">18.6.1</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2708">18-6 stable Bump Container Registry to v4.31.1-gitlab</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/213747">Backport of &lsquo;Fix custom role approvers lookup for inherited users&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/213844">[18.6] Fix /admin/sidekiq not loading CSS assets in Cloud Native GitLab</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/213527">Backport of &lsquo;Rollout search_glql_use_routing flag&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/213754">Backport of &lsquo;Fix BackfillTimelogsNamespace finalization order&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/213744">Backport &lsquo;Move OAuth suite to test-on-cng&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/213649">Backport &lsquo;Fix <code>commitsCount</code> variable name&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/213809">Backport 18-6 E2E test: quarantine long fast quarantined e2e tests</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/213969">Updating subscription tier for Security Analyst feature, bc it was incorrect</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/213694">Backport &lsquo;Fix merge request widget polling race condition&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8916">Sidekiq role: Enable rails recipies by default [18.6 Backport]</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8920">[18.6] Add nginx[&lsquo;default_server_enabled&rsquo;] configuration parameter</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8926">Backport: EL10 requires SELinux and perl packages</a></li>
</ul>
<h3 id="1853">18.5.3</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/211774">Backport Zoekt rollout is not working properly if there is a single zoekt node available</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/209563">Backport of &lsquo;Move support for license name to EE&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/212308">Fix missing gitaly_context forward in BranchPushService</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/212202">Backport of &lsquo;Split refresh worker into new workers&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/212724">Backport of Add FF to eagerly resume jobs</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/212851">Backport of &lsquo;Ensure project authorizations are updated on imported inheriting project memberships&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/212902">E2E test: quarantine long time fast quarantined specs 18-5</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/212740">Backport of: Fix tags api first page pagination with search</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/212991">[Backport] Relax blobs complexity in favor of limiting data</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/213042">Backport of &lsquo;Fix: prevent duplicate &lsquo;?&rsquo; in Download directory URL (use &lsquo;&amp;&rsquo; for extra params)&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/213440">Backport of &lsquo;Update duo workflow service gem to 0.5&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/213749">Backport of &lsquo;Fix custom role approvers lookup for inherited users&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/213845">[18.5] Fix /admin/sidekiq not loading CSS assets in Cloud Native GitLab</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/213824">Backport of &lsquo;Support nested variables expention in rules:if&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/213810">Backport 18-5 E2E test: quarantine long fast quarantined e2e tests</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/213695">Backport &lsquo;Fix merge request widget polling race condition&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8905">Sidekiq role: Enable rails recipies by default [18.5 Backport]</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8921">[18.5] Add nginx[&lsquo;default_server_enabled&rsquo;] configuration parameter</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8887">Backport &lsquo;fix-registry-commands-permission-for-non-docker&rsquo; into &lsquo;18-5-stable&rsquo;</a></li>
</ul>
<h3 id="1845">18.4.5</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/211778">Backport Zoekt rollout is not working properly if there is a single zoekt node available</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/209703">Backport of &lsquo;Move support for license name to EE&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/212904">E2E test: quarantine long time fast quarantined specs 18-4</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/213116">Test: quarantine wiki specs 18-4</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/212742">Backport of: Fix tags api first page pagination with search</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/212993">[Backport] Relax blobs complexity in favor of limiting data</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/213846">[18.4] Fix /admin/sidekiq not loading CSS assets in Cloud Native GitLab</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/213811">Backport 18-4 E2E test: quarantine long fast quarantined e2e tests</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8837">Bump eventmachine-tail gem to version 0.6.6</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8906">Sidekiq role: Enable rails recipies by default [18.4 Backport]</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8888">Backport &lsquo;fix-registry-commands-permission-for-non-docker&rsquo; into &lsquo;18-4-stable&rsquo;</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>This patch includes database migrations that may impact your upgrade process.</p>
<h3 id="impact-on-your-installation">Impact on your installation:</h3>
<ul>
<li><strong>Single-node instances</strong>: This patch will cause downtime during the upgrade as migrations must complete before GitLab can start.</li>
<li><strong>Multi-node instances</strong>: With proper <a href="https://docs.gitlab.com/ee/update/zero_downtime.html">zero-downtime upgrade procedures</a>, this patch can be applied without downtime.</li>
</ul>
<h3 id="post-deploy-migrations">Post-deploy migrations</h3>
<p>The following versions include post-deploy migrations that can run after the upgrade:</p>
<ul>
<li>18.6.1</li>
</ul>
<p>To learn more about the impact of upgrades on your installation, see:</p>
<ul>
<li><a href="https://docs.gitlab.com/ee/update/zero_downtime.html">Zero-downtime upgrades</a> for multi-node deployments</li>
<li><a href="https://docs.gitlab.com/update/package/#downtime">Standard upgrades</a> for single-node installations</li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">Update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab 18.6 released</title><link href="https://docs.gitlab.com/releases/18/18-6-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/18/18-6-released/</id><published>2025-11-20T00:00:00Z</published><updated>2025-11-20T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On November 20, 2025, GitLab 18.6 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong>Samaksh Agarwal</strong>
</p>
<p>Every developer using the GitLab Development Kit (GDK) benefits from Samaksh&rsquo;s
<a href="https://gitlab.com/gitlab-org/gitlab-development-kit/-/merge_requests/5227">contribution to improve the readability of <code>gdk status</code></a>.
While this enhancement may appear simple on the surface, it demonstrates exceptional attention to
developer experience and understanding of how small improvements can have
widespread impact.</p>
<p>The improved readability of <code>gdk status</code>
saves time for every developer using GDK and considerably increases the
accessibility of one of the core pieces of the development environment. This
type of contribution shows maturity in understanding how to make meaningful
improvements to the developer workflow.</p>
<p>Reflecting on his contributions, Samaksh shares: &ldquo;GitLab Development Kit (or GDK)
has been my choice of active contributions for now, because I personally like to
work on the side that makes experience for other contributors easy and convenient.
And that&rsquo;s the kind of developer I wanna be. The one that can use his skills to
make others&rsquo; lives easier.&rdquo;</p>
<p>When asked about his experience contributing to GitLab, Samaksh notes: &ldquo;I&rsquo;d like
to recommend GitLab to everyone who wants to try a fresh and quality open source
experience. When I first started contributing to GitLab, I was a bit overwhelmed
but everyone in the community was so supportive, helpful and welcoming that it all
went away. I am absolutely in love with the community and how they do things around
here. From writing excellent documentation, to maintaining peak code quality, to
genuinely appreciating their contributors, GitLab community is absolutely wonderful.&rdquo;</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>The new GitLab UI: Designed for productivity</strong>
    <p><p>Introducing a smarter, more intuitive GitLab UI that puts developer productivity first.</p>
<p>The new side-by-side design uses contextual panels to keep you in your workflow, reducing unnecessary clicks and helping teams work faster. Customize your workspace, maximize screen real estate, and enjoy a cleaner, more dynamic experience that adapts to your workflow.</p>
<p>GitLab is committed to continuous improvement, so please share your thoughts in the <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/577554">feedback issue</a> and help shape the future of GitLab.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/interface_redesign/">View Documentation</a></p>
  </li>
  <li>
    <strong>Exact code search in limited availability</strong>
    <p><p>With this release, exact code search is now in limited availability. You can use exact match and regular expression modes to search for code across an entire instance, in a group, or in a project. Exact code search is built on top of the open-source search engine Zoekt.</p>
<p>For GitLab.com, exact code search is enabled by default. For GitLab Self-Managed, an administrator must <a href="https://docs.gitlab.com/integration/zoekt/#install-zoekt">install Zoekt</a> and <a href="https://docs.gitlab.com/integration/zoekt/#enable-exact-code-search">enable exact code search</a>.</p>
<p>This feature is in active development. We welcome your feedback in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/420920">issue 420920</a>!</p>
</p>
    <p><a href="https://docs.gitlab.com/user/search/exact_code_search/">View Documentation</a></p>
  </li>
  <li>
    <strong>CI/CD Components can reference their own metadata</strong>
    <p><p>Previously, CI/CD components couldn&rsquo;t reference their own metadata, such as version numbers
or commit SHAs, within their configuration. This lack of information could cause you to use configuration with
hardcoded values or complex workarounds. Writing configuration this way can
lead to version mismatches when components build resources such as Docker images,
because there&rsquo;s no way to automatically tag those resources with the component&rsquo;s compatible version.</p>
<p>In this release, we&rsquo;ve introduced the ability to access component context with the <code>spec:component</code> keyword.
You can now build and publish versioned resources like Docker images when you release a component version,
ensuring everything is in sync, eliminating manual version management, and preventing version mismatches.</p>
</p>
    <p><a href="https://docs.gitlab.com/ci/yaml/expressions/#component-context">View Documentation</a></p>
  </li>
  <li>
    <strong>Support dynamic job dependencies in `needs:parallel:matrix`</strong>
    <p><p><a href="https://docs.gitlab.com/ci/yaml/#parallelmatrix"><code>parallel:matrix</code></a> makes it possible
to easily run multiple jobs in parallel with different requirements, for example
to test code for multiple platforms at the same time. But if you wanted later jobs
to use <code>needs:parallel:matrix</code> to depend on specific parallel jobs, the configuration was complex
and inflexible.</p>
<p>Now, with the new <code>$[[matrix.VARIABLE]]</code> expression introduced as a Beta feature,
users can create dynamic 1-1 dependencies which makes complex <code>parallel:matrix</code> configurations
much easier to manage. This can help you create faster pipelines, with efficient artifact handling,
better scalability, and cleaner configuration. This feature is particularly valuable for multi-platform builds,
Terraform deployments across multiple environments, and any workflow requiring parallel processing across multiple dimensions.</p>
</p>
    <p><a href="https://docs.gitlab.com/ci/yaml/matrix_expressions/#matrix-expressions-in-needsparallelmatrix">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Security Analyst Agent available as a foundational agent</strong>
    <p><p>The GitLab Security Analyst Agent is now a foundational agent in GitLab Duo Agentic Chat. This means that users do not have to manually add the GitLab Security Analyst agent from the AI Catalog, and this agent is available by default for GitLab Self-Managed and GitLab Dedicated as well.
This specialized assistant provides AI-native vulnerability management and security analysis, helping you investigate findings, triage vulnerabilities, and navigate compliance requirements without any setup.</p>
<p>This feature is in beta, and we welcome your feedback in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/576916">issue 576916</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/duo_agent_platform/agents/foundational_agents/security_analyst_agent/">View Documentation</a></p>
  </li>
  <li>
    <strong>Model selection for GitLab Duo Agentic Chat in VS Code and JetBrains IDEs</strong>
    <p>Easily choose your preferred AI model right in GitLab Duo Chat, now available in the VS Code and JetBrains IDEs. Use the dropdown list in the GitLab Duo Chat panel to select among Claude, GPT, and other supported models. Model availability is managed by your organization admins, ensuring you have access to the right models for your workflow.</p>
    <p><a href="https://docs.gitlab.com/user/gitlab_duo/model_selection/#select-an-llm-for-a-feature">View Documentation</a></p>
  </li>
  <li>
    <strong>Security dashboard upgrade (beta on GitLab.com)</strong>
    <p><p>The new security dashboards have been updated and modernized. The initial features in the beta release include:</p>
<ul>
<li>A vulnerabilities over time chart that supports:
<ul>
<li>Filtering based on project or report type.</li>
<li>Grouping by report type and severity.</li>
<li>Direct links to vulnerabilities in the vulnerability report.</li>
</ul>
</li>
<li>A risk score module that calculates the estimated risk for a group or project based on a GitLab algorithm.</li>
</ul>
<p>The new security dashboards released in 18.6 are currently available on GitLab.com only.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/security_dashboard/#new-security-dashboards">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Agentic Core</h4>
<ul>
  <li>
    <strong>GitLab MCP server available in beta</strong>
    <p><p>The GitLab MCP server is available in <a href="https://docs.gitlab.com/policy/development_stages_support/#beta">beta</a>. With the GitLab MCP server, you can use AI assistants like Claude Code, Cursor, and other MCP-compatible tools to interact with your GitLab projects, issues, merge requests, and pipelines, all without building custom integrations for each tool.</p>
<p>To get started, <a href="https://docs.gitlab.com/user/gitlab_duo/turn_on_off/#turn-on-beta-and-experimental-features">turn on beta and experimental features</a> in your GitLab Duo settings.</p>
<p>The GitLab MCP server provides key tools covering issues, merge requests, and pipelines, and we continue to refine it based on user feedback. This feature might have incomplete functionality or bugs. Try it out and share feedback in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/561564">issue 561564</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/gitlab_duo/model_context_protocol/mcp_server/">View Documentation</a></p>
  </li>
  <li>
    <strong>Advanced search available for both issue descriptions and comments</strong>
    <p>Advanced search now returns matching results from both issue descriptions and comments. Previously, users had to search issue descriptions and comments separately. This improvement provides a more streamlined and comprehensive search workflow for GitLab issues.</p>
    <p><a href="https://docs.gitlab.com/user/search/advanced_search/">View Documentation</a></p>
  </li>
  <li>
    <strong>Gemini 2.5 Flash model compatible with GitLab Duo Agent Platform for GitLab Duo Self-Hosted</strong>
    <p>You can now use the Gemini 2.5 Flash model on GitLab Duo Agent Platform with <a href="https://docs.gitlab.com/administration/gitlab_duo_self_hosted/supported_models_and_hardware_requirements/#supported-models">GitLab Duo Self-Hosted</a>.</p>
    <p><a href="https://docs.gitlab.com/administration/gitlab_duo_self_hosted/supported_models_and_hardware_requirements/#compatible-models">View Documentation</a></p>
  </li>
</ul>
<h4>Scale and Deployments</h4>
<ul>
  <li>
    <strong>Rate limit for listing project and group members</strong>
    <p>We&rsquo;ve introduced rate limiting for the <code>/api/v4/projects/:id/members/all</code> and <code>/api/v4/groups/:id/members/all</code> endpoints to improve API stability and ensure fair resource usage across all users.
The <code>GET /api/v4/projects/:id/members/all</code> and <code>GET /api/v4/groups/:id/members/all</code> endpoints now have a rate limit of 200 requests per minute per user.
This change helps protect GitLab instances from excessive API usage that could impact performance for all users.
The limit of 200 requests per minute provides ample capacity for normal usage patterns while preventing potential abuse or unintentional resource exhaustion.
If your integrations or scripts use this endpoint, ensure they handle rate limit responses appropriately (HTTP 429) and implement retry logic with backoff as needed.
Most users should not be affected by this change under normal usage patterns.</p>
    <p><a href="https://docs.gitlab.com/administration/settings/rate_limit_on_members_api/">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>Increased rule coverage for secret push protection and pipeline secret detection</strong>
    <p>We&rsquo;ve added support for 40 new rules to GitLab&rsquo;s pipeline secret detection. Some existing rules have also been updated to improve quality and reduce false positives. These changes are released in <a href="https://gitlab.com/gitlab-org/security-products/analyzers/secrets/-/releases/v7.20.1">version 7.20.1</a> of the secrets analyzer.</p>
    <p><a href="https://docs.gitlab.com/user/application_security/secret_detection/detected_secrets">View Documentation</a></p>
  </li>
  <li>
    <strong>Code Owners now supports inherited group memberships</strong>
    <p><p>Code ownership is critical for maintaining code quality and ensuring the right
people review changes to sensitive parts of your codebase. However, managing
Code Owners in organizations with complex group structures has been challenging.
Previously, to reference a group in your <code>CODEOWNERS</code> file, that group had to be
directly invited to each specific project, even if it was already a member of
a parent group.</p>
<p>Code Owners now supports groups with inherited memberships as eligible approvers:</p>
<ul>
<li>Groups with inherited access through parent group membership are recognized
as valid code owners when Code Owners approvals are enabled.</li>
<li>No need to invite groups directly to every project.</li>
<li>Existing <code>CODEOWNERS</code> files continue to work without changes.</li>
<li>Same level of control over who can approve changes to critical code paths.</li>
</ul>
<p>This change reduces administrative overhead while maintaining the security and
approval requirements that Code Owners provide.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/codeowners/advanced/#group-inheritance-and-eligibility">View Documentation</a></p>
  </li>
  <li>
    <strong>Toggle draft merge request visibility on your homepage</strong>
    <p><p>On your homepage, draft merge requests can clutter your merge request view and
distract from work that&rsquo;s ready for action. Previously, you could not filter them
out.</p>
<p>You can now hide draft merge requests from the <strong>Your merge requests</strong> section on
your homepage by using the display preferences. When you hide draft merge requests:</p>
<ul>
<li>They are excluded from the active count.</li>
<li>A footer displays the number of filtered draft merge requests.</li>
<li>Your preference is saved automatically.</li>
</ul>
<p>This change helps you focus on merge requests that need immediate attention.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/merge_requests/homepage/#set-your-display-preferences">View Documentation</a></p>
  </li>
  <li>
    <strong>New GitLab CLI features and improvements</strong>
    <p><p>The GitLab CLI (glab) provides new features and improvements to enhance your
GitLab workflow from the command line:</p>
<ul>
<li>
<p><strong>Enhanced authentication</strong>: Auto-detect GitLab URLs from git remotes
during login, making it easier to authenticate against the correct
GitLab instance.</p>
</li>
<li>
<p><strong>Flexible pipeline monitoring</strong>: View any pipeline by ID with the
<code>ci-view</code> command.</p>
</li>
<li>
<p><strong>GPG key management</strong>: Manage GPG keys directly from the CLI with
new commands.</p>
</li>
<li>
<p><strong>Project member management</strong>: Add, remove, and update project members
from the command line.</p>
</li>
<li>
<p><strong>Improved Git integration</strong>: Enhanced git-credential plugin with
support for all token types.</p>
</li>
<li>
<p><strong>Modern user interface</strong>: Updated prompt library for better confirmation
dialogs and consistent GitLab theme across UI components.</p>
</li>
</ul>
<p>For a full list of changes and updates, see <a href="https://gitlab.com/gitlab-org/cli/-/releases">CLI releases</a>.
To get started with the GitLab CLI or update to the latest version,
see the <a href="https://gitlab.com/gitlab-org/cli/#installation">installation guide</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/cli/">View Documentation</a></p>
  </li>
  <li>
    <strong>Webhook notifications for merge request review re-requests</strong>
    <p><p>Webhook integrations are critical for automating workflows and keeping
external systems synchronized with GitLab merge request activities.
However, when reviewers were re-requested for merge requests, webhook
consumers had no way to identify which specific reviewer was being
re-requested, making it difficult to trigger appropriate notifications
or automation.</p>
<p>Webhook payloads for merge requests now include a <code>re_requested</code> attribute
in reviewer data that clearly indicates which reviewer was re-requested:</p>
<ul>
<li>Set to <code>true</code> for the specific reviewer being re-requested.</li>
<li>Set to <code>false</code> for all other reviewers.</li>
</ul>
<p>This improvement enables more precise automation around the merge request
review process. Webhook consumers can send targeted notifications,
update external tracking systems, and trigger appropriate workflows when
reviews are re-requested.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/integrations/webhook_events/#re-request-review-events">View Documentation</a></p>
  </li>
  <li>
    <strong>Web IDE support for offline GitLab Self-Managed environments</strong>
    <p><p>GitLab Self-Managed administrators in offline or tightly controlled network environments can now configure a custom Web IDE extension host domain, enabling full Web IDE functionality without external internet access.</p>
<p>Previously, the Web IDE required connectivity to <code>.cdn.web-ide.gitlab-static.net</code> to load VS Code extensions and functionality. This requirement blocked Web IDE adoption for security-conscious organizations, government and public sector customers, and enterprises with strict network policies.</p>
<p>With this update, administrators can configure their GitLab instance to serve Web IDE assets directly, removing the dependency on external domains. You can now:</p>
<ul>
<li>Use the full Web IDE feature set in completely offline environments.</li>
<li>Enable the Extension Marketplace with a custom extension registry service.</li>
<li>Enable markdown preview, code editing, and GitLab Duo Chat within the Web IDE in isolated networks.</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/administration/settings/web_ide/">View Documentation</a></p>
  </li>
  <li>
    <strong>Webhook triggers for system-initiated approval resets</strong>
    <p><p>Integrating GitLab with external systems through webhooks is critical for automated
workflows and keeping teams informed about merge request status changes. However, when
GitLab automatically resets approvals (such as when new commits are pushed to a merge
request with &ldquo;Reset approvals on push&rdquo; enabled), external systems could not distinguish
these system-initiated events from manual user actions.</p>
<p>GitLab now includes enhanced webhook payloads that clearly identify system-initiated approval
resets. When approvals are automatically reset, webhooks now include:</p>
<ul>
<li>A <code>system</code> field set to <code>true</code>.</li>
<li>A <code>system_action</code> field that provides specific context about why the reset occurred,
such as <code>approvals_reset_on_push</code> or <code>code_owner_approvals_reset_on_push</code>.</li>
</ul>
<p>This means your webhook integrations can now distinguish between manual approval changes and
automatic system resets, enabling more sophisticated automation workflows that respond
appropriately to the specific context of each approval change.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/integrations/webhook_events/#system-initiated-merge-request-events">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Duo Planner Agent now available by default</strong>
    <p><p>The GitLab Duo Planner Agent is now available by default in the agent dropdown in GitLab Duo Chat, eliminating the need to manually add it from the AI Catalog. With full context of your work items, epics, issues, and tasks, the Planner Agent can now assist you at both the group and project levels.</p>
<p>Get started with <a href="https://docs.gitlab.com/user/duo_agent_platform/agents/foundational_agents/planner/#example-prompts"><strong>example prompts</strong></a> to see how the Planner Agent can help you break down complex work, create implementation plans, and organize your team&rsquo;s objectives.</p>
<p>This feature is in beta, and we welcome your feedback in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/576622">issue 576622</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/duo_agent_platform/agents/foundational_agents/planner/">View Documentation</a></p>
  </li>
  <li>
    <strong>Helm chart registry: No more 1,000 chart limit</strong>
    <p><p>GitLab&rsquo;s Helm chart registry previously generated metadata responses on-the-fly, which created performance bottlenecks when repositories contained large numbers of charts. To maintain system stability, we enforced a hard limit of the 1,000 most recent charts. This limit caused frustrating 404 errors when platform teams tried to access older chart versions.</p>
<p>Platform engineers were forced to implement complex workarounds, like splitting charts across multiple repositories, manually managing chart retention policies, or maintaining separate chart storage solutions. These workarounds added operational overhead and fragmented deployment workflows, making it harder to maintain centralized chart governance.</p>
<p>In GitLab 18.6, we&rsquo;ve eliminated the 1,000 chart limitation by pre-computing metadata responses and storing them in object storage. This architectural change delivers both unlimited chart access and improved performance, as metadata is generated once in background jobs rather than on every request.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/packages/helm_repository/">View Documentation</a></p>
  </li>
  <li>
    <strong>Warn mode in merge request approval policies (Beta)</strong>
    <p><p>Security teams can now use warn mode to test and validate the impact of security policies before applying enforcement, reducing developer friction during security policy rollouts.</p>
<p>When you create or edit a <a href="https://docs.gitlab.com/user/application_security/policies/merge_request_approval_policies/">merge request approval policy</a>, you can now choose between <code>warn</code> or <code>enforce</code> enforcement options.</p>
<p>Policies in warn mode generate informative bot comments without blocking merge requests. Optional approvers can be designated as points of contact for policy questions. This approach enables security teams to assess policy impact and build developer trust through transparent, gradual policy adoption.</p>
<p>Clear indicators in merge requests tell users when policies are in <code>warn</code> or <code>enforce</code> mode, and audit events track policy violations and dismissals for compliance reporting. Developers can dismiss vulnerabilities while providing reasoning for the dismissal, creating a collaborative approach to security policy management.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/policies/merge_request_approval_policies/#warn-mode">View Documentation</a></p>
  </li>
  <li>
    <strong>Security attributes (Beta)</strong>
    <p><p>Security teams can now apply business context to projects by leveraging security attributes.</p>
<p>Security attributes are organized by categories including business impact (with structured pre-defined selections), application, business unit, internet exposure, and location. Alternatively, you can create your own attribute categories and define labels within those categories.</p>
<p>By applying these attributes across your projects, you can much more quickly search, filter, and identify which projects within the security inventory that require action based on risk posture and organizational context. You may now:</p>
<ul>
<li>Identify projects that are mission critical and requiring better scan coverage</li>
<li>Review scan coverage by application or business unit</li>
<li>Search and filter based on the attributes applied to your projects</li>
<li>Quickly locate projects that contribute to applications which are publicly accessible/exposed</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/attributes/">View Documentation</a></p>
  </li>
  <li>
    <strong>Exceptions to bypass merge request approval policies</strong>
    <p><p>Organizations can now designate specific users, groups, roles, or custom roles that can bypass merge request approval policies in case critical situations occur. This capability provides flexibility for emergency responses, while maintaining comprehensive audit trails and governance controls.</p>
<p><strong>Emergency bypass with accountability</strong>: Designated users can bypass approval requirements during critical incidents, security hotfixes, or urgent production issues. When emergencies strike, authorized personnel can merge or push changes immediately while the system captures detailed justification and audit information for compliance review.</p>
<p><strong>Key capabilities include:</strong></p>
<ul>
<li><strong>Documented bypass process</strong>: When authorized users invoke a policy bypass, they must provide detailed reasoning using an intuitive modal interface, ensuring every exception is properly documented with context.</li>
<li><strong>Comprehensive audit integration</strong>: Every bypass generates detailed audit events including user identity, policy context, reasoning, and timestamps for complete visibility into exception usage patterns.</li>
<li><strong>Flexible configuration</strong>: Define exception permissions for policies using YAML or UI configuration, supporting individual users, GitLab groups, standard roles, and custom roles.</li>
<li><strong>Git-based push exceptions</strong>: Users with pre-approved policy exceptions may push directly when invoking the push bypass option <code>security_policy.bypass_reason</code>.</li>
</ul>
<p>This feature eliminates the need to entirely disable security policies during emergencies, providing a controlled path for urgent changes while preserving organizational governance and audit requirements.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/policies/merge_request_approval_policies/#user-group-role-and-custom-role-exceptions">View Documentation</a></p>
  </li>
  <li>
    <strong>Designate an account succession beneficiary</strong>
    <p>You can now designate an account beneficiary permission to manage your GitLab account if you are incapacitated or unavailable. To access your account, the beneficiary must provide appropriate legal documentation. This feature helps ensure the continuity of your work and projects while preventing unauthorized access.</p>
    <p><a href="https://docs.gitlab.com/user/profile/account/account_succession/">View Documentation</a></p>
  </li>
  <li>
    <strong>Group Owners can update primary emails for enterprise users</strong>
    <p>Group owners can can now update the primary email address of enterprise users in their group. Updates can be made through the Users API. Previously, each enterprise user had to manually update their own email address. This change makes it easier to manage enterprise users at scale.</p>
    <p><a href="https://docs.gitlab.com/user/enterprise_user/">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner 18.6</strong>
    <p><p>We’re also releasing GitLab Runner 18.6 today! GitLab Runner is the highly-scalable build agent that runs your CI/CD jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.</p>
<h4 id="whats-new">What&rsquo;s New:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/39013">Implement minimal job confirmation API</a></li>
</ul>
<h4 id="bug-fixes">Bug Fixes:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38488">GitLab Runner does not expand the variables in the Docker image platform option</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/37879">Helper sidecar container fails to upload cache to S3 bucket from another account</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/37878">Automatically canceled job continues execution and fails</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/36060">Missing UTF8 BOM in the generated PowerShell script allows remote code execution using merge request title with character Ä</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/30109">Intermittent Kubernetes API server request failures with Kubernetes executor</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/26624">When using a Kubernetes executor, jobs with large commit messages fail</a></li>
</ul>
<p>The list of all changes is in the GitLab Runner <a href="https://gitlab.com/gitlab-org/gitlab-runner/blob/18-6-stable/CHANGELOG.md">CHANGELOG</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/runner">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab Patch Release: 18.5.2, 18.4.4, 18.3.6</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-5-2-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-5-2-released/</id><published>2025-11-12T00:00:00Z</published><updated>2025-11-12T00:00:00Z</updated><author><name>Félix Veillette-Potvin</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On November 12, 2025, we released versions 18.5.2, 18.4.4, 18.3.6 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, please visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring that all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. To maintain good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/2020/05/20/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, it means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-5-2-released/#cve-2025-11224---cross-site-scripting-issue-in-k8s-proxy-impacts-gitlab-ceee">Cross-site scripting issue in k8s proxy impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-5-2-released/#cve-2025-11865---incorrect-authorization-issue-in-workflows-impacts-gitlab-ee">Incorrect Authorization issue in workflows impacts GitLab EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-5-2-released/#cve-2025-2615---information-disclosure-issue-in-graphql-subscriptions-impacts-gitlab-ceee">Information Disclosure issue in GraphQL subscriptions impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-5-2-released/#cve-2025-7000---information-disclosure-issue-in-access-control-impacts-gitlab-ceee">Information Disclosure issue in access control impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-5-2-released/#cve-2025-6945---prompt-injection-issue-in-gitlab-duo-review-impacts-gitlab-ee">Prompt Injection issue in GitLab Duo review impacts GitLab EE</a></td>
          <td>Low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-5-2-released/#cve-2025-6171---information-disclosure-issue-in-packages-api-endpoint-impacts-gitlab-ceee">Information Disclosure issue in packages API endpoint impacts GitLab CE/EE</a></td>
          <td>Low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-5-2-released/#cve-2025-11990---client-side-path-traversal-issue-in-branch-names-impacts-gitlab-ee">Client Side Path Traversal issue in branch names impacts GitLab EE</a></td>
          <td>Low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-5-2-released/#cve-2025-7736---improper-access-control-issue-in-gitlab-pages-impacts-gitlab-ceee">Improper Access Control issue in GitLab Pages impacts GitLab CE/EE</a></td>
          <td>Low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-5-2-released/#cve-2025-12983---denial-of-service-issue-in-markdown-impacts-gitlab-ceee">Denial of service issue in markdown impacts GitLab CE/EE</a></td>
          <td>Low</td>
      </tr>
  </tbody>
</table>
<h3 id="cve-2025-11224---cross-site-scripting-issue-in-k8s-proxy-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-11224">CVE-2025-11224</a> - Cross-site scripting issue in k8s proxy impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that, under certain conditions, could have allowed an authenticated user to execute stored cross-site scripting through improper input validation in the Kubernetes proxy functionality.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 15.10 before 18.3.6, 18.4 before 18.4.4, and 18.5 before 18.5.2 <br>
<strong>CVSS</strong> 7.7 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:H/I:H/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-11865---incorrect-authorization-issue-in-workflows-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-11865">CVE-2025-11865</a> - Incorrect Authorization issue in workflows impacts GitLab EE</h3>
<p>GitLab has remediated an issue that, under certain circumstances, could have allowed a user to remove Duo flows of another user.</p>
<p><strong>Impacted Versions:</strong> GitLab EE: all versions from 18.1 before 18.3.6, 18.4 before 18.4.4, and 18.5 before 18.5.2 <br>
<strong>CVSS</strong> 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N</code></a>)</p>
<p>This vulnerability has been discovered internally by GitLab team member <a href="https://gitlab.com/DylanGriffith">Dylan Griffith</a>.</p>
<h3 id="cve-2025-2615---information-disclosure-issue-in-graphql-subscriptions-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-2615">CVE-2025-2615</a> - Information Disclosure issue in GraphQL subscriptions impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed a blocked user to access sensitive information by establishing GraphQL subscriptions through WebSocket connections.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 16.7 before 18.3.6, 18.4 before 18.4.4, and 18.5 before 18.5.2 <br>
<strong>CVSS</strong> 4.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/rogerace">rogerace</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-7000---information-disclosure-issue-in-access-control-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-7000">CVE-2025-7000</a> - Information Disclosure issue in access control impacts GitLab CE/EE</h3>
<p>GitLab has remdiated an issue in GitLab CE/EE that under specific conditions, could have allowed unauthorized users to view confidential branch names by accessing project issues with related merge requests.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 17.6 before 18.3.6, 18.4 before 18.4.4, and 18.5 before 18.5.2 <br>
<strong>CVSS</strong> 4.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/weasterhacker">weasterhacker</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-6945---prompt-injection-issue-in-gitlab-duo-review-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-6945">CVE-2025-6945</a> - Prompt Injection issue in GitLab Duo review impacts GitLab EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to leak sensitive information from confidential issues by injecting hidden prompts in merge request comments.</p>
<p><strong>Impacted Versions:</strong> GitLab EE: all versions from 17.9 before 18.3.6, 18.4 before 18.4.4, and 18.5 before 18.5.2 <br>
<strong>CVSS</strong> 3.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/rogerace">rogerace</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-11990---client-side-path-traversal-issue-in-branch-names-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-11990">CVE-2025-11990</a> - Client Side Path Traversal issue in branch names impacts GitLab EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to gain CSRF tokens by exploiting improper input validation in repository references combined with redirect handling weaknesses.</p>
<p><strong>Impacted Versions:</strong> GitLab EE: all versions from 18.4 before 18.4.4, and 18.5 before 18.5.2 <br>
<strong>CVSS</strong> 3.1 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:N/A:N"><code>CVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/swiftee">swiftee</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-6171---information-disclosure-issue-in-packages-api-endpoint-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-6171">CVE-2025-6171</a> - Information Disclosure issue in packages API endpoint impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user with reporter access to view branch names and pipeline details by accessing the packages API endpoint even when repository access was disabled.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 13.2 before 18.3.6, 18.4 before 18.4.4, and 18.5 before 18.5.2 <br>
<strong>CVSS</strong> 3.1 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/iamgk808">iamgk808</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-7736---improper-access-control-issue-in-gitlab-pages-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-7736">CVE-2025-7736</a> - Improper Access Control issue in GitLab Pages impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to bypass access control restrictions and view GitLab Pages content intended only for project members by authenticating through OAuth providers.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 17.9 before 18.3.6, 18.4 before 18.4.4, and 18.5 before 18.5.2 <br>
<strong>CVSS</strong> 3.1 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/mateuszek">mateuszek</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-12983---denial-of-service-issue-in-markdown-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-12983">CVE-2025-12983</a> - Denial of service issue in markdown impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to cause a denial of service condition by submitting specially crafted markdown content with nested formatting patterns.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 16.9 before 18.3.6, 18.4 before 18.4.4, and 18.5 before 18.5.2 <br>
<strong>CVSS</strong> 3.1 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:L"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:L</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/phli">phli</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="libxslt-security-updates">libxslt security updates</h3>
<p>libxslt has been updated to version 1.1.43 which contains fixes for security vulnerabilities including CVE-2024-55549 and CVE-2025-24855</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1852">18.5.2</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2687">[18.5] Backport of &ldquo;Rails: Add explicit ClickHouse check skip&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/209319">Backport of &lsquo;rf-disable-sec-attribute-feature-flags&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/209855">Backport E2E test: fix create project web ui 18-5</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/209249">18.5 Backport of &lsquo;Fix query for finding existing Jira issues for vulnerabilities&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/209757">Backport of &lsquo;Filter out group-level rules from details page&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/210364">[18.5] Reduce cached SQL queries in <code>/api/v4/internal/pages</code> endpoint</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/210400">[18.5] Update dependency openssl to v3.3.2</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/210610">Update dependency simplecov-cobertura to v3</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/209795">Backport of  Fix password validation exception for FIPS</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/210300">Backport of &lsquo;Fix admin_project_member policy for SAML projects related to user namespaces&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/210536">Backport of &lsquo;Web Agentic Chat: fix calling workflowGoal on undefined&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/210353">[Backport 18.5] Turn off Duo core widget for self-managed</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/210747">Backport of &lsquo;Fix status mapping evaluation for non-persisted current status records&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/210341">[18.5] Upgrade Rack to 2.2.20</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/210737">Backport of Elastic rake tasks projects_not_indexed and index_projects_status could be confusing</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/210512">Backport of &lsquo;Add deleted Geo migration back&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/211228">Backport of  Allow Legacy FIPS instances to Upgrade Oauth secerets</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/210726">Backport of Zoekt Exclude forks and Include archived filters in the cache key</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/211436">[Backport 18.5] Clear tracking queues when recreating index from scratch</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/211435">[18.5 Backport] Delete failed reindexing indexes created over 30 days ago</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/211412">Backport of &lsquo;Fix redirect loop in Gitea rate limit`</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/211537">[18.5 Backport] Set http_continue_timeout to nil for s3 client</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/211571">[18.5] Fix background migration when Ghost user is missing</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/211409">Backport Support Jira Cloud and Server issue fetching</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/211708">[18.5] Fix test failure by adjusting dates to match partition range</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/211556">Backport &lsquo;Revert merge trains changes to getState GraphQL query&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/211750">Backport &lsquo;Update merge request widget polling timeout intervals&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/211524">[18.5] Downgrade Zeitwerk to 2.6.18</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/210558">[Backport/18.5] of Fix instance bbm for mishandled nil verification token</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8808">Fix NGINX not routing traffic to the right server</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8814">[18.5] Uninstall rexml 3.4.0 and ensure 3.4.4 is used</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8820">Update redis to v7.2.11</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8836">Bump eventmachine-tail gem to version 0.6.6</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8849">[18.5] Upgrade Rack to 2.2.20</a></li>
</ul>
<h3 id="1844">18.4.4</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2688">[18.4] Backport of &ldquo;Rails: Add explicit ClickHouse check skip&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/210365">[18.4] Reduce cached SQL queries in <code>/api/v4/internal/pages</code> endpoint</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/210402">[18.4] Update dependency openssl to v3.3.2</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/208305">Backports branch &rsquo;tachyons-remove-ff-sha512-oauth&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/210395">[18.4] Update rexml to v3.4.4</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/209793">Backport of Fix password validation exception for FIPS</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/210295">Backport of &lsquo;Fix admin_project_member policy for SAML projects related to user namespaces&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/210361">[Backport 18.4] Turn off Duo core widget for self-managed</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/210343">[18.4] Upgrade Rack to 2.2.20</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/210754">Backport of Elastic rake tasks projects_not_indexed and index_projects_status could be confusing</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/210510">Backport of &lsquo;Add deleted Geo migration back&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/210925">Backport of &lsquo;Fix: prevent duplicate &lsquo;?&rsquo; in Download directory URL (use &lsquo;&amp;&rsquo; for extra params)&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/211227">Backport of  Allow Legacy FIPS instances to Upgrade Oauth secrets</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/211421">Backport of &lsquo;Fix redirect loop in Gitea rate limit&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/211538">[18.4 Backport] Set http_continue_timeout to nil for s3 client</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/211563">Backport of Update Jira integration to use token-based pagination and Support Jira Cloud and Server issue fetching</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/211555">Backport &lsquo;Revert merge trains changes to getState GraphQL query&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/210729">Backport of Zoekt Exclude forks and Include archived filters in the cache key</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/211751">Backport &lsquo;Update merge request widget polling timeout intervals&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/210555">[Backport/18.4] of Fix instance bbm for mishandled nil verification token</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8815">[18.4] Uninstall rexml 3.4.0 and ensure 3.4.4 is used</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8821">Update redis to v7.2.11</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8850">[18.4] Upgrade Rack to 2.2.20</a></li>
</ul>
<h3 id="1836">18.3.6</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/210366">[18.3] Reduce cached SQL queries in <code>/api/v4/internal/pages</code> endpoint</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/210403">[18.3] Update dependency openssl to v3.3.2</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/210394">[18.3] Update rexml to v3.4.4</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/210346">[18.3] Upgrade Rack to 2.2.20</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/211539">[18.3 Backport] Set http_continue_timeout to nil for s3 client</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/211473">Backport of &lsquo;Fix redirect loop in Gitea rate limit&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/211572">Backport of Update Jira integration to use token-based pagination and Support Jira Cloud and Server issue fetching</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8816">[18.3] Uninstall rexml 3.4.0 and ensure 3.4.4 is used</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8822">Update redis to v7.2.11</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8851">[18.3] Upgrade Rack to 2.2.20</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>This patch includes database migrations that may impact your upgrade process.</p>
<h3 id="impact-on-your-installation">Impact on your installation:</h3>
<ul>
<li><strong>Single-node instances</strong>: This patch will cause downtime during the upgrade as migrations must complete before GitLab can start.</li>
<li><strong>Multi-node instances</strong>: With proper <a href="https://docs.gitlab.com/ee/update/zero_downtime.html">zero-downtime upgrade procedures</a>, this patch can be applied without downtime.</li>
</ul>
<h3 id="post-deploy-migrations">Post-deploy migrations</h3>
<p>The following versions include post-deploy migrations that can run after the upgrade:</p>
<ul>
<li>18.5.2</li>
<li>18.4.4</li>
</ul>
<p>To learn more about the impact of upgrades on your installation, see:</p>
<ul>
<li><a href="https://docs.gitlab.com/ee/update/zero_downtime.html">Zero-downtime upgrades</a> for multi-node deployments</li>
<li><a href="https://docs.gitlab.com/update/package/#downtime">Standard upgrades</a> for single-node installations</li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">Update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 18.5.1, 18.4.3, 18.3.5</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-5-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-5-1-released/</id><published>2025-10-22T00:00:00Z</published><updated>2025-10-22T00:00:00Z</updated><author><name>Félix Veillette-Potvin</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On October 22, 2025, we released versions 18.5.1, 18.4.3, 18.3.5 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, please visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring that all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. To maintain good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/2020/05/20/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, it means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-5-1-released/#cve-2025-11702---improper-access-control-issue-in-runner-api-impacts-gitlab-ee">Improper access control issue in runner API impacts GitLab EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-5-1-released/#cve-2025-10497---denial-of-service-issue-in-event-collection-impacts-gitlab-ceee">Denial of service issue in event collection impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-5-1-released/#cve-2025-11447---denial-of-service-issue-in-json-validation-impacts-gitlab-ceee">Denial of service issue in JSON validation impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-5-1-released/#cve-2025-11974---denial-of-service-issue-in-upload-impacts-gitlab-ceee">Denial of service issue in upload impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-5-1-released/#cve-2025-11971---incorrect-authorization-issue-in-pipeline-builds-impacts-gitlab-ee">Incorrect Authorization issue in pipeline builds impacts GitLab EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-5-1-released/#cve-2025-6601---business-logic-error-issue-in-group-memberships-impacts-gitlab-ee">Business logic error issue in group memberships impacts GitLab EE</a></td>
          <td>Low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-5-1-released/#cve-2025-11989---missing-authorization-issue-in-quick-actions-impacts-gitlab-ee">Missing authorization issue in quick actions impacts GitLab EE</a></td>
          <td>Low</td>
      </tr>
  </tbody>
</table>
<h3 id="cve-2025-11702---improper-access-control-issue-in-runner-api-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-11702">CVE-2025-11702</a> - Improper access control issue in runner API impacts GitLab EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user with specific permissions to hijack project runners from other projects.</p>
<p><strong>Impacted Versions:</strong> GitLab EE: all versions from 17.1 before 18.3.5, 18.4 before 18.4.3, and 18.5 before 18.5.1 <br>
<strong>CVSS</strong> 8.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:H"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/iamgk808">iamgk808</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-10497---denial-of-service-issue-in-event-collection-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-10497">CVE-2025-10497</a> - Denial of service issue in event collection impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an unauthenticated user to cause a denial of service condition by sending specially crafted payloads.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 17.10 before 18.3.5, 18.4 before 18.4.3, and 18.5 before 18.5.1 <br>
<strong>CVSS</strong> 7.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/a92847865">a92847865</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-11447---denial-of-service-issue-in-json-validation-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-11447">CVE-2025-11447</a> - Denial of service issue in JSON validation impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an unauthenticated user to cause a denial of service condition by sending GraphQL requests with crafted JSON payloads.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 11.0 before 18.3.5, 18.4 before 18.4.3, and 18.5 before 18.5.1 <br>
<strong>CVSS</strong> 7.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/a92847865">a92847865</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-11974---denial-of-service-issue-in-upload-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-11974">CVE-2025-11974</a> - Denial of service issue in upload impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an unauthenticated user to create a denial of service condition by uploading large files to specific API endpoints.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 11.7 before 18.3.5, 18.4 before 18.4.3, and 18.5 before 18.5.1 <br>
<strong>CVSS</strong> 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>This vulnerability has been discovered internally by GitLab team member David Fernandez</p>
<h3 id="cve-2025-11971---incorrect-authorization-issue-in-pipeline-builds-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-11971">CVE-2025-11971</a> - Incorrect Authorization issue in pipeline builds impacts GitLab EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to trigger unauthorized pipeline executions by manipulating commits.</p>
<p><strong>Impacted Versions:</strong> GitLab EE: all versions from 10.6 before 18.3.5, 18.4 before 18.4.3, and 18.5 before 18.5.1 <br>
<strong>CVSS</strong>  6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:H/I:L/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:H/I:L/A:N</code></a>)</p>
<h3 id="cve-2025-6601---business-logic-error-issue-in-group-memberships-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-6601">CVE-2025-6601</a> - Business logic error issue in group memberships impacts GitLab EE</h3>
<p>GitLab has remediated an issue that under certain conditions could have allowed authenticated users to gain unauthorized project access by exploiting the access request approval workflow.</p>
<p><strong>Impacted Versions:</strong> GitLab EE: all versions from 18.4 before 18.4.3 and 18.5 before 18.5.1 <br>
<strong>CVSS</strong> 3.8 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:L/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:L/I:L/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/mateuszek">mateuszek</a> and <a href="https://hackerone.com/rhidayahh">rhidayahh</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="cve-2025-11989---missing-authorization-issue-in-quick-actions-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-11989">CVE-2025-11989</a> - Missing authorization issue in quick actions impacts GitLab EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to execute unauthorized quick actions by including malicious commands in specific descriptions.</p>
<p><strong>Impacted Versions:</strong> GitLab EE: all versions from 17.6 before 18.3.5, 18.4 before 18.4.3, and 18.5 before 18.5.1 <br>
<strong>CVSS</strong> 3.7 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:L/I:L/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:L/I:L/A:N</code></a>)</p>
<p>This vulnerability has been discovered internally by GitLab team member Eva Kadlecová</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1851">18.5.1</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/209210">[18.5] Downgrade redis-rb gem to v5.4.0</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/209234">[18.5] Fix connection pool errors when health check is running</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/209577">Backport: Test: dismiss duo popover</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/209240">Backport of &lsquo;Fix work item status fallback to use lifecycle-aware default&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/cluster-integration/gitlab-agent/-/merge_requests/3063">Support stable branch pipelines (18.5 backport)</a></li>
</ul>
<h3 id="1843">18.4.3</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/8221">pgbouncer: Use new bitnamilegacy container registry (18.4 backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/207903">[18.4] Revert discarded database pool check in load balancer</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/207417">Backport &lsquo;Fix group wiki inaccessible after deleting and creating group with the same name&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/208091">Backport ElasticIndexBulkCronWorker throwing NoMethodError for epics</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/208242">[18.4] Fix Geo routes leaking to other specs</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/208124">Backport Allow Zoekt in Search API for blobs scope when Elasticsearch disabled</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/208081">Backport fix-agentic-chat-service-url-for-shm for 18.4 EE</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/208083">Backport Zoekt Kaminari raises an exception if total_count gets negative</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/208280">Backport (18.4) &ldquo;Update dependency @gitlab/web-ide to ^0.0.1-dev-20250925110326&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/208307">Backport branch &lsquo;sh-fix-login-issues-ubuntu-fips&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/208436">Backport &ldquo;Improve performance of ready to merge GraphQL query&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/208601">[18.4] Fix flaky callout dismissal specs</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/208255">Backport: Ensure consistent approval permissions between UI, API and graphql</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/208805">Backport of &lsquo;Show whitespace message when there&rsquo;s nothing to show&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/209204">[18.4] Downgrade redis-rb gem to v5.4.0</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/209233">[18.4] Fix connection pool errors when health check is running</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/209272">Backport &lsquo;Remove available auto merge strategies from ready to merge query&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/209250">18.4 Backport of &lsquo;Fix query for finding existing Jira issues for vulnerabilities&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/209578">Backport: Test: dismiss duo popover</a></li>
<li><a href="https://gitlab.com/gitlab-org/cluster-integration/gitlab-agent/-/merge_requests/3064">Support stable branch pipelines (18.4 backport)</a></li>
</ul>
<h3 id="1835">18.3.5</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/8222">pgbouncer: Use new bitnamilegacy container registry (18.3 backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/207838">[18.3] Prevent session creation for sessionless users</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206914">Backport of &lsquo;Fix Start free trial link for self-managed instances&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206733">Backport &lsquo;Fix SlackIntegration duplicate bug when inheriting from parent&rsquo; to 18.3</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/208109">Backport ElasticIndexBulkCronWorker throwing NoMethodError for epics</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205251">Backport of &lsquo;Recreate SlackIntegration records on descendant integration on update&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/207447">[18.3] Fix json validation for elasticsearch_aws_role_arn</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/208605">[18.3] Fix flaky callout dismissal specs</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/208243">[18.3] Fix Geo routes leaking to other specs</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/208277">Backport (18.3) &ldquo;Update dependency @gitlab/web-ide to ^0.0.1-dev-20250925110326&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/208806">Backport of &lsquo;Show whitespace message when there&rsquo;s nothing to show&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/209206">[18.3] Downgrade redis-rb gem to v5.4.0</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/209579">Backport: Test: dismiss duo popover 18-3</a></li>
<li><a href="https://gitlab.com/gitlab-org/cluster-integration/gitlab-agent/-/merge_requests/3065">Support stable branch pipelines (18.3 backport)</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>These versions do not include any new migrations, and for multi-node deployments, <a href="https://docs.gitlab.com/ee/update/#upgrading-without-downtime">should not require any downtime</a>.</p>
<p>Please be aware that by default the Omnibus packages will stop, run migrations,
and start again, no matter how “big” or “small” the upgrade is. This behavior
can be changed by adding a <a href="https://docs.gitlab.com/ee/update/zero_downtime.html"><code>/etc/gitlab/skip-auto-reconfigure</code></a> file,
which is only used for <a href="https://docs.gitlab.com/omnibus/update/README.html">updates</a>.</p>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">Update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab 18.5 released</title><link href="https://docs.gitlab.com/releases/18/18-5-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/18/18-5-released/</id><published>2025-10-16T00:00:00Z</published><updated>2025-10-16T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On October 16, 2025, GitLab 18.5 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong>Jose Gabriel Companioni Benitez</strong>
</p>
<p>In his blog post <a href="https://compacompila.com/posts/gitlab-open-source-community/">&ldquo;How GitLab Can Boost Your Professional Career&rdquo;</a>,
Jose shares: &ldquo;For me, the main advantage that GitLab offers, from a professional development
point of view, is that it is open source.&rdquo; He adds, &ldquo;For GitLab, it&rsquo;s important
that anyone can contribute, and for that reason, they have taken the contributor
onboarding process very seriously.&rdquo;</p>
<p>Jose&rsquo;s journey from first-time contributor in September to Notable Contributor
in October demonstrates the power of the GitLab collaborative community. Through
active participation in community office hours, Discord discussions, and pairing
sessions, Jose found a supportive environment that helped him quickly grow to a
level 3 contributor with diverse contributions spanning <a href="https://gitlab.com/gitlab-org/cli/-/merge_requests/2392">documentation</a>,
<a href="https://gitlab.com/gitlab-org/terraform-provider-gitlab/-/merge_requests/2690">code</a>, and community support.</p>
<p>The GitLab community offers a welcoming space where contributors
support one another and grow together. Whether you&rsquo;re just starting your open-source
journey or looking to deepen your skills, our community is here to help you succeed.</p>
<p>To learn more about contributing, see the <a href="https://contributors.gitlab.com/">GitLab Contributor Platform</a>.</p>
<p>Thank you, Jose, for your outstanding work! 🚀</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>GitLab Duo Planner, a specialized agent and Product Manager team member (beta)</strong>
    <p>Collaborate with GitLab Duo Planner, a GitLab Duo agent built to support product managers directly within GitLab. Instead of manually chasing updates, prioritizing work, or summarizing planning data, GitLab Duo Planner helps you analyze backlogs, apply frameworks like RICE or MoSCoW, and surface what truly needs your attention. It&rsquo;s like having a proactive teammate who understands your planning workflow and works with you to make better, faster decisions. This feature is currently in beta. Please provide feedback in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/576622">issue 576622</a>.</p>
    <p><a href="https://docs.gitlab.com/user/duo_agent_platform/agents/foundational_agents/planner/">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Security Analyst Agent for Duo Agent Catalog (beta)</strong>
    <p><p>Agents in GitLab Duo Agent Platform can be used to perform tasks and answer complex questions
within GitLab. Users can either create custom agents to accomplish specific tasks, like creating merge requests or reviewing code,
or discover GitLab agents using the AI Catalog.</p>
<p>In GitLab 18.5, we are releasing the GitLab Security Analyst Agent as a beta feature, available in the AI Catalog. To use the GitLab Security Analyst Agent in specific projects, select and enable the agent in GitLab Duo Agentic Chat. The agent can perform the following tasks:</p>
<ul>
<li>List all vulnerabilities in a given project.</li>
<li>Get detailed vulnerability information, including CVE data and EPSS scores.</li>
<li>Confirm and dismiss vulnerabilities.</li>
<li>Update vulnerability severity levels.</li>
<li>Revert vulnerability status back to <code>detected</code>.</li>
<li>Create vulnerability issues, or link vulnerabilities to existing issues.</li>
</ul>
<p>With the GitLab Security Analyst Agent, users can perform tedious security workflows through AI-powered automation and intelligent analysis, enabling engineers to focus on genuine threats while the GitLab Security Analyst Agent handles repetitive assessment and documentation. Please note that the GitLab Security Analyst Agent using GitLab Duo Chat is only available for Ultimate customers with the GitLab Duo add-on.</p>
<p>This feature is in beta, and we welcome your feedback in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/576916">issue 576916</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/duo_agent_platform/agents/">View Documentation</a></p>
  </li>
  <li>
    <strong>Maven virtual registry now available in beta</strong>
    <p><p>GitLab 18.5 introduces a comprehensive web-based interface for Maven virtual registry management. Previously, platform engineers could only configure and manage virtual registries through API calls, which makes routine maintenance tasks cumbersome and requires specialized knowledge.</p>
<p>This web-based approach significantly reduces operational overhead for platform engineering teams. Common tasks, like clearing stale cache entries, reordering upstreams for performance optimization, and testing connectivity are now point-and-click operations. Development teams gain better visibility into their dependency configuration, enabling more informed discussions about build performance and security policies.</p>
<p>The Maven virtual registry remains in beta for GitLab Premium and Ultimate customers. Current beta limitations include a maximum of 20 virtual registries per top-level group and 20 upstreams per virtual registry.</p>
<p>We invite enterprise customers to participate in the Maven virtual registry beta program to help shape the final release. Please consider sharing feedback and suggestions in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/543045">issue 543045</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/packages/virtual_registry/maven/#manage-virtual-registries">View Documentation</a></p>
  </li>
  <li>
    <strong>Pick up where you left off on the new personal homepage</strong>
    <p>You can now access a new personal homepage that consolidates all your important GitLab activities in one place, making it easier to pick up where you left off. The homepage brings together your to-do items, assigned issues, merge requests, review requests, and recently viewed content, helping you navigate GitLab&rsquo;s large surface area and stay focused on what matters the most to you.</p>
    <p><a href="https://docs.gitlab.com/tutorials/personal_homepage/">View Documentation</a></p>
  </li>
  <li>
    <strong>GPT-5 now available as a model option for GitLab Duo Agentic Chat</strong>
    <p><p>OpenAI GPT-5 is now available as a GitLab AI Vendor model when selecting a model for GitLab Duo Agent Platform. When configured by Owners of a top-level group on GitLab.com and instance Administrators on Self-Managed and Dedicated, end-users can select to use GPT-5 with GitLab Duo features. Top-level owners and administrators can continue to set organization-wide model preferences through namespace or instance settings, or allow end-user to choose from all available GitLab AI Vendor models.</p>
<p>To get started using GPT-5, select your preferred model from the model dropdown list in GitLab Duo Chat.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/gitlab_duo_chat/agentic_chat/#select-a-model">View Documentation</a></p>
  </li>
  <li>
    <strong>Instance-wide compliance and security policy management</strong>
    <p><p>Enterprise users want to manage their compliance frameworks and security policies across multiple top-level groups.
This is often the case when all groups in an instance:</p>
<ul>
<li>Share the same compliance frameworks. For example, when all projects in a group must adhere to the ISO 27001 standard.</li>
<li>Enforce similar security policies. For example, when all groups share the same pipeline execution policy.</li>
</ul>
<p>With GitLab 18.5, we introduce compliance and security policy groups to centralize the management of security policies and compliance frameworks on an instance for GitLab Self-Managed
and Dedicated instances. With this release, you can now create, configure, and allocate compliance frameworks and
security policies from a single top-level group and enforce them across all of the other top-level groups across your instance.</p>
<p>With a compliance and security policy group, you have a single source of truth
where you can manage and edit your compliance frameworks and security policies.
Security and compliance users within the group can then apply compliance frameworks and security policies to all the projects across the instance.</p>
<p>Compliance and security policy groups make it easier to manage and enforce your compliance and security
needs across your instance. However, groups still retain the ability to create their own compliance
frameworks and security policies to address specific situations or workflows that can arise in those groups.</p>
<p>This feature is for GitLab Self-Managed and Dedicated customers. GitLab.com customers can
manage frameworks and policies centrally within a single top-level group or namespace using security policy projects.</p>
<p>Learn more about compliance and security policy groups for <a href="https://docs.gitlab.com/user/compliance/compliance_frameworks/centralized_compliance_frameworks/">compliance frameworks</a> and <a href="https://docs.gitlab.com/user/application_security/policies/enforcement/compliance_and_security_policy_groups/">security policies</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/security/compliance_security_policy_management/">View Documentation</a></p>
  </li>
  <li>
    <strong>DAST authentication scripts</strong>
    <p><p>You can now add scripts to your CI/CD configurations to automate DAST authentication workflows. Authentication scripts enable automating complex authentication flows, including support for time-based, one-time passwords (OTP MFA).</p>
<p>This enhancement helps your team maintain critical security controls while conducting thorough, automated security scans. By supporting real-world authentication scenarios, scripts reduce friction and ensure accurate security assessments of production software.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/dast/browser/configuration/authentication_scripts/">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Agentic Core</h4>
<ul>
  <li>
    <strong>Additional triggers for CLI agents</strong>
    <p><p>You can now trigger CLI agents using additional events to give you more flexibility and control over where and when your agents take action across your projects. Along with the existing <strong>mention</strong> trigger, you can use:</p>
<ul>
<li><strong>Assign</strong>: Trigger agents when a merge request or issue is assigned.</li>
<li><strong>Assign reviewer</strong>: Trigger agents when a reviewer is added to a merge request.</li>
</ul></p>
    <p><a href="https://docs.gitlab.com/user/duo_agent_platform/triggers/">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Duo Agent Platform for GitLab Duo Self-Hosted now in beta</strong>
    <p>GitLab Duo Agent Platform is now in beta for GitLab Duo Self-Hosted. This feature is available to all Self-Managed GitLab Duo Enterprise customers. Self-Managed instance administrators using AWS Bedrock or Azure OpenAI can configure Anthropic Claude or OpenAI GPT models for use with GitLab Duo Agent Platform.  Self-Hosted administrators can also configure <a href="https://docs.gitlab.com/administration/gitlab_duo_self_hosted/supported_models_and_hardware_requirements/#compatible-models">compatible models</a> to use with Gitlab Duo Agent Platform.</p>
    <p><a href="https://docs.gitlab.com/administration/gitlab_duo_self_hosted/configure_duo_features/#configure-access-to-the-gitlab-duo-agent-platform">View Documentation</a></p>
  </li>
  <li>
    <strong>Codestral now supported for GitLab Duo Chat (Classic)</strong>
    <p>You can now use Mistral Codestral on <a href="https://docs.gitlab.com/administration/gitlab_duo_self_hosted/supported_models_and_hardware_requirements/#supported-models">Gitlab Duo Self-Hosted</a> for classic Duo Chat. This model is supported for Gitlab Duo Self-Hosted customers on GitLab Self-Managed instances.</p>
    <p><a href="https://docs.gitlab.com/administration/gitlab_duo_self_hosted/supported_models_and_hardware_requirements/#supported-models">View Documentation</a></p>
  </li>
  <li>
    <strong>GPT OSS Models compatible with GitLab Duo Agent Platform for GitLab Duo Self-Hosted</strong>
    <p>You can now use GPT OSS models on GitLab Duo Agent Platform with <a href="https://docs.gitlab.com/administration/gitlab_duo_self_hosted/supported_models_and_hardware_requirements/#supported-models">Gitlab Duo Self-Hosted</a>.</p>
    <p><a href="https://docs.gitlab.com/administration/gitlab_duo_self_hosted/supported_models_and_hardware_requirements/#compatible-models">View Documentation</a></p>
  </li>
</ul>
<h4>Scale and Deployments</h4>
<ul>
  <li>
    <strong>Enhanced **Admin** area groups list</strong>
    <p><p>We&rsquo;ve upgraded the <strong>Admin</strong> area groups list to provide a more consistent experience for GitLab administrators:</p>
<ul>
<li>Delayed deletion protection: Group deletions now follow the same safe deletion flow used throughout GitLab, preventing accidental data loss.</li>
<li>Faster interactions: Filter, sort, and paginate groups without page reloads for a more responsive experience.</li>
<li>Consistent interface: The groups list now matches the look and behavior of other group lists across GitLab.</li>
</ul>
<p>This update brings the administrator experience in line with GitLab design standards, and adds important safety features to protect your data. Future enhancements to group management will automatically appear in all group lists throughout the platform.</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/admin_area/#administering-groups">View Documentation</a></p>
  </li>
  <li>
    <strong>Updated navigation experience for groups</strong>
    <p><p>We&rsquo;ve made changes to the group overview list to deliver a more consistent and efficient experience across GitLab.
These improvements make it easier to navigate your groups and projects while providing more valuable information at a glance:</p>
<ul>
<li>Richer project information: Projects now display stars, forks, issues, merge requests, and relevant dates, giving you a complete activity overview at a glance.</li>
<li>Streamlined actions: Edit or delete groups and projects directly from the overview using the actions menu. Archived and pending deletion items appear in the <strong>Inactive</strong> tab.</li>
<li>Consistent experience: The group overview now matches the look and behavior of other group and project lists throughout GitLab for a more intuitive experience.</li>
</ul>
<p>These enhancements save time by putting more information and actions at your fingertips. This update also lays the groundwork for future features like bulk editing and advanced filtering options.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/group/#view-a-group">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved inactive item management for groups and projects</strong>
    <p><p>The <strong>Inactive</strong> tab now consistently displays all inactive items in one unified location across GitLab. This includes archived projects, projects pending deletion, and groups pending deletion.
This tab is available on the group overview page, as well as in group and project lists throughout <strong>Your work</strong>, <strong>Explore</strong>, and the <strong>Admin</strong> area.
All users with the appropriate permissions can view inactive items, while only group owners and project owners and maintainers can take further actions on them.
As part of this update, a new <code>active</code> parameter is now available in both the Projects and Groups REST APIs, and GraphQL APIs.</p>
<p>Managing inactive content is a critical part of maintaining a GitLab instance.
This update makes it easier to find and recover content that was archived or is pending deletion, allowing you to maintain better control over your GitLab resources while reducing the risk of accidentally losing valuable work.
The clear separation of active from inactive content also provides a more focused search experience when navigating through groups and projects across all areas of GitLab.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/working_with_projects/#view-inactive-projects">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>New vulnerability management features in GitLab Duo Agentic Chat</strong>
    <p><p>GitLab Duo Agentic Chat is an enhanced version of GitLab Duo Chat. It searches,
retrieves, and combines information from multiple sources across your GitLab projects to
provide more thorough and relevant answers. A few of its use cases include
the ability to search through projects, read and list files, and autonomously create and change
files based on the prompt provided to GitLab Duo Chat.</p>
<p>In GitLab 18.5, the Agentic Chat use case expands to include managing
vulnerabilities from your security scanners. By adding vulnerability management tools to
Agentic Chat, this transforms tedious security workflows through AI-powered automation and intelligent analysis,
enabling security professionals to efficiently triage, manage, and remediate vulnerabilities through natural language commands.
This eliminates hours of manual clicking through vulnerability dashboards and streamlining complex bulk operations that previously required custom scripts or tedious manual work.</p>
<p>With the new vulnerability management tools added to GitLab Duo Chat, Ultimate users with GitLab Duo can perform
the following:</p>
<ul>
<li>List all vulnerabilities in a given project.</li>
<li>Get detailed vulnerability information, including CVE data and EPSS scores.</li>
<li>Confirm and dismiss vulnerabilities.</li>
<li>Update vulnerability severity levels.</li>
<li>Revert vulnerability status back to <code>detected</code>.</li>
<li>Create vulnerability issues, or link vulnerabilities to existing issues.</li>
</ul>
<p>These tools transform security workflows from reactive manual triage into intelligent remediation,
letting engineers focus on genuine threats while AI handles repetitive assessment and documentation. Vulnerability management using GitLab Duo Chat is only available for Ultimate customers with the GitLab Duo add-on.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/gitlab_duo_chat/agentic_chat/#security">View Documentation</a></p>
  </li>
  <li>
    <strong>C/C&#43;&#43; support for Advanced SAST</strong>
    <p><p>We have added beta support for C/C++ to GitLab Advanced SAST.</p>
<p>To use this new cross-file, cross-function scanning support, <a href="https://docs.gitlab.com/user/application_security/sast/cpp_advanced_sast/">enable C/C++ support</a>.</p>
<p>We welcome feedback on this feature. If you have any questions, comments, or would like to engage with our team, please see this <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/575671">feedback issue</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/sast/cpp_advanced_sast/">View Documentation</a></p>
  </li>
  <li>
    <strong>Secret validity checks is in beta</strong>
    <p><p>Pipeline secret detection alerts you to exposed credentials, like passwords or API keys, in your projects. However, until GitLab 18.5, you had to manually check whether each detection represented an active token. This could make effectively triaging detections difficult and time consuming.</p>
<p>Now that validity checks is in beta, enable it to display the status of detected GitLab secrets. Active secrets can be used to impersonate legitimate activity, so you should rotate them as soon as possible. To watch validity checks in action, see the <a href="https://www.youtube.com/playlist?list=PL05JrBw4t0Ko8uOgubcYqmTTMGs0zWQRt">validity checks playlist</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/vulnerabilities/validity_check/">View Documentation</a></p>
  </li>
  <li>
    <strong>Increased rule coverage for secret push protection and pipeline secret detection</strong>
    <p>New rules have been added to the GitLab pipeline secret detection. Some existing rules have also been updated to improve quality and reduce false positives. These changes are released in <a href="https://gitlab.com/gitlab-org/security-products/analyzers/secrets/-/releases/v7.15.0">version 7.15.0</a> of the secrets analyzer.</p>
    <p><a href="https://docs.gitlab.com/user/application_security/secret_detection/detected_secrets">View Documentation</a></p>
  </li>
  <li>
    <strong>Customizable detection logic for Advanced SAST</strong>
    <p><p>You can now create custom security detection rules tailored to your organization&rsquo;s specific security requirements and coding patterns with GitLab Advanced SAST. This feature enables your security teams to define custom vulnerability patterns beyond the predefined ruleset, allowing them to detect application-specific security issues.</p>
<p>For more information, see <a href="https://docs.gitlab.com/user/application_security/sast/customize_rulesets/">Customize rulesets</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/sast/customize_rulesets/">View Documentation</a></p>
  </li>
  <li>
    <strong>Advanced SAST diff-based scanning in merge requests</strong>
    <p><p>You can now perform diff-based scans that analyze only the code changes in a merge request with GitLab Advanced SAST, significantly reducing scan times compared to full repository scans. By scanning just the Git diff rather than the entire codebase, your teams can integrate security testing more seamlessly into their development workflow without sacrificing speed or adding friction to the merge request process.</p>
<p>We are working to enable this performance improvement by default; this is tracked in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/546359">issue 546359</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/sast/gitlab_advanced_sast/#diff-based-scanning-in-merge-requests">View Documentation</a></p>
  </li>
  <li>
    <strong>Control requests for external control statuses</strong>
    <p><p>External controls can be attached to requirements when creating compliance frameworks in GitLab.</p>
<p>By default, GitLab automatically requests the status of external controls from external systems every 12 hours
during compliance scans, setting the control status to &lsquo;pending&rsquo;. External systems then respond by using the
external controls API to update the status to &lsquo;pass&rsquo; or &lsquo;fail&rsquo;.</p>
<p>In GitLab 18.5, you can now disable this automatic 12-hour ping by turning off the <strong>Ping enabled</strong> setting when
configuring external controls. When the 12-hour ping is disabled:</p>
<ul>
<li>GitLab will not automatically request status updates from external systems.</li>
<li>The external control displays a <strong>Disabled</strong> badge in the compliance framework UI.</li>
<li>You have complete control over when external control statuses are updated using the external controls API.</li>
</ul>
<p>This prevents the system from resetting the external control statuses to &lsquo;pending&rsquo; and gives you full control over
status update timing.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/compliance/compliance_frameworks/#ping-enabled-setting">View Documentation</a></p>
  </li>
  <li>
    <strong>Dependency scanning in limited availability</strong>
    <p><p>In GitLab 18.5, we released a new dependency scanning template that works with the dependency scanning analyzer.
The analyzer now generates a dependency scanning report containing all component vulnerabilities.
Scan Execution Policy (SEP) and Pipeline Execution Policy (PEP) support the new template.</p>
<p>To use the new template, import <code>Jobs/Dependency-Scanning.v2.gitlab-ci.yml</code>.</p>
<p>This feature is available on GitLab.com and self-managed instances, though it&rsquo;s marked as limited availability because official support for self-managed is not yet available.
GitLab.com users can use it immediately.</p>
<p>We welcome feedback on this feature. If you have questions, comments, or would like to engage with our team, please see this <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/523458">feedback issue</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/dependency_scanning/dependency_scanning_sbom/">View Documentation</a></p>
  </li>
  <li>
    <strong>Variable expansion in environment `deployment_tier`</strong>
    <p>You can now use CI/CD variables in the <code>environment:deployment_tier</code> field, making it easier to dynamically configure deployment tiers based on pipeline conditions.</p>
    <p><a href="https://docs.gitlab.com/ci/yaml/#environmentdeployment_tier">View Documentation</a></p>
  </li>
  <li>
    <strong>Configure status lifecycles for issues and tasks</strong>
    <p><p>Previously, issues and tasks were required to share the same set of configured statuses. In this release, we&rsquo;ve added support for configuring status lifecycles, enabling you to define distinct workflows for issues and tasks in your projects. With status mapping built into the workflow, you can seamlessly transition an issue or task to a new set of statuses with no bulk editing required when changing work item types.</p>
<p>Share your feedback and help us improve the feature by <a href="https://gitlab.com/gitlab-com/www-gitlab-com/-/issues/35235">contributing to our feedback issue</a> with your use cases and suggestions.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/work_items/status/#lifecycles">View Documentation</a></p>
  </li>
  <li>
    <strong>Format markdown tables in the plain text editor</strong>
    <p><p>Misaligned markdown tables are difficult to read and edit, even though they render correctly.</p>
<p>The new <strong>Reformat table</strong> feature in the plain text editor&rsquo;s toolbar realigns table
columns with a single click, preserving alignment settings and indentation. To use it:</p>
<ul>
<li>Select any markdown table in wiki pages, issues, or merge requests.</li>
<li>From the <strong>More options</strong> menu, select <strong>Reformat table</strong>.</li>
</ul>
<p>This makes documentation maintenance faster and collaboration easier when working with
complex tables.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/markdown/#tables">View Documentation</a></p>
  </li>
  <li>
    <strong>View child task completion in issues</strong>
    <p>You can now track the progress of issues directly from the child items widget, giving you a status overview at a glance. This enhancement provides real-time visibility into potential bottlenecks when work is already in progress, helping you quickly identify at-risk items and make timely adjustments before sprint deadlines are threatened.</p>
    <p><a href="https://docs.gitlab.com/user/tasks/#view-tasks">View Documentation</a></p>
  </li>
  <li>
    <strong>Expose original severity from the vulnerabilities API</strong>
    <p>The vulnerabilities GraphQL API now exposes the original severity of vulnerabilities.
This allows you to determine what the severity of the vulnerability was before severity overrides were applied.</p>
    <p><a href="https://docs.gitlab.com/api/graphql/reference/#pipelinesecurityreportfindingoriginalseverity">View Documentation</a></p>
  </li>
  <li>
    <strong>Time windows for merge request approval policies</strong>
    <p><p>To provide further flexibility in security vulnerability comparisons, we have introduced time windows in merge request approval policies. If the security reports for the most recent baseline are not yet available, this new policy configuration allows you to use previously completed security reports, as long as the reports are not older than the age that you specify as the time window.</p>
<p>Development teams can now avoid unnecessary delays when baseline security scans are stuck or taking too long, such as in very busy projects. By configuring a time window, merge requests that don&rsquo;t introduce new vulnerabilities can proceed without waiting for the latest pipeline to complete, improving workflow efficiency.</p>
<p>To use this feature, create or edit a merge request approval policy and specify the <code>security_report_time_window</code> parameter (in minutes) in your approval policy configuration</p>
<p>The system will compare your merge request&rsquo;s security results against the latest pipeline using the security reports created within the specified time window, allowing for faster approvals when no new vulnerabilities are introduced.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/policies/merge_request_approval_policies/#security_report_time_window">View Documentation</a></p>
  </li>
  <li>
    <strong>Refreshed security finding statuses in the pipeline **Security** tab</strong>
    <p><p>Previously, in the <strong>Security</strong> tab for a pipeline, if you dismissed an vulnerability, the vulnerability was not immediately removed from the list.</p>
<p>Status updates in the security tab of a pipeline page are now updated after they are changed.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/detect/security_scanning_results/#change-status-or-severity">View Documentation</a></p>
  </li>
  <li>
    <strong>Exceptions to bypass merge request approval policies</strong>
    <p><p>Organizations can now designate specific users, groups, roles, or custom roles that can bypass merge request approval policies in case critical situations occur. This capability provides flexibility for emergency responses, while maintaining comprehensive audit trails and governance controls.</p>
<p><strong>Emergency bypass with accountability</strong>: Designated users can bypass approval requirements during critical incidents, security hotfixes, or urgent production issues. When emergencies strike, authorized personnel can merge or push changes immediately while the system captures detailed justification and audit information for compliance review.</p>
<p>Key capabilities include:</p>
<ul>
<li><strong>Documented bypass process</strong>: When authorized users invoke a policy bypass, they must provide detailed reasoning using an intuitive modal interface, ensuring every exception is properly documented with context.</li>
<li><strong>Comprehensive audit integration</strong>: Every bypass generates detailed audit events including user identity, policy context, reasoning, and timestamps for complete visibility into exception usage patterns.</li>
<li><strong>Flexible configuration</strong>: Define exception permissions for policies using YAML or UI configuration, supporting individual users, GitLab groups, standard roles, and custom roles.</li>
<li><strong>Git-based push exceptions</strong>: Users with pre-approved policy exceptions may push directly when invoking the push bypass option <code>security_policy.bypass_reason</code>.</li>
</ul>
<p>This feature eliminates the need to entirely disable security policies during emergencies, providing a controlled path for urgent changes while preserving organizational governance and audit requirements.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/policies/merge_request_approval_policies/#user-group-role-and-custom-role-exceptions">View Documentation</a></p>
  </li>
  <li>
    <strong>Show only active vulnerabilities in the dependency list</strong>
    <p><p>Previously, the dependency list included some dismissed vulnerabilities.</p>
<p>To provide you with a more useful representation of the vulnerabilities in the dependency list, the project dependency list now includes only active vulnerabilities in the <code>detected</code> and <code>confirmed</code> states.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/dependency_list/#vulnerabilities">View Documentation</a></p>
  </li>
  <li>
    <strong>Static reachability in limited availability and experimental Java support</strong>
    <p><p>In GitLab 18.5, we released limited availability support for static reachability.
This release focuses on improving JS/TS coverage support, fixing bugs, and providing experimental support for Java.
Static reachability enriches Software Composition Analysis (SCA) results by scanning project source code to identify open source dependencies that are in use.
Data produced by static reachability can be used as part of users&rsquo; triage and remediation decision making. Static reachability data can also be used with CVSS and EPSS scores, as well as KEV indicators to provide a more focused view of identified vulnerabilities.</p>
<p>We welcome feedback on this feature. If you have questions, comments, or would like to engage with our team, please see this <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/535498">feedback issue</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/dependency_scanning/static_reachability/">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner 18.5</strong>
    <p><p>We&rsquo;re also releasing GitLab Runner 18.5 today! GitLab Runner is the highly-scalable build agent that runs your CI/CD jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.</p>
<p>Bug fixes:</p>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/-/issues/259">Runner update fails on vanilla Kubernetes after updating runner operator from 1.39 to 1.41</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38674">Some container labels have duplicate prefixes</a></li>
</ul>
<p>The list of all changes is in the GitLab Runner <a href="https://gitlab.com/gitlab-org/gitlab-runner/blob/18-5-stable/CHANGELOG.md">CHANGELOG</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/runner">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab Patch Release: 18.4.2, 18.3.4, 18.2.8</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-4-2-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-4-2-released/</id><published>2025-10-08T00:00:00Z</published><updated>2025-10-08T00:00:00Z</updated><author><name>Kat Wu</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On October 8, 2025, we released versions 18.4.2, 18.3.4, 18.2.8 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, please visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring that all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. To maintain good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, it means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-4-2-released/#cve-2025-11340---incorrect-authorization-issue-in-graphql-mutations-impacts-gitlab-ee">Incorrect authorization issue in GraphQL mutations impacts GitLab EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-4-2-released/#cve-2025-10004---denial-of-service-issue-in-graphql-blob-type-impacts-gitlab-ceee">Denial of Service issue in GraphQL blob type impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-4-2-released/#cve-2025-9825---missing-authorization-issue-in-manual-jobs-impacts-gitlab-ceee">Missing authorization issue in manual jobs impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-4-2-released/#cve-2025-2934---denial-of-service-issue-in-webhook-endpoints-impacts-gitlab-ceee">Denial of Service issue in webhook endpoints impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
  </tbody>
</table>
<h3 id="cve-2025-11340---incorrect-authorization-issue-in-graphql-mutations-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-11340">CVE-2025-11340</a> - Incorrect authorization issue in GraphQL mutations impacts GitLab EE</h3>
<p>GitLab has remediated an issue that, under certain conditions, could have allowed authenticated users with read-only API tokens to perform unauthorized write operations on vulnerability records by exploiting incorrectly scoped GraphQL mutations.<br>
<strong>Impacted Versions</strong>: GitLab EE: all versions from 18.3 to 18.3.4, 18.4 to 18.4.2 <br>
<strong>CVSS</strong>: 7.7 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:H/A:N</code></a>)</p>
<p>This vulnerability has been discovered internally by GitLab team member <a href="https://gitlab.com/bwill">Brian Williams</a>.</p>
<h3 id="cve-2025-10004---denial-of-service-issue-in-graphql-blob-type-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-10004">CVE-2025-10004</a> - Denial of Service issue in GraphQL blob type impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could make the GitLab instance unresponsive or degraded by sending crafted GraphQL queries requesting large repository blobs.<br>
<strong>Impacted Versions</strong>: GitLab CE/EE: all versions from 13.12 to 18.2.8, 18.3 to 18.3.4, and 18.4 to 18.4.2 <br>
<strong>CVSS</strong>: 7.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/pwnie">pwnie</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-9825---missing-authorization-issue-in-manual-jobs-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-9825">CVE-2025-9825</a> - Missing authorization issue in manual jobs impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed authenticated users without project membership to view sensitive manual CI/CD variables by querying the GraphQL API.<br>
<strong>Impacted Versions</strong>: GitLab CE/EE: all versions from 13.7 to 18.2.8, 18.3 before 18.3.4, and 18.4 before 18.4.2 <br>
<strong>CVSS:</strong> 5.0 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-2934---denial-of-service-issue-in-webhook-endpoints-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-2934">CVE-2025-2934</a> - Denial of Service issue in webhook endpoints impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue impacting an upstream Ruby Core library that could have allowed an authenticated user to create a denial of service condition by configuring malicious webhook endpoints that send crafted HTTP responses. This issue was reported to Ruby Core maintainers on July 17, 2025.<br>
<strong>Impacted Versions</strong>: GitLab CE/EE: all versions from 5.2 prior to 18.2.8, 18.3 prior to 18.3.4, and 18.4 prior to 18.4.2<br>
<strong>CVSS:</strong> 4.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/ppee">ppee</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1842">18.4.2</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206259">Backport of &lsquo;Added safety chaining to pipeline helper&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206057">Workhorse: Improve large HTTP handling for DWS proxy</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206161">Backport of &lsquo;Fix: no implicit conversion of String into Array&rsquo; in Geo::Event workers</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206330">Backport: Fix agentic chat</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206833">[18.4] Clear detached partitions before tests run</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206915">Backport &lsquo;Fixes target projects endpoint 404 on compare revisions view&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206962">Transfer start and due dates data upon work item move or clone</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/207052">Backport of &lsquo;Fix reassignment dropdown in CE&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206778">Transfer health status data upon work item move or clone</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206999">Backport of Revert &ldquo;Merge branch &lsquo;ai-catalog-item-consumers-graphql&rsquo; into &lsquo;master&rsquo;&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206860">Backport of CI_MERGE_REQUEST_DIFF_BASE_SHA not updating on branch change</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206979">Backport of &ldquo;Use key-value structure in Release Environment MR label script&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206163">Backport of &lsquo;Fix Start free trial link for self-managed instances&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/207013">Update dependency gitlab-fog-azure-rm to &lsquo;~&gt; 2.4.0&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/207283">Backport of &lsquo;Remove non Saas instances from calling CDOT for trial duration&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206520">Backport of &lsquo;Remove check_f02a3f53bf not null constraint&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/207685">18.4 backport of &lsquo;Remove unknown licenses from sbom dependency list export&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/207445">[18.4] Fix json validation for elasticsearch_aws_role_arn</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/207245">Backport: Change the model selection FF used for self managed</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/207794">[18.4] Prevent session creation for sessionless users</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8741">Add a gitlab::config alias for package::config recipe</a></li>
</ul>
<h3 id="1834">18.3.4</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206060">Workhorse: Improve large HTTP handling for DWS proxy</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206834">[18.3] Clear detached partitions before tests run</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206918">Backport &lsquo;Fixes target projects endpoint 404 on compare revisions view&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206961">Transfer start and due dates data upon work item move or clone</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/207053">Backport of &lsquo;Fix reassignment dropdown in CE&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206776">Transfer health status data upon work item move or clone</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206980">Backport of &ldquo;Use key-value structure in Release Environment MR label script&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/207014">Update dependency gitlab-fog-azure-rm to &lsquo;~&gt; 2.4.0&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/207288">Backport of &lsquo;Remove non Saas instances from calling CDOT for trial duration&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/207687">18.3 backport of &lsquo;Remove unknown licenses from sbom dependency list export&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8755">Update docs hugo jobs&rsquo; image to use latest image</a></li>
</ul>
<h3 id="1828">18.2.8</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205903">[18.2] Allow elastic client adapter to be set</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206835">[18.2] Clear detached partitions before tests run</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206958">Transfer start and due dates data upon work item move or clone</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/207054">Backport of &lsquo;Fix reassignment dropdown in CE&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206775">Transfer health status data upon work item move or clone</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206981">Backport of &ldquo;Use key-value structure in Release Environment MR label script&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/207015">Update dependency gitlab-fog-azure-rm to &lsquo;~&gt; 2.4.0&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/207448">[18.2] Fix json validation for elasticsearch_aws_role_arn</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/207688">18.2 backport of &lsquo;Remove unknown licenses from sbom dependency list export&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206928">Backport of &lsquo;Fix Start free trial link for self-managed instances&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8754">Update docs hugo jobs&rsquo; image to use latest image</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>This patch includes database migrations that may impact your upgrade process.</p>
<h3 id="impact-on-your-installation">Impact on your installation:</h3>
<ul>
<li><strong>Single-node instances</strong>: This patch will cause downtime during the upgrade as migrations must complete before GitLab can start.</li>
<li><strong>Multi-node instances</strong>: With proper <a href="https://docs.gitlab.com/ee/update/zero_downtime.html">zero-downtime upgrade procedures</a>, this patch can be applied without downtime.</li>
</ul>
<h3 id="post-deploy-migrations">Post-deploy migrations</h3>
<p>The following versions include post-deploy migrations that can run after the upgrade:</p>
<ul>
<li>18.4.2</li>
</ul>
<p>To learn more about the impact of upgrades on your installation, see:</p>
<ul>
<li><a href="https://docs.gitlab.com/ee/update/zero_downtime.html">Zero-downtime upgrades</a> for multi-node deployments</li>
<li><a href="https://docs.gitlab.com/update/package/#downtime">Standard upgrades</a> for single-node installations</li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">Update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 18.4.1, 18.3.3, 18.2.7</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-4-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-4-1-released/</id><published>2025-09-25T00:00:00Z</published><updated>2025-09-25T00:00:00Z</updated><author><name>Costel Maxim</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On September 25, 2025, we released versions 18.4.1, 18.3.3, 18.2.7 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, please visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring that all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. To maintain good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, it means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-4-1-released/#cve-2025-9642---cross-site-scripting-issue-impacts-gitlab-ceee">Cross-site scripting issue impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-4-1-released/#cve-2025-10858---denial-of-service-issue-when-uploading-specifically-crafted-json-files-impacts-gitlab-ceee">Denial of Service issue when uploading specifically crafted JSON files impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-4-1-released/#cve-2025-8014---denial-of-service-issue-bypassing-query-complexity-limits-impacts-gitlab-ceee">Denial of Service issue bypassing query complexity limits impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-4-1-released/#cve-2025-9958---information-disclosure-issue-in-virtual-registry-configuration-for-low-privileged-users-impacts-gitlab-ceee">Information disclosure issue in virtual registery configuration for low privileged users impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-4-1-released/#cve-2025-7691---privilege-escalation-issue-from-within-the-developer-role-impacts-gitlab-ee">Privilege Escalation issue from within the Developer role impacts GitLab EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-4-1-released/#cve-2025-11042---denial-of-service-issue-in-graphql-api-via-unbounded-array-parameters-impacts-gitlab-ceee">Denial of Service issue in GraphQL API via Unbounded Array Parameters impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-4-1-released/#cve-2025-10871---improper-authorization-issue-for-project-maintainers-when-assigning-roles-impacts-gitlab-ee">Improper Authorization issue for Project Maintainers when assigning roles impacts GitLab EE</a></td>
          <td>Low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-4-1-released/#cve-2025-10867---denial-of-service-issue-in-graphql-api-blobsearch-impacts-gitlab-ceee">Denial of Service issue in GraphQL API blobSearch impacts GitLab CE/EE</a></td>
          <td>Low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-4-1-released/#cve-2025-5069---incorrect-ownership-assignment-via-move-issue-drop-down-impacts-gitlab-ceee">Incorrect ownership assignment via Move Issue drop-down impacts GitLab CE/EE</a></td>
          <td>Low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-4-1-released/#cve-2025-10868---denial-of-service-issue-via-string-conversion-methods-impacts-gitlab-ceee">Denial of Service issue via string conversion methods impacts GitLab CE/EE</a></td>
          <td>Low</td>
      </tr>
  </tbody>
</table>
<h3 id="cve-2025-9642---cross-site-scripting-issue-in-script-gadgets-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-9642">CVE-2025-9642</a> - Cross-site scripting issue in Script Gadgets impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that, under certain conditions, could have allowed an unauthenticated user to execute actions on behalf of other users by injecting malicious content.</p>
<p><strong>Impacted Versions</strong>: GitLab CE/EE: all versions from 14.10 before 18.2.7, 18.3 before 18.3.3, and 18.4 before 18.4.1.<br>
<strong>CVSS</strong>: 8.7 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N</code></a></p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-10858---denial-of-service-issue-when-uploading-specifically-crafted-json-files-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-10858">CVE-2025-10858</a> - Denial of Service issue when uploading specifically crafted JSON files impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an unauthenticated user to render a GitLab instance unresponsive to legitimate users by sending specifically crafted JSON files.</p>
<p><strong>Impacted versions:</strong> GitLab CE/EE: all versions before 18.2.7, 18.3 before 18.3.3, and 18.4 before 18.4.1<br>
<strong>CVSS:</strong> 7.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<h3 id="cve-2025-8014---denial-of-service-issue-bypassing-query-complexity-limits-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-8014">CVE-2025-8014</a> - Denial of Service issue bypassing query complexity limits impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an unauthenticated user to bypass query complexity limits leading to a Denial of Service condition.</p>
<p><strong>Impacted versions:</strong> Gitlab EE/CE all versions from 11.10 prior to 18.2.7, 18.3 prior to 18.3.3, and 18.4 prior to 18.4.1<br>
<strong>CVSS:</strong> 7.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/foxribeye">foxribeye</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-9958---information-disclosure-issue-in-virtual-registry-configuration-for-low-privileged-users-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-9958">CVE-2025-9958</a> - Information disclosure issue in virtual registry configuration for low privileged users impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed low privileged users access to sensitive information stored in virtual registry configurations.</p>
<p><strong>Impacted versions:</strong> GitLab CE/EE all versions from 14.10 before 18.2.7, 18.3 before 18.3.3, and 18.4 before 18.4.1<br>
<strong>CVSS:</strong> 7.7 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-7691---privilege-escalation-issue-from-within-the-developer-role-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-7691">CVE-2025-7691</a> - Privilege Escalation issue from within the Developer role impacts GitLab EE</h3>
<p>GitLab has remediated an issue that could have allowed a developer with specific group management permissions to escalate their privileges and obtain unauthorized access to additional system capabilities.</p>
<p><strong>Impacted versions:</strong> GitLab EE all versions from 16.6 prior to 18.2.7, 18.3 prior to 18.3.3, and 18.4 prior to 18.4.1<br>
<strong>CVSS:</strong> 6.5 <a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/rogerace">rogerace</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-11042---denial-of-service-issue-in-graphql-api-via-unbounded-array-parameters-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-11042">CVE-2025-11042</a> - Denial of Service issue in GraphQL API via Unbounded Array Parameters impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to cause uncontrolled CPU consumption, potentially leading to a Denial of Service condition while using specific GraphQL queries.</p>
<p><strong>Impacted versions:</strong> GitLab CE/EE all versions starting from 17.2 before 18.2.7, 18.3 before 18.3.3, and 18.4 before 18.4.1<br>
<strong>CVSS:</strong> 4.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L</code></a>)</p>
<p>This vulnerability has been discovered internally by GitLab team member <a href="https://gitlab.com/afrnz">Alisa Frunza</a>.</p>
<h3 id="cve-2025-10871---improper-authorization-issue-for-project-maintainers-when-assigning-roles-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-10871">CVE-2025-10871</a> - Improper Authorization issue for Project Maintainers when assigning roles impacts GitLab EE</h3>
<p>GitLab has remediated an issue that could allow Project Maintainers improper authorization to assign custom roles to users exceeding the Project Maintainer&rsquo;s security boundary and achieving elevated privileges.</p>
<p><strong>Impacted versions:</strong> GitLab EE all versions from 16.6 before 18.2.7, 18.3 before 18.3.3, and 18.4 before 18.4.1<br>
<strong>CVSS:</strong> 3.8 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:N/I:L/A:L"><code>CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:N/I:L/A:L</code></a>)</p>
<p>This vulnerability was discovered internally by a GitLab team member, <a href="https://gitlab.com/dlrussel">Diane Russel</a>.</p>
<h3 id="cve-2025-10867---denial-of-service-issue-in-graphql-api-blobsearch-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-10867">CVE-2025-10867</a> - Denial of Service issue in GraphQL API blobSearch impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to create a Denial of Service condition by exploiting an unprotected GraphQL API through repeated requests.</p>
<p><strong>Impacted versions:</strong> GitLab CE/EE all versions from 18.1 before 18.2.7, 18.3 before 18.3.3, and 18.4 before 18.4.1<br>
<strong>CVSS:</strong> 3.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:N/A:L"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:N/A:L</code></a>)</p>
<p>This vulnerability has been discovered internally by GitLab team member <a href="https://gitlab.com/terrichu">Terri Chu</a></p>
<h3 id="cve-2025-5069---incorrect-ownership-assignment-via-move-issue-drop-down-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-5069">CVE-2025-5069</a> - Incorrect ownership assignment via Move Issue drop-down impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to gain unauthorized access to confidential issues by creating a project with an identical name, potentially having users transfer sensitive information to the incorrect project.</p>
<p><strong>Impacted versions:</strong> GitLab CE/EE all versions from 17.10 before 18.2.7, 18.3 before 18.3.3, and 18.4 before 18.4.1<br>
<strong>CVSS:</strong> 3.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/foxribeye">foxribeye</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-10868---denial-of-service-issue-via-string-conversion-methods-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-10868">CVE-2025-10868</a> - Denial of Service issue via string conversion methods impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to cause performance degradation, potentially leading to a Denial of Service condition with certain string conversion methods.</p>
<p><strong>Impacted versions:</strong> GitLab CE/EE all versions from 17.4 before 18.2.7, 18.3 before 18.3.3, and 18.4 before 18.4.1<br>
<strong>CVSS:</strong> 3.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:N/A:L"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:N/A:L</code></a>)</p>
<h3 id="postgresql-security-updates">postgreSQL security updates</h3>
<p><code>postgreSQL</code> has been updated to version 16.10 which contains fixes for security vulnerabilities including CVE-2025-8713, CVE-2025-8714 and CVE-2025-8715</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1841">18.4.1</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205266">Backport of Update the admin user for GET Release Environment QA tests</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205496">[18.4] Backport: Resolve &ldquo;Unable to fork project or create project if application wide lock_duo_features_enabled is true&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205374">Backport of Add Danger message to guide backport MR authors to reviewers and mergers (18.4)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205365">Backport of &lsquo;Prevent deleting group/project when ancestor is marked for deletion at the service level&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205608">18.4: Backport of &lsquo;Fix error when applying scanner suggestion&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205622">Backport of Ensure proper MCP URL OAuth Discovery for API/V4/MCP</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205735">Fix database state leak across specs</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205663">Optimize HandleMalformedStrings middleware for CPU and memory</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205750">Backport protected branches dropdown copy fix to 18.4</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205876">[18.4] Fix flaky parallel design management uploads spec</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205807">Backport of (Fix FetchModelDefinitionsService) !205687</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206018">Backport: Add documentation on how to add DUO_WORKFLOW_SELF_SIGNED_JWT__SIGNING_KEY for DAP installations</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206004">Backport of &lsquo;Geo: fix <code>ActiveRecord::StatementInvalid: PG::UndefinedColumn</code> when querying reverification count&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205854">Backport of Return success when status update target already matches</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205899">[18.4] Allow elastic client adapter to be set</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206199">Backport of Use isUnsafeLink for xcode protocol</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206229">Ensure assets get recompiled if cached-assets-hash.txt is empty</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206147">18.4 Backport of &lsquo;Resolve &ldquo;Dependency list export with API silently fails license validation&rdquo;&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8733">CI: Make Ubuntu 22.04 FIPS check EE-only (Backport)</a></li>
</ul>
<h3 id="1833">18.3.3</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/203969">Backport &lsquo;Bump default ruby version to 3.2.9&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/204752">Backport of &ldquo;Use release-environment project id instead of canonical&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/204767">Backport of &lsquo;Danger to not warn in maintained stable branches&rsquo; to 18.3</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/204681">Backport of &ldquo;Upgrade duo workflow client protocol version&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/204568">Backport of &ldquo;Filter out duplicate values from the variable options dropdown&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/204897">18.3: Backport of &lsquo;Fix security widget polling indefinitely when there are sboms&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/204902">[18.3 backport] Remove CVE-2025-8714 commands from structure.sql</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/204635">Backport 18.3: Do not trim deployment filename in geo secondary</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/204370">[Backport-18.3]Wiki search throws 500 error for some wiki content</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/204361">[18.3] Fix search admin page error when ES server returns forbidden</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205149">Backport of &ldquo;Hide secrets manager settings behind feature flag instead of just the license&rdquo; to 18.3</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205265">Backport of Update the admin user for GET Release Environment QA tests</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205498">[18.3] Backport: Resolve &ldquo;Unable to fork project or create project if application wide lock_duo_features_enabled is true&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205372">Backport of Add Danger message to guide backport MR authors to reviewers and mergers (18.3)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205541">[Backport 18-3] Skip secret push protection for as-if-foss pipeline</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205610">18.3: Backport of &lsquo;Fix error when applying scanner suggestion&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205625">Backport of Ensure proper MCP URL OAuth Discovery for API/V4/MCP</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205731">Optimize HandleMalformedStrings middleware for CPU and memory</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205700">Backport to 18.3 of Add job project claims to CI ID Tokens</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205849">Backport of Return success when status update target already matches</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205877">[18.3] Fix flaky parallel design management uploads spec</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206171">Backport &lsquo;Fix branches autocomplete paths in the merge request list app&rsquo; to 18-3</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206173">Backport &lsquo;Fix Linked file not being on top of the list&rsquo; to 18-3</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205902">[18.3] Allow elastic client adapter to be set</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206204">Backport of Use isUnsafeLink for xcode protocol</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/206144">18.3 Backport of &lsquo;Resolve &ldquo;Dependency list export with API silently fails license validation&rdquo;&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8699">Backport: Fix registry matadata database password creation</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8720">Fall back to c_rehash if there are multiple TLS certificates</a></li>
</ul>
<h3 id="1827">18.2.7</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/204431">Backport of diff comment suggestions line range fix</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/204362">[18.2] Fix search admin page error when ES server returns forbidden</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/204372">[Backport 18.2] Wiki search throws 500 error for some wiki content</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/204768">Backport of &lsquo;Danger to not warn in maintained stable branches&rsquo; to 18.2</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/204636">Backport 18.2: Do not trim deployment filename in geo secondary</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/204785">Backport of &ldquo;Use release-environment project id instead of canonical&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/204900">18.2: Backport of &lsquo;Fix security widget polling indefinitely when there are sboms&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205264">Backport of Update the admin user for GET Release Environment QA tests</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205542">[Backport 18-2] Skip secret push protection for as-if-foss pipeline</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205370">Backport of Add Danger message to guide backport MR authors to reviewers and mergers (18.2)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205612">18.2: Backport of &lsquo;Fix error when applying scanner suggestion&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205733">Optimize HandleMalformedStrings middleware for CPU and memory</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205705">Backport to 18.2 of Add job project claims to CI ID Tokens</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205500">[18.2] Backport: Resolve &ldquo;Unable to fork project or create project if application wide lock_duo_features_enabled is true&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/205879">[18.2] Fix flaky parallel design management uploads spec</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8721">Fall back to c_rehash if there are multiple TLS certificates</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>These versions do not include any new migrations, and for multi-node deployments, <a href="https://docs.gitlab.com/ee/update/#upgrading-without-downtime">should not require any downtime</a>.</p>
<p>Please be aware that by default the Omnibus packages will stop, run migrations,
and start again, no matter how “big” or “small” the upgrade is. This behavior
can be changed by adding a <a href="https://docs.gitlab.com/ee/update/zero_downtime.html"><code>/etc/gitlab/skip-auto-reconfigure</code></a> file,
which is only used for <a href="https://docs.gitlab.com/omnibus/update/README.html">updates</a>.</p>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">Update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab 18.4 released</title><link href="https://docs.gitlab.com/releases/18/18-4-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/18/18-4-released/</id><published>2025-09-18T00:00:00Z</published><updated>2025-09-18T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On September 18, 2025, GitLab 18.4 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong>Patrick Rice</strong>
</p>
<p>Patrick Rice continues his exceptional dedication to GitLab&rsquo;s open source community as contributor, maintainer,
and mentor.
A <a href="https://contributors.gitlab.com/leaderboard?fromDate=2025-01-01&amp;toDate=2025-09-18&amp;search=&amp;communityOnly=true">top 5 contributor</a>
over the past year, Patrick maintains the <a href="https://gitlab.com/gitlab-org/terraform-provider-gitlab">GitLab Terraform Provider</a>
and <a href="https://gitlab.com/gitlab-org/api/client-go">client-go</a> projects,
handling feature additions, releases, issue triage, and community onboarding.
He embodies GitLab&rsquo;s mission that everyone can contribute, having worked his way up from
contributor to project maintainer.</p>
<p>Patrick&rsquo;s impact extends beyond code contributions to community building and coaching,
helping new contributors get started and grow in the project.
Patrick previously nominated and supported Heidi Berry who won the <a href="https://about.gitlab.com/releases/2025/04/17/gitlab-17-11-released/#notable-contributor">17.11 Notable Contributor award</a>.
He also shared insights with the <a href="https://about.gitlab.com/solutions/education/">GitLab for Education</a>
team on working with students learning GitLab to help us grow the next generation of developers.</p>
<p>&ldquo;I&rsquo;d love to encourage new contributors to join us in collaborating on the Terraform Provider
and client-go projects,&rdquo; Patrick says.
&ldquo;We can always use more friendly faces in our community.&rdquo;</p>
<p>&ldquo;Patrick has continued relentlessly supporting the GitLab team and customers,&rdquo; says <a href="https://gitlab.com/leetickett-gitlab">Lee Tickett</a>,
Staff Fullstack Engineer at GitLab, who nominated Patrick for the award.
<a href="https://gitlab.com/timofurrer">Timo Furrer</a>, Senior Backend Engineer at GitLab, supported the nomination.
&ldquo;Apart from his daily contributions to the Terraform Provider and client-go,&rdquo; Timo adds,
&ldquo;he&rsquo;s helping GitLab customers directly with their IaC journey by showcasing what is possible with the
GitLab Terraform Provider.&rdquo;</p>
<p>Patrick is an Enterprise Architect at Kingland and member of the <a href="https://about.gitlab.com/community/core-team/">GitLab Community Core Team</a>.
This marks his second Notable Contributor award, having <a href="https://about.gitlab.com/releases/2023/01/22/gitlab-15-8-released/#mvp">previously won in GitLab 15.8</a> in January 2023.</p>
<p>Thanks to Patrick for his sustained contributions and dedication to supporting GitLab customers
and growing our open source community!</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>GitLab Duo Model Selection now generally available</strong>
    <p><p>GitLab Duo Model Selection is now generally available, giving organizations greater control over which AI models power their development workflows.</p>
<p>Owners of top-level groups on Gitlab.com and administrators on Self-Managed and Dedicated can now choose a specific model from a variety of GitLab AI model vendors for use with their GitLab Duo features, accessed through the GitLab-hosted AI gateway.</p>
<p>GitLab users that belong to multiple namespaces on GitLab.com can now also set a default namespace to ensure consistent AI model preferences across all development contexts. For more information on GitLab Duo Model Selection, <a href="https://about.gitlab.com/blog/speed-meets-governance-model-selection-comes-to-gitlab-duo/">read the blog</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/gitlab_duo/model_selection/#select-an-llm-for-a-feature">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Knowledge Graph</strong>
    <p><p>The GitLab Knowledge Graph provides rich code intelligence across your codebase. Developers can understand and navigate their projects with greater context, making it easier to plan changes, perform impact analysis, and work with GitLab Duo agents to accelerate development tasks.</p>
<p>The GitLab Duo Agent Platform leverages the Knowledge Graph to increase the accuracy of AI agents. By mapping files and definitions across a codebase, the Knowledge Graph provides enhanced context that allows Duo agents to understand relationships across your entire local workspace—unlocking faster and more precise responses to complex questions.</p>
<p>This release of the Knowledge Graph focuses on local code indexing, where the CLI turns your codebase into a live, embeddable graph database for RAG. You can install it with a simple one-line script, parse local repositories, and connect via MCP to query your workspace.</p>
<p>Our vision for the Knowledge Graph project is two-fold: building a vibrant community edition that developers can run locally today, which will serve as the foundation for a future, fully integrated Knowledge Graph Service within GitLab.com and self-managed instances.</p>
<p>This feature is in beta status. Provide feedback in <a href="https://gitlab.com/gitlab-org/rust/knowledge-graph/-/issues/160">issue 160</a>.</p>
</p>
    <p><a href="https://gitlab-org.gitlab.io/rust/knowledge-graph/">View Documentation</a></p>
  </li>
  <li>
    <strong>End user model selection now available with GitLab Duo</strong>
    <p><p>GitLab Duo model selection for end-users is now in public beta on Gitlab.com. Users can now select their preferred model for GitLab Duo Agentic Chat directly in the GitLab UI, giving developers personalized control over their AI assistance experience.</p>
<p>When allowed by namespace owners on GitLab.com, end-users can choose from available GitLab AI Vendor models for use with GitLab Duo Agentic Chat. Namespace owners can continue to set organization-wide model preferences through namespace settings, or allow end-user model selection.</p>
<p>To get started, look for the model dropdown in GitLab Duo Agentic Chat to select your preferred model. Note that changing models will start a fresh conversation, and your preferences will be remembered for future sessions.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/gitlab_duo/model_selection/#select-a-model-to-use-in-gitlab-duo-agentic-chat">View Documentation</a></p>
  </li>
  <li>
    <strong>CI/CD job tokens can authenticate Git push requests</strong>
    <p>You can now allow CI/CD job tokens generated in your project to authenticate Git push requests to the project’s repository. Enable this with the Job token permissions settings in the UI, or alternatively with the <a href="https://docs.gitlab.com/api/projects/#edit-a-project"><code>ci_push_repository_for_job_token_allowed</code></a> parameter in the project&rsquo;s REST API endpoint.</p>
    <p><a href="https://docs.gitlab.com/ci/jobs/ci_job_token/#allow-git-push-requests-to-your-project-repository">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Duo context exclusion</strong>
    <p><p>GitLab Duo context exclusion allows you to control which project content is excluded as context for GitLab Duo. This is helpful to protect sensitive information such as password files and configuration files. You can exclude individual files, specific directories, specific file types, or any combination of these.</p>
<p>This feature is currently in beta. Provide feedback on GitLab Duo context exclusion in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/566244">issue 566244</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/gitlab_duo/context/#exclude-context-from-gitlab-duo">View Documentation</a></p>
  </li>
  <li>
    <strong>Expanded AWS region support for GitLab Dedicated</strong>
    <p><p>GitLab Dedicated now supports deployment in all AWS regions, enabling you to select from an <a href="https://docs.gitlab.com/subscriptions/gitlab_dedicated/data_residency_and_high_availability/#available-aws-regions">expanded list of regions</a> for your primary, secondary, and backup deployment location.</p>
<p>This expansion is enabled by AWS&rsquo;s rollout of io2 disks across all regions, which meet GitLab Dedicated&rsquo;s standards for high availability and disaster recovery.</p>
<p>All newly available regions can be selected when provisioning your GitLab Dedicated instance in Switchboard.</p>
</p>
    <p><a href="https://docs.gitlab.com/subscriptions/gitlab_dedicated/data_residency_and_high_availability/#available-aws-regions">View Documentation</a></p>
  </li>
  <li>
    <strong>Simulate CI/CD Pipelines against different branch</strong>
    <p>Previously, when using the pipeline editor and validating your changes using the Validate tab, you could only run a simulation for the default branch. In this release, we&rsquo;ve expanded this capability. You can now select any branch to simulate pipelines against. This improvement gives you greater flexibility in testing and validating your pipelines. You can ensure they perform as expected across different cases, including your stable branches or feature branches.</p>
    <p><a href="https://docs.gitlab.com/ci/pipeline_editor/#validate-cicd-configuration">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Agentic Core</h4>
<ul>
  <li>
    <strong>Automatic Duo Code Review for groups and applications</strong>
    <p><p>You can now use group or application settings to enable automatic Duo Code Review for multiple projects. This can help you quickly enable Duo Code Review for all projects in a group, rather than individually enabling specific projects.</p>
<p>This feature is currently available in GitLab.com, and we plan to make it available for GitLab Self-Managed in a future release. Provide feedback in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/517386">issue 517386</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/merge_requests/duo_in_merge_requests/#automatic-reviews-from-gitlab-duo-for-groups-and-applications">View Documentation</a></p>
  </li>
  <li>
    <strong>Additional supported models for GitLab Duo Self-Hosted</strong>
    <p>GitLab Self-Managed customers with GitLab Duo Enterprise can now use additional supported models with Gitlab Duo.  OpenAI GPT-5 is now supported on Azure OpenAI. Open source OpenAI GPT OSS 20B and 120B aer also now supported on vLLM and Azure OpenAI. To leave feedback on using these models with GitLab Duo Self-Hosted, see <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/523918">issue 523918</a>.</p>
    <p><a href="https://docs.gitlab.com/administration/gitlab_duo_self_hosted/supported_models_and_hardware_requirements/#supported-models">View Documentation</a></p>
  </li>
  <li>
    <strong>Duo Code Review on GitLab Duo Self-Hosted is generally available</strong>
    <p><p>GitLab Duo Code Review on GitLab Duo Self-Hosted is now generally available. Use Code Review on GitLab Duo Self-Hosted to accelerate your development process without compromising on data sovereignty. When Code Review reviews your merge requests, it identifies potential bugs and suggests improvements for you to apply directly. Use Code Review to iterate on and improve your changes before you ask a human to review. This feature includes support for Mistral, Meta Llama, Anthropic Claude, and OpenAI GPT model families.</p>
<p>Provide feedback on Code Review in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/517386">issue 517386</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/gitlab_duo_self_hosted/#gitlab-duo-in-merge-requests">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>Pipeline secret detection now excludes certain files and directories by default</strong>
    <p>Pipeline secret detection now automatically excludes <a href="https://docs.gitlab.com/user/application_security/secret_detection/pipeline/#excluded-items">certain file types and directories</a> if they have a low likelihood of containing secrets, improving scan performance. These changes are released in analyzer <a href="https://gitlab.com/gitlab-org/security-products/analyzers/secrets/-/releases/v7.11.0">version 7.11.0</a>.</p>
    <p><a href="https://docs.gitlab.com/user/application_security/secret_detection/pipeline/#excluded-items">View Documentation</a></p>
  </li>
  <li>
    <strong>Secret detection analyzer Git fetching improvements</strong>
    <p><p>Version <a href="https://gitlab.com/gitlab-org/security-products/analyzers/secrets/-/releases/v7.12.0">7.12.0</a> of the secret detection analyzer adds significant improvements to the way Git commits are fetched. The analyzer now parses <code>--depth</code> and <code>--since</code> options passed from <code>SECRET_DETECTION_LOG_OPTIONS</code>, so you can further specify how many commits you want to scan. The analyzer also selects appropriate fetch strategies based on context, which prevents a known issue where potentially millions of commits were unnecessarily fetched, even with shallow depth configurations.</p>
<p>This enhancement reduces job timeouts, decreases resource consumption, and provides more predictable scan performance. Experience faster secret detection scans, especially in large repositories, with clearer logging that matches the actual fetching behavior.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/secret_detection/pipeline/#how-the-analyzer-fetches-commits">View Documentation</a></p>
  </li>
  <li>
    <strong>Significantly faster Advanced SAST scanning</strong>
    <p><p>Every minute counts when you&rsquo;re enabling security scans in your merge requests and pipelines.
We routinely ship performance improvements for Advanced SAST, targeting both the engine and its detection rules.</p>
<p>In this release, we&rsquo;re highlighting a specific improvement that cuts scan runtime by as much as 78% in our benchmark and real-world tests.
We&rsquo;ve added caching in a performance-sensitive part of the scanning process, leading to significantly faster scans in large repositories.</p>
<p>This improvement is automatically enabled in Advanced SAST analyzer version 2.9.6 and later.
You can see which analyzer version you&rsquo;re using by <a href="https://docs.gitlab.com/user/application_security/sast/gitlab_advanced_sast/#identify-the-gitlab-advanced-sast-analyzer-version">checking scan job logs</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/sast/gitlab_advanced_sast/">View Documentation</a></p>
  </li>
  <li>
    <strong>Operational Container Scanning severity threshold configuration</strong>
    <p><p>You can now configure Operational Container Scanning (OCS) to only return vulnerabilties at or above a certain severity level.
After you set a severity threshold, vulnerabilities below the severity you choose are no longer returned in the Vulnerability Report, API payloads, and other reporting mechanisms.
This can help you focus on the vulnerabilities you want to remediate.</p>
<p>To enable this filtering, <a href="https://docs.gitlab.com/user/clusters/agent/vulnerabilities/#configure-trivy-severity-threshold-filter">set a <code>severity_threshold</code></a> in your OCS configuration.</p>
<p>We gratefully acknowledge this community contribution from <a href="https://gitlab.com/mjohnw">John Walsh</a>.
To learn more about contributing to GitLab, check out the <a href="https://about.gitlab.com/community/contribute/">Community Contribution program</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/clusters/agent/vulnerabilities/#configure-trivy-severity-threshold-filter">View Documentation</a></p>
  </li>
  <li>
    <strong>Publish OpenTofu modules and providers to the GitLab container registry with CI/CD templates</strong>
    <p><p>The GitLab container registry now supports the media types to
host OpenTofu modules and providers.</p>
<p>Version <a href="https://gitlab.com/components/opentofu/-/releases/3.1.0">3.1.0</a> of the
<a href="https://gitlab.com/components/opentofu">OpenTofu CI/CD component</a> supports
a new <code>provider-release</code> template to deploy an OpenTofu provider into the GitLab registry
using the OCI format. Now, you can host private OpenTofu providers directly in GitLab.</p>
<p>In addition, the <code>module-release</code> template now supports a new <code>type</code> input that you can set to <code>oci</code>
to deploy the OpenTofu module in the GitLab registry using the OCI format.</p>
</p>
    <p><a href="https://gitlab.com/components/opentofu#publish-providers-to-the-gitlab-oci-registry">View Documentation</a></p>
  </li>
  <li>
    <strong>Bypass confirmation for enterprise users when reassigning placeholders</strong>
    <p><p>Users with the Owner role for a group can now bypass user confirmation when reassigning placeholders to active enterprise users in that group. This way, enterprise users do not have to keep checking their emails to confirm reassignments. After the time limit for the setting is reached, email confirmation requests are sent again for all new reassignments.</p>
<p>Enterprise users still receive notification emails after the reassignment is complete, ensuring transparency throughout the process.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/import/#bypass-confirmation-when-reassigning-placeholder-users">View Documentation</a></p>
  </li>
  <li>
    <strong>Configure how to view issues from the Issues page</strong>
    <p><p>You now have full control over your listing page view, choose which metadata appears and whether to open work items in a drawer, making it easier to focus on the information that matters most to you.</p>
<p>Previously, all metadata fields were always visible, which could make scanning through work items overwhelming. Now you can customize your view by turning on or off specific fields like assignees, labels, dates, and milestones.</p>
<p>With the new toggle that switches between the drawer view and full-page navigation you can quickly review details while maintaining context of your list, or open the full page when you need more screen space for detailed editing and comprehensive navigation.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/issues/managing_issues/#open-issues-in-a-drawer">View Documentation</a></p>
  </li>
  <li>
    <strong>Enhanced parent filtering for epic and issue lists</strong>
    <p>We&rsquo;ve replaced the &ldquo;epic&rdquo; filter on the Issues and Epics pages with a more flexible &ldquo;parent&rdquo; filter. This change lets you filter by any parent work item, not just epics. You can now easily find child tasks by filtering by their parent issue, or find issues by filtering by their parent epic, giving you better visibility into your work hierarchy across both issue and epic lists.</p>
    <p><a href="https://docs.gitlab.com/user/project/issues/">View Documentation</a></p>
  </li>
  <li>
    <strong>Issue boards now show complete epic hierarchies</strong>
    <p>You can now view all issues from child epics when filtering by a parent epic in issue boards, bringing consistency with how the Issues page already works. This improvement helps you better track and visualize your complete epic hierarchy without missing any issues nested in child epics, making your project management workflow more efficient and reliable.</p>
    <p><a href="https://docs.gitlab.com/user/project/issue_board/#filter-issues">View Documentation</a></p>
  </li>
  <li>
    <strong>Text editors toolbar parity</strong>
    <p><p>The GitLab plain text editor now includes the same formatting options as the rich text editor. The plain text editor toolbar has been updated with a &ldquo;More options&rdquo; menu that provides access to advanced formatting tools like:</p>
<ul>
<li>Code blocks</li>
<li>Details blocks</li>
<li>Horizontal rules</li>
<li>Mermaid diagrams</li>
<li>PlantUML diagrams</li>
<li>Table of contents</li>
</ul>
<p>Both editors now have consistent button placement and separators, making it easier to switch between editing modes while maintaining access to familiar formatting options.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/rich_text_editor/">View Documentation</a></p>
  </li>
  <li>
    <strong>Vulnerability details shows the auto-resolve pipeline ID</strong>
    <p><p>When troubleshooting vulnerabilities that have been automatically resolved, and later redetected, it can be helpful to compare the current pipeline to the pipeline where the vulnerability was resolved.</p>
<p>If a vulnerability is automatically resolved, the vulnerability notes in the vulnerability details page now include the pipeline ID where it occurred.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/policies/vulnerability_management_policy/">View Documentation</a></p>
  </li>
  <li>
    <strong>Enhanced controls for who can download job artifacts</strong>
    <p><p>In GitLab 16.11, we added the <code>artifacts:access</code> keyword enabling users to control whether artifacts can be downloaded by all users with access to the pipeline, only users with the Developer role or higher, or no user at all.</p>
<p>In this release, you can now restrict who can download artifacts to only the Maintainer role or higher, giving you one more option for controlling who can download job artifacts.</p>
</p>
    <p><a href="https://docs.gitlab.com/ci/yaml/#artifactsaccess">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner 18.4</strong>
    <p><p>We’re also releasing GitLab Runner 18.4 today! GitLab Runner is the highly-scalable build agent that runs your CI/CD jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.</p>
<h4 id="bug-fixes">Bug Fixes:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38963">FIPS runners fail to start jobs with GitLab Runner 18.2.1</a></li>
<li><a href="https://gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/-/issues/246">The <code>chown</code> command for runners with custom ConfigMap &amp; security context constraints (SCC) fails after Operator v1.37.0 upgrade on OpenShift 4.16.27</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38851">Reinstate <code>FF_RETRIEVE_POD_WARNING_EVENTS</code> in GitLab 17.x.x releases due to early removal in 17.2</a></li>
<li><a href="https://gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/-/issues/214">All GitLab Runner jobs fail due to filesystem permission errors</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/37464">Build jobs fail sporadically with permission denied error</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/30851">Gitlab Runner Helm chart upgrade broke the variables</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/28989">Enabling <code>FF_USE_FASTZIP</code> does not enable fastzip</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/28865">GitLab Runner encounters an <code>UnsupportedOperation</code> error when trying to stop Spot instances created with one-time requests</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/331460">Long polling for GitLab Runners does not work properly in Kubernetes deployed environments</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38894">Allow admins to override image:kubernetes:user value</a></li>
</ul>
<p>The list of all changes is in the GitLab Runner <a href="https://gitlab.com/gitlab-org/gitlab-runner/blob/18-4-stable/CHANGELOG.md">CHANGELOG</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/runner">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab Patch Release: 18.3.2, 18.2.6, 18.1.6</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-3-2-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-3-2-released/</id><published>2025-09-10T00:00:00Z</published><updated>2025-09-10T00:00:00Z</updated><author><name>Kat Wu</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On September 10, 2025, we released versions 18.3.2, 18.2.6, 18.1.6 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, please visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring that all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. To maintain good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, it means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-3-2-released/#cve-2025-2256---denial-of-service-issue-in-saml-responses-impacts-gitlab-ceee">Denial of Service issue in SAML Responses impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-3-2-released/#cve-2025-6454---server-side-request-forgery-issue-in-webhook-custom-header-impacts-gitlab-ceee">Server-Side Request Forgery issue in Webhook custom header impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-3-2-released/#cve-2025-1250---denial-of-service-issue-in-user-controllable-fields-impacts-gitlab-ceee">Denial of Service issue in User-Controllable Fields impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-3-2-released/#cve-2025-7337---denial-of-service-issue-in-endpoint-file-upload-impacts-gitlab-ceee">Denial of Service issue in endpoint file upload impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-3-2-released/#cve-2025-10094---denial-of-service-issue-in-token-listing-operations-impacts-gitlab-ceee">Denial of Service issue in token listing operations impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-3-2-released/#cve-2025-6769---information-disclosure-issue-in-runner-endpoints-impacts-gitlab-ceee">Information disclosure issue in runner endpoints impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
  </tbody>
</table>
<h3 id="cve-2025-2256---denial-of-service-issue-in-saml-responses-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-2256">CVE-2025-2256</a> - Denial of Service issue in SAML Responses impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed unauthorized users to render the GitLab instance unresponsive to legitimate users by sending multiple concurrent large SAML responses.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 7.12 before 18.1.6, 18.2 before 18.2.6, and 18.3 before 18.3.2 <br>
<strong>CVSS</strong> 7.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/yuki_osaki">yuki_osaki</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-6454---server-side-request-forgery-issue-in-webhook-custom-header-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-6454">CVE-2025-6454</a> - Server-Side Request Forgery issue in Webhook custom header impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed authenticated users to make unintended internal requests through proxy environments by injecting crafted sequences.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 16.11 before 18.1.6, 18.2 before 18.2.6, and 18.3 before 18.3.2 <br>
<strong>CVSS</strong> 8.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:H"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/ppee">ppee</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-1250---denial-of-service-issue-in-user-controllable-fields-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-1250">CVE-2025-1250</a> - Denial of Service issue in User-Controllable Fields impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to stall background job processing by sending specially crafted commit messages, merge request descriptions, or notes.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 15.0 before 18.1.6, 18.2 before 18.2.6, and 18.3 before 18.3.2 <br>
<strong>CVSS:</strong> 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/pwnie">pwnie</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-7337---denial-of-service-issue-in-endpoint-file-upload-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-7337">CVE-2025-7337</a> - Denial of Service issue in endpoint file upload impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user with Developer-level access to cause a persistent denial of service affecting all users on a GitLab instance by uploading large files.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 7.8 before 18.1.6, 18.2 before 18.2.6, and 18.3 before 18.3.2 <br>
<strong>CVSS:</strong> 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/pwnie">pwnie</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-10094---denial-of-service-issue-in-token-listing-operations-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-10094">CVE-2025-10094</a> - Denial of Service issue in token listing operations impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed authenticated users to disrupt access to token listings and related administrative operations by creating tokens with excessively large names.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 10.7 before 18.1.6, 18.2 before 18.2.6, and 18.3 before 18.3.2 <br>
<strong>CVSS:</strong> 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/pwnie">pwnie</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-6769---information-disclosure-issue-in-runner-endpoints-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-6769">CVE-2025-6769</a> - Information disclosure issue in runner endpoints impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed authenticated users to view administrator-only maintenance notes by accessing runner details through specific interfaces.</p>
<p><strong>Impacted Versions:</strong> GitLab CE/EE: all versions from 15.1 before 18.1.6, 18.2 before 18.2.6, and 18.3 before 18.3.2 <br>
<strong>CVSS:</strong> 4.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/iamgk808">iamgk808</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1832">18.3.2</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/202271">Backport of &lsquo;Ignore silent_mode in clickhouse http calls&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/202828">Backport of &lsquo;Update gitlab-shell to v14.45.0&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/201943">Revert &ldquo;Merge branch &lsquo;marina.mosti-543725-reviewer-dropdown-ce&rsquo; into &lsquo;master&rsquo;&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/203071">Backport of &ldquo;Only create ToC for headings with links&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/202992">Backport of fix webauthn authentication in Firefox - 18.3</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/202953">Backport of move delayed deletion cronjob settings to CE</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/203308">Backport &lsquo;Disable gdk-update job in stable branch pipelines&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/203290">Backport update to gitlab-sshd to relax allowed algorithms for FIPS</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/202829">Backport of &lsquo;Display MCP settings for root groups only&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/202994">Backport of &lsquo;Fix shared group access for advanced code search&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/203413">Backport: Fix nil error in Gitlab:Auth:IpRateLimiter</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/203676">Backport &lsquo;Add Compare link to submodule diffs&rsquo; to 18.3</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/203422">Backport of &ldquo;Revert &lsquo;New projects don&rsquo;t automatically inherit from group-level&rsquo;&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/203718">Backport of &ldquo;Fix syncing remote stored Blobs with filenames with plus sign&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/203722">Backport of &lsquo;Make FileLocationType.endLine nullable&rsquo; for 18.3</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/203538">Backport of Update csp_enabled? to always return a boolean value</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/203686">Backport of Fix LdapAllAddOnSeatSyncWorker removing seats when no groups configured</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/203966">Backport &lsquo;Revert gem caching only in specific pipelines&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/203933">Update gitlab-shell to v14.45.2 to allow ED25519 for FIPS</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/204239">[18.3] Remove flaky spec</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/203954">Backport of diff comment suggestions line range fix</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8714">Adds checksum for ruby 3.2.9</a></li>
</ul>
<h3 id="1826">18.2.6</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/202827">Update gitlab-shell to v14.45.0</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/203072">Backport of &ldquo;Only create ToC for headings with links&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/203288">Backport update to gitlab-sshd to relax allowed algorithms for FIPS</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/203309">Backport &lsquo;Disable gdk-update job in stable branch pipelines&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/202995">Backport of &lsquo;Fix shared group access for advanced code search&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/203525">Backport of &lsquo;Fix Bitbucket Server Importer enqueued job count&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/203587">Backport of &lsquo;Fix: Geo::ModelMapper flakiness&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/203675">Backport &lsquo;Add Compare link to submodule diffs&rsquo; to 18.2</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/203724">Backport of &lsquo;Make FileLocationType.endLine nullable&rsquo; for 18.2</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/203539">Backport of Update csp_enabled? to always return a boolean value</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/203720">Backport of &ldquo;Fix syncing remote stored Blobs with filenames with plus sign&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/203932">Update gitlab-shell to v14.45.2 to allow ED25519 for FIPS</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/204241">[18.2] Remove flaky spec</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8664">Backport 18-2: Fix spec tag name source</a></li>
</ul>
<h3 id="1816">18.1.6</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/202675">Backport of &lsquo;Fix cannot load such file &ndash; gitlab&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/203530">Backport of Fix &lsquo;Bitbucket Server Importer enqueued job count&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/203726">Backport of &lsquo;Make FileLocationType.endLine nullable&rsquo; for 18.1</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>These versions do not include any new migrations, and for multi-node deployments, <a href="https://docs.gitlab.com/ee/update/#upgrading-without-downtime">should not require any downtime</a>.</p>
<p>Please be aware that by default the Omnibus packages will stop, run migrations,
and start again, no matter how “big” or “small” the upgrade is. This behavior
can be changed by adding a <a href="https://docs.gitlab.com/ee/update/zero_downtime.html"><code>/etc/gitlab/skip-auto-reconfigure</code></a> file,
which is only used for <a href="https://docs.gitlab.com/omnibus/update/README.html">updates</a>.</p>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">Update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 18.3.1, 18.2.5, 18.1.5</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-3-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-3-1-released/</id><published>2025-08-27T00:00:00Z</published><updated>2025-08-27T00:00:00Z</updated><author><name>Greg Myers</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On August 27, 2025, we released versions 18.3.1, 18.2.5, 18.1.5 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, please visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring that all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. To maintain good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, it means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-3-1-released/#cve-2025-3601---allocation-of-resources-without-limits-issue-in-import-function-impacts-gitlab-ceee">Allocation of Resources Without Limits issue in import function impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-3-1-released/#cve-2025-2246---missing-authentication-issue-in-graphql-endpoint-impacts-gitlab-ceee">Missing authentication issue in GraphQL endpoint impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-3-1-released/#cve-2025-4225---allocation-of-resources-without-limits-issue-in-graphql-impacts-gitlab-ceee">Allocation of Resources Without Limits issue in GraphQL impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-3-1-released/#cve-2025-5101---code-injection-issue-in-gitlab-repositories-impacts-gitlab-ceee">Code injection issue in GitLab repositories impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
  </tbody>
</table>
<h3 id="cve-2025-3601---allocation-of-resources-without-limits-issue-in-import-function-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-3601">CVE-2025-3601</a> - Allocation of Resources Without Limits issue in import function impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to cause a Denial of Service (DoS) condition by submitting URLs that generate excessively large responses. <br></p>
<p><strong>Impacted Versions</strong>: GitLab CE/EE: all versions from 8.15 before 18.1.5, 18.2 before 18.2.5, and 18.3 before 18.3.1 <br>
<strong>CVSS</strong>: 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/nermalt">nermalt</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-2246---missing-authentication-issue-in-graphql-endpoint-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-2246">CVE-2025-2246</a> - Missing authentication issue in GraphQL endpoint impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed unauthenticated users to access sensitive manual CI/CD variables by querying the GraphQL API. <br></p>
<p><strong>Impacted Versions</strong>: GitLab CE/EE: all versions before 18.1.5, 18.2 before 18.2.5, and 18.3 before 18.3.1 <br>
<strong>CVSS</strong>: 5.8 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/pwnie">pwnie</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-4225---allocation-of-resources-without-limits-issue-in-graphql-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-4225">CVE-2025-4225</a> - Allocation of Resources Without Limits issue in GraphQL impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that under certain conditions could have allowed an unauthenticated attacker to cause a denial-of-service condition affecting all users by sending specially crafted GraphQL requests. <br></p>
<p><strong>Impacted Versions</strong>: GitLab CE/EE: all versions from 14.1 before 18.1.5, 18.2 before 18.2.5, and 18.3 before 18.3.1 <br>
<strong>CVSS</strong>: 5.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/pwnie">pwnie</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-5101---code-injection-issue-in-gitlab-repositories-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-5101">CVE-2025-5101</a> - Code injection issue in GitLab repositories impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that under certain conditions could have allowed an authenticated attacker to distribute malicious code that appears harmless in the web interface by taking advantage of ambiguity between branches and tags during repository imports. <br></p>
<p><strong>Impacted Versions</strong>: GitLab CE/EE: all versions before 18.1.5, 18.2 before 18.2.5, and 18.3 before 18.3.1 <br>
<strong>CVSS</strong>: 5.0 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:L/AC:H/PR:H/UI:R/S:C/C:N/I:H/A:N"><code>CVSS:3.1/AV:L/AC:H/PR:H/UI:R/S:C/C:N/I:H/A:N</code></a>).</p>
<p>Thanks <a href="https://hackerone.com/st4nly0n">st4nly0n</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1831">18.3.1</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2626">[Backport 18.3] Making changes for container scanning for SBOMs</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/202294">Backport of &lsquo;Fix cannot load such file &ndash; gitlab&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/202065">Backport: Fix namespace issue preventing Ci::Build filtering optimization</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/202363">Backport of &ldquo;Dependency Path creation with path caching&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/202656">Fix trusted proxies regression when hostname is specified</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/202706">Backport of E2E test: use correct checkbox method</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8677">Update Mattermost to v10.10.2</a></li>
</ul>
<h3 id="1825">18.2.5</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2627">[Backport 18.2] Making changes for container scanning for SBOMs</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/201853">[18.2] Fix flaky specs due to label ordering</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/201990">Backport &lsquo;Danger to fail backport MRs without descriptive title&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/201270">Backport bug - Fix mutations of frozen object in feature_setting.rb</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/201937">Add stage check for agentic chat</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/202418">Backport of &lsquo;update the active_add_on_purchase check to include self-managed check&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/202564">Backport of &ldquo;Create noop pipeline template compatible with test-on-omnibus&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/202673">Backport of &lsquo;Fix cannot load such file &ndash; gitlab&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/202705">Backport of E2E test: use correct checkbox method</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/202570">Backport of &lsquo;Ignore silent_mode in clickhouse http calls&rsquo;</a></li>
</ul>
<h3 id="1815">18.1.5</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/201046">Backport &ldquo;Danger to not error when e2e:test-on-omnibus-ee job not present for only QA changes&rdquo; to 18.1</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/196606">Backport Set :throttled urgency for GlobalAdvisoryScanWorker</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/201245">Backport &lsquo;Add job and script to update backport MR label after deployment&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/201425">Backport &lsquo;Update gitlab-chart digest to 9d9e150&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/201655">Backport of &lsquo;fix missing ref attribute&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/201854">[18.1] Fix flaky specs due to label ordering</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/201992">Backport &lsquo;Danger to fail backport MRs without descriptive title&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/202419">Backport of &lsquo;update the active_add_on_purchase check to include self-managed check&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/202540">Backport of E2E test: use correct checkbox method</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/202565">Backport of &ldquo;Create noop pipeline template compatible with test-on-omnibus&rdquo;</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>These versions do not include any new migrations, and for multi-node deployments, <a href="https://docs.gitlab.com/ee/update/#upgrading-without-downtime">should not require any downtime</a>.</p>
<p>Please be aware that by default the Omnibus packages will stop, run migrations,
and start again, no matter how “big” or “small” the upgrade is. This behavior
can be changed by adding a <a href="https://docs.gitlab.com/ee/update/zero_downtime.html"><code>/etc/gitlab/skip-auto-reconfigure</code></a> file,
which is only used for <a href="https://docs.gitlab.com/omnibus/update/README.html">updates</a>.</p>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">Update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab 18.3 released</title><link href="https://docs.gitlab.com/releases/18/18-3-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/18/18-3-released/</id><published>2025-08-21T00:00:00Z</published><updated>2025-08-21T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On August 21, 2025, GitLab 18.3 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong>Ahmed Kashkoush</strong>
</p>
<p>For 18.3, we&rsquo;re excited to recognize <a href="https://gitlab.com/ahmad-kashkoush">Ahmed Kashkoush</a> as our
Notable Contributor!</p>
<p>Ahmed has been a standout contributor to the <a href="https://gitlab.com/gitlab-org/gitlab-web-ide">GitLab Web IDE</a>
through his <a href="https://gitlab.com/ahmad-kashkoush/gsoc-2025-final-report">Google Summer of Code participation</a> this summer.
He has consistently delivered essential Git operations, directly addressing long-standing
community requests.
His five substantial merge requests include <a href="https://gitlab.com/gitlab-org/gitlab-web-ide/-/merge_requests/497">commit and force push capabilities</a>,
<a href="https://gitlab.com/gitlab-org/gitlab-web-ide/-/merge_requests/540">update confirmation message</a>,
<a href="https://gitlab.com/gitlab-org/gitlab-web-ide/-/merge_requests/507">commit amend functionality</a>,
<a href="https://gitlab.com/gitlab-org/gitlab-web-ide/-/merge_requests/534">branch creation operations</a>,
and <a href="https://gitlab.com/gitlab-org/gitlab-web-ide/-/merge_requests/539">branch deletion features</a>.</p>
<p>Beyond implementing new features, Ahmed resolved a 5+ year old feature request for amending existing
commits from the Web IDE, a feature with 24 thumbs up from the community.
His comprehensive branch management implementation brings the Web IDE closer to feature parity with
local development environments, eliminating the need for users to switch between interfaces for
basic Git operations.
Ahmed&rsquo;s work directly supports <a href="https://handbook.gitlab.com/handbook/company/mission/">GitLab&rsquo;s mission</a>
that &ldquo;everyone can contribute&rdquo; by making the Web IDE more accessible to developers.</p>
<p>Ahmed was nominated by <a href="https://gitlab.com/ealcantara">Enrique Alcántara</a>, Staff Frontend
Engineer at GitLab, who served as his mentor throughout the Google Summer of Code program.
&ldquo;Ahmed shows dedication to solving real user pain points,&rdquo; says Enrique.
&ldquo;His work demonstrates the impact a focused contributor can have on improving core GitLab functionality.&rdquo;</p>
<p>Ahmed&rsquo;s contributions showcase the power of mentorship and community collaboration in open source
development and make GitLab more accessible to developers regardless of their local setup.</p>
<p>Thank you, Ahmed, for your exceptional contributions to GitLab&rsquo;s Web IDE!</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>Duo Agent Platform in Visual Studio (Beta)</strong>
    <p><p>We are excited to announce the public beta release of the Duo Agent Platform for Visual Studio! With this release, Visual Studio users can now access Duo Agent Platform&rsquo;s advanced AI-powered capabilities directly within their IDE.</p>
<p>The Duo Agent Platform brings two powerful features to your workflow:</p>
<ul>
<li><strong>Agentic chat</strong>: Quickly accomplish conversational tasks such as creating and editing files, searching your codebase with pattern matching and grep, and getting instant answers about your code—all without leaving Visual Studio.</li>
<li><strong>Agent flows</strong>: Tackle larger, more complex tasks with comprehensive planning and implementation support. Agent flows help you turn high-level ideas into architecture and code, leveraging GitLab resources like issues, merge requests, commits, CI/CD pipelines, and security vulnerabilities.</li>
</ul>
<p>Both features offer intelligent search across documentation, code patterns, and project information, empowering you to move seamlessly from quick edits to in-depth project analysis.</p>
<p>Try the Duo Agent Platform beta in Visual Studio today and experience a new level of productivity and AI assistance in your development workflow.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/duo_agent_platform/">View Documentation</a></p>
  </li>
  <li>
    <strong>Embedded views (powered by GLQL)</strong>
    <p><p>This release introduces embedded views, powered by GLQL, to general availability. Create and embed dynamic, queryable views of GitLab data directly where your work lives: in wiki pages, epic descriptions, issue comments, and merge requests.</p>
<p>Embedded views provide a stable foundation for teams to track work progress without navigating between multiple locations. Query issues, merge requests, epics, and other work items using familiar syntax, then display the results as tables or lists with customizable fields and filtering.</p>
<p>Embedded views transform static documentation into living dashboards that stay current with your project data, helping teams maintain context and improve collaboration across their workflows.</p>
<p>We welcome your feedback as we continue to enhance embedded views. Please share your thoughts and suggestions in our <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/509792">feedback issue</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/glql/#embedded-views">View Documentation</a></p>
  </li>
  <li>
    <strong>Migration by direct transfer</strong>
    <p><p>Migration by direct transfer is now generally available. To migrate GitLab groups and projects between GitLab instances by direct transfer, you can use the GitLab UI or the <a href="https://docs.gitlab.com/ee/api/bulk_imports.html">REST API</a>.</p>
<p>Compared to <a href="https://docs.gitlab.com/ee/user/project/settings/import_export.html#migrate-projects-by-uploading-an-export-file">migration by uploading an export file</a>, direct transfer:</p>
<ul>
<li>Works more reliably with large projects.</li>
<li>Supports migrations with a larger version gap between the source and destination instances.</li>
<li>Offers better insights into the migration process and results.</li>
</ul>
<p>On GitLab.com, migration by direct transfer is enabled by default. On GitLab Self-Managed and GitLab Dedicated, an administrator must <a href="https://docs.gitlab.com/ee/administration/settings/import_and_export_settings.html#enable-migration-of-groups-and-projects-by-direct-transfer">enable the feature</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/import/index.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Fine-grained permissions for CI/CD job tokens</strong>
    <p><p>Pipeline security just got more flexible. Job tokens are ephemeral credentials that provide access to resources in pipelines. Until now, these tokens inherited full permissions from the user, often resulting in unnecessarily broad access capabilities.</p>
<p>With our new fine-grained permissions for job tokens feature, you can now precisely control which specific resources a job token can access within your projects. This allows you to implement the principle of least privilege in your CI/CD workflows, granting only the minimal access necessary for jobs to complete their tasks when accessing your projects with the CI/CD job token.</p>
<p>We&rsquo;re actively working to add <a href="https://gitlab.com/groups/gitlab-org/-/epics/6310">additional fine-grained permissions</a> to reduce reliance on long-lived tokens in pipelines.</p>
</p>
    <p><a href="https://docs.gitlab.com/ci/jobs/fine_grained_permissions/">View Documentation</a></p>
  </li>
  <li>
    <strong>Code Review available on GitLab Duo Self-Hosted (Beta)</strong>
    <p><p>You can now use GitLab Duo Code Review on GitLab Duo Self-Hosted. This feature is in beta on GitLab Duo Self-Hosted, with support for Mistral, Meta Llama, Anthropic Claude, and OpenAI GPT model families.</p>
<p>Use Code Review on GitLab Duo Self-Hosted to accelerate your development process without compromising on data sovereignty. When Code Review reviews your merge requests, it identifies potential bugs and suggests improvements for you to apply directly. Use Code Review to iterate on and improve your changes before you ask a human to review.</p>
<p>Provide feedback on Code Review in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/517386">issue 517386</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/gitlab_duo_self_hosted/#gitlab-duo-in-merge-requests">View Documentation</a></p>
  </li>
  <li>
    <strong>Customize instructions for GitLab Duo Code Review</strong>
    <p><p>Enforce consistent code review standards across your projects with custom instructions for GitLab Duo Code Review. Define specific review criteria for different file types using glob patterns, ensuring language-specific conventions are applied where they matter most.</p>
<p>With custom instructions, you can:</p>
<ul>
<li>Describe your team&rsquo;s code review standards</li>
<li>Use glob patterns to define file-specific instructions</li>
<li>Observe clearly labeled feedback that references your custom instructions</li>
</ul>
<p>Simply create a <a href="https://docs.gitlab.com/user/project/merge_requests/duo_in_merge_requests/#customize-instructions-for-gitlab-duo-code-review">.gitlab/duo/mr-review-instructions.yaml file</a> in your repository with your custom instructions. GitLab Duo will automatically incorporate these instructions into its reviews, citing the specific instruction group when providing feedback.</p>
<p>Help us improve this feature by sharing your thoughts and suggestions in our <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/517386">feedback issue</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/merge_requests/duo_in_merge_requests/#customize-instructions-for-gitlab-duo-code-review">View Documentation</a></p>
  </li>
  <li>
    <strong>Bring your own models to GitLab Duo Self-Hosted (Beta)</strong>
    <p><p>GitLab Duo Self-Hosted now enables you to bring your own model to use with GitLab Duo features. This feature is in beta, and available to all GitLab Self-Managed customers with GitLab Duo Enterprise. Instance administrators can configure any compatible model for use with a supported GitLab Duo feature.</p>
<p>This feature makes GitLab Duo Self-Hosted more flexible, but GitLab cannot guarantee that all GitLab Duo features will work with every compatible model. Instance administrators are responsible for validating the compatibility and performance of their chosen model. GitLab does not provide technical support for issues specific to your chosen model or platform.</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/gitlab_duo_self_hosted/supported_models_and_hardware_requirements/#bring-your-own-compatible-model">View Documentation</a></p>
  </li>
  <li>
    <strong>Hybrid model selection on GitLab Duo Self-Hosted (Beta)</strong>
    <p><p>You can now use a mix of GitLab AI vendor models and privately configured self-hosted models on GitLab Duo Self-Hosted. This feature is in beta and available on GitLab Self-Managed to all GitLab Duo Enterprise customers.</p>
<p>With hybrid models on GitLab Duo Self-Hosted, GitLab Self-Managed instance administrators can now choose between a self-hosted model and self-hosted AI gateway, or a GitLab AI vendor model and the GitLab-hosted AI gateway, on a feature-by-feature basis. This enables administrators to balance their security and scalability requirements. To provide feedback on hybrid model selection, see <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/561048">issue 561048</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/gitlab_duo_self_hosted/#decide-on-your-configuration-type">View Documentation</a></p>
  </li>
  <li>
    <strong>Surfacing violations of compliance framework controls (Beta)</strong>
    <p><p>Previously, the compliance violations report provided a high-level view of merge request activity for all projects
in a group. The available compliance violations related to separation of duty concerns, such as:</p>
<ul>
<li>Detecting when an author of a merge request approved their own merge request.</li>
<li>When a merge request was merged with fewer than two approvals.</li>
</ul>
<p>However, user feedback revealed that users found violation classifications confusing and difficult to understand, due to not aligning well with actual compliance use cases.</p>
<p>GitLab 18.3 significantly enhances the violations report by expanding beyond separation of duty to include violations of compliance controls and requirements in compliance frameworks.
Each custom compliance framework control has an associated audit event that provides detailed context about violations: who committed the violation, when it occurred, and how to fix it.
This includes the user&rsquo;s name and IP address, plus actionable remediation suggestions.</p>
<p>These improvements give compliance managers more powerful and relevant context to ensure their organization adheres to specific compliance frameworks,
while providing reassurance that non-compliance can be effectively identified, rectified, and prevented.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/compliance/compliance_center/compliance_violations_report/">View Documentation</a></p>
  </li>
  <li>
    <strong>New Web IDE source control operations</strong>
    <p><p>We&rsquo;re excited to announce additional source control functionalities in the  Web IDE. You can manage your Git workflow more efficiently without leaving your browser. In the <strong>Source Control</strong> panel, you can now:</p>
<ul>
<li>Create and delete branches.</li>
<li>Create a branch from any existing branch as your base.</li>
<li>Amend your last commit for quick fixes.</li>
<li>Force push changes directly from the interface.</li>
</ul>
<p>These enhancements bring Git operations right to your fingertips. For information about the functionalities available to you, see <a href="https://docs.gitlab.com/user/project/web_ide/#use-source-control">Use source control</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/web_ide/#use-source-control">View Documentation</a></p>
  </li>
  <li>
    <strong>AWS Secrets Manager support for GitLab CI/CD</strong>
    <p><p>Secrets stored in AWS Secrets Manager can now be easily retrieved and used in CI/CD jobs. Our new integration with AWS simplifies the process of interacting with AWS Secrets Manager through GitLab CI/CD, helping our AWS customers streamline build and deploy processes!</p>
<p>Thank you to <a href="https://gitlab.com/m-s-db">Markus Siebert</a> and <a href="https://gitlab.com/DerAstronaut">Henry Sachs</a> who helped build this feature through <a href="https://about.gitlab.com/community/co-create/">GitLab&rsquo;s Co-Create program</a>!</p>
</p>
    <p><a href="https://docs.gitlab.com/ci/secrets/aws_secrets_manager/">View Documentation</a></p>
  </li>
  <li>
    <strong>Custom admin role</strong>
    <p><p>The custom admin role brings granular permissions to the Admin area for GitLab Self-Managed and GitLab Dedicated instances. Instead of granting full access, administrators can now create specialized roles that access only the specific functions needed by users. This feature helps organizations implement the principle of least privilege for administrative functions, reduce security risks from overprivileged access, and improve operational efficiency.</p>
<p>If you have questions, want to share your implementation experience, or would like to engage directly with our team about potential improvements, see the <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/509376">feedback issue</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/custom_roles/">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Agentic Core</h4>
<ul>
  <li>
    <strong>More models available for use with GitLab Duo Self-Hosted</strong>
    <p>GitLab Self-Managed customers with GitLab Duo Enterprise can now use Anthropic Claude 4 with GitLab Duo Self-Hosted. Claude 4 is supported on AWS Bedrock. Open source OpenAI GPT OSS 20B and 120B have been added as experimental models, and are available on vLLM, Azure OpenAI, and AWS Bedrock. To leave feedback on using these models with GitLab Duo Self-Hosted, see <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/523918">issue 523918</a>.</p>
    <p><a href="https://docs.gitlab.com/administration/gitlab_duo_self_hosted/supported_models_and_hardware_requirements/">View Documentation</a></p>
  </li>
</ul>
<h4>Scale and Deployments</h4>
<ul>
  <li>
    <strong>New navigation experience for groups in **Your work**</strong>
    <p><p>We&rsquo;re excited to announce significant improvements to the group overview in <strong>Your work</strong>, designed to streamline how you discover and access your groups.
The new tabbed interface features a <strong>Member</strong> tab, which provides a comprehensive view of accessible groups, and an <strong>Inactive</strong> tab to track groups pending deletion.
We&rsquo;ve also streamlined group management by adding <strong>Edit</strong> and <strong>Delete</strong> actions to the list view for users with appropriate permissions.
We hope that these improvements make it easier to find and manage the groups that matter most to you.</p>
<p>We value your feedback on this update! Join the discussion in <a href="https://gitlab.com/groups/gitlab-org/-/epics/18401">epic 18401</a> to share your experience with the new navigation system.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/group/#view-groups">View Documentation</a></p>
  </li>
  <li>
    <strong>Enhanced **Admin** area projects list</strong>
    <p><p>We&rsquo;ve upgraded the <strong>Admin</strong> area projects list to provide a more consistent experience for GitLab administrators:</p>
<ul>
<li>Delayed deletion protection: Project deletions now follow the same safe deletion flow used throughout GitLab, preventing accidental data loss.</li>
<li>Faster interactions: Filter, sort, and paginate projects without page reloads for a more responsive experience.</li>
<li>Consistent interface: The projects list now matches the look and behavior of other project lists across GitLab.</li>
</ul>
<p>This update brings the administrator experience in line with GitLab design standards, and adds important safety features to protect your data. Future enhancements to project management will automatically appear in all project lists throughout the platform.</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/admin_area/#administering-projects">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>Improved file location information for Dependency Scanning analyzer</strong>
    <p>Being able to trace a dependency back to its source is important, especially for
vulnerability remediation. Previously, the Dependency Scanning analyzer sometimes
linked to job artifacts which were deleted when they expired. This made it
difficult to trace back to the source of the dependency.
The Dependency Scanning analyzer can now link to the project file that introduced
the dependency. With this option enabled, links in the dependency list and
vulnerability report are reliable.
Users may enable this functionality by setting <code>DS_FF_LINK_COMPONENTS_TO_GIT_FILES=true</code>
for the Dependency Scanning job.</p>
    <p><a href="https://docs.gitlab.com/user/application_security/dependency_scanning/dependency_scanning_sbom/#customizing-behavior-with-the-cicd-template">View Documentation</a></p>
  </li>
  <li>
    <strong>User-defined source for license information</strong>
    <p>Users may now choose which source of license information has priority -
the GitLab License database or a CycloneDX SBOM report. This provides users
with more flexibility in sourcing license information for their open-source dependencies.
Users who wish to define the source of license information may
use the <a href="https://docs.gitlab.com/user/application_security/detect/security_configuration/#with-the-ui">Security Configuration UI</a>
to make a selection. By default we use the SBOM data as a source
for license information.</p>
    <p><a href="https://docs.gitlab.com/user/compliance/license_scanning_of_cyclonedx_files/#use-cyclonedx-report-as-a-source-of-license-information">View Documentation</a></p>
  </li>
  <li>
    <strong>Concise DAST job output</strong>
    <p><p>GitLab 18.3 introduces several improvements to the dynamic analysis security testing job output.</p>
<p>This improved job output provides clear, structured information that
helps you understand scan results and troubleshoot failures.</p>
<p>Each section of the job output is concise and intuitive, with a link to our troubleshooting documentation at the bottom of the output.
To override concise job output, set <code>DAST_FF_DIAGNOSTIC_JOB_OUTPUT: &quot;true&quot;</code> in your DAST configuration.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/dast/browser/troubleshooting/#what-is-dast-doing">View Documentation</a></p>
  </li>
  <li>
    <strong>Instance level compliance and policy management (Beta)</strong>
    <p><p>Enterprise users want to manage their compliance frameworks and security policies across multiple top-level groups.
This is often the case when all groups in an instance:</p>
<ul>
<li>Share the same compliance frameworks. For example, when all projects in a group must adhere to the ISO 27001 standard.</li>
<li>Enforce similar policies. For example, when all groups share the same pipeline execution policy.</li>
</ul>
<p>With GitLab 18.3, compliance and security policy management is now available in beta for GitLab Self-Managed
instances. You can now create, configure, and allocate compliance frameworks and
security policies from a single top-level group and enforce them across all of the other top-level groups across your
GitLab Self-Managed instance.</p>
<p>When you use a compliance and security policy top-level group, you have a single source of truth
where you can manage and edit your compliance frameworks and security policies.
Group admins can then apply these compliance frameworks and security policies to all the projects within those groups.</p>
<p>When you manage key frameworks and policies from the chosen top-level compliance and security policy group,
it&rsquo;s easier to manage and enforce key compliance and security needs across your GitLab Self-Managed instance.
However, groups still retain the ability to create their own compliance frameworks and security policies to address
specific situations or workflows that can arise in those groups.</p>
<p>This feature is for GitLab Self-Managed customers because GitLab.com and GitLab Dedicated customers are already
able to manage policies centrally within a single top-level group or namespace.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/compliance/compliance_frameworks/centralized_compliance_frameworks/">View Documentation</a></p>
  </li>
  <li>
    <strong>Faster workspace startup with shallow cloning</strong>
    <p><p>Workspaces now use shallow cloning to reduce startup time. During initialization, GitLab downloads only the latest commit history instead of the full Git history. After the workspace starts, Git converts the shallow clone to a full clone in the background.</p>
<p>This feature applies automatically to all new workspaces, no configuration is required, and it doesn&rsquo;t affect your development workflow.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/workspace/#shallow-cloning">View Documentation</a></p>
  </li>
  <li>
    <strong>New CLI commands for GitLab-managed OpenTofu and Terraform states</strong>
    <p><p>The GitLab CLI (<code>glab</code>) now includes a new top-level command, <code>opentofu</code>.
The <code>opentofu</code> command is aliased to <code>terraform</code> and <code>tf</code> commands to assist with GitLab-managed<br>
OpenTofu and Terraform states.</p>
<p>The following commands have been added:</p>
<ul>
<li><code>glab opentofu init</code>: Initialize the state backend locally.</li>
<li><code>glab opentofu state list</code>: List all states in a project.</li>
<li><code>glab opentofu state download</code>: Download the latest state or a specific version.</li>
<li><code>glab opentofu state delete</code>: Delete the entire state or a specific version.</li>
<li><code>glab opentofu state lock</code>: Lock a state.</li>
<li><code>glab opentofu state unlock</code>: Unlock a state</li>
</ul>
<p>To manage state with the <code>opentofu</code> command, you must have at least <code>glab</code> 1.66 or later.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/infrastructure/iac/terraform_state">View Documentation</a></p>
  </li>
  <li>
    <strong>Kubernetes 1.33 support</strong>
    <p><p>GitLab now fully supports Kubernetes version 1.33. If you deploy your apps to Kubernetes, you can upgrade your connected clusters to the most recent version and take advantage of all its features.</p>
<p>For more information, see the <a href="https://docs.gitlab.com/user/clusters/agent/#supported-kubernetes-versions-for-gitlab-features">Supported Kubernetes versions for GitLab features</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/clusters/agent/#supported-kubernetes-versions-for-gitlab-features">View Documentation</a></p>
  </li>
  <li>
    <strong>OAuth apps support SSO authentication</strong>
    <p><p>OAuth applications can now seamlessly integrate with your organization&rsquo;s single sign-on requirements. Previously, users had to authenticate twice: first with GitLab, then with SSO, creating unnecessary friction and complexity.</p>
<p>Now, OAuth applications can specify a parameter in their authorization requests to automatically trigger SSO authentication when required. This provides:</p>
<ul>
<li>A unified authentication experience for users</li>
<li>Automatic compliance with your organization&rsquo;s SSO policies</li>
<li>Consistent security across all GitLab integrations</li>
<li>Simple implementation for developers with just a parameter addition</li>
</ul>
<p>Your OAuth integrations now respect SSO policies automatically, eliminating confusing authentication workflows while maintaining security.</p>
</p>
    <p><a href="https://docs.gitlab.com/api/oauth2/#authorization-code-flow">View Documentation</a></p>
  </li>
  <li>
    <strong>Control unique domains default for GitLab Pages sites</strong>
    <p><p>Administrators can now set the default behavior for unique domains on new GitLab Pages sites. By default, new Pages sites use unique domain URLs (like <code>my-project-1a2b3c.example.com</code>) to prevent cookie sharing between sites.</p>
<p>With this new setting for the instance, you can set new Pages sites to use path-based URLs (like <code>my-namespace.example.com/my-project</code>) by default. This helps organizations align GitLab Pages behavior with their workflows and security requirements.</p>
<p>Users can still override this setting for individual projects, and existing Pages sites remain unaffected.</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/pages/#disable-unique-domains-by-default">View Documentation</a></p>
  </li>
  <li>
    <strong>Enhancements to wiki functionality</strong>
    <p><p>This release introduces an enhanced wiki experience with three key improvements: you can now subscribe to wiki pages, view wiki comments while editing a page, and sort wiki page comments.</p>
<p>These enhancements help teams collaborate more effectively on documentation by letting you:</p>
<ul>
<li>Discuss content directly in context.</li>
<li>Suggest improvements and corrections.</li>
<li>Keep documentation accurate and up-to-date.</li>
<li>Share knowledge and expertise.</li>
</ul>
<p>With these updates, your GitLab wiki becomes living documentation that evolves alongside your projects through direct feedback and discussion.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/discussions/">View Documentation</a></p>
  </li>
  <li>
    <strong>Bulk edit epic assignees, milestones, and more</strong>
    <p><p>You can now bulk edit more epic attributes in a group. In addition to labels, you can now update assignee, health status, subscription, confidentiality, and milestone for multiple epics at once.</p>
<p>This enhancement makes it faster to manage large numbers of epics by letting you apply the same changes across multiple epics simultaneously.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/group/epics/manage_epics/#bulk-edit-epics">View Documentation</a></p>
  </li>
  <li>
    <strong>Grant pipeline execution policies access to CI/CD configurations via API</strong>
    <p><p>Use the Projects REST API to programmatically enable or disable the <strong>Pipeline execution policy</strong> setting in security policy projects with the new <code>spp_repository_pipeline_access</code> field. Previously, this setting could only be managed through the GitLab UI. With this enhancement, you can now:</p>
<ul>
<li><code>GET</code> the current <strong>Pipeline execution policy</strong> status.</li>
<li><code>PUT</code> to enable or disable the setting programmatically.</li>
</ul>
<p>This improvement enables better automation and integration workflows for teams managing security policies at scale.</p>
</p>
    <p><a href="https://docs.gitlab.com/api/projects/#edit-a-project">View Documentation</a></p>
  </li>
  <li>
    <strong>Group by OWASP 2021 in the vulnerability report</strong>
    <p>In the vulnerability report for projects and groups, you can now group the vulnerabilities by their OWASP Top 10 2021 category. Available for GitLab.com and GitLab Dedicated instances only.</p>
    <p><a href="https://docs.gitlab.com/user/application_security/vulnerability_report/#advanced-vulnerability-management">View Documentation</a></p>
  </li>
  <li>
    <strong>Scan execution policy templates</strong>
    <p><p>Scan execution policy templates help you quickly create scan execution policies based on common use cases. Choose from three
templates:</p>
<ul>
<li>Merge request security</li>
<li>Scheduled scanning</li>
<li>Release security</li>
</ul>
<p>Once you select a template, choose which GitLab security scans to enable with the template to get up and running immediately. If you have more advanced use cases, you can switch to the custom configuration to extend the policy with specific branch patterns, pipeline sources, and more.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/policies/scan_execution_policies/#scan-execution-policy-editor">View Documentation</a></p>
  </li>
  <li>
    <strong>Security policy audit events</strong>
    <p><p>GitLab Ultimate now provides comprehensive audit events for security policy management, with events organized and centralized within each security policy project.</p>
<p>Security teams can now:</p>
<ul>
<li>Track all policy modifications with detailed metadata.</li>
<li>Monitor enforcement failures, including scan and pipeline execution failures.</li>
<li>Monitor skipped scan execution and pipeline execution pipelines.</li>
<li>Detect policy violations within each project, including MRs merged with policy violations.</li>
<li>Receive alerts when limits are exceeded.</li>
<li>Detect policy configuration errors.</li>
<li>Use streaming-only options for high-volume scenarios.</li>
</ul>
<p>New audit events include:</p>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/blob/master/ee/config/audit_events/types/security_policy_create.yml">security_policy_create</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/blob/master/ee/config/audit_events/types/security_policy_delete.yml">security_policy_delete</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/blob/master/ee/config/audit_events/types/security_policy_update.yml">security_policy_update</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/blob/master/ee/config/audit_events/types/security_policy_merge_request_merged_with_policy_violations.yml">security_policy_merge_request_merged_with_policy_violations</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/blob/master/ee/config/audit_events/types/security_policy_yaml_invalidated.yml">security_policy_yaml_invalidated</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/blob/master/ee/config/audit_events/types/security_policy_yaml_invalidated.yml">security_policies_limit_exceeded</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/blob/master/ee/config/audit_events/types/security_policy_violations_detected.yml">security_policy_violations_detected</a> (streaming only)</li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/blob/master/ee/config/audit_events/types/security_policy_pipeline_failed.yml">security_policy_pipeline_failed</a> (streaming only)</li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/blob/master/ee/config/audit_events/types/security_policy_pipeline_skipped.yml">security_policy_pipeline_skipped</a> (streaming only)</li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/blob/master/config/audit_events/types/merge_request_branch_bypassed_by_security_policy.yml">merge_request_branch_bypassed_by_security_policy</a></li>
</ul>
<p>This enhancement strengthens your security posture by ensuring you have access to policy changes, configuration errors, and enforcement gaps, enabling faster incident response and thorough auditing capabilities.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/compliance/audit_event_streaming/">View Documentation</a></p>
  </li>
  <li>
    <strong>Service account and access token exceptions for approval policies</strong>
    <p><p>The new <strong>Service Account &amp; Access Token Exceptions</strong> feature allows you to designate service accounts and access tokens that can bypass merge request approval policies when necessary. This eliminates friction for known automations, while preserving security controls.</p>
<p><strong>Key capabilities include:</strong></p>
<ul>
<li>Automated workflow support: Configure specific service accounts, bot users, group access tokens, and project access tokens to bypass approval requirements for CI/CD pipelines, pull mirroring, and automated version updates. Service accounts can push directly to protected branches using approved tokens while maintaining restrictions for human users.</li>
<li>Emergency access and auditing: Enable break-glass scenarios for critical incidents with comprehensive audit trails. All bypass events generate detailed audit logs with context and reasoning, supporting compliance requirements while allowing rapid response during outages or security fixes.</li>
<li>GitOps integration: Unblock common automation challenges including repository mirroring, external CI systems (Jenkins, CloudBees), automated changelog generation, and GitFlow release processes. Service accounts receive the minimum required permissions with token-based access scoped to specific projects and branches.</li>
</ul>
<p>This enhancement maintains strict security policies with flexibility for modern DevOps automation needs, eliminating custom workarounds while preserving governance controls.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/policies/merge_request_approval_policies/#access-token-and-service-account-exceptions">View Documentation</a></p>
  </li>
  <li>
    <strong>SAML SSO support for session timeout attribute</strong>
    <p>GitLab now automatically detects and respects the <code>SessionNotOnOrAfter</code> attribute in SAML assertions from your Identity Provider (IdP). When this attribute is present, GitLab sets user sessions to expire at the time specified by your IdP, ensuring consistent session management across your organization. This feature requires no configuration changes - if your IdP provides the attribute, GitLab automatically honors the specified expiration time.</p>
    <p><a href="https://docs.gitlab.com/user/group/saml_sso/">View Documentation</a></p>
  </li>
  <li>
    <strong>Additional service account email configuration options</strong>
    <p>By default, GitLab automatically generates an email address for new service accounts. Organizations can now assign a custom email address for service accounts through the UI. Previously, custom email configuration was only possible through the Service Accounts API. This change allows organizations to better route notifications to designated email addresses.</p>
    <p><a href="https://docs.gitlab.com/user/profile/service_accounts/">View Documentation</a></p>
  </li>
  <li>
    <strong>Enterprise user enhancements</strong>
    <p><p>GitLab 18.3 introduces enterprise user enhancements that give organizations greater control over user privacy and lifecycle management.</p>
<p>Group owners can now delete enterprise users in their namespace with the Users API. This destructive action unlinks user contributions and associates them with a system-wide Ghost user. These option is particularly valuable for cleaning up users erroneously created with automated SCIM imports or managing federated environments where usernames and emails need to be repurposed.</p>
<p>Additionally, organizations can now hide enterprise user emails on their user profiles, providing broader email privacy enforcement for all enterprise users.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/enterprise_user/">View Documentation</a></p>
  </li>
  <li>
    <strong>SSH key security warnings</strong>
    <p>GitLab now displays a security warning in the UI when a user uploads a weak SSH key. This warning appears for older key types or keys with insufficient bit length (less than 2048 bits). This change helps educate users about SSH key security best practices and encourages the use of stronger cryptographic keys.</p>
    <p><a href="https://docs.gitlab.com/user/ssh/">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner 18.3</strong>
    <p><p>We’re also releasing GitLab Runner 18.3 today! GitLab Runner is the highly-scalable build agent that runs your CI/CD jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.</p>
<h4 id="bug-fixes">Bug Fixes:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/556464">In GitLab 18.2.0, runners are unable to pull the job cache by using the subdirectory file as cache key</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38707">Docker executor fails to start jobs intermittently and returns an <code>incorrect username or password</code> error message.</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38703">Inconsistency in <code>*_get_sources</code> hooks usage between <code>none</code> and <code>empty</code> Git strategies</a></li>
<li><a href="https://gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/-/issues/228">Operator deployed with non-OLM manifests assumes wrong default images</a></li>
<li><a href="https://gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/-/issues/183">Operator creates ConfigMap with the wrong name if CR has the <code>app.kubernetes.io/instance</code> label</a></li>
<li><a href="https://gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/-/issues/138">Operator 1.10.0 on OpenShift 4.9 fails to create runner ConfigMap and start pod in the <code>gitlab-runner</code> namespace</a></li>
</ul>
<h4 id="whats-new">What&rsquo;s new:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/-/issues/245">GitLab Runner Operator now supports runner manager pod annotation</a></li>
<li><a href="https://gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/-/issues/253">GitLab Runner Operator now supports OpenShift 4.19</a></li>
</ul>
<p>The list of all changes is in the GitLab Runner <a href="https://gitlab.com/gitlab-org/gitlab-runner/blob/18-3-stable/CHANGELOG.md">CHANGELOG</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/runner">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab Patch Release: 18.2.4</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-2-4-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-2-4-released/</id><published>2025-08-18T00:00:00Z</published><updated>2025-08-18T00:00:00Z</updated><author><name>Reuben Pereira</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On August 18, 2025, we released versions 18.2.4 for GitLab Community Edition and Enterprise Edition.</p>
<p>These versions resolve a number of regressions and bugs. This patch release does not include any security fixes.</p>
<h2 id="gitlab-community-edition-and-enterprise-edition">GitLab Community Edition and Enterprise Edition</h2>
<h3 id="1824">18.2.4</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8658">Build with Go 1.24.5</a></li>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2619">Update golang-fips/go</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/201780">Update gitlab-shell to v14.44.0</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200626">Backport &ldquo;Use projectRootPath to compose breadcrumb links&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/201083">Backport &ldquo;Add custom encoding for repository path for commit data&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/201159">Backport &lsquo;Fixes reviewer drawer not opening when installed under relative URL&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/201346">Backport-Invalid search request resets the project/group selections in sidebar</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/201424">Backport &lsquo;Update gitlab-chart digest to 9d9e150&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/201296">Exclude deleted projects from job token authorization logs graphql and csv export service backport to 18.2</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/201243">Backport &lsquo;Add job and script to update backport MR label after deployment&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/201366">Backport of &ldquo;Fix undefined method markdown_placeholders_feature_flag_enabled? for a ProjectNamespace&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/201654">Backport of &lsquo;fix missing ref attribute&rsquo;</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>This version does not include any new migrations, and for multi-node deployments, <a href="https://docs.gitlab.com/ee/update/#upgrading-without-downtime">should not require any downtime</a>.</p>
<p>Please be aware that by default the Omnibus packages will stop, run migrations,
and start again, no matter how “big” or “small” the upgrade is. This behavior
can be changed by adding a <a href="https://docs.gitlab.com/ee/update/zero_downtime.html"><code>/etc/gitlab/skip-auto-reconfigure</code></a> file,
which is only used for <a href="https://docs.gitlab.com/omnibus/update/README.html">updates</a>.</p>
<h2 id="updating">Updating</h2>
<p>To update, check out our <a href="https://about.gitlab.com/update/">update page</a>.</p>
<p>Note: GitLab releases have skipped 18.2.3. There is no patch with that version number.</p>
<h2 id="gitlab-subscriptions">GitLab subscriptions</h2>
<p>Access to GitLab Premium and Ultimate features is granted by a paid <a href="https://about.gitlab.com/pricing/">subscription</a>.</p>
<p>Alternatively, <a href="https://gitlab.com/users/sign_in">sign up for GitLab.com</a>
to use GitLab&rsquo;s own infrastructure.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 17.11.7</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-11-7-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-11-7-released/</id><published>2025-08-15T00:00:00Z</published><updated>2025-08-15T00:00:00Z</updated><author><name>Reuben Pereira</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On August 15, 2025, we released version 17.11.7 for GitLab Community Edition and Enterprise Edition.</p>
<p>These versions resolve a number of regressions and bugs. This patch release does not include any security fixes.</p>
<h2 id="gitlab-community-edition-and-enterprise-edition">GitLab Community Edition and Enterprise Edition</h2>
<h3 id="17117">17.11.7</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/201388">Backport &lsquo;Replace test-on-gdk with test-on-cng in backport mr pipelines&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/201373">Quarantine failing DORA Metrics dashboard tests (target single context)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/201345">Backport of &ldquo;Ensure docs hugo_build CI job uses docs-gitlab-com stable branches&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200741">Backport of &lsquo;Make sure cache is clear to prevent failure during upgrade from 17.11&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8544">Update dependency container-registry to v4.19.2-gitlab</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>This version does not include any new migrations, and for multi-node deployments, <a href="https://docs.gitlab.com/ee/update/#upgrading-without-downtime">should not require any downtime</a>.</p>
<p>Please be aware that by default the Omnibus packages will stop, run migrations,
and start again, no matter how “big” or “small” the upgrade is. This behavior
can be changed by adding a <a href="https://docs.gitlab.com/ee/update/zero_downtime.html"><code>/etc/gitlab/skip-auto-reconfigure</code></a> file,
which is only used for <a href="https://docs.gitlab.com/omnibus/update/README.html">updates</a>.</p>
<h2 id="updating">Updating</h2>
<p>To update, check out our <a href="https://about.gitlab.com/update/">update page</a>.</p>
<h2 id="gitlab-subscriptions">GitLab subscriptions</h2>
<p>Access to GitLab Premium and Ultimate features is granted by a paid <a href="https://about.gitlab.com/pricing/">subscription</a>.</p>
<p>Alternatively, <a href="https://gitlab.com/users/sign_in">sign up for GitLab.com</a>
to use GitLab&rsquo;s own infrastructure.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 18.2.2, 18.1.4, 18.0.6</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-2-2-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-2-2-released/</id><published>2025-08-13T00:00:00Z</published><updated>2025-08-13T00:00:00Z</updated><author><name>Nikhil George</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On August 13, 2025, we released versions 18.2.2, 18.1.4, 18.0.6 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, please visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring that all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. To maintain good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, it means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-2-2-released/#cve-2025-7734---cross-site-scripting-issue-in-blob-viewer-impacts-gitlab-ceee">Cross-site scripting issue in blob viewer impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-2-2-released/#cve-2025-7739---cross-site-scripting-issue-in-labels-impacts-gitlab-ceee">Cross-site scripting issue in labels impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-2-2-released/#cve-2025-6186---cross-site-scripting-issue-in-workitem-impacts-gitlab-ceee">Cross-site scripting issue in Workitem impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-2-2-released/#cve-2025-8094---improper-handling-of-permissions-issue-in-project-api-impacts-gitlab-ceee">Improper Handling of Permissions issue in project API impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-2-2-released/#cve-2024-12303---incorrect-privilege-assignment-issue-in-delete-issues-operation-impacts-gitlab-ceee">Incorrect Privilege Assignment issue in delete issues operation impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-2-2-released/#cve-2025-2614---allocation-of-resources-without-limits-issue-in-release-name-creation-impacts-gitlab-ceee">Allocation of Resources Without Limits issue in release name creation impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-2-2-released/#cve-2024-10219---incorrect-authorization-issue-in-jobs-api-impacts-gitlab-ceee">Incorrect Authorization issue in jobs API impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-2-2-released/#cve-2025-8770---authorization-issue-in-merge-request-approval-policy-impacts-gitlab-ee">Authorization issue in Merge request approval policy impacts GitLab EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-2-2-released/#cve-2025-2937---inefficient-regular-expression-complexity-issue-in-wiki-impacts-gitlab-ceee">Inefficient Regular Expression Complexity issue in wiki impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-2-2-released/#cve-2025-1477---allocation-of-resources-without-limits-issue-in-mattermost-integration-impacts-gitlab-ceee">Allocation of Resources Without Limits issue in Mattermost integration impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-2-2-released/#cve-2025-5819---incorrect-permission-assignment-issue-in-id-token-impacts-gitlab-ceee">Incorrect Permission Assignment issue in ID token impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-2-2-released/#cve-2025-2498---insufficient-access-control-issue-in-ip-restriction-impacts-gitlab-ee">Insufficient Access Control issue in IP Restriction impacts GitLab EE</a></td>
          <td>Medium</td>
      </tr>
  </tbody>
</table>
<h3 id="cve-2025-7734---cross-site-scripting-issue-in-blob-viewer-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-7734">CVE-2025-7734</a> - Cross-site scripting issue in blob viewer impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that, under certain conditions, could have allowed a successful attacker to execute actions on behalf of users by injecting malicious content.</p>
<p><strong>Impacted Versions</strong>: GitLab CE/EE: all versions from 14.2 before 18.0.6, 18.1 before 18.1.4 and 18.2 before 18.2.2 <br>
<strong>CVSS</strong>: 8.7 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-7739---cross-site-scripting-issue-in-labels-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-7739">CVE-2025-7739</a> - Cross-site scripting issue in labels impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that, under certain conditions, could have allowed authenticated users to achieve stored cross-site scripting by injecting malicious HTML content in scoped label descriptions.</p>
<p><strong>Impacted Versions</strong>: GitLab CE/EE: all versions from 18.2 before 18.2.2 <br>
<strong>CVSS</strong>: 8.7 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/yvvdwf">yvvdwf</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-6186---cross-site-scripting-issue-in-workitem-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-6186">CVE-2025-6186</a> - Cross-site scripting issue in Workitem impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed authenticated users to achieve account takeover by injecting malicious HTML into work item names.</p>
<p><strong>Impacted Versions</strong>: GitLab CE/EE: all versions from 18.1 before 18.1.4, and 18.2 before 18.2.2 <br>
<strong>CVSS</strong>: 8.7 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-8094---improper-handling-of-permissions-issue-in-project-api-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-8094">CVE-2025-8094</a> - Improper Handling of Permissions issue in project API impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that under certain conditions could have allowed authenticated users with maintainer privileges to cause denial of service to other users&rsquo; CI/CD pipelines by manipulating shared infrastructure resources beyond their intended access level.</p>
<p><strong>Impacted Versions</strong>: GitLab CE/EE: all versions 18.0 before 18.0.6, 18.1 before 18.1.4, and 18.2 before 18.2.2 <br>
<strong>CVSS</strong>: 7.7 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/abdelrahman_maged">abdelrahman_maged</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2024-12303---incorrect-privilege-assignment-issue-in-delete-issues-operation-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2024-12303">CVE-2024-12303</a> - Incorrect Privilege Assignment issue in delete issues operation impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that under certain conditions could have allowed authenticated users with specific roles and permissions to delete issues including confidential ones by inviting users with a specific role.</p>
<p><strong>Impacted Versions</strong>: GitLab CE/EE: all versions from 17.7 before 18.0.6, 18.1 before 18.1.4, and 18.2 before 18.2.2 <br>
<strong>CVSS</strong>: 6.7 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:L"><code>CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:L</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/yuki_osaki">yuki_osaki</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-2614---allocation-of-resources-without-limits-issue-in-release-name-creation-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-2614">CVE-2025-2614</a> - Allocation of Resources Without Limits issue in release name creation impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to cause a denial of service condition by creating specially crafted content that consumes excessive server resources when processed.</p>
<p><strong>Impacted Versions</strong>: GitLab CE/EE: all versions from 11.6 before 18.0.6, 18.1 before 18.1.4, and 18.2 before 18.2.2 <br>
<strong>CVSS</strong>: 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/pwnie">pwnie</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2024-10219---incorrect-authorization-issue-in-jobs-api-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2024-10219">CVE-2024-10219</a> - Incorrect Authorization issue in jobs API impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that under certain conditions could have allowed authenticated users to bypass access controls and download private artifacts by accessing specific API endpoints.</p>
<p><strong>Impacted Versions</strong>: GitLab CE/EE: all versions from 15.6 before 18.0.6, 18.1 before 18.1.4, and 18.2 before 18.2.2 <br>
<strong>CVSS</strong>:  6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/albatraoz">albatraoz</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-8770---authorization-issue-in-merge-request-approval-policy-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-8770">CVE-2025-8770</a> - Authorization issue in Merge request approval policy impacts GitLab EE</h3>
<p>GitLab has remediated an issue that could have allowed authenticated users with specific access to bypass merge request approval policies by manipulating approval rule identifiers.</p>
<p><strong>Impacted Versions</strong>: GitLab EE: all versions from 18.0 prior to 18.0.6, 18.1 prior to 18.1.4, and 18.2 prior to 18.2.2 <br>
<strong>CVSS</strong>: 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N</code></a>)</p>
<p>This vulnerability has been discovered internally by GitLab team member <a href="https://gitlab.com/bauerdominic">Dominic Bauer</a>.</p>
<h3 id="cve-2025-2937---inefficient-regular-expression-complexity-issue-in-wiki-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-2937">CVE-2025-2937</a> - Inefficient Regular Expression Complexity issue in wiki impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed authenticated users to create a denial of service condition by sending specially crafted markdown payloads to the Wiki feature.</p>
<p><strong>Impacted Versions</strong>: GitLab CE/EE: all versions from 13.2 before 18.0.6, 18.1 before 18.1.4, and 18.2 before 18.2.2 <br>
<strong>CVSS</strong>: 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/yuki_osaki">yuki_osaki</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-1477---allocation-of-resources-without-limits-issue-in-mattermost-integration-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-1477">CVE-2025-1477</a> - Allocation of Resources Without Limits issue in Mattermost integration impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an unauthenticated user to create a denial of service condition by sending specially crafted payloads to specific integration API endpoints.</p>
<p><strong>Impacted Versions</strong>: GitLab CE/EE: all versions from 8.14 before 18.0.6, 18.1 before 18.1.4, and 18.2 before 18.2.2 <br>
<strong>CVSS</strong>: 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/pwnie">pwnie</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-5819---incorrect-permission-assignment-issue-in-id-token-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-5819">CVE-2025-5819</a> - Incorrect Permission Assignment issue in ID token impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed authenticated users with developer access to obtain ID tokens for protected branches under certain circumstances.</p>
<p><strong>Impacted Versions</strong>: GitLab CE/EE: all versions from 15.7 before 17.11.6, 18.0 before 18.0.4, and 18.1 before 18.1.2 <br>
<strong>CVSS</strong>: 5.0 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:L/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/skybound">skybound</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-2498---insufficient-access-control-issue-in-ip-restriction-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-2498">CVE-2025-2498</a> - Insufficient Access Control issue in IP Restriction impacts GitLab EE</h3>
<p>GitLab has remediated an issue that under certain conditions could have allowed users to view assigned issues from restricted groups by bypassing IP restrictions.</p>
<p><strong>Impacted Versions</strong>: GitLab EE: all versions from 12.0 prior to 18.0.6, 18.1 prior to 18.1.4, and 18.2 prior to 18.2.2 <br>
<strong>CVSS</strong>: 4.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/rogerace">rogerace</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1822">18.2.2</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/198502">[backport] bug: Fixed double message bug</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/198679">Backport of &lsquo;Remove full instance test suite execution from omnibus pipeline&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/198865">Backport &lsquo;Replace test-on-gdk with test-on-cng in backport mr pipelines&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/198939">[18.2] Fix hardcoded GitLab version in spec</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/198867">Backport of &lsquo;Exclude release environments from QA live envs&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/198440">[18.2 backport] Fix flaky epic deletion specs</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/198970">[Backport 18.2] Add pause_control to Elastic delete workers</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/199095">Backport of Skip Geo secondary for SyncProjectPolicyWorker</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/198965">Backport of &ldquo;Add outbound allowlist to allowed endpoints for SSRF filter&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/199295">Backport of Revert &ldquo;Remove FF for SSRF protection for dependency proxy&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/199514">Backport of &lsquo;New projects inherit parent value for duo_features_enabled&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/199556">Backport of &lsquo;Add missing elasticsearch_indexing checks to workers&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/199665">[18.2] Fix flaky work item spec</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/199462">[backport] of Fix: include relative URL root in PDF worker and cMap paths</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200120">Ensure <code>docs hugo_build</code> CI job uses docs-gitlab-com stable branches</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200005">Backport of &lsquo;Fix: validation errors for Duo settings when creating project&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200300">Backport quarantine broken user signups cap alert test</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200160">Backport ruby gem caching improvements</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200266">Fix another case where Sidekiq can take too long to shut down</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200056">Backport of &lsquo;Filter out NULL values&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200371">Backport &lsquo;Decouple node-modules caching from any specific branch&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/199911">Backport of &lsquo;Simplify db:check-schema CI job&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200448">backport fix to use right primary key for ci_job_artifact_states</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200501">[Backport 18.2] Fix shared group access in advanced search code scope</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200708">Backport &lsquo;Danger to allow backport of maintenance type changes&rsquo; to 18-2</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200630">backport: Fix Web IDE loading race condition</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200583">Backport of Fix numpad enter not working for revision compare dropdown</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200644">Backport[18.2]: Removing check for project and framework for self managed instances</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200598">Backport fix case insensitivity in codeowners</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200942">[18.2] Fix flaky note scope spec</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/201018">Backport 556582-link-to-project-not-working-when-gitlab-hosted-in-subpath-after-upgrade-to-18-2</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200485">Backport fix: Detect CORS problems in Web IDE</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/201045">Backport &ldquo;Danger to not error when e2e:test-on-omnibus-ee job not present for only QA changes&rdquo; to 18.2</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200626">Backport &ldquo;Use projectRootPath to compose breadcrumb links&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8597">Backport of &lsquo;Use CI_COMMIT_TAG to check on_tag?&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8619">Fix deprecation check failing on nil values</a></li>
</ul>
<h3 id="1814">18.1.4</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/198678">Backport of &lsquo;Remove full instance test suite execution from omnibus pipeline&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/198869">Backport &lsquo;Replace test-on-gdk with test-on-cng in backport mr pipelines&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/198441">[18.1 backport] Fix flaky epic deletion specs</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/199082">Backport of &lsquo;Exclude release environments from QA live envs&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/199094">Backport of Skip Geo secondary for SyncProjectPolicyWorker</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/198971">[Backport 18.1] Add pause_control to Elastic delete workers</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/199294">Backport of  Revert &ldquo;Remove FF for SSRF protection for dependency proxy&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/199460">Backport of &ldquo;Update VERSION file for 18.1.3-internal0&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/199557">Backport of &lsquo;Add missing elasticsearch_indexing checks to workers&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/199709">[18.1] Fix flaky work item spec</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/199465">[backport] of Fix: include relative URL root in PDF worker and cMap paths</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200052">Backport of &ldquo;Add repair index tool&rdquo;, Backport of &ldquo;Filter out NULL values&rdquo;, Backport of &ldquo;Add documentation for IndexRepair task&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200119">Ensure <code>docs hugo_build</code> CI job uses docs-gitlab-com stable branches</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200161">Backport ruby gem caching improvements</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200267">Fix another case where Sidekiq can take too long to shut down</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/199912">Backport of &lsquo;Simplify db:check-schema CI job&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200443">Backport &lsquo;Decouple node-modules caching from any specific branch&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200449">backport fix to use right primary key for ci_job_artifact_states</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200586">Backport of Fix numpad enter not working for revision compare dropdown</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200710">Backport &lsquo;Danger to allow backport of maintenance type changes&rsquo; to 18-1</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200645">Backport[18.1]: Removing check for project and framework for self managed instances</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200628">Backport &ldquo;Use projectRootPath to compose breadcrumb links&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200613">Backport fix case insensitivity in codeowners</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8598">Backport of &lsquo;Use CI_COMMIT_TAG to check on_tag?&rsquo;</a></li>
</ul>
<h3 id="1806">18.0.6</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/198442">[18.0 backport] Fix flaky epic deletion specs</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/199084">Backport of &lsquo;Exclude release environments from QA live envs&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/199135">Backport of &lsquo;Run QA on GET release environment&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/198973">[Backport 18.0] Add pause_control to Elastic delete workers</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/199711">[18.0] Fix flaky work item spec</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200261">Ensure <code>docs hugo_build</code> CI job uses docs-gitlab-com stable branches</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200268">Fix another case where Sidekiq can take too long to shut down</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200048">Backport of &ldquo;Add repair index tool&rdquo;, Backport of &ldquo;Filter out NULL values&rdquo;, Backport of &ldquo;Add documentation for IndexRepair task&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/199913">Backport of &lsquo;Simplify db:check-schema CI job&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/197809">[backport] &rsquo;tbulva-zoekt-url-reset&rsquo; into 18.0</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200450">backport fix to use right primary key for ci_job_artifact_states</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200298">Backport ruby gem caching improvements</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200711">Backport &lsquo;Danger to allow backport of maintenance type changes&rsquo; to 18-0</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200646">Backport[18.0] Removing check for project and framework for self managed instances</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200761">Backport &lsquo;Decouple node-modules caching from any specific branch&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/200636">Backport fix case insensitivity in codeowners</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8599">Backport of &lsquo;Use CI_COMMIT_TAG to check on_tag?&rsquo;</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>This patch includes database migrations that may impact your upgrade process.</p>
<h3 id="impact-on-your-installation">Impact on your installation:</h3>
<ul>
<li><strong>Single-node instances</strong>: This patch will cause downtime during the upgrade as migrations must complete before GitLab can start.</li>
<li><strong>Multi-node instances</strong>: With proper <a href="https://docs.gitlab.com/ee/update/zero_downtime.html">zero-downtime upgrade procedures</a>, this patch can be applied without downtime.</li>
</ul>
<h3 id="regular-migrations">Regular migrations</h3>
<p>The following versions include regular migrations that run during the upgrade process:</p>
<ul>
<li>18.2.2</li>
<li>18.1.4</li>
<li>18.0.6</li>
</ul>
<h3 id="post-deploy-migrations">Post-deploy migrations</h3>
<p>The following versions include post-deploy migrations that can run after the upgrade:</p>
<ul>
<li>18.2.2</li>
<li>18.1.4</li>
<li>18.0.6</li>
</ul>
<p>To learn more about the impact of upgrades on your installation, see:</p>
<ul>
<li><a href="https://docs.gitlab.com/ee/update/zero_downtime.html">Zero-downtime upgrades</a> for multi-node deployments</li>
<li><a href="https://docs.gitlab.com/update/package/#downtime">Standard upgrades</a> for single-node installations</li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">Update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 18.2.1, 18.1.3, 18.0.5</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-2-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-2-1-released/</id><published>2025-07-23T00:00:00Z</published><updated>2025-07-23T00:00:00Z</updated><author><name>Greg Myers</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On July 23, 2025, we released versions 18.2.1, 18.1.3, 18.0.5 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, please visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring that all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. To maintain good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, it means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-2-1-released/#cve-2025-4700---cross-site-scripting-issue-impacts-kubernetes-proxy-in-gitlab-ceee">Cross-site scripting (XSS) impacts k8s proxy in GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-2-1-released/#cve-2025-4439---cross-site-scripting-issue-impacts-kubernetes-proxy-in-gitlab-ceee-using-cdns">Cross-site scripting (XSS) impacts k8s proxy in GitLab CE/EE using CDNs</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-2-1-released/#cve-2025-7001---exposure-of-sensitive-information-to-an-unauthorized-actor-issue-impacts-gitlab-ceee-using-cdns">Exposure of Sensitive Information to an Unauthorized Actor issue impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-2-1-released/#cve-2025-4976---improper-access-control-issue-impacts-gitlab-ee">Improper Access Control issue impacts GitLab EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-2-1-released/#cve-2025-0765---exposure-of-sensitive-information-to-an-unauthorized-actor-issue-impacts-gitlab-ceee">Exposure of Sensitive Information to an Unauthorized Actor issue impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-2-1-released/#cve-2025-1299---improper-access-control-issue-impacts-gitlab-ceee">Improper Access Control issue impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
  </tbody>
</table>
<h3 id="cve-2025-4700---cross-site-scripting-issue-impacts-kubernetes-proxy-in-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-4700">CVE-2025-4700</a> - Cross-site scripting issue impacts Kubernetes Proxy in GitLab CE/EE</h3>
<p>GitLab has remediated an issue affecting a Kubernetes proxy feature that, under specific circumstances, could have potentially allowed a successful attacker to trigger unintended content rendering leading to XSS.</p>
<p><strong>Impacted Versions</strong>: GitLab CE/EE: all versions from 15.10 before 18.0.5, 18.1 before 18.1.3, and 18.2 before 18.2.1. <br>
<strong>CVSS</strong>: 8.7 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-4439---cross-site-scripting-issue-impacts-kubernetes-proxy-in-gitlab-ceee-using-cdns"><a href="https://www.cve.org/CVERecord?id=CVE-2025-4439">CVE-2025-4439</a> - Cross-site scripting issue impacts Kubernetes Proxy in GitLab CE/EE using CDNs</h3>
<p>GitLab has remediated an issue that could have allowed an authenticated user to perform cross-site scripting attacks when the instance is served through certain content delivery networks.</p>
<p><strong>Impacted Versions</strong>: GitLab CE/EE: all versions from 15.10 before 18.0.5, 18.1 before 18.1.3, and 18.2 before 18.2.1. <br>
<strong>CVSS</strong>: 7.7 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:H/I:H/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-7001---exposure-of-sensitive-information-to-an-unauthorized-actor-issue-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-7001">CVE-2025-7001</a> - Exposure of Sensitive Information to an Unauthorized Actor issue impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed privileged users to access certain <code>resource_group</code> information through the API which should have been unavailable.</p>
<p><strong>Impacted Versions</strong>: GitLab CE/EE: all versions from 15.0 before 18.0.5, 18.1 before 18.1.3, and 18.2 before 18.2.1. <br>
<strong>CVSS</strong>: 4.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/iamgk808">iamgk808</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-4976---improper-access-control-issue-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-4976">CVE-2025-4976</a> - Improper Access Control issue impacts GitLab EE</h3>
<p>GitLab has remediated an issue that, under certain circumstances, could have allowed an attacker to access internal notes in GitLab Duo responses.</p>
<p><strong>Impacted Versions</strong>: GitLab EE: all versions from 17.0 before 18.0.5, 18.1 before 18.1.3, and 18.2 before 18.2.1. <br>
<strong>CVSS</strong>: 4.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/rogerace">rogerace</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-0765---exposure-of-sensitive-information-to-an-unauthorized-actor-issue-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-0765">CVE-2025-0765</a> - Exposure of Sensitive Information to an Unauthorized Actor issue impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed an unauthorized user to access custom service desk email addresses.</p>
<p><strong>Impacted Versions</strong>: GitLab CE/EE: all versions from 17.9 before 18.0.5, 18.1 before 18.1.3, and 18.2 before 18.2.1. <br>
<strong>CVSS</strong>: 4.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/iamgk808">iamgk808</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-1299---improper-access-control-issue-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-1299">CVE-2025-1299</a> - Improper Access Control issue impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that, under circumstances, could have allowed an unauthorized user to read deployment job logs by sending a crafted request.</p>
<p><strong>Impacted Versions</strong>: GitLab CE/EE affecting all versions starting from 15.4 before 18.0.5, all versions starting from 18.1 before 18.1.3, all versions starting from 18.2 before 18.2.1. <br>
<strong>CVSS</strong>: 4.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/pwnie">pwnie</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1821">18.2.1</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2530">Fix double-path issue for COM_REGISTRY</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/198503">Update VERSION files</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/198464">Backport of &lsquo;[Agentic Chat] Do not response to NewCheckpoint message&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/198481">Backport of Delete the search_refactor_membership_filter feature flag</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/198465">Backport of &lsquo;Fix S3 compatibility in Workhorse uploads for non-AWS S3 providers&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/198504">[Backport] Allow users to resume/continue previous chat sessions in Agentic Chat instead of forcing new chat creation.</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/198517">Send workflow metadata for Agentic Chat</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/198424">Backport of Fix Github Import E2E</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/198595">Backport fix for Workhorse race test: ignore EOF error for Duo Workflow send stream</a></li>
</ul>
<h3 id="1813">18.1.3</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/197029">Merge branch &lsquo;jk/cache-assets-security-mirror&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/196999">[backport] &rsquo;tbulva-zoekt-url-reset&rsquo; into &lsquo;18.1&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/197168">Revert &ldquo;Merge branch &lsquo;cherry-pick-54ec1758&rsquo; into &lsquo;18-1-stable-ee&rsquo;&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/197184">Merge branch &lsquo;dattang/pass-omnibus-package-to-release-environment-pipeline&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/197285">Merge branch &lsquo;dattang/run-qa-on-get-release-environment&rsquo; into &lsquo;18-1-stable-ee&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/197027">[backport] Add check for allowlist when configuring Elasticsearch URL</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/197355">Backport of &ldquo;Backport of &lsquo;Disable directory_code_dropdown_updates flag&rsquo;&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/197829">Revert &ldquo;Enable assets caching on security stable branches&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/197648">Backport of &lsquo;Fixed branches loading on group merge request list&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/198177">Backport of <code>Trigger webhook events on vulnerability dismissal</code></a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8554">Backport GitLab Exporter 15.6.0 to 18.1.x</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8547">Update dependency container-registry to v4.23.2-gitlab</a></li>
</ul>
<h3 id="1805">18.0.5</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/197141">[Backport 18.0] Zoekt: Only enable global search when nodes are online</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/197766">Run GET Release Environments on 18-0-stable-ee</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/197650">Backport of &lsquo;Fixed branches loading on group merge request list&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/197967">Backport &lsquo;dattang/fix-syntax-release-env-pipeline&rsquo; into &lsquo;18-0-stable-ee&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/197886">[backport to 18.0] Add check for allowlist when configuring Elasticsearch URL</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/198180">Backport of <code>Trigger webhook events on vulnerability dismissal</code></a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8546">Update dependency container-registry to v4.21.4-gitlab</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8574">Build Omnibus package for GET Release Environments - 18.0</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8575">Merge branch &lsquo;cb-fix-prein-version-parse&rsquo; into &lsquo;18-0-stable&rsquo;</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">Update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab 18.2 released</title><link href="https://docs.gitlab.com/releases/18/18-2-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/18/18-2-released/</id><published>2025-07-17T00:00:00Z</published><updated>2025-07-17T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On July 17, 2025, GitLab 18.2 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong>Markus Siebert</strong>
</p>
<p><a href="https://gitlab.com/m-s-db">Markus Siebert</a>, a Platform Engineer at DB Systel GmbH, is leading the community effort to bring native AWS Secrets Manager support to GitLab CI/CD, addressing a critical enterprise need for secure secret management in pipelines. With an impressive 172 documented activities in just 6 weeks, Markus has been working tirelessly on implementing both AWS Secrets Manager and AWS Systems Manager Parameter Store support through multiple merge requests including <a href="https://gitlab.com/gitlab-org/gitlab-runner/-/merge_requests/5587">Add functionality to retrieve secrest from AWS Secrets Manager</a>, <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/191803">Add GitLab CI config entry for AWS SSM ParameterStore</a>, and <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/192378">Documentation for AWS Secrets Manager</a>.</p>
<p>&ldquo;Markus&rsquo;s work directly enables GitLab users in AWS environments to securely manage their CI/CD secrets without relying on third-party tools or custom scripts. This is especially valuable for enterprise users who have standardized on AWS services,&rdquo; says <a href="https://gitlab.com/atiwari71">Aditya Tiwari</a>, Senior Backend Engineer, Secure at GitLab, who nominated Markus.</p>
<p>Markus&rsquo;s dedication to seeing this feature through - from initial implementation to documentation - while actively maintaining and improving merge requests based on feedback, exemplifies the best of community contribution and demonstrates the power of community-driven development in making GitLab better for AWS users.</p>
<p>This contribution was delivered through the <a href="https://about.gitlab.com/community/co-create/">GitLab Co-Create Program</a>.</p>
<p>Thanks to Markus for your valuable contributions to GitLab!</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>Duo Agent Platform in the IDE (Beta)</strong>
    <p><p>The Duo Agent Platform brings agentic chat and agent flows directly into VS Code and JetBrains IDEs, enabling natural conversation-based interaction with your codebase and GitLab projects.</p>
<p>Agentic chat is designed for quick, conversational tasks like creating and editing files, searching across your codebase with pattern matching and grep, and getting immediate answers about your code.
Agent flows handle larger implementations and comprehensive planning, taking high-level ideas from concept to architecture while accessing GitLab resources including issues, merge requests, commits, CI/CD pipelines, and security vulnerabilities.
Both provide intelligent search capabilities for documentation, code patterns, and project discovery to help you accomplish everything from quick edits to complex project analysis.</p>
<p>The platform also supports Model Context Protocol (MCP) for connecting to external data sources and tools, allowing AI features to leverage context beyond GitLab.</p>
<p>Learn more in our blog <a href="https://about.gitlab.com/blog/gitlab-duo-agent-platform-public-beta/">GitLab Duo Agent Platform Public Beta: Next-gen AI orchestration and more</a>.</p>
<p>To get started, see the <a href="https://docs.gitlab.com/user/duo_agent_platform/">Duo Agent Platform documentation</a>,
<a href="https://docs.gitlab.com/user/gitlab_duo_chat/agentic_chat/#use-agentic-chat-in-vs-code">VS Code setup guide</a>,
and <a href="https://docs.gitlab.com/user/gitlab_duo_chat/agentic_chat/#use-agentic-chat-in-jetbrains-ides">JetBrains setup guide</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/duo_agent_platform/">View Documentation</a></p>
  </li>
  <li>
    <strong>Custom workflow statuses for issues and tasks</strong>
    <p><p>Move beyond the basic open/closed system with configurable status that lets you track work items through
your team&rsquo;s actual workflow stages.</p>
<p>Instead of relying on labels, you can now define custom statuses that accurately
reflect your process. With configurable statuses, you can:</p>
<ul>
<li><strong>Define custom workflows</strong> that match your team&rsquo;s actual process.</li>
<li><strong>Replace workflow labels</strong> with proper statuses that are easier to find, update, and report on.</li>
<li><strong>Clarify completion outcomes</strong> beyond closing an issue using &ldquo;Done&rdquo; or &ldquo;Canceled&rdquo;.</li>
<li><strong>Filter and report accurately</strong> on work item status for better project insights.</li>
<li><strong>Use status in issue boards</strong> with automatic updates when issues move between columns.</li>
<li><strong>Bulk update status</strong> across multiple work items for efficient workflow management.</li>
<li><strong>Track dependencies</strong> with status visibility for linked work items.</li>
</ul>
<p>Custom workflow statuses also support <strong>quick actions in comments</strong> and automatically syncs with GitLab&rsquo;s
open/closed system.</p>
<p>Help us improve this feature by sharing your thoughts and suggestions in our
<a href="https://gitlab.com/gitlab-com/www-gitlab-com/-/issues/35235">feedback issue</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/work_items/status/">View Documentation</a></p>
  </li>
  <li>
    <strong>New merge request homepage</strong>
    <p><p>Managing code reviews across multiple projects can be overwhelming when you&rsquo;re juggling dozens of merge requests
as both an author and reviewer.</p>
<p>The new merge request homepage transforms how you navigate your review workload
by intelligently prioritizing what needs your attention right now, with two powerful viewing modes:</p>
<ul>
<li><strong>Workflow view</strong> organizes merge requests by their review state, grouping work by its stage in the code review workflow.</li>
<li><strong>Role view</strong> groups your merge requests by whether you&rsquo;re the author or reviewer, giving you a clear separation of responsibilities.</li>
</ul>
<p>The <strong>Active</strong> tab shows merge requests requiring attention, <strong>Merged</strong> displays recently completed work,
and <strong>Search</strong> provides comprehensive filtering capabilities.</p>
<p>The new homepage also expands your visibility by combining both authored and assigned merge requests,
ensuring you never miss work that&rsquo;s been delegated to you.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/merge_requests/homepage/">View Documentation</a></p>
  </li>
  <li>
    <strong>Improve security with immutable container tags (Beta)</strong>
    <p><p>Container registries are critical infrastructure for modern DevSecOps teams.
However, even with protected container tags, organizations still face a challenge:
After a tag is created, users with sufficient permissions can alter it.
This creates risks for teams that rely on specific tagged versions of container images for production stability.
Any modification—even by authorized users—can introduce unintended changes or compromise deployment integrity.</p>
<p>With immutable container tags, you can protect container images from unintended changes.
After a tag is created that matches an immutable rule, no one can modify the container image.
You can now:</p>
<ul>
<li>Create up to 5 total protection rules per project (combining both protected and immutable rules) using RE2 regex patterns.</li>
<li>Protect critical tags like latest, semantic versions (for example, v1.0.0), or release candidates from any modification.</li>
<li>Ensure immutable tags are automatically excluded from cleanup policies.</li>
</ul>
<p>Immutable container tags require the next-generation container registry, which is enabled by default on GitLab.com.
For GitLab Self-Managed instances, you must enable the <a href="https://docs.gitlab.com/administration/packages/container_registry_metadata_database/">metadata database</a>
to use immutable container tags.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/packages/container_registry/immutable_container_tags/">View Documentation</a></p>
  </li>
  <li>
    <strong>Group and project controls for Premium and Ultimate with GitLab Duo</strong>
    <p>GitLab Premium and Ultimate users can now change the availability of Code Suggestions and GitLab Duo Chat in the IDE for groups and projects. Previously, you could change the availability for the instance or top-level group only.</p>
    <p><a href="https://docs.gitlab.com/user/gitlab_duo/turn_on_off/">View Documentation</a></p>
  </li>
  <li>
    <strong>New group overview compliance dashboard</strong>
    <p><p>The compliance center is the central location for compliance teams to manage their compliance status
reporting, violations reporting, and compliance frameworks for their group.</p>
<p>The new group overview compliance dashboard gives compliance managers an aggregated view on compliance
information across all of the projects in a group. This first iteration displays the following information:</p>
<ul>
<li>% of projects covered by a certain compliance framework.</li>
<li>% of failed requirements for all projects in a group.</li>
<li>% of failed controls for all projects in a group.</li>
<li>The specific frameworks that require &lsquo;attention&rsquo;.</li>
</ul>
<p>With this new group overview, compliance managers now have a single unified view that
provides them with a clear high-level picture, of their compliance posture.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/compliance/compliance_center/compliance_overview_dashboard/">View Documentation</a></p>
  </li>
  <li>
    <strong>Map workspace Kubernetes agents for the instance</strong>
    <p><p>GitLab administrators can now map enabled workspace Kubernetes agents for the instance. Users can then create workspaces from any group or project in that instance.</p>
<p>This significantly increases workspace scalability by allowing organizations to provision workspace Kubernetes agents once, and make those agents accessible to all current and future projects across the entire instance.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/workspace/gitlab_agent_configuration/#allow-a-cluster-agent-for-workspaces-on-the-instance">View Documentation</a></p>
  </li>
  <li>
    <strong>Download a PDF export of security reports</strong>
    <p>To communicate the state and progress of your vulnerability management efforts to other stakeholders,
you can now export the security dashboard for each project or group as a PDF document.</p>
    <p><a href="https://docs.gitlab.com/user/application_security/security_dashboard/#exporting">View Documentation</a></p>
  </li>
  <li>
    <strong>Centralized Security Policy Management (Beta)</strong>
    <p><p>In large organizations where compliance is critical, teams often struggle with fragmented policies
scattered across multiple projects and groups. Without centralized visibility, ensuring consistent
enforcement becomes a time-consuming challenge while increasing compliance risk.</p>
<p>Centralized security policy management introduces a unified approach to creating, managing,
and enforcing security policies across your entire GitLab organization through a single designated
compliance and security policy (CSP) group. This allows security teams to:</p>
<ul>
<li><strong>Define policies once and apply everywhere</strong>: Create instance-wide security policies once through the CSP and automatically enforce the policies across all groups and projects.</li>
<li><strong>Configure business unit policies</strong>: Top-level groups can configure their own distinct set of policies while inheriting organization policies from the CSP group.</li>
<li><strong>Ensure adherence to principle of least privilege</strong>: Establish a central policy management layer enforced for the instance.</li>
</ul>
<p>This beta release establishes the foundational framework for centralized policy management,
with support for all existing security policy types, configurable for groups, projects, or instance.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/policies/centralized_security_policy_management/">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Agentic Core</h4>
<ul>
  <li>
    <strong>Mistral Small now available for GitLab Duo Self-Hosted</strong>
    <p>You can now use Mistral Small on <a href="https://docs.gitlab.com/administration/gitlab_duo_self_hosted/supported_models_and_hardware_requirements/#supported-models">Gitlab Duo Self-Hosted</a>. This model is available on GitLab Self-Managed instances, and is the first fully compatible open source model for GitLab Duo Chat and Code Suggestions on GitLab Duo Self-Hosted.</p>
    <p><a href="https://docs.gitlab.com/administration/gitlab_duo_self_hosted/supported_models_and_hardware_requirements/#supported-models/">View Documentation</a></p>
  </li>
</ul>
<h4>Scale and Deployments</h4>
<ul>
  <li>
    <strong>Administrators can reassign contributions without user confirmation</strong>
    <p><p>Administrators can now reassign contributions from placeholder users to active users without user confirmation.
This feature addresses a key challenge for larger organizations where the process stalled when users did not check their emails to approve reassignments.</p>
<p>On GitLab instances where user impersonation is enabled, administrators can maintain data integrity while streamlining user management workflows.
Users still receive notification emails after the reassignment is complete, ensuring transparency throughout the process.</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/settings/import_and_export_settings/#skip-confirmation-when-reassigning-placeholder-users">View Documentation</a></p>
  </li>
  <li>
    <strong>Reassign from placeholder users to inactive users</strong>
    <p><p>Previously, administrators could reassign contributions and memberships from placeholder users to active users only.</p>
<p>On GitLab Self-Managed, administrators can now also reassign contributions and memberships from placeholder users to inactive users.
This feature permits you to preserve the contribution history and membership information of blocked, banned, or deactivated users on your GitLab instance.</p>
<p>Administrators must first enable this setting and, when enabled, this setting streamlines user management by
skipping user confirmation during reassignment while maintaining secure access control.</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/settings/import_and_export_settings/#skip-confirmation-when-administrators-reassign-placeholder-users">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>Container Scanning support for multi-architecture container images</strong>
    <p>Container Scanning now ships with Linux Arm64 container image variants. When running
on a Linux Arm64 runner, the analyzer will no longer require emulation, resulting in a faster
analysis. In addition, you can now scan multi-architecture images by
setting the <code>TRIVY_PLATFORM</code> environment variable to the platform you want to scan.</p>
    <p><a href="https://docs.gitlab.com/user/application_security/container_scanning/#available-cicd-variables">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved archive file support for Container Scanning</strong>
    <p>GitLab 18.2 brings improved archive file scanning support to Container Scanning.
If a vulnerability in a particular package is found in multiple images, you now see a vulnerability attributed to each scanned image.</p>
    <p><a href="https://docs.gitlab.com/user/application_security/container_scanning/#scanning-archive-formats">View Documentation</a></p>
  </li>
  <li>
    <strong>Static reachability support for JavaScript</strong>
    <p>Composition Analysis now supports Static Reachability for JavaScript libraries.
You can use the data produced by static reachability as part of your triage and remediation
decision making. Static reachability data can also be used with EPSS, KEV, and CVSS scores
to provide a more focused view of your vulnerabilities.</p>
    <p><a href="https://docs.gitlab.com/user/application_security/dependency_scanning/static_reachability/#supported-languages-and-package-managers">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved support for verifying successful DAST login</strong>
    <p><p>Previously, the <code>DAST_AUTH_SUCCESS_IF_AT_URL</code> variable required an exact URL match to verify successful authentication. This worked well for applications with static landing pages, but posed difficulties for applications where post-login URLs contain dynamic elements for each login.</p>
<p>Now, you can use wildcard patterns in the <code>DAST_AUTH_SUCCESS_IF_AT_URL</code> variable to match dynamic URL patterns. This enhancement provides the flexibility needed to verify authentication success even when the exact URL changes between sessions.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/dast/browser/configuration/variables/#authentication">View Documentation</a></p>
  </li>
  <li>
    <strong>DAST support for time-based one-time password MFA</strong>
    <p><p>Dynamic Analysis now supports time-based one-time password (TOTP) multi-factor authentication.</p>
<p>You can run DAST scans on projects with TOTP MFA enabled to ensure comprehensive security testing.
This enhancement delivers more accurate scan results by testing applications in configurations that mirror
production environments where MFA is deployed.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/dast/browser/configuration/authentication/">View Documentation</a></p>
  </li>
  <li>
    <strong>Deactivate streaming to an audit streaming destination</strong>
    <p><p>Previously, there was no way to temporarily deactivate streaming to an audit streaming destination. You might
want to do this for a number of reasons, including to troubleshoot stream connectivity or to make changes to
configuration without deleting the configuration and starting again.</p>
<p>With GitLab 18.2, we&rsquo;ve added the ability to toggle an audit stream as active or inactive. When the audit stream
is inactive, audit events are no longer streamed to the chosen destination. When reactivated, audit events are
again streamed to the chosen destination.</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/compliance/audit_event_streaming/#activate-or-deactivate-streaming-destinations">View Documentation</a></p>
  </li>
  <li>
    <strong>Filter functionality for all audit streaming destinations</strong>
    <p><p>Previously, certain audit streaming destinations did not have all of the available filtering capability.</p>
<p>We now support filter functionality for all destinations via the UI, including the ability to filter:</p>
<ul>
<li>By audit event type.</li>
<li>By groups or projects.</li>
</ul>
<p>This change also means that audit event destinations such as AWS and GCP can now filter through audit events.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/compliance/audit_event_streaming/">View Documentation</a></p>
  </li>
  <li>
    <strong>Configure epic display preferences</strong>
    <p><p>You now have full control over which metadata appears when you view your list of
work items, making it easier to focus on the information that matters most to you.</p>
<p>Previously, all metadata fields were always visible, which could make scanning through work
items overwhelming. Now you can customize your view by turning on or off specific fields
like assignees, labels, dates, and milestones.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/group/epics/manage_epics/#configure-epic-display-preferences">View Documentation</a></p>
  </li>
  <li>
    <strong>Open epics in a drawer or the full page on the Epics page</strong>
    <p><p>You can now choose how epics open from the list page with a new toggle that switches between drawer view and
full-page navigation.</p>
<p>Use the drawer to quickly review epic details while maintaining context of your epic list,
or open the full page when you need more screen space for detailed editing and comprehensive navigation.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/group/epics/manage_epics/#open-epics-in-a-drawer">View Documentation</a></p>
  </li>
  <li>
    <strong>Assign milestones to epics for enhanced long-term planning</strong>
    <p><p>You can now assign <a href="https://docs.gitlab.com/user/project/milestones/">milestones</a> directly to epics, creating a natural planning cascade from strategic initiatives down to execution. This enhancement helps you align longer-term planning cadences, like quarterly planning or SAFe program increments, with epics. At the same time, you can keep iterations focused on development sprints.</p>
<p>With this clear hierarchy in place, you can reduce administrative overhead and gain better visibility into how your strategic initiatives progress against organizational timeframes.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/milestones/">View Documentation</a></p>
  </li>
  <li>
    <strong>Assign epics to team members</strong>
    <p>You can now assign epics to individuals, making it clear who is responsible for overseeing strategic initiatives. Epic assignees help you identify ownership at the portfolio level, enabling faster decision-making and clearer accountability for long-term objectives. Teams can quickly see who to contact about epic progress, dependencies, or scope changes.</p>
    <p><a href="https://docs.gitlab.com/user/group/epics/manage_epics/#assignees">View Documentation</a></p>
  </li>
  <li>
    <strong>Sorting and pagination for GLQL views</strong>
    <p><p>This release introduces enhanced sorting and pagination for GLQL views, making it easier to work with large datasets.</p>
<p>You can now sort by key fields including due dates, health status, and popularity to quickly find the most relevant items. The new &ldquo;Load more&rdquo; pagination system provides better control over data loading, replacing overwhelming full-page results with manageable chunks that load on demand.</p>
<p>These improvements help teams efficiently navigate complex project data and focus on what matters most at any given moment.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/glql/#presentation-syntax">View Documentation</a></p>
  </li>
  <li>
    <strong>Work item references and editor improvements for GitLab Flavored Markdown</strong>
    <p><p>You can now reference issues, epics, and work items using a unified <code>[work_item:123]</code> syntax in GitLab Flavored Markdown. This new syntax works alongside existing reference formats like <code>#123</code> for issues and <code>&amp;123</code> for epics, and supports cross-project references with <code>[work_item:namespace/project/123]</code>.</p>
<p>The plain text editor also includes a new <a href="https://docs.gitlab.com/user/profile/preferences/#maintain-cursor-indentation">preference to maintain cursor indentation</a> when you press Enter, making it easier to write structured content like nested lists and code blocks.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/markdown/#gitlab-specific-references">View Documentation</a></p>
  </li>
  <li>
    <strong>Vulnerability ID added to vulnerability report CSV export</strong>
    <p>Previously, the CSV export of the vulnerability report did not include vulnerability IDs.
You can now find the ID of each vulnerability listed in the CSV export.</p>
    <p><a href="https://docs.gitlab.com/user/application_security/vulnerability_report/#exporting">View Documentation</a></p>
  </li>
  <li>
    <strong>Reachability filter in the vulnerability report</strong>
    <p><p>Users can now filter data in the vulnerability report to include only reachable vulnerabilities.
Reachable vulnerabilities represent vulnerabilities that are both:</p>
<ul>
<li>On the Common Vulnerabilities and Exposures (CVE) list.</li>
<li>Part of a library that is explicitly imported.</li>
</ul></p>
    <p><a href="https://docs.gitlab.com/user/application_security/vulnerability_report/#filtering-vulnerabilities">View Documentation</a></p>
  </li>
  <li>
    <strong>Vulnerability GraphQL API returns additional information</strong>
    <p><p>You can now use the GraphQL API to determine the pipeline when the vulnerability was
introduced and when it was last detected. The Vulnerability GraphQL API now includes:</p>
<ul>
<li><code>initialDetectedPipeline</code>: Use to retrieve additional commit information about when the vulnerability was introduced, such as the author&rsquo;s user name.</li>
<li><code>latestDetectedPipeline</code>: Use to retrieve additional commit information about when the vulnerability was removed, such as the commit SHA.</li>
</ul></p>
    <p><a href="https://docs.gitlab.com/api/graphql/reference/#vulnerability">View Documentation</a></p>
  </li>
  <li>
    <strong>Source branch pattern exceptions for approval policies</strong>
    <p><p>Previously, teams using GitFlow often faced approval deadlocks when merging <code>release/*</code> branches to <code>main</code>,
as most contributors had already participated in release development and then couldn&rsquo;t serve as approvers.</p>
<p>Branch pattern exceptions in merge request approval policies solve this by automatically bypassing approval
requirements for specific source-target branch combinations.
Configure strict approvals for feature-to-main merges while allowing streamlined release-to-main workflows.</p>
<p><strong>Key capabilities:</strong></p>
<ul>
<li><strong>Pattern-based configuration:</strong> Define source branch patterns like <code>release/*</code> or <code>hotfix/*</code>
that bypass approval requirements</li>
<li><strong>Seamless integration:</strong> Branch exceptions integrate directly into existing merge request approval
policies and are configurable through the UI or <code>policy.yml</code> file.</li>
</ul>
<p>This eliminates the need for complex workarounds while preserving the security benefits of merge request
approval policies for standard development workflows.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/policies/merge_request_approval_policies/#source-branch-exceptions">View Documentation</a></p>
  </li>
  <li>
    <strong>Display dependency paths</strong>
    <p><p>Previously, it was difficult to determine whether a dependency was a direct dependency, or a transient dependency imported by a descendant of the dependency.</p>
<p>You can now determine whether a library is primarily or transitively imported using the new dependency paths feature. You can find dependency paths on the project and group dependency list as well as in the vulnerability details. This capability allows developers to determine the most efficient path to a fix depending on how the library is imported.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/dependency_list/#dependency-paths">View Documentation</a></p>
  </li>
  <li>
    <strong>Credentials inventory now includes service account tokens</strong>
    <p>GitLab now supports service account tokens in the credentials inventory, giving you better visibility and control over the various authentication methods used across your software supply chain. The credentials inventory provides a complete picture of credentials used across your organization.</p>
    <p><a href="https://docs.gitlab.com/administration/credentials_inventory/">View Documentation</a></p>
  </li>
  <li>
    <strong>Security Inventory for comprehensive asset visibility now in beta</strong>
    <p><p>AppSec teams need comprehensive visibility into their organization&rsquo;s security posture across all assets. Previously, GitLab&rsquo;s security workflows focused primarily on project-level scanner configuration and project-level vulnerabilities, making it difficult to understand coverage gaps and make efficient, risk-based prioritization decisions.</p>
<p>Security Inventory provides a centralized view of the security posture across your GitLab instance, enabling AppSec teams to:</p>
<ul>
<li>Get complete visibility into security coverage across projects and groups</li>
<li>Identify assets that lack security scanning or have configuration gaps</li>
<li>Make informed, risk-based decisions about where to focus security efforts</li>
<li>Track security posture improvements over time</li>
</ul>
<p>This feature helps bridge the gap between individual project security and organization-wide security strategy, giving you the asset inventory foundation needed for effective security program management.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/security_inventory/">View Documentation</a></p>
  </li>
  <li>
    <strong>Custom admin role in beta</strong>
    <p><p>The custom admin role brings granular permissions to the Admin Area for GitLab Self-Managed and GitLab Dedicated instances. Instead of granting full access, administrators can now create specialized roles that access only the specific functions needed by users. This feature helps organizations implement the principle of least privilege for administrative functions, reduce security risks from overprivileged access, and improve operational efficiency.</p>
<p>We&rsquo;re actively seeking community feedback on this feature. If you have questions, want to share your implementation experience, or would like to engage directly with our team about potential improvements, please visit our <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/509376">feedback issue</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/custom_roles/">View Documentation</a></p>
  </li>
  <li>
    <strong>Trigger jobs can mirror the downstream pipeline status</strong>
    <p>Previously, trigger jobs using <code>strategy:depend</code> had limitations when dealing with complex pipeline states such as manual jobs, blocked pipelines, or retried pipelines with changing statuses during execution. This could make it seem like the downstream pipeline was actively running, when it was actually blocked on a manual job.
The new <code>strategy:mirror</code> keyword provides more nuanced status reporting by mirroring the exact real-time status of the downstream pipeline. Statuses include intermediate states like <code>running</code>, <code>manual</code>, <code>blocked</code>, and <code>canceled</code>. This gives teams complete visibility into the current state of their downstream pipeline without breaking the existing workflow.</p>
    <p><a href="https://docs.gitlab.com/ci/yaml/#triggerstrategy">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner 18.2</strong>
    <p><p>We’re also releasing GitLab Runner 18.2 today! GitLab Runner is the highly-scalable build agent that runs your CI/CD jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.</p>
<h4 id="bug-fixes">Bug Fixes:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38890">Runners fail in FIPS mode after you upgrade to GitLab Runner 18.1.0</a></li>
<li><a href="https://gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/-/issues/241">Unable to start job pods with <code>FF_USE_DUMB_INIT_WITH_KUBERNETES_EXECUTOR</code></a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38273">The <code>ubi-fips</code> image is not the default helper image flavor for GitLab Runner FIPS</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/29181">Runners remain offline for an extended period after you disable GitLab maintenance mode</a></li>
</ul>
<p>The list of all changes is in the GitLab Runner <a href="https://gitlab.com/gitlab-org/gitlab-runner/blob/18-2-stable/CHANGELOG.md">CHANGELOG</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/runner">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab Patch Release: 18.1.2, 18.0.4, 17.11.6</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-1-2-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-1-2-released/</id><published>2025-07-09T00:00:00Z</published><updated>2025-07-09T00:00:00Z</updated><author><name>Greg Myers</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On July 9, 2025, we released versions 18.1.2, 18.0.4, 17.11.6 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, please visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring that all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. To maintain good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, it means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-1-2-released/#cve-2025-6948---cross-site-scripting-issue-impacts-gitlab-ceee">Cross-site scripting issue impacts GitLab CE/EE</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-1-2-released/#cve-2025-3396---improper-authorization-issue-impacts-gitlab-ceee">Incorrect authorization issue impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-1-2-released/#cve-2025-4972---improper-authorization-issue-impacts-gitlab-ee">Incorrect authorization issue impacts GitLab EE</a></td>
          <td>Low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-1-2-released/#cve-2025-6168---improper-authorization-issue-impacts-gitlab-ee">Incorrect authorization issue impacts GitLab EE</a></td>
          <td>Low</td>
      </tr>
  </tbody>
</table>
<h3 id="cve-2025-6948---cross-site-scripting-issue-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-6948">CVE-2025-6948</a> - Cross-site scripting issue impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that, under certain conditions, could have allowed a successful attacker to execute actions on behalf of users by injecting malicious content.</p>
<p><strong>Impacted Versions</strong>: all versions from 17.11 before 17.11.6, 18.0 before 18.0.4, and 18.1 before 18.1.2. <br>
<strong>CVSS</strong>: 8.7 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N</code></a></p>
<p>Thanks <a href="https://hackerone.com/yvvdwf">yvvdwf</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-3396---improper-authorization-issue-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-3396">CVE-2025-3396</a> - Improper authorization issue impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed authenticated project owners to bypass group-level forking restrictions by manipulating API requests.</p>
<p><strong>Impacted Versions</strong>: all versions from 13.3 before 17.11.6, 18.0 before 18.0.4, and 18.1 before 18.1.2. <br>
<strong>CVSS</strong>: 4.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/theluci">theluci</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-4972---improper-authorization-issue-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-4972">CVE-2025-4972</a> - Improper authorization issue impacts GitLab EE</h3>
<p>GitLab has remediated an issue that could have allowed authenticated users with invitation privileges to bypass group-level user invitation restrictions by manipulating group invitation functionality.</p>
<p><strong>Impacted Versions</strong>: all versions from 18.0 before 18.0.4 and 18.1 before 18.1.2. <br>
<strong>CVSS</strong>: 2.7(<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:N/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:N/I:L/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/mateuszek">mateuszek</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-6168---improper-authorization-issue-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-6168">CVE-2025-6168</a> - Improper authorization issue impacts GitLab EE</h3>
<p>GitLab has remediated an issue that could have allowed authenticated maintainers to bypass group-level user invitation restrictions by sending crafted API requests.</p>
<p><strong>Impacted Versions</strong>: all versions from 18.0 before 18.0.4 and 18.1 before 18.1.2. <br>
<strong>CVSS</strong>: 2.7 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:L/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/hunter0xp7">hunter0xp7</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="rsync-security-updates">rsync security updates</h3>
<p><code>rsync</code> has been updated to version 3.4.1 which contains fixes for security vulnerabilities including CVE-2024-12084 and CVE-2024-12088.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1812">18.1.2</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2477">Backport Exporter 15.5.0 to 18.1 stable</a></li>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2474">update gitlab-org/container-registry to v4.23.2-gitlab</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/195410">Merge branch &lsquo;550037-set-static-glab-version-for-release-qa-tests&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/195314">Quarantine a flaky test</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/195649">Fix code owner validation for roles</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/195703">Enable using glab for CI release</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/195818">Remove Sidekiq shutdown delay in ConcurrencyLimitSampler</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/196086">Refactor blob commit info section (18.1 backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/195999">Backport &lsquo;Upload cached frontend stable packages&rsquo; to 18-1-stable-ee</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/196131">[Backport 18.1] Reintroduce body for redirect responses</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/196232">Show both author and committer in last commit (18.1 backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/196113">Fix creation of PATs using UI on relative installations</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/195487">[Backport] Zoekt: Only enable global search when nodes are online</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/196241">Fix title on empty projects (18.1 backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/196358">Rake Doctor Secrets: Fix WebHook error</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/196460">Fix comment typos to trigger asset compilation</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/196504">Fix E2E test service_ping_default_enabled_spec.rb</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/196273">Fix catalog data loader memoization problem in specs</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/196167">Backport &ldquo;Disable the edit button, instead of not rendering it&rdquo; to 18.1</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/195871">Add a redirect status as a success backport to 18.1</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/196586">Make sure to load correct loader on every request</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/196472">Merge branch &lsquo;dattang/build-omnibus-for-release-environment&rsquo; into &lsquo;18-1-stable-ee&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/196440">Backport &lsquo;dattang/export-release-environment-package-name&rsquo; into &lsquo;18-1-stable-ee&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/196588">Quarantine a flaky test</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/196825">Backport: &lsquo;revert-grpc-1.72&rsquo; into 18-1</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/196613">Merge branch &lsquo;jk/cache-assets-for-stable-branch&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/196503">Fix the owner for sequence ci_builds_id_seq</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8519">Backport GitLab Exporter 15.5.0 to 18.1 stable</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8522">Merge branch &lsquo;dattang/upload-package-for-release-environment&rsquo; into &lsquo;18-1-stable&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8527">Merge branch &lsquo;dattang/build-release-environment-package&rsquo; into &lsquo;18-1-stable&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8533">Merge branch &lsquo;dattang/fix-release-environment-package-name&rsquo; into &lsquo;18-1-stable&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8540">Stable branch builds: Fix versions parsing</a></li>
</ul>
<h3 id="1804">18.0.4</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2473">update gitlab-org/container-registry to v4.21.4-gitlab</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/195409">Use 1.59.2 version of glab in release_with_glab_spec.rb</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/195315">Quarantine a flaky test</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/195199">Remove checksum length expectation from the Gitlab::Git::Repository#checksum</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/195561">Fix Protected Tags show page</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/195650">Fix code owner validation for roles</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/195819">Remove Sidekiq shutdown delay in ConcurrencyLimitSampler</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/196089">Refactor blob commit info section (18.0 backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/196001">Backport &lsquo;Upload cached frontend stable packages&rsquo; to 18-0-stable-ee</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/196132">[Backport 18.0] Reintroduce body for redirect responses</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/196234">Show both author and committer in last commit (18.0 backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/196166">Backport &ldquo;Add a spinner for a loading elipsis menu&rdquo; to 18.0</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/196243">Fix title on empty projects (18.0 backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/195727">No-op ValidateCiBuildNeedsProjectIdNotNull</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/196467">Fix comment typos to trigger asset compilation</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/196701">[Backport 18.0] Fix incorrect redirect when branch doesn&rsquo;t include files</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/196676">Fix creation of PATs using UI on relative installations</a></li>
</ul>
<h3 id="17116">17.11.6</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2475">update gitlab-org/container-registry to v4.19.2-gitlab</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/195408">Use 1.59.2 version of glab in release_with_glab_spec.rb</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/195316">Quarantine a flaky test</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/195200">Remove checksum length expectation from the Gitlab::Git::Repository#checksum</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/195652">Fix code owner validation for roles</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/195925">Revert &ldquo;Merge branch &lsquo;backport-fix/547265-code-owner-roles-validation-17-11&rsquo;&hellip;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/196002">Backport &lsquo;Upload cached frontend stable packages&rsquo; to 17-11-stable-ee</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/196468">Fix comment typos to trigger asset compilation</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/196238">Backport 1465f38a to 17.11</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/195445">Fix incompatible Rails cache version from 7.1 to 6.1</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/196678">Fix creation of PATs using UI on relative installations</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/196702">[Backport 17.11] Fix incorrect redirect when branch doesn&rsquo;t include files</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">Update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 18.1.1, 18.0.3, 17.11.5</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-1-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-1-1-released/</id><published>2025-06-25T00:00:00Z</published><updated>2025-06-25T00:00:00Z</updated><author><name>Rohit Shambhuni</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On June 25, 2025, we released versions 18.1.1, 18.0.3, 17.11.5 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, please visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring that all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. To maintain good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, it means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-1-1-released/#cve-2025-3279---denial-of-service-impacts-gitlab-ceee">Denial of Service impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-1-1-released/#cve-2025-1754---missing-authentication-issue-impacts-gitlab-ceee">Missing Authentication issue impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-1-1-released/#cve-2025-5315---improper-access-control-issue-impacts-gitlab-ceee">Improper access control issue impacts GitLab CE/EE</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-1-1-released/#cve-2025-2938---elevation-of-privilege-impacts-gitlab-ceee">Elevation of Privilege impacts GitLab CE/EE</a></td>
          <td>Low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-1-1-released/#cve-2025-5846---improper-access-control-issue-impacts-gitlab-ee">Improper access control issue impacts GitLab EE</a></td>
          <td>Low</td>
      </tr>
  </tbody>
</table>
<h3 id="cve-2025-3279---denial-of-service-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-3279">CVE-2025-3279</a> - Denial of Service impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that, under certain conditions, could have allowed authenticated attackers to create a DoS condition by sending crafted GraphQL requests.</p>
<p><strong>Impacted Versions</strong>: GitLab CE/EE: all versions from 10.7 before 17.11.5, 18.0 before 18.0.3, and 18.1 before 18.1.1. <br>
<strong>CVSS</strong>: 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/pwnie">pwnie</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-1754---missing-authentication-issue-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-1754">CVE-2025-1754</a> - Missing Authentication issue impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed unauthenticated attackers to upload arbitrary files to public projects by sending crafted API requests, potentially leading to resource abuse and unauthorized content storage.</p>
<p><strong>Impacted Versions</strong>: GitLab CE/EE: all versions from 17.2 before 17.11.5, 18.0 before 18.0.3, and 18.1 before 18.1.1. <br>
<strong>CVSS</strong>: 5.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/abdelrahman_maged">abdelrahman_maged</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-5315---improper-access-control-issue-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-5315">CVE-2025-5315</a> - Improper access control issue impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed authenticated users with Guest role permissions to add child items to incident work items by sending crafted API requests that bypassed UI-enforced role restrictions.</p>
<p><strong>Impacted Versions</strong>: GitLab CE/EE: all versions from 17.2 before 17.11.5, 18.0 before 18.0.3, and 18.1 before 18.1.1.<br>
<strong>CVSS</strong>: 4.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/rhidayahh">rhidayahh</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-2938---elevation-of-privilege-impacts-gitlab-ceee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-2938">CVE-2025-2938</a> - Elevation of Privilege impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed authenticated users to gain elevated project privileges by requesting access to projects where role modifications during the approval process resulted in unintended permission grants.</p>
<p><strong>Impacted Versions</strong>: GitLab CE/EE: all versions from 17.3 before 17.11.5, 18.0 before 18.0.3, and 18.1 before 18.1.1. <br>
<strong>CVSS</strong>: 3.1 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/mateuszek">mateuszek</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-5846---improper-access-control-issue-impacts-gitlab-ee"><a href="https://www.cve.org/CVERecord?id=CVE-2025-5846">CVE-2025-5846</a> - Improper access control issue impacts GitLab EE</h3>
<p>GitLab has remediated an issue that could have allowed authenticated users to assign unrelated compliance frameworks to projects by sending crafted GraphQL mutations that bypassed framework-specific permission checks.</p>
<p><strong>Impacted Versions</strong>: GitLab EE: all versions from 16.10 before 17.11.5, 18.0 before 18.0.3, and 18.1 before 18.1.1 <br>
<strong>CVSS</strong>: 2.7 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:N/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:N/I:L/A:N</code></a>)</p>
<p>This vulnerability was reported internally by a GitLab team member, <a href="https://gitlab.com/joernchen">Joern Schneeweisz</a>.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1811">18.1.1</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2454">(Backport to 18.1) fix: Don&rsquo;t unset IMAGE_TAG_EXT passed by gitlab-org/gitlab</a></li>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2450">Backport: Drop ubi-assets-release CI job</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/195172">[backport] 18.1: Merge branch &lsquo;dj-exclude-stable-branch-coverage&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/194913">fix: Backport fix on git over ssh</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/194784">Check if Amazon Q should be enabled at project level</a></li>
</ul>
<h3 id="1803">18.0.3</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/194052">[backport] Fix line number in zoekt response</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/194127">Restrict LFS file download to project-bound objects</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/194237">Backport &ldquo;E2E test: account for Duo Core behaviour in code suggestion tests&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/194238">Backport &ldquo;E2E test: disable elasticsearch omnibus jobs&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/194179">Backport &ldquo;Fix Self Hosted Duo Beta features not being available&rdquo; to 18.0</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/194181">Backport &lsquo;Move up release-environments stage in CI&rsquo; to 18-0-stable-ee</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/194518">Projects::TransferService should be more reliable</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/194558">Merge branch &lsquo;jmc-549650&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/194161">backport &rsquo;tbulva-zoekt-flashing-no-results&rsquo; into 18.0</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/194177">Merge branch &rsquo;tbulva-search-page-scope-fix&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/194494">Backport attribute_methods.rb</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/194391">Backport &ldquo;Fix losing wiki comments on some wiki page slug changes&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/195084">Backport to 18.0: Set glab version for release QA tests</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/194193">Backport vulnerability_namespace_historical_statistic fix to 18.0</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/195173">[backport] 18.0: Merge branch &lsquo;dj-exclude-stable-branch-coverage&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/194866">Support markdown anchors and multi-line in permalink</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/194944">fix: Backport fix on git over ssh</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/195216">Backport flaky logger test fix</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/194989">Revert &ldquo;Merge branch &lsquo;backport-bugfix-restrict-LFS-download&ndash;18-0&rsquo; into &lsquo;18-0-stable-ee&rsquo;&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/195322">Merge branch &lsquo;dattang/build-internal-release-qa-image&rsquo; into &lsquo;18-0-stable-ee&rsquo;</a></li>
</ul>
<h3 id="17115">17.11.5</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2460">Merge branch &lsquo;350883-update-to-use-live-trace-application-setting&rsquo; into &lsquo;17-11-stable&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/194141">Restrict LFS file download to project-bound objects</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/194186">Backport &lsquo;Move up release-environments stage in CI&rsquo; to 17-11-stable-ee</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/194568">Merge branch &lsquo;jmc-549650&rsquo; into &lsquo;17-11-stable-ee&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/194196">Backport &lsquo;Update Import::ValidateRemoteGitEndpoint Service&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/195085">Backport to 17.11: Set glab version for release QA tests</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/194189">Backport vulnerability_namespace_historical_statistic fix to 17.11</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/195174">[backport] 17.11: Merge branch &lsquo;dj-exclude-stable-branch-coverage&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/195075">fix: Backport fix on git over ssh</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/194988">Revert &ldquo;Merge branch &lsquo;backport-bugfix-restrict-LFS-download&ndash;17-11&rsquo; into &lsquo;17-11-stable-ee&rsquo;&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/195323">Merge branch &lsquo;dattang/build-internal-release-qa-image&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8481">[Backport - 17.11.x] Removing postponed deprecation from omnibus</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">Update page</a>.
To update GitLab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab 18.1 released</title><link href="https://docs.gitlab.com/releases/18/18-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/18/18-1-released/</id><published>2025-06-19T00:00:00Z</published><updated>2025-06-19T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On June 19, 2025, GitLab 18.1 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong>Chaitanya Sonwane</strong>
</p>
<p>Chaitanya Sonwane drives GitLab&rsquo;s security capabilities through consistent authentication
improvements.
<a href="https://contributors.gitlab.com/users/chaitanyason9?fromDate=2025-01-01&amp;toDate=2025-12-31">With 13 merged contributions in 2025</a>, his work enhanced credential inventory filtering, service account management, and work items usability.
He previously delivered a <a href="https://about.gitlab.com/releases/2025/04/17/gitlab-17-11-released/#token-statistics-for-service-account-management">key feature in GitLab 17.11</a> with token statistics for service accounts, which provides &ldquo;at a glance&rdquo; information that makes it easier to manage service accounts.
Chaitanya is now <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/503587">improving work item list sort settings to be context specific</a>, further enhancing the user experience in GitLab&rsquo;s Product Planning.</p>
<p>Chaitanya&rsquo;s work directly strengthens security for GitLab organizations and
provides better visibility into service account usage across projects.
Teams can now track and rotate credentials more effectively.
This reduces the risk of orphaned or forgotten credentials that create security
vulnerabilities.</p>
<p>&ldquo;Chaitanya&rsquo;s contributions to the credential inventory and service accounts are both very
valuable contributions in the security space,&rdquo; says <a href="https://gitlab.com/eduardosanz">Eduardo Sanz-Garcia</a>, Senior Frontend Engineer for the Authentication group, Software Supply Chain Security stage.
Eduardo supported the nomination from GitLab&rsquo;s Authentication team.</p>
<p>&ldquo;Chaitanya was instrumental in the implementation of the token statistics concept,&rdquo; Eduardo adds.
&ldquo;His credential inventory work delivered a highly requested feature to enhance the tractability and monitoring of credentials.
This was a great contribution!&rdquo;</p>
<p>Chaitanya is a Software Engineer at TATA AIG.
He proactively tackles security issues and follows up consistently on improvements to his own
contributions.</p>
<p>Thanks to Chaitanya for contributing to GitLab&rsquo;s security foundation and the rest of the product!</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>Maven virtual registry now available in beta</strong>
    <p><p>The Maven virtual registry simplifies Maven dependency management in GitLab. Without the Maven virtual registry, you must configure each project to access dependencies from Maven Central, private repositories, or the GitLab package registry. This approach slows builds with sequential repository queries and complicates security auditing and compliance reporting.</p>
<p>The Maven virtual registry addresses these issues by aggregating multiple upstream repositories behind a single endpoint. Platform engineers can configure Maven Central, private registries, and GitLab package registries through one URL. Intelligent caching improves build performance and integrates with GitLab&rsquo;s authentication systems. Organizations benefit from reduced configuration overhead, faster builds, and centralized access control for improved security and compliance.</p>
<p>The Maven virtual registry is currently available in beta for GitLab Premium and Ultimate customers on both GitLab.com and GitLab Self-Managed. The GA release will include additional capabilities, such as a web-based user interface for registry configuration, shareable upstream functionality, lifecycle policies for cache management, and enhanced analytics. Current beta limitations include a maximum of 20 virtual registries per top-level groups and 20 upstreams per virtual registry, with API-only configuration available during the beta period.</p>
<p>We invite enterprise customers to participate in the Maven virtual registry beta program to help shape the final release. Beta participants will receive early access to the capabilities, direct engagement with GitLab product teams, and priority support during evaluation. To join the beta program, express interest and provide your use case details in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/498139">issue 498139</a>, and share feedback and suggestions in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/543045">issue 543045</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/packages/virtual_registry/maven/">View Documentation</a></p>
  </li>
  <li>
    <strong>Duo Code Review is now generally available</strong>
    <p><p>Duo Code Review is now generally available and ready for production use. This AI-powered code review assistant transforms the traditional code review process by providing intelligent, automated feedback on your merge requests. It helps identify potential bugs, security vulnerabilities, and code quality issues before human reviewers get involved, making the entire review process more efficient and thorough. It includes:</p>
<ul>
<li><strong>Automated initial review</strong>: Duo Code Review analyzes your code changes and provides comprehensive feedback on potential issues, improvements, and best practices.</li>
<li><strong>Interactive refinement</strong>: Mention <code>@GitLabDuo</code> in merge request comments to get targeted feedback on specific changes or questions.</li>
<li><strong>Actionable suggestions</strong>: Many suggestions can be applied directly from your browser, streamlining the improvement process.</li>
<li><strong>Context-aware analysis</strong>: Leverages understanding of the changed files to provide relevant, project-specific recommendations.</li>
</ul>
<p>To request a code review:</p>
<ul>
<li>In your merge request, add <code>@GitLabDuo</code> as a reviewer using the <code>/assign_reviewer @GitLabDuo</code> quick action, or assign GitLab Duo directly as a reviewer.</li>
<li>Mention <code>@GitLabDuo</code> in comments to ask specific questions or request focused feedback on any discussion thread.</li>
<li>Enable automatic reviews in your project settings to have GitLab Duo automatically review all new merge requests.</li>
</ul>
<p>Duo Code Review helps teams maintain higher code quality standards while reducing the time spent on manual review cycles. By catching issues early and providing educational feedback, it serves as both a quality gate and a learning tool for development teams.</p>
<p><i class="fa fa-youtube-play youtube" aria-hidden="true"></i> <a href="https://www.youtube.com/watch?v=FlHqfMMfbzQ">Watch an overview</a> of Duo Code Review in action from our beta release.</p>
<p>Share your experience and feedback in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/517386">issue 517386</a> to help us continue improving this feature.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/merge_requests/duo_in_merge_requests/#have-gitlab-duo-review-your-code">View Documentation</a></p>
  </li>
  <li>
    <strong>Compromised password detection for native GitLab credentials</strong>
    <p><p>GitLab.com now performs a secure check of your account credentials when you sign in to GitLab.com.
If your password is part of a known leak, GitLab displays a banner and sends you an email notification.
These notifications include instructions for how to update your credentials.</p>
<p>For maximum security, GitLab recommends using a unique, strong password for GitLab, enabling two-factor authentication, and regularly reviewing your account activity.</p>
<p>Note: This feature is only available for native GitLab usernames and passwords. SSO credentials are not checked.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/profile/user_passwords/#compromised-password-detection">View Documentation</a></p>
  </li>
  <li>
    <strong>Achieve SLSA Level 1 compliance with CI/CD components</strong>
    <p>You can now achieve <a href="https://slsa.dev/">SLSA</a> Level 1 compliance using GitLab&rsquo;s new CI/CD components for signing and verifying SLSA-compliant <a href="https://docs.gitlab.com/ci/runners/configure_runners/#artifact-provenance-metadata">artifact provenance metadata</a> generated by GitLab Runner. The components wrap <a href="https://docs.gitlab.com/ee/ci/yaml/signing_examples.html">Sigstore Cosign functionality</a> in reusable modules that can be easily integrated into CI/CD workflows.</p>
    <p><a href="https://docs.gitlab.com/ci/pipelines/pipeline_security/#sign-and-verify-slsa-provenance-with-a-cicd-component">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Scale and Deployments</h4>
<ul>
  <li>
    <strong>Multiple matches per file in code search</strong>
    <p><p>Exact code search (in beta) now consolidates multiple search results from the same file into a single view. This improvement:</p>
<ul>
<li>Preserves context between adjacent matches instead of displaying isolated lines.</li>
<li>Reduces visual clutter by eliminating duplicate content when matches are close together.</li>
<li>Enhances navigation by clearly showing the number of matches per file.</li>
<li>Improves readability by displaying code as you would see it in your editor.</li>
</ul>
<p>With this change, finding and understanding code patterns across your repositories is now more efficient.</p>
</p>
    <p><a href="https://docs.gitlab.com/integration/exact_code_search/zoekt/">View Documentation</a></p>
  </li>
  <li>
    <strong>New `accessLevels` argument for `projectMembers` in GraphQL API</strong>
    <p>We&rsquo;re excited to announce the addition of the <code>accessLevels</code> argument to the <code>projectMembers</code> field in our GraphQL API. Use this argument to filter project members by access level directly from an API call. Previously, you had to fetch an entire list of project members and apply filters locally, which added significant computational overhead. Now, analyzing project permissions and generating ownership graphs is faster and more resource-efficient. This enhancement is particularly valuable to organizations managing large-scale deployments with complex permission structures.</p>
    <p><a href="https://docs.gitlab.com/api/graphql/reference/#projectprojectmembers">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>DAST detection parity with secret detection default rules</strong>
    <p>The DAST analyzer now automatically ingests the same default secret detection rules that are used by GitLab&rsquo;s Secret Detection analyzer. This improvement ensures consistency in the types of secrets detected by both.</p>
    <p><a href="https://docs.gitlab.com/user/application_security/dast/browser/checks/">View Documentation</a></p>
  </li>
  <li>
    <strong>Define a `Name` for external custom controls</strong>
    <p><p>Previously, you couldn&rsquo;t define a name for an external custom control when creating a custom compliance framework,
which made it difficult to identify external controls when listed alongside GitLab controls.</p>
<p>We&rsquo;ve now added a <code>Name</code> field as part of the workflow when defining an external custom control, so you can
create multiple external custom controls and clearly define each one with its own unique name.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/compliance/compliance_frameworks/#external-controls">View Documentation</a></p>
  </li>
  <li>
    <strong>Pagination for requirements in compliance frameworks UI</strong>
    <p><p>When creating a compliance framework, you can specify a maximum of 50 requirements.</p>
<p>However, it becomes very difficult to navigate a compliance framework with this many requirements because they
consume a lot of space in the user interface.</p>
<p>In this release, we have introduced pagination for requirements to make it easier for users to navigate, find, and
select requirements when there is a large number of them attached to a compliance framework.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/compliance/compliance_frameworks/#add-requirements">View Documentation</a></p>
  </li>
  <li>
    <strong>UI performance and filtering improvements for compliance center</strong>
    <p><p>We have continued to improve the UI performance and filtering options provided by the compliance center. In this
release, we have:</p>
<ul>
<li>Improved the UI speed and performance of the <strong>Edit Framework</strong> page, especially where there are many requirements
and projects on the page.</li>
<li>Introduced new filtering options so that you can group by requirement, project, or framework in the
<strong>Compliance status report</strong> tab in the compliance center.</li>
</ul>
<p>By delivering these improvements, we continue to ensure that the compliance center and associated functions
continue to perform at scale for customers who regularly use the compliance center.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/compliance/compliance_center/">View Documentation</a></p>
  </li>
  <li>
    <strong>Control status pop-up in the compliance status report</strong>
    <p><p>Controls in the compliance status report have three different statuses:</p>
<ul>
<li>Pass</li>
<li>Fail</li>
<li>Pending</li>
</ul>
<p>No matter the number of controls that are attached to the requirement, if at least one control was &lsquo;pending&rsquo;, the
entire requirement row was shown as &lsquo;pending&rsquo; as well. This deviated from the established UX pattern for visualizing
failed controls, where the requirement would show the number of controls associated with the requirement, even
when there was at least one control that fails.</p>
<p>To provide further context and information for &lsquo;pending&rsquo; controls, we now provide a hover over pop-up on the
requirement row status, with the status of each control listed. You can now understand which controls are pending,
and which are potentially succeeding and failing, rather than just seeing a single status for &lsquo;pending&rsquo;.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/compliance/compliance_center/compliance_status_report/">View Documentation</a></p>
  </li>
  <li>
    <strong>Enhanced merge request review experience with review panel</strong>
    <p><p>When you review a merge request, it can be valuable to see all of the comments and feedback you&rsquo;ve provided before you submit your review. Previously, this experience was fragmented between the final comment and an additional pop-up to see your pending comments, making it hard to get the complete overview.</p>
<p>When conducting code reviews, you can now access a dedicated drawer that consolidates all your pending draft comments in one organized view. The enhanced review panel moves the review submission interface to a more accessible location, and provides a numbered badge showing your pending comment count. When you open the panel, you&rsquo;ll see all your draft comments organized in a scrollable list, making it easier to review and manage your feedback before submitting.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/merge_requests/reviews/#submit-a-review">View Documentation</a></p>
  </li>
  <li>
    <strong>Enhanced CODEOWNERS file validation with permission checks</strong>
    <p><p>GitLab now provides enhanced validation for CODEOWNERS files that goes beyond basic syntax checking. When viewing a CODEOWNERS file, GitLab automatically runs comprehensive validations to help you identify both syntax and permission issues before they affect your merge request workflows.</p>
<p>The enhanced validation checks the first 200 unique user and group references in your CODEOWNERS file, and verifies that:</p>
<ul>
<li>All referenced users and groups have access to the project.</li>
<li>Users have the necessary permissions to approve merge requests.</li>
<li>Groups have at least Developer-level access or higher.</li>
<li>Groups contain at least one user with merge request approval permissions.</li>
</ul>
<p>This proactive validation helps prevent approval workflow disruptions by catching configuration issues early, ensuring your Code Owners can actually fulfill their review responsibilities when merge requests are created.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/codeowners/troubleshooting.html#validate-your-codeowners-file">View Documentation</a></p>
  </li>
  <li>
    <strong>Custom workspace initialization with `postStart` events</strong>
    <p><p>GitLab workspace now supports custom <code>postStart</code> events in your devfile, allowing you to define commands that automatically execute after workspace startup. Use these events to:</p>
<ul>
<li>Set up development dependencies.</li>
<li>Configure your environment.</li>
<li>Run initialization scripts that prepare your project for immediate productivity without manual intervention.</li>
</ul></p>
    <p><a href="https://docs.gitlab.com/user/workspace/#user-defined-poststart-events">View Documentation</a></p>
  </li>
  <li>
    <strong>View downstream pipeline job logs in VS Code</strong>
    <p><p>The GitLab Workflow extension for VS Code now displays job logs from downstream pipelines directly in your editor. Previously, viewing logs from child pipelines required switching to the GitLab web interface.</p>
<p>This feature was developed through the <a href="https://about.gitlab.com/community/co-create/">GitLab Co-create program</a>. Special thanks to Tim Ryan for making this contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/editor_extensions/visual_studio_code/cicd/">View Documentation</a></p>
  </li>
  <li>
    <strong>View inactive personal access tokens</strong>
    <p>GitLab automatically deactivates access tokens after they expire or are revoked. You can now review these inactive tokens. Previously, access tokens were no longer visible after they became inactive. This change enhances traceability and security of these token types.</p>
    <p><a href="https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Epic support for GitLab Query Language views Beta</strong>
    <p><p>We&rsquo;ve made a significant improvement to GitLab Query Language (GLQL) views. You can now use epic as a type in your queries to search for epics across groups, and query by parent epic!</p>
<p>This is a huge step forward for our planning and tracking capabilities, making it easier than ever to query and organize at the epic level.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/glql/fields/#epic">View Documentation</a></p>
  </li>
  <li>
    <strong>PHP support for Advanced SAST</strong>
    <p><p>We have added PHP support to GitLab Advanced SAST.
To use this new cross-file, cross-function scanning support, <a href="https://docs.gitlab.com/user/application_security/sast/gitlab_advanced_sast/#enable-advanced-sast-scanning">enable Advanced SAST</a>.
If you have already enabled Advanced SAST, PHP support is automatically activated.</p>
<p>To see which types of vulnerabilities Advanced SAST detects in each language, see the <a href="https://docs.gitlab.com/user/application_security/sast/advanced_sast_coverage/">Advanced SAST coverage page</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/sast/gitlab_advanced_sast/#supported-languages">View Documentation</a></p>
  </li>
  <li>
    <strong>Filter by component version in the dependency list</strong>
    <p>The dependency lists now supports filtering by a component&rsquo;s version number. You can select multiple versions (for example, <code>version=1.1,1.2,1.4</code>) but ranges are not supported. This feature is available in both groups and projects.</p>
    <p><a href="https://docs.gitlab.com/user/application_security/dependency_list/#filter-dependency-list">View Documentation</a></p>
  </li>
  <li>
    <strong>Variable precedence controls in pipeline execution policies</strong>
    <p><p>Security teams often strike a delicate balance between security assurance and developer experience. It&rsquo;s critical to ensure security scans are properly enforced, but security analyzers can require specific inputs from development teams to properly execute. With variable precedence controls, security teams now have granular control over how variables are handled in pipeline execution policies through the new <code>variables_override</code> configuration option.</p>
<p>Using this new configuration, you can now:</p>
<ul>
<li>Enforce container scanning policies that allow project-specific container image paths (<code>CS_IMAGE</code>).</li>
<li>Allow lower risk variables like <code>SAST_EXCLUDED_PATHS</code> while blocking high risk variables like <code>SAST_DISABLED</code>.</li>
<li>Define globally shared credentials that are secured (masked or hidden) with global CI/CD variables, such as <code>AWS_CREDENTIALS</code>, while allowing project-specific overrides where appropriate through project-level CI/CD variables.</li>
</ul>
<p>This powerful feature supports two approaches:</p>
<ul>
<li><strong>Lock variables by default</strong> (<code>allow: false</code>): Lock all variables except specific ones you list as exceptions.</li>
<li><strong>Allow variables by default</strong> (<code>allow: true</code>): Allow variables to be customized, but restrict critical risks by listing them as exceptions.</li>
</ul>
<p>To improve traceability and troubleshooting when a pipeline execution policy is the source of an CI/CD job, we&rsquo;re also introducing job logs to help developers and security teams identify the jobs executed by a policy. The job logs provide details on the impact of variable overrides to help you understand if variables are overridden or locked by policies.</p>
<p><strong>Real-world impact</strong></p>
<p>This enhancement bridges the gap between security requirements and flexibility for developers:</p>
<ul>
<li>Security teams can enforce standardized scanning while allowing project-specific customizations.</li>
<li>Developers maintain control over project-specific variables without requesting policy exceptions.</li>
<li>Organizations can implement consistent security policies without disrupting development workflows.</li>
</ul>
<p>By solving this critical variable control challenge, GitLab enables organizations to implement robust security policies without sacrificing the flexibility teams need to deliver software efficiently.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/policies/pipeline_execution_policies/#variables_override-type">View Documentation</a></p>
  </li>
  <li>
    <strong>Filter for bot and human users</strong>
    <p><p>Established GitLab instances can often have large numbers of human and bot users. You can now filter the users list in the Admin area by user type. Filtering users can help you:</p>
<ul>
<li>Quickly identify and manage human users separately from automated accounts.</li>
<li>Perform targeted administrative actions on specific user types.</li>
<li>Simplify user auditing and management workflows.</li>
</ul></p>
    <p><a href="https://docs.gitlab.com/administration/moderate_users/#view-users-by-type">View Documentation</a></p>
  </li>
  <li>
    <strong>ORCID identifier in user profile</strong>
    <p><p>GitLab now supports ORCID identifiers in user profiles, making GitLab more accessible and valuable for researchers and the academic community. <a href="https://orcid.org/">ORCID</a> (Open Researcher and Contributor ID) provides researchers with a persistent digital identifier that distinguishes them from other researchers and supports automated linkages between researchers and their professional activities, ensuring their work is properly recognized.</p>
<p>This feature was developed as a community contribution by Thomas Labalette and Erwan Hivin, master students at Artois University, under the supervision of <a href="https://www.ouvrirlascience.fr/appointment-of-daniel-le-berre-as-the-national-coordinator-for-higher-education-and-research-software-forges-in-france/">Daniel Le Berre</a>, addressing a long-standing request from the academic community.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/profile/">View Documentation</a></p>
  </li>
  <li>
    <strong>Subscribe to service account pipeline notifications</strong>
    <p><p>You can now subscribe to notifications for pipeline events triggered by service accounts. Notifications are sent when the pipeline passes, fails, or is fixed. Previously, these notifications were only sent to the service account&rsquo;s email address if the service account has a valid custom email address.</p>
<p>Thank you <a href="https://gitlab.com/Densett">Densett</a>, <a href="https://gitlab.com/tonton1728">Gilles Dehaudt</a>, <a href="https://gitlab.com/lenaing">Lenain</a>, <a href="https://gitlab.com/gmcquat">Geoffrey McQuat</a>, and <a href="https://gitlab.com/rbihore">Raphaël Bihoré</a> for your contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/user/profile/notifications/#notification-events-on-issues-merge-requests-and-epics">View Documentation</a></p>
  </li>
  <li>
    <strong>Increased SAST coverage for Duo Vulnerability Resolution</strong>
    <p><p>Previously, you had to manually resolve detected vulnerabilities with these Common Weakness Enumeration (CWE) identifiers:</p>
<ul>
<li>CWE-78 (Command Injection)</li>
<li>CWE-89 (SQL Injection)</li>
</ul>
<p>Now, Duo Vulnerability Resolution can automatically fix these vulnerabilities.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/vulnerabilities/#supported-vulnerabilities-for-vulnerability-resolution">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner 18.1</strong>
    <p><p>We&rsquo;re also releasing GitLab Runner 18.1 today! GitLab Runner is the highly-scalable build agent that runs your CI/CD jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.</p>
<h4 id="bug-fixes">Bug Fixes:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/543351">If you upgrade to GitLab 17.10 or 17.11, runners might receive a <code>404</code> response when they request jobs</a>.</li>
</ul>
<p>The list of all changes is in the GitLab Runner <a href="https://gitlab.com/gitlab-org/gitlab-runner/blob/18-1-stable/CHANGELOG.md">CHANGELOG</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/runner">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab Patch Release: 18.0.2, 17.11.4, 17.10.8</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-0-2-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-0-2-released/</id><published>2025-06-11T00:00:00Z</published><updated>2025-06-11T00:00:00Z</updated><author><name>Costel Maxim</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On June 11, 2025, we released versions 18.0.2, 17.11.4, 17.10.8 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases: scheduled releases and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays. For more information, please visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> page and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>. You can see all of GitLab’s release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a> 30 days after the release in which they were patched.</p>
<p>We are committed to ensuring that all aspects of GitLab that are exposed to customers or that host customer data are held to the highest security standards. To maintain good security hygiene, it is highly recommended that all customers upgrade to the latest patch release for their supported version. You can read more <a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, it means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th style="text-align: left">Title</th>
          <th style="text-align: left">Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td style="text-align: left"><a href="/releases/patches/patch-release-gitlab-18-0-2-released/#cve-2025-4278---html-injection-impacts-gitlab-ceee">HTML injection impacts GitLab CE/EE</a></td>
          <td style="text-align: left">High</td>
      </tr>
      <tr>
          <td style="text-align: left"><a href="/releases/patches/patch-release-gitlab-18-0-2-released/#cve-2025-2254---cross-site-scripting-issue-impacts-gitlab-ceee">Cross-site scripting issue impacts GitLab CE/EE</a></td>
          <td style="text-align: left">High</td>
      </tr>
      <tr>
          <td style="text-align: left"><a href="/releases/patches/patch-release-gitlab-18-0-2-released/#cve-2025-5121---missing-authorization-issue-impacts-gitlab-ultimate-ee">Missing authorization issue impacts GitLab Ultimate EE</a></td>
          <td style="text-align: left">High</td>
      </tr>
      <tr>
          <td style="text-align: left"><a href="/releases/patches/patch-release-gitlab-18-0-2-released/#cve-2025-0673---denial-of-service-impacts-gitlab-ceee">Denial of Service impacts GitLab CE/EE</a></td>
          <td style="text-align: left">High</td>
      </tr>
      <tr>
          <td style="text-align: left"><a href="/releases/patches/patch-release-gitlab-18-0-2-released/#cve-2025-1516---denial-of-service-via-unbounded-webhook-token-names-impacts-gitlab-ceee">Denial of Service via unbounded Webhook token names impacts GitLab CE/EE</a></td>
          <td style="text-align: left">Medium</td>
      </tr>
      <tr>
          <td style="text-align: left"><a href="/releases/patches/patch-release-gitlab-18-0-2-released/#cve-2025-1478---denial-of-service-via-unbounded-board-names-impacts-gitlab-ceee">Denial of Service via unbounded Board Names impacts GitLab CE/EE</a></td>
          <td style="text-align: left">Medium</td>
      </tr>
      <tr>
          <td style="text-align: left"><a href="/releases/patches/patch-release-gitlab-18-0-2-released/#cve-2024-9512---information-disclosure-issue-impacts-gitlab-ceee">Information disclosure issue impacts GitLab CE/EE</a></td>
          <td style="text-align: left">Medium</td>
      </tr>
      <tr>
          <td style="text-align: left"><a href="/releases/patches/patch-release-gitlab-18-0-2-released/#cve-2025-5996---denial-of-service-dos-via-uncontrolled-http-response-processing--impacts-gitlab-ceee">Denial of Service (DoS) via uncontrolled HTTP Response Processing impacts GitLab CE/EE</a></td>
          <td style="text-align: left">Medium</td>
      </tr>
      <tr>
          <td style="text-align: left"><a href="/releases/patches/patch-release-gitlab-18-0-2-released/#cve-2025-5195---information-disclosure-via-authorization-bypass-impacts-gitlab-ceee">Information disclosure via authorization bypass impacts GitLab CE/EE</a></td>
          <td style="text-align: left">Medium</td>
      </tr>
      <tr>
          <td style="text-align: left"><a href="/releases/patches/patch-release-gitlab-18-0-2-released/#cve-2025-5982---sensitive-information-disclosure-via-group-ip-restriction-bypass">Sensitive information disclosure via Group IP restriction bypass</a></td>
          <td style="text-align: left">Low</td>
      </tr>
  </tbody>
</table>
<h3 id="cve-2025-4278---html-injection-impacts-gitlab-ceee"><a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-4278">CVE-2025-4278</a> - HTML injection impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that, under certain conditions, could have allowed a successful attacker to achieve account takeover by injecting code into the search page.
<strong>Impacted versions</strong> GitLab CE/EE:  all versions starting with 18.0 before 18.0.2.
<strong>CVSS:</strong> 8.7 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-2254---cross-site-scripting-issue-impacts-gitlab-ceee"><a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-2254">CVE-2025-2254</a> - Cross-site scripting issue impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that, under certain conditions, could have allowed a successful attacker to act in the context of a legitimate user by injecting a malicious script into the snippet viewer.<br>
<strong>Impacted versions</strong> GitLab CE/EE: all versions from 17.9 before 17.10.8, 17.11 before 17.11.4, and 18.0 before 18.0.2<br>
<strong>CVSS</strong> 8.7 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/yvvdwf">yvvdwf</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-5121---missing-authorization-issue-impacts-gitlab-ultimate-ee"><a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-5121">CVE-2025-5121</a> - Missing authorization issue impacts GitLab Ultimate EE</h3>
<p>GitLab has remediated an issue that, under certain conditions, could have allowed a successful attacker with authenticated access to a GitLab instance with a GitLab Ultimate license applied (paid customer or trial) to inject a malicious CI/CD job into all future CI/CD pipelines of any project.<br>
<strong>Impacted versions</strong> GitLab Ultimate EE from 17.11 before 17.11.4 and 18.0 before 18.0.2.
<strong>CVSS</strong> 8.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:H"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/jean_d-ou">jean_d-ou</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-0673---denial-of-service-impacts-gitlab-ceee"><a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-0673">CVE-2025-0673</a> - Denial of Service impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed a successful attacker to deny access to legitimate users of the targeted system by triggering an infinite redirect loop causing memory exhaustion on the server.</p>
<p><strong>Impacted versions</strong> GitLab CE/EE: all versions from 17.7 before 17.10.8, 17.11 before 17.11.4, and 18.0 before 18.0.2<br>
<strong>CVSS</strong> 7.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/sim4n6">sim4n6</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-1516---denial-of-service-via-unbounded-webhook-token-names-impacts-gitlab-ceee"><a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-1516">CVE-2025-1516</a> - Denial of Service via unbounded Webhook token names impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed a successful attacker to deny access to legitimate users of the targeted system by generating tokens with sufficiently large names.
<strong>Impacted versions</strong> GitLab CE/EE: all versions from 8.7 before 17.10.8, 17.11 before 17.11.4, and 18.0 before 18.0.2<br>
<strong>CVSS</strong> 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/pwnie">pwnie</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-1478---denial-of-service-via-unbounded-board-names-impacts-gitlab-ceee"><a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-1478">CVE-2025-1478</a> - Denial of Service via unbounded Board Names impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed a successful attacker to deny access to legitimate users of the targeted system by crafting Board Names with sufficiently large sizes.<br>
<strong>Impacted versions</strong> GitLab CE/EE: all versions from 8.13 before 17.10.7, 17.11 before 17.11.3, and 18.0 before 18.0.1<br>
<strong>CVSS</strong> 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/pwnie">pwnie</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2024-9512---information-disclosure-issue-impacts-gitlab-ceee"><a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-9512">CVE-2024-9512</a> - Information disclosure issue impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that, under certain conditions, could have allowed a successful attacker to clone a legitimate user’s private repository by sending a timed clone request when a secondary node is out of sync.</p>
<p><strong>Impacted versions</strong> GitLab CE/EE: all versions prior to 17.10.8, 17.11 prior to 17.11.4, and 18.0 prior to 18.0.2<br>
<strong>CVSS</strong> 5.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:N/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:N/A:N</code></a>)</p>
<p>Thanks <a href="https://hackerone.com/hdtran">hdtran</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-5996---denial-of-service-dos-via-uncontrolled-http-response-processing--impacts-gitlab-ceee"><a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-5996">CVE-2025-5996</a> - Denial of Service (DoS) via uncontrolled HTTP Response Processing  impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed a successful attacker to deny access to legitimate users of the targeted system by integrating a malicious third-party component into a GitLab project.<br>
<strong>Impacted versions</strong> GitLab CE/EE:  versions from 2.1.0 before 17.10.8, 17.11 before 17.11.4, and 18.0 before 18.0.2<br>
<strong>CVSS</strong> 6.5 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code>)</a></p>
<p>Thanks  <a href="https://hackerone.com/joaxcar">joaxcar</a> and <a href="https://hackerone.com/pwnie">pwnie</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cve-2025-5195---information-disclosure-via-authorization-bypass-impacts-gitlab-ceee"><a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-5195">CVE-2025-5195</a> - Information disclosure via authorization bypass impacts GitLab CE/EE</h3>
<p>GitLab has remediated an issue that could have allowed authenticated users to gain access to data beyond their privilege boundaries by accessing arbitrary compliance frameworks.
<strong>Impacted versions</strong> GitLab CE/EE:  all versions from 17.9 before 17.10.7, 17.11 before 17.11.3, and 18.0 before 18.0.1<br>
<strong>CVSS</strong> 4.3 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>)</p>
<p>This vulnerability has been discovered internally by a member of the GitLab team.</p>
<h3 id="cve-2025-5982---sensitive-information-disclosure-via-group-ip-restriction-bypass"><a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-5982">CVE-2025-5982</a> - Sensitive information disclosure via Group IP restriction bypass</h3>
<p>GitLab has remediated an issue that could have allowed a successful attacker to bypass IP access restrictions and view sensitive group information.
<strong>Impacted versions</strong> GitLab EE: versions from 12.0 before 17.10.8, 17.11 before 17.11.4, and 18.0 before 18.0.2.<br>
<strong>CVSS</strong> 3.7 (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N</code></a>)</p>
<p>This vulnerability has been discovered internally by GitLab team member <a href="https://gitlab.com/joernchen">@joernchen</a>.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1802">18.0.2</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/191955">Move fork_networks organization_id NOT NULL to post-migrate</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/191961">[Backport] Zoekt: Only enable search when nodes are online</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/192132">18-0-stable-ee: Trim pages deployment file name to 60 characters</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/192013">Fix gitpod button is missing in the edit dropdown</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/192019">[Backport] Elastic::MigrationWorker should not create migrations index</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/192418">Backport operational data_category for duo_core_features_enabled metric on service ping</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/192820">[Backport] Fix IDE links returns about:blank in old code dropdow</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/192406">Fix the title/body issue for todo apis when it is a duo todo</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/191537">Add 18.0 &ldquo;What&rsquo;s New&rdquo; entries</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/193180">[Backport] mark_all_as_completed! method should drop halted cache &amp; save halted: false</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/192175">Fix &ldquo;No such column: geo_nodes.verification_max_capacity&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/193477">[backport] 18.0: Merge branch &lsquo;dj-stable-branch-dont-fail-e2e&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/193625">[backport] 18.0: Merge branch &lsquo;dj-refactor-semgrep-ci&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/193514">[backport] 18.0: Remove e2e:test-on-omnibus-ee from tier 1 backport MRs</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8440">Fix libarchive checksum script (Backport 18.0)</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8435">Warn on changes to tag only CI job definitions</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8454">Backport postponing deprecation to 19.0</a></li>
</ul>
<h3 id="17114">17.11.4</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/191558">[backport] 17.11: Remove jest vue3 check quarantine jobs from backport MR pipelines</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/192133">17-11-stable-ee: Trim pages deployment file name to 60 characters</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/193285">Fix gitpod button is missing in the edit dropdown</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/193317">[backport] 17.11: Merge branch &lsquo;dj-stable-branch-dont-fail-e2e&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/193232">Merge &lsquo;535187-fix-console-errors&rsquo; into &lsquo;17-11-stable-ee&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/192963">Attempt to migrate ci_runner_taggings table (try 2)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/192932">[backport] 17.11: Remove e2e:test-on-omnibus-ee from tier 1 backport MRs</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/193626">[backport] 17.11: Merge branch &lsquo;dj-refactor-semgrep-ci&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8441">Fix libarchive checksum script (Backport 17.11)</a></li>
</ul>
<h3 id="17108">17.10.8</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/191560">[backport] 17.10: Remove jest vue3 check quarantine jobs from backport MR pipelines</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/193304">Fix gitpod button is missing in the edit dropdown</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/193318">[backport] 17.10: Merge branch &lsquo;dj-stable-branch-dont-fail-e2e&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/192962">Attempt to migrate ci_runner_taggings table (try 2)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/193627">[backport] 17.10: Merge branch &lsquo;dj-refactor-semgrep-ci&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/192933">[backport] 17.10: Remove e2e:test-on-omnibus-ee from tier 1 backport MRs</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8442">Fix libarchive checksum script (Backport 17.10)</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">Update page</a>. To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page. To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 18.0.1, 17.11.3, 17.10.7</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-0-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-18-0-1-released/</id><published>2025-05-21T00:00:00Z</published><updated>2025-05-21T00:00:00Z</updated><author><name>Rohit Shambhuni</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On May 21, 2025, we released versions 18.0.1, 17.11.3, 17.10.7 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases, and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, you can visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-0-1-released/#unprotected-large-blob-endpoint-in-gitlab-allows-denial-of-service">Unprotected large blob endpoint in GitLab allows Denial of Service</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-0-1-released/#improper-xpath-validation-allows-modified-saml-response-to-bypass-2fa-requirement">Improper XPath validation allows modified SAML response to bypass 2FA requirement</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-0-1-released/#a-discord-webhook-integration-may-cause-dos">A Discord webhook integration may cause DoS</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-0-1-released/#unbounded-kubernetes-cluster-tokens-may-lead-to-dos">Unbounded Kubernetes cluster tokens may lead to DoS</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-0-1-released/#unvalidated-notes-position-may-lead-to-denial-of-service">Unvalidated notes position may lead to Denial of Service</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-0-1-released/#hiddenmasked-variables-may-get-exposed-in-the-ui">Hidden/masked variables may get exposed in the UI</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-0-1-released/#two-factor-authentication-requirement-bypass">Two-factor authentication requirement bypass</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-0-1-released/#view-full-email-addresses-that-should-be-partially-obscured">View full email addresses that should be partially obscured</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-0-1-released/#branch-name-confusion-in-confidential-mrs">Branch name confusion in confidential MRs</a></td>
          <td>Low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-18-0-1-released/#unauthorized-access-to-job-data-via-a-graphql-query">Unauthorized access to job data via a GraphQL query</a></td>
          <td>Low</td>
      </tr>
  </tbody>
</table>
<h3 id="unprotected-large-blob-endpoint-in-gitlab-allows-denial-of-service">Unprotected large blob endpoint in GitLab allows Denial of Service</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions before 17.10.7, 17.11 before 17.11.3, and 18.0 before 18.0.1. This could allow an authenticated attacker to cause a denial of service condition by exhausting server resources.
This is a high severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code></a>, 7.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-0993">CVE-2025-0993</a>.</p>
<p>Thanks <a href="https://hackerone.com/pwnie">pwnie</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="improper-xpath-validation-allows-modified-saml-response-to-bypass-2fa-requirement">Improper XPath validation allows modified SAML response to bypass 2FA requirement</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions from 11.1 before 17.10.7, 17.11 before 17.11.3, and 18.0 before 18.0.1. Improper XPath validation allowed modified SAML responses to bypass 2FA requirement under specialized conditions.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N</code></a>, 6.8).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-12093">CVE-2024-12093</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="a-discord-webhook-integration-may-cause-dos">A Discord webhook integration may cause DoS</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions from 11.6 before 17.10.7, 17.11 before 17.11.3, and 18.0 before 18.0.1. A Discord webhook integration may cause DoS.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>, 6.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-7803">CVE-2024-7803</a>.</p>
<p>Thanks <a href="https://hackerone.com/a92847865">a92847865</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="unbounded-kubernetes-cluster-tokens-may-lead-to-dos">Unbounded Kubernetes cluster tokens may lead to DoS</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions from 10.2 before 17.10.7, 17.11 before 17.11.3, and 18.0 before 18.0.1. A lack of input validation in the Kubernetes integration could allow an authenticated user to cause denial of service.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>, 6.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-3111">CVE-2025-3111</a>.</p>
<p>Thanks <a href="https://hackerone.com/pwnie">pwnie</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="unvalidated-notes-position-may-lead-to-denial-of-service">Unvalidated notes position may lead to Denial of Service</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions before 17.10.7, 17.11 before 17.11.3, and 18.0 before 18.0.1. A lack of proper validation in GitLab could allow an authenticated user to cause a denial of service condition.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>, 6.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-2853">CVE-2025-2853</a>.</p>
<p>Thanks <a href="https://hackerone.com/pwnie">pwnie</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="hiddenmasked-variables-may-get-exposed-in-the-ui">Hidden/masked variables may get exposed in the UI</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions before 17.10.7, 17.11 before 17.11.3, and 18.0 before 18.0.1. An attacker may be able to reveal masked or hidden CI variables (that they did not author) in the WebUI, by simply creating their own variable and observing the HTTP response.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:N/A:N</code></a>, 4.9).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-4979">CVE-2025-4979</a>.</p>
<p>Thanks <a href="https://hackerone.com/mateuszek">mateuszek</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="two-factor-authentication-requirement-bypass">Two-factor authentication requirement bypass</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions from 16.8 before 17.10.7, 17.11 before 17.11.3, and 18.0 before 18.0.1. Group access controls could allow certain users to bypass two-factor authentication requirements.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:N</code></a>, 4.6).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-0605">CVE-2025-0605</a>.</p>
<p>Thanks <a href="https://hackerone.com/salh4ckr">salh4ckr</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="view-full-email-addresses-that-should-be-partially-obscured">View full email addresses that should be partially obscured</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions from 17.1 before 17.10.7, 17.11 before 17.11.3, and 18.0 before 18.0.1. Under certain conditions un-authorised users can view full email addresses that should be partially obscured.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>, 4.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-0679">CVE-2025-0679</a>.</p>
<p>Thanks <a href="https://hackerone.com/mateuszek">mateuszek</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="branch-name-confusion-in-confidential-mrs">Branch name confusion in confidential MRs</h3>
<p>A business logic error in GitLab CE/EE affecting all versions starting from 12.1 prior to 17.10.7, 17.11 prior to 17.11.3 and 18.0 prior to 18.0.1 where an attacker can cause a branch name confusion in confidential MRs.
This is a low severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:N/A:N</code></a>, 3.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-9163">CVE-2024-9163</a>.</p>
<p>Thanks <a href="https://hackerone.com/foxribeye">foxribeye</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="unauthorized-access-to-job-data-via-a-graphql-query">Unauthorized access to job data via a GraphQL query</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions from 18.0 before 18.0.1. In certain circumstances, a user with limited permissions could access Job Data via a crafted GraphQL query.
This is a low severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:L/I:N/A:N</code></a>, 2.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-1110">CVE-2025-1110</a>.</p>
<p>Thanks <a href="https://hackerone.com/pwnie">pwnie</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="mattermost-security-updates-april-29-2025">Mattermost Security Updates April 29, 2025</h3>
<p>Mattermost has been updated to apply the latest patches for low and medium level security issues.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1801">18.0.1</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2388">Fix CI_COMMIT_REF tags of FIPS build images</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/191256">Bump gitlab-shell to v14.42.0 - 18.0 backport</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/191699">[Backport] Do not run index integrity worker for zoekt search</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/191890">Update gitlab-qa to 15.5.0</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/191824">Add outbound allowlist to allowed endpoints for SSRF filter</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/191907">Apply Rails 7-1-stable patches to fix type map init issues</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8423">KAS: remove unsupported GitOps config (18.0 backport)</a></li>
</ul>
<h3 id="17113">17.11.3</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/190731">Backport 17.11: Generate separate project and group work items fixtures</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/190703">[BACKPORT] Fix flaky specs in Import::GitHubService</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/190354">[backport] Fixed command palette edge case</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/190802">Delete BBM backfill_project_id_for_projects_with_pipeline_variables backport to 17.11</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/190828">Add backport to fix shortSHA uniqueness</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/191038">[backport] 17.11:  Enable FF_TIMESTAMPS for stable branch pipelines</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/191191">[backport] Add a ping? check before hitting Elasticsearch in admin</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/191092">[Backport]Autocomplete: Change user authorization to use terms query for projects</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/191257">Bump gitlab-shell to v14.42.0</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/191293">Respect product usage data setting from charts</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/191177">Merge branch &rsquo;tbulva-zoekt-global-search-bug&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/191334">Add outbound allowlist to allowed endpoints for SSRF filter</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/191711">Drop ci_runner_machines_archived table</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/191686">17.11: Use no_longer_detected_ids when auto-resolving vulnerabilities</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-pages/-/merge_requests/1156">Update outdated test certificates [17.11]</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8395">Revert &ldquo;Merge branch &lsquo;renovate/pgbouncer-pgbouncer-1.x&rsquo; into &lsquo;master&rsquo;&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8400">Ensure correct version of Nginx modules gets included in the package</a></li>
</ul>
<h3 id="17107">17.10.7</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/190733">Backport 17.10: Generate separate project and group work items fixtures</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/190705">[BACKPORT] Fix flaky specs in Import::GitHubService</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/191039">[backport] 17.10: Enable FF_TIMESTAMPS for stable branch pipelines</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/191258">Bump gitlab-shell to v14.42.0</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/191843">Drop ci_runner_machines_archived table</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-pages/-/merge_requests/1155">Update outdated test certificates [17.10]</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8401">Ensure correct version of Nginx modules gets included in the package</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">Update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab 18.0 released</title><link href="https://docs.gitlab.com/releases/18/18-0-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/18/18-0-released/</id><published>2025-05-15T00:00:00Z</published><updated>2025-05-15T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On May 15, 2025, GitLab 18.0 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong>Michael Hofer</strong>
</p>
<p>Michael Hofer champions GitLab&rsquo;s open source mission as both a top contributor and community leader.
With over <a href="https://contributors.gitlab.com/users/karras?fromDate=2025-01-01&amp;toDate=2025-05-12">50 contributions</a> this year,
his work strengthened GitLab&rsquo;s Geo features and Secrets Manager, based on OpenBao.
He topped the <a href="https://contributors.gitlab.com/hackathon?hackathonName=2025_04">April Hackathon</a> while supporting fellow contributors and leading community projects.</p>
<p>&ldquo;I truly appreciate that everyone can contribute to GitLab!&rdquo; says Michael.
&ldquo;The team is great to work with, it&rsquo;s a lot of fun, and everyone is super helpful, especially when we team up across open source initiatives like OpenBao and SLSA.&rdquo;</p>
<p>Michael is the CTO at <a href="https://adfinis.com/en/">Adfinis</a>, an international IT service provider specializing in planning, building, and running mission critical open source workloads.
He is passionate about fostering collaboration and promoting open source solutions across organizations.</p>
<p>Recently, Adfinis participated in GitLab&rsquo;s <a href="https://about.gitlab.com/community/co-create/">Co-Create program</a>, which pairs organizations with GitLab&rsquo;s product and engineering teams
to build GitLab together.
&ldquo;We highly recommend Co-Create to all organizations,&rdquo; Michael says. &ldquo;It led to a number of cool contributions, including rootless Podman builds, Glimmer syntax highlighting, and other improvements.&rdquo;</p>
<p>&ldquo;The Geo Team really appreciates and enjoys working with Michael,&rdquo; says <a href="https://gitlab.com/luciezhao">Lucie Zhao</a>, Engineering Manager at GitLab, who nominated Michael for the award.
&ldquo;With his excellent contributions over the last few milestones, he has become the most well-known community contributor within our team.&rdquo;</p>
<p>GitLab team members <a href="https://gitlab.com/leetickett-gitlab">Lee Tickett</a>, <a href="https://gitlab.com/c_fons">Chloe Fons</a>, and <a href="https://gitlab.com/cipherboy-gitlab">Alex Scheel</a> supported the nomination.
Alex adds, &ldquo;Michael&rsquo;s leadership in OpenBao has enabled us to effectively collaborate in bringing forward a secrets management solution for our customers, with the transparency that aligns with our GitLab values.&rdquo;</p>
<p>Thanks to Michael and the Adfinis team for co-creating GitLab!</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>GitLab Premium and Ultimate with Duo</strong>
    <p><p>We&rsquo;re excited to announce GitLab Premium with Duo and GitLab Ultimate with Duo. GitLab Premium and Ultimate now include AI-native features.</p>
<p>GitLab&rsquo;s AI-native features include Code Suggestions and Chat within the IDE. Development teams can use these features to:</p>
<ul>
<li>Analyze, understand, and explain code</li>
<li>Write secure code faster</li>
<li>Quickly generate tests to maintain code quality</li>
<li>Easily refactor code to improve performance or use specific libraries</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/user/gitlab_duo/#summary-of-gitlab-duo-features">View Documentation</a></p>
  </li>
  <li>
    <strong>Repository X-Ray now available on GitLab Duo Self-Hosted</strong>
    <p>You can now use Repository X-Ray with Code Suggestions on GitLab Duo Self-Hosted. This feature is in beta for GitLab Duo Self-Hosted, and is generally available on GitLab Self-Managed instances.</p>
    <p><a href="https://docs.gitlab.com/user/project/repository/code_suggestions/repository_xray/">View Documentation</a></p>
  </li>
  <li>
    <strong>Automatic reviews with Duo Code Review</strong>
    <p><p>Duo Code Review provides valuable insights during the review process, but currently requires you to manually request reviews on each merge request.</p>
<p>You can now configure GitLab Duo Code Review to run automatically on merge requests by updating your project&rsquo;s merge request settings. When enabled, Duo Code Review automatically reviews merge requests unless:</p>
<ul>
<li>The merge request is marked as draft.</li>
<li>The merge request contains no changes.</li>
</ul>
<p>Automatic reviews ensure that all code in your project receives a review, consistently improving code quality across your codebase.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/merge_requests/duo_in_merge_requests/#automatic-reviews-from-gitlab-duo">View Documentation</a></p>
  </li>
  <li>
    <strong>Code Suggestions prompt caching</strong>
    <p>Code Suggestions now includes prompt caching. Prompt caching significantly improves code completion latency by avoiding the re-processing of cached prompt and input data. The cached data is never logged to any persistent storage, and you can optionally disable prompt caching in the GitLab Duo settings.</p>
    <p><a href="https://docs.gitlab.com/user/project/repository/code_suggestions/#prompt-caching">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved Duo Code Review context</strong>
    <p><p>Duo Code Review now provides more comprehensive context for improved analysis.
The key improvements are:</p>
<ul>
<li>Includes a merge request&rsquo;s title and description to better understand the purpose of proposed changes.</li>
<li>Examines all diffs simultaneously to recognize cross-file relationships and reduce false positives.</li>
<li>Provides the full content of changed files to understand how modifications fit within existing code patterns.</li>
</ul>
<p>These enhancements reduce inaccurate suggestions and deliver more relevant and higher quality
code reviews.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/merge_requests/duo_in_merge_requests/#have-gitlab-duo-review-your-code">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Scale and Deployments</h4>
<ul>
  <li>
    <strong>List only Enterprise users for contributions reassignment on GitLab.com</strong>
    <p>In this release we&rsquo;ve improved the placeholder users mapping experience by
narrowing down the user selection dropdown to only <a href="https://docs.gitlab.com/user/enterprise_user/">Enterprise users</a>
associated with the top-level group.
Previously, when reassigning users&rsquo; contributions after an import to GitLab.com, you would see in the dropdown list
all active users on the platform, making it difficult to identify the correct user, especially when SCIM provisioning
had modified usernames. Now, if your top-level group uses the Enterprise users feature, the dropdown list will display only
users claimed by your organization, significantly reducing the potential for errors during user reassignment.
The same scoping is also applied to CSV-based reassignment, preventing accidental assignment to users outside your organization.</p>
    <p><a href="https://docs.gitlab.com/user/group/import/direct_transfer_migrations/#user-contribution-and-membership-mapping">View Documentation</a></p>
  </li>
  <li>
    <strong>Support for multiple workspaces in the GitLab for Slack app</strong>
    <p>The GitLab for Slack app now supports multiple workspaces for GitLab Self-Managed and GitLab Dedicated customers. Enabling multiple workspaces allows organizations with federated Slack environments to maintain seamless GitLab integrations across all their workspaces. To enable support for multiple workspaces, configure the GitLab for Slack app as an <a href="https://api.slack.com/distribution#unlisted-distributed-apps">unlisted distributed app</a>.</p>
    <p><a href="https://docs.gitlab.com/administration/settings/slack_app/#enable-support-for-multiple-workspaces">View Documentation</a></p>
  </li>
  <li>
    <strong>Delete groups and placeholder users</strong>
    <p>In GitLab 18.0, when you delete a top-level group, placeholder users associated with the group are deleted as well. If placeholder users are associated with other projects, they are only removed from the top-level group.
This way, unnecessary placeholder users are removed without disrupting the history or attributions of other projects.</p>
    <p><a href="https://docs.gitlab.com/user/project/import/#placeholder-user-deletion">View Documentation</a></p>
  </li>
  <li>
    <strong>Internal releases available for GitLab Dedicated</strong>
    <p>GitLab Dedicated customers with strict security requirements and compliance obligations require the highest level of protection for their development environments.
Today, we&rsquo;re introducing Internal Releases, a new private release that allows us to remediate GitLab Dedicated instances for critical vulnerabilities before public disclosure, ensuring GitLab Dedicated customers are never exposed to them.
This new capability delivers immediate protection for critical vulnerabilities found in GitLab parallel to response for GitLab.com. This new process does not require customer action.</p>
    <p><a href="https://handbook.gitlab.com/handbook/engineering/releases/internal-releases/">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab chart 9.0 released with breaking changes</strong>
    <p><ul>
<li><a href="https://docs.gitlab.com/update/deprecations/#postgresql-14-and-15-no-longer-supported">Breaking change</a>: Support for PostgreSQL 14 and 15 has been removed. Make sure you are running PostgreSQL 16 before upgrading.</li>
<li><a href="https://docs.gitlab.com/update/deprecations/#major-update-of-the-prometheus-subchart">Breaking change</a>: The bundled Prometheus chart was updated from 15.3 to 27.11. Along with the Prometheus chart upgrade, the Prometheus version was updated from 2.38 to 3.0. Manual steps are required to perform the upgrade. If you have Alertmanager, Node Exporter, or Pushgateway enabled, you must also update your Helm values. For more information, see the <a href="https://docs.gitlab.com/charts/releases/9_0.html#prometheus-upgrade">migration guide</a>.</li>
<li><a href="https://docs.gitlab.com/update/deprecations/#fallback-support-for-gitlab-nginx-chart-controller-image-v131">Breaking change</a>: The default NGINX controller image was updated from version 1.3.1 to 1.11.2. If you&rsquo;re using the GitLab NGINX chart, and you have set your own NGINX RBAC rules, new RBAC rules must exist. For more information, see the <a href="https://docs.gitlab.com/charts/releases/8_0/#upgrade-to-86x-851-843-836">upgrade guide</a> for more information.</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/charts/releases/9_0/">View Documentation</a></p>
  </li>
  <li>
    <strong>Event data collection</strong>
    <p>In GitLab 18.0, we are enabling event-level product usage data collection from GitLab Self-Managed and GitLab Dedicated instances. Unlike aggregated data, event-level data provides GitLab with deeper insights into usage, allowing us to improve user experience on the platform and increase feature adoption. For detailed instructions on how to adjust data sharing settings, please refer to our documentation.</p>
    <p><a href="https://docs.gitlab.com/administration/settings/event_data/">View Documentation</a></p>
  </li>
  <li>
    <strong>Deletion protection available for all users</strong>
    <p><p>Project and group delayed deletion is now available for all GitLab users, including those on our Free tier. This essential safety feature adds a grace period (7 days on GitLab.com) before deleted groups and projects are permanently removed. This feature allows recovery from accidental deletions without complex recovery operations.</p>
<p>By making data safety a core feature, GitLab can help better protect your work against data loss events.</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/settings/visibility_and_access_controls/#deletion-protection">View Documentation</a></p>
  </li>
  <li>
    <strong>Delayed project deletion for user namespaces</strong>
    <p><p>Delayed project deletion is now available for projects in user namespaces (personal projects). Previously, this safeguard against accidental data loss was only available for group namespaces. When you delete a project in your user namespace, it will now enter a &ldquo;pending deletion&rdquo; state for the duration configured in your instance settings (7 days on GitLab.com), rather than being immediately deleted. This creates a recovery window during which you can restore the project if needed.</p>
<p>We hope this enhancement provides greater peace of mind when managing your personal projects in GitLab.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/working_with_projects/#delayed-project-deletion">View Documentation</a></p>
  </li>
  <li>
    <strong>New `active` parameter for Groups and Projects REST APIs</strong>
    <p><p>We&rsquo;ve added a new <code>active</code> parameter to our Groups and Projects REST APIs that simplifies filtering groups based on their status. When set to <code>true</code>, only non-archived groups or projects not marked for deletion are returned. When set to <code>false</code>, only archived groups or projects marked for deletion are returned. If the parameter is undefined, no filtering is applied. This enhancement helps you efficiently manage your workflows by targeting specific statuses through simple API calls.</p>
<p>Thank you <a href="https://gitlab.com/dagaranupam">@dagaranupam</a> for adding this parameter to the Projects API.</p>
</p>
    <p><a href="https://docs.gitlab.com/api/projects/#list-projects">View Documentation</a></p>
  </li>
  <li>
    <strong>Rate limits for Groups, Projects, and Users API</strong>
    <p><p>We have added API rate limits for projects, groups, and users to improve platform stability and performance for all users. These changes are in response to increased API traffic that has been affecting our services.</p>
<p>The limits have been carefully set based on average usage patterns and should provide sufficient capacity for most use cases. If you exceed these limits, you&rsquo;ll receive a &ldquo;429 Too Many Requests&rdquo; response.</p>
<p>For complete details about specific rate limits and implementation information, please <a href="https://about.gitlab.com/blog/rate-limitations-announced-for-projects-groups-and-users-apis/">read the related blog post</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/gitlab_com/#rate-limits-on-gitlabcom">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>Security scanners now support MR pipelines</strong>
    <p><p>You can now choose to run <a href="https://docs.gitlab.com/ee/user/application_security/detect/">Application Security Testing (AST) scanners</a> in <a href="https://docs.gitlab.com/ee/ci/pipelines/merge_request_pipelines.html">merge request (MR) pipelines</a>.
To minimize the impact to your pipelines, this is as an opt-in behavior you can control.</p>
<p>Previously, the default behavior depended on whether you used the <a href="https://docs.gitlab.com/user/application_security/detect/security_configuration/#template-editions">Stable or Latest CI/CD template edition</a> to enable a scanner:</p>
<ul>
<li>In Stable templates, scan jobs ran in branch pipelines only. MR pipelines weren&rsquo;t supported.</li>
<li>In Latest templates, scan jobs ran in MR pipelines when an MR was open, and ran in branch pipelines if there was no associated MR. You couldn&rsquo;t control this behavior.</li>
</ul>
<p>Now, a new option, <code>AST_ENABLE_MR_PIPELINES</code>, allows you to control whether to run jobs in MR pipelines.
The default behavior for both Stable and Latest templates remains the same. Specifically:</p>
<ul>
<li>Stable templates continue to run scan jobs in branch pipelines by default, but you can set <code>AST_ENABLE_MR_PIPELINES: &quot;true&quot;</code> to use MR pipelines instead when an MR is open.</li>
<li>Latest templates continue to run scan jobs in MR pipelines by default when an MR is open, but you can set <code>AST_ENABLE_MR_PIPELINES: &quot;false&quot;</code> to use branch pipelines instead.</li>
</ul>
<p>This improvement affects all security scanning templates except for API Discovery (<code>API-Discovery.gitlab-ci.yml</code>), which currently defaults to MR pipelines.
We also changed the API Discovery template to align with other Stable templates in GitLab 18.0 and use branch pipeline by default.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/detect/roll_out_security_scanning.html#use-security-scanning-tools-with-merge-request-pipelines">View Documentation</a></p>
  </li>
  <li>
    <strong>Display and filter archived projects in the compliance projects report</strong>
    <p><p>In the compliance projects report, you can view the compliance frameworks applied to projects within a group or
subgroup.</p>
<p>However, the report lacked the ability to show whether a project is archived or not, which could be useful
information for managing compliance across active and archived projects.</p>
<p>As such, we&rsquo;ve added an indicator to show whether a project is archived. This will provide you with better
visibility and context when reviewing compliance frameworks across both active and archived projects.</p>
<p>This feature includes:</p>
<ul>
<li>An archived status badge for each project in the compliance projects report to show whether a project is
archived.</li>
<li>A filter that allows you to toggle between archived, non-archived, or all projects.</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/user/compliance/compliance_center/compliance_projects_report/#filter-the-compliance-projects-report">View Documentation</a></p>
  </li>
  <li>
    <strong>Create a workspace from merge requests</strong>
    <p><p>You can now create a workspace directly from a merge request with the new <strong>Open in Workspace</strong> option. This feature automatically configures a workspace with the merge request&rsquo;s branch and context, allowing you to:</p>
<ul>
<li>Review code changes in a fully configured environment.</li>
<li>Run tests on the merge request branch to verify functionality.</li>
<li>Make additional modifications to the merge request without local setup.</li>
</ul></p>
    <p><a href="https://docs.gitlab.com/user/workspace/configuration/#create-a-workspace">View Documentation</a></p>
  </li>
  <li>
    <strong>View open merge requests targeting files</strong>
    <p><p>Previously, when working on code files, you had no visibility into who else might be modifying
the same file in other branches. This lack of awareness led to merge conflicts, duplicated work,
and inefficient collaboration.</p>
<p>Now you can easily identify all open merge requests that modify the file you&rsquo;re viewing in the
repository. This feature helps you:</p>
<ul>
<li>Identify potential merge conflicts before they happen.</li>
<li>Avoid duplicating work that&rsquo;s already in progress.</li>
<li>Improve collaboration by providing visibility into in-flight changes.</li>
</ul>
<p>A badge displays the number of open merge requests modifying the file, and hovering over it
reveals a popover with the list of these merge requests.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/repository/files/#view-open-merge-requests-for-a-file">View Documentation</a></p>
  </li>
  <li>
    <strong>Shared Kubernetes namespace for workspaces</strong>
    <p><p>You can now create GitLab workspaces in a shared Kubernetes namespace. This removes the need to create
a new namespace for every workspace and eliminates the requirement to give elevated ClusterRole
permission to the agent. With this feature, you can more easily adopt workspaces in secure or
restricted environments, offering a simpler path to scale.</p>
<p>To enable shared namespaces, set the <code>shared_namespace</code> field in your agent configuration file to
specify the Kubernetes namespace you want to use for all workspaces.</p>
<p>Thank you to the half dozen community contributors who helped build this feature through
<a href="https://about.gitlab.com/community/co-create/">GitLab&rsquo;s Co-Create program</a>!</p>
</p>
    <p><a href="https://docs.gitlab.com/user/workspace/settings/#shared_namespace">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved pod status visualizations in the dashboard for Kubernetes</strong>
    <p><p>You can use the dashboard for Kubernetes to monitor your deployed applications. Until now, pods with container errors like <code>CrashLoopBackOff</code> or <code>ImagePullBackOff</code> were displayed with a &ldquo;Pending&rdquo; or &ldquo;Running&rdquo; status, which makes it difficult to identify problematic deployments without using <code>kubectl</code>.</p>
<p>In GitLab 18.0, error states in the UI show a specific container&rsquo;s status, similar to the <code>kubectl</code> output. Now, you can quickly identify and troubleshoot failing pods without leaving the GitLab interface.</p>
</p>
    <p><a href="https://docs.gitlab.com/ci/environments/kubernetes_dashboard">View Documentation</a></p>
  </li>
  <li>
    <strong>Exclude packages from license approval rules</strong>
    <p><p>In merge request approval policies, this new enhancement to license approval policies gives legal and compliance teams more control over which packages can use specific licenses. You can now create exceptions for pre-approved packages, even when they use licenses that would normally be blocked by your organization&rsquo;s policies.</p>
<p>Previously, in license approval policies, if you blocked a license like AGPL-3.0, it was blocked for all packages across your organization. This created challenges when:</p>
<ul>
<li>Your legal team pre-approved specific packages with otherwise restricted licenses.</li>
<li>You needed to use the same package across hundreds of projects.</li>
<li>Different teams required different license exceptions.</li>
</ul>
<p>With this release, you can maintain strict license governance while allowing necessary exceptions, significantly reducing approval bottlenecks and manual reviews. For example, you can:</p>
<ul>
<li>Define package-specific exceptions to your license approval rules using Package URL (PURL) format.</li>
<li>Allow specific packages (or package versions) to use otherwise restricted licenses.</li>
<li>Block specific packages (or package versions) from using generally allowed licenses.</li>
</ul>
<p>To add exceptions, follow this workflow when you create or edit a license approval policy:</p>
<ol>
<li>In your group, go to <strong>Security &amp; Compliance</strong> &gt; <strong>Policies</strong></li>
<li>Create or edit a license approval policy.</li>
<li>Find the new package exception options in the visual editor or configure them in YAML mode.</li>
<li>Choose between allowlist or denylist mode for the licenses.</li>
<li>Add specific licenses to your policy.</li>
<li>For each license, define package exceptions in PURL format (for example, <code>pkg:npm/@angular/animation@12.3.1</code>).</li>
<li>Specify whether to include or exclude these packages from the license rule.</li>
</ol>
<p>The policy then enforces your license rules while respecting the defined exceptions, giving you granular control over license compliance across your organization.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/policies/merge_request_approval_policies/#license_finding-rule-type">View Documentation</a></p>
  </li>
  <li>
    <strong>Limit maximum user session length</strong>
    <p><p>Administrators can now choose if the maximum length of a user session is computed from the initial sign-in or from the last activity. Users are notified that the session is ending, but cannot prevent the session from expiring or extend the session. This feature is disabled by default.</p>
<p>Thank you <a href="https://gitlab.kitware.com/john.parent">John Parent</a> for your contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/settings/account_and_limit_settings/#set-sessions-to-expire-from-creation-date">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Query Language views enhancements</strong>
    <p><p>We&rsquo;ve made significant improvements to GitLab Query Language (GLQL) views. These improvements include support for:</p>
<ul>
<li>The <code>&gt;=</code> and <code>&lt;=</code> operators for all date types</li>
<li>The <strong>View actions</strong> dropdown in views</li>
<li>The <strong>Reload</strong> action</li>
<li>Field aliases</li>
<li>Aliasing columns to a custom name in GLQL tables</li>
</ul>
<p>We welcome your feedback on this enhancement, and on GLQL views in general, in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/509791">issue 509791</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/glql/">View Documentation</a></p>
  </li>
  <li>
    <strong>Pages template improvements</strong>
    <p><p>GitLab provides <a href="https://gitlab.com/pages">templates for popular static site generators</a>. We&rsquo;ve taken a deep dive into available templates using a scoring framework, and refined the list to include only the most popular templates.</p>
<p>Refining templates available for GitLab Pages streamlines the website creation process. Use templates to launch professional-looking sites with minimal technical expertise. Enhanced templates also provide modern, responsive designs, eliminating the need for custom development work.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/pages/getting_started/pages_new_project_template/#project-templates">View Documentation</a></p>
  </li>
  <li>
    <strong>Configure Jira issues from vulnerabilities using the Jira integration API</strong>
    <p><p>Previously, you had to configure the integration to <a href="https://docs.gitlab.com/integration/jira/configure/#create-a-jira-issue-for-a-vulnerability">create Jira issues from vulnerabilities</a> from the <strong>Project settings</strong> page.</p>
<p>You can now configure this integration from the project integrations API, which allows you to automate the setup.</p>
</p>
    <p><a href="https://docs.gitlab.com/api/project_integrations/#jira-issues">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved traceability of redetected vulnerabilities</strong>
    <p><p>Previously, when a resolved vulnerability was redetected and changed status, the vulnerability details did not provide information to indicate when and why the status change occurred.</p>
<p>GitLab now adds a system note to the vulnerability history when resolved vulnerabilities change status because they appeared in a new scan. This additional information helps users understand why vulnerabilities have changed status.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/vulnerabilities/#vulnerability-status-values">View Documentation</a></p>
  </li>
  <li>
    <strong>Bulk add vulnerabilities to issues from the vulnerability report</strong>
    <p>With this release you can now bulk add vulnerabilities to new or existing <em>GitLab</em> issues from the vulnerability report. You may now associate multiple issues and vulnerabilities together. Additionally, related vulnerabilities are now listed within the issue page.</p>
    <p><a href="https://docs.gitlab.com/user/application_security/vulnerability_report/#add-vulnerabilities-to-an-existing-issue">View Documentation</a></p>
  </li>
  <li>
    <strong>Disable user invitations</strong>
    <p><p>You can now remove the ability to invite members to groups or projects.</p>
<ul>
<li>On GitLab.com, this setting is configured by Owners of groups with enterprise users and applies to any sub-groups or projects within the top-level group. No user can send invites while this setting is enabled.</li>
<li>On GitLab Self-Managed, this setting is by administrators and applies to the entire instance. Administrators can still invite users directly.</li>
</ul>
<p>This feature helps organizations maintain strict control over membership access.</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/settings/visibility_and_access_controls/#disable-user-invitations">View Documentation</a></p>
  </li>
  <li>
    <strong>LDAP authentication with GitLab username</strong>
    <p>LDAP users can now authenticate requests with their GitLab username. Previously, if the GitLab username didn&rsquo;t match their LDAP username, GitLab returned an authentication error. This change helps users maintain separate naming conventions in GitLab and LDAP systems without disrupting approval workflows.</p>
    <p><a href="https://docs.gitlab.com/administration/auth/ldap/">View Documentation</a></p>
  </li>
  <li>
    <strong>Support for SHA256 SAML certificates</strong>
    <p>GitLab now automatically detects and supports both SHA1 and SHA256 certificate fingerprints for Group SAML authentication. This maintains backward compatibility with existing SHA1 fingerprints while adding support for more secure SHA256 fingerprints. This upgrade is essential to prepare for the upcoming ruby-saml 2.x release that will make SHA256 the default.</p>
    <p><a href="https://docs.gitlab.com/integration/saml/">View Documentation</a></p>
  </li>
  <li>
    <strong>Granular permissions for job tokens in beta</strong>
    <p><p>Pipeline security just got more flexible. Job tokens are ephemeral credentials that provide access to resources in pipelines. Until now, these tokens inherited full permissions from the user, often resulting in unnecessarily broad access capabilities.</p>
<p>With our new <a href="https://docs.gitlab.com/ee/ci/jobs/fine_grained_permissions.html">fine-grained permissions for job tokens</a> beta feature, you can now precisely control which specific resources a job token can access within a project. This allows you to implement the principle of least privilege in your CI/CD workflows, granting only the minimal access necessary for each job to complete its tasks.</p>
<p>We&rsquo;re actively seeking community feedback on this feature. If you have questions, want to share your implementation experience, or would like to engage directly with our team about potential improvements, please visit our <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/519575">feedback issue</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ci/jobs/fine_grained_permissions/">View Documentation</a></p>
  </li>
  <li>
    <strong>New permissions for custom roles</strong>
    <p>You can create custom roles with the <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/471385">Manage protected environments</a> permission. Custom roles allow you to grant only the specific permissions users need to complete their tasks. This helps you define roles that are tailored to the needs of your group, and can reduce the number of users who need the Owner or Maintainer role.</p>
    <p><a href="https://docs.gitlab.com/user/custom_roles/">View Documentation</a></p>
  </li>
  <li>
    <strong>New CI/CD analytics view for projects in limited availability</strong>
    <p>The redesigned CI/CD analytics view transforms how your development teams analyze, monitor, and optimize pipeline performance
and reliability. Developers can access intuitive visualizations in the GitLab UI that reveal performance
trends and reliability metrics. Embedding these insights in your project repository eliminates context-switching
that disrupts developer flow. Teams can identify and address pipeline bottlenecks that drain productivity.
This enhancement leads to faster development cycles, improved collaboration, and data-driven confidence to optimize your
CI/CD workflows in GitLab.</p>
    <p><a href="https://docs.gitlab.com/user/analytics/ci_cd_analytics/">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner 18.0</strong>
    <p><p>We’re also releasing GitLab Runner 18.0 today! GitLab Runner is the highly-scalable build agent that runs your CI/CD jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.</p>
<h4 id="whats-new">What&rsquo;s new:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/514297">Add <code>ConfigurationError</code> and <code>ExitCodeInvalidConfiguration</code> to the GitLab Runner build error classifications</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/merge_requests/5527">Improve cloud provider error messages for failed cache uploads to cloud storage</a></li>
</ul>
<h4 id="bug-fixes">Bug Fixes:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38706">GitLab Runner can use cached images even when disallowed</a></li>
</ul>
<p>The list of all changes is in the GitLab Runner <a href="https://gitlab.com/gitlab-org/gitlab-runner/blob/18-0-stable/CHANGELOG.md">CHANGELOG</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/runner">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab Patch Release: 17.11.2, 17.10.6, 17.9.8</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-11-2-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-11-2-released/</id><published>2025-05-07T00:00:00Z</published><updated>2025-05-07T00:00:00Z</updated><author><name>Daniel Hauenstein</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On May 7, 2025, we released versions 17.11.2, 17.10.6, 17.9.8 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases, and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, you can visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-11-2-released/#partial-bypass-for-device-oauth-flow-using-cross-window-forgery">Partial Bypass for Device OAuth flow using Cross Window Forgery</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-11-2-released/#denial-of-service-by-abusing-github-import-api">Denial of service by abusing Github import API</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-11-2-released/#group-ip-restriction-bypass-allows-disclosing-issue-title-of-restricted-project">Group IP restriction bypass allows disclosing issue title of restricted project</a></td>
          <td>Medium</td>
      </tr>
  </tbody>
</table>
<h3 id="partial-bypass-for-device-oauth-flow-using-cross-window-forgery">Partial Bypass for Device OAuth flow using Cross Window Forgery</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 17.3 prior to 17.9.8, from 17.10 prior to 17.10.6, and from 17.11 prior to 17.11.2. Under certain conditions Device OAuth flow protections could be bypassed, enabling authorization form submission through minimal user interaction.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:N</code></a>, 6.8).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-0549">CVE-2025-0549</a>.</p>
<p>Thanks <a href="https://hackerone.com/sim4n6">sim4n6</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="denial-of-service-by-abusing-github-import-api">Denial of service by abusing Github import API</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 17.1 prior to 17.9.8, from 17.10 prior to 17.10.6, and from 17.11 prior to 17.11.2. It was possible to cause a DoS condition via GitHub import requests using a malicious crafted payload.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>, 6.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-8973">CVE-2024-8973</a>.</p>
<p>Thanks <a href="https://hackerone.com/a92847865">a92847865</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="group-ip-restriction-bypass-allows-disclosing-issue-title-of-restricted-project">Group IP restriction bypass allows disclosing issue title of restricted project</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions from 12.0 before 17.9.8, 17.10 before 17.10.6, and 17.11 before 17.11.2. Under certain conditions users could bypass IP access restrictions of a group, enabling them to disclose sensitive information.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N</code></a>, 5.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-1278">CVE-2025-1278</a>.</p>
<p>Thanks <a href="https://hackerone.com/iamgk808">iamgk808</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="17112">17.11.2</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/188874">Merge branch &lsquo;renovate-e2e/gitlab-qa-15.x&rsquo; into &lsquo;17-11-stable-ee&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/188885">[backport] Fix subgroup search redirect if SAML auth expired</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/188846">Fix MR diffs endpoint to respond with pagination headers</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/188922">Fix token prefix change when PAT prefix is nil</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/188895">[backport] Respect fork filter for global zoekt search</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/189318">[17.11] Bump graphql gem to 2.4.13</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/189452">[Backport] Allow SSO enforcer to skip root owner check</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/189039">[17.11] Only check records with encrypted data in gitlab:doctor:encryption_keys</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/189624">Change to async_delete for ci_running_builds.runner_id</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/189806">Merge branch &lsquo;pb-fix-matrix-use-case&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/190008">Update gitlab-development-kit digest to 59037d8</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/189983">Backport (17.11): Bump Devfile gem to 0.4.3</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/190095">Backport (17.11): Ensure all LFK&rsquo;s are processed regardless of duration</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/190294">[17.11 Backport]  Change the travel date for analytics/dashboards_spec.rb</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8365">config/git: Fix misdetected shell path (17.11 backport)</a></li>
</ul>
<h3 id="17106">17.10.6</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/189317">[17.10] Bump graphql gem to 2.4.13</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/189041">[17.10] Only check records with encrypted data in gitlab:doctor:encryption_keys</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/189622">Change to async_delete for ci_running_builds.runner_id</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/190009">Update gitlab-development-kit digest to 59037d8</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/189980">Backport (17.10): Bump Devfile gem to 0.4.3</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8342">Cherry pick &lsquo;8995-json-parse-utf8&rsquo; into &lsquo;17-10-stable&rsquo;</a></li>
</ul>
<h3 id="1798">17.9.8</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/189313">[17.9] Bump graphql gem to 2.4.13</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/189042">[17.9] Only check records with encrypted data in gitlab:doctor:encryption_keys</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/190010">Update gitlab-development-kit digest to 59037d8</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/190116">Backport (17.9): Bump devfile gem to v0.4.3</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">Update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 17.11.1, 17.10.5, 17.9.7</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-11-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-11-1-released/</id><published>2025-04-23T00:00:00Z</published><updated>2025-04-23T00:00:00Z</updated><author><name>Félix Veillette-Potvin</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On April 23, 2025, we released versions 17.11.1, 17.10.5, 17.9.7 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases, and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, you can visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-11-1-released/#cross-site-scripting-xss-in-maven-dependency-proxy-through-csp-directives">Cross Site Scripting (XSS) in Maven Dependency Proxy through CSP directives</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-11-1-released/#cross-site-scripting-xss-in-maven-dependency-proxy-through-cache-headers">Cross Site Scripting (XSS) in Maven dependency proxy through cache headers</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-11-1-released/#network-error-logging-nel-header-injection-in-maven-dependency-proxy-allows-browser-activity-monitoring">Network Error Logging (NEL) Header Injection in Maven Dependency Proxy Allows Browser Activity Monitoring</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-11-1-released/#denial-of-service-dos-via-issue-preview">Denial of service (DOS) via issue preview.</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-11-1-released/#unauthorized-access-to-branch-names-when-repository-assets-are-disabled-in-the-project">Unauthorized access to branch names when Repository assets are disabled in the project</a></td>
          <td>Medium</td>
      </tr>
  </tbody>
</table>
<h3 id="cross-site-scripting-xss-in-maven-dependency-proxy-through-csp-directives">Cross Site Scripting (XSS) in Maven Dependency Proxy through CSP directives</h3>
<p>An issue has been discovered in GitLab EE that allows for cross-site-scripting attack and content security policy bypass in a user&rsquo;s browser under specific conditions, affecting all versions from 16.6 prior to 17.9.7, 17.10 prior to 17.10.5, and 17.11 prior to 17.11.1.
This is a high severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N</code></a>, 8.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-1763">CVE-2025-1763</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cross-site-scripting-xss-in-maven-dependency-proxy-through-cache-headers">Cross Site Scripting (XSS) in Maven dependency proxy through cache headers</h3>
<p>An issue has been discovered in GitLab EE that allows for cross-site-scripting attack and content security policy bypass in a user&rsquo;s browser under specific conditions, affecting all versions from 16.6 prior to 17.9.7, 17.10 prior to 17.10.5, and 17.11 prior to 17.11.1.
This is a high severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N</code></a>, 8.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-2443">CVE-2025-2443</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="network-error-logging-nel-header-injection-in-maven-dependency-proxy-allows-browser-activity-monitoring">Network Error Logging (NEL) Header Injection in Maven Dependency Proxy Allows Browser Activity Monitoring</h3>
<p>An issue has been discovered in GitLab EE/CE that could allow an attacker to track users&rsquo; browsing activities, potentially leading to full account take-over, affecting all versions from 16.6 prior to 17.9.7, 17.10 prior to 17.10.5, and 17.11 prior to 17.11.1.
This is a high severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:H/I:H/A:N</code></a>, 7.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-1908">CVE-2025-1908</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="denial-of-service-dos-via-issue-preview">Denial of service (DOS) via issue preview.</h3>
<p>An issue has been discovered affecting service availability via issue preview in GitLab CE/EE affecting all versions from 16.7 prior to 17.9.7, 17.10 prior to 17.10.5, and 17.11 prior to 17.11.1.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>, 6.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-0639">CVE-2025-0639</a>.</p>
<p>Thanks <a href="https://hackerone.com/sigitsetiawansss">sigitsetiawansss</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="unauthorized-access-to-branch-names-when-repository-assets-are-disabled-in-the-project">Unauthorized access to branch names when Repository assets are disabled in the project</h3>
<p>An issue has been discovered in access controls that could allow users to view certain restricted project information even when related features are disabled in GitLab EE, affecting all versions from 17.7 prior to 17.9.7, 17.10 prior to 17.10.5, and 17.11 prior to 17.11.1.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>, 4.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-12244">CVE-2024-12244</a>.</p>
<p>Thanks <a href="https://hackerone.com/mateuszek">mateuszek</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="17111">17.11.1</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/188122">Put allow_composite_identities_to_run_pipelines behind ff</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/188630">Backporting doc fix for Amazon Q</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/188405">[BP]last_rollout_failed_at should be set for failures namespaces also</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/188604">Fix Amazon Q disconnect for already destroyed app</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/188127">Fix string conversion for CI Inputs</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/188074">Backport fix for latest DS template in combination with Static Reachability</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/188721">Merge branch &lsquo;535633-new-look-causes-attach-file-to-ignore-external_url&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/188234">Patch in 17.11: Sync Cloud Connector tokens hourly</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/188131">Update Workhorse Gitaly client dependency</a></li>
</ul>
<h3 id="17105">17.10.5</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2318">Backport &lsquo;fix-ubi-mailroom-location&rsquo; into &lsquo;17-10-stable&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/7765">backport update-go-grpc-to-1.71.1 to 17-10-stable</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/187346">[Backport 17.10] Bulk indexing cron workers should respect pause setting</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/187347">[17.10] Backport: Zoekt: Fix incorrect project filtering in Zoekt initial indexing</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/187380">Backport: Zoekt: Rollout is considering offline nodes as well</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/187382">Backport: Zoekt Newly created indices are instantly evicted</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/187376">Backport NoMethodError: zoekt_nodes is null in some instances</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/187679">Fix workspaces reconciliation to send inventory config map correctly</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/187370">[17.10 Backport] Clean up the FinalizeBackfillCiRunnerMachinesPartitionedTable migration</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/187562">Introduce a new gitlab:doctor:encryption_keys task</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/187902">Backport &ldquo;Resolve &ldquo;/api/v4/todos returns 500 when has wiki todo&rdquo;&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/187420">Update workhorse gitalyclient dependency update backport to 17.10</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/187890">[17.10 Backport] Clear session cookie when browser is closed</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/187865">Backport AI events backfill from PG to ClickHouse</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/188236">Patch in 17.10: Sync Cloud Connector tokens hourly</a></li>
</ul>
<h3 id="1797">17.9.7</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2322">Backport setting FIPS and UBI pipeline name to 17-9-stable</a></li>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2319">Backport &lsquo;fix-ubi-mailroom-location&rsquo; into &lsquo;17-9-stable&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/7772">backport update-go-grpc-to-1.71.1 to 17-9-stable</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/187368">[17.9 Backport] Clean up the FinalizeBackfillCiRunnerMachinesPartitionedTable migration</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/187566">Introduce a new gitlab:doctor:encryption_keys task</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/187765">Update workhorse gitalyclient dependency backport to 17.9</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">Update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab 17.11 released</title><link href="https://docs.gitlab.com/releases/17/17-11-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/17/17-11-released/</id><published>2025-04-17T00:00:00Z</published><updated>2025-04-17T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On April 17, 2025, GitLab 17.11 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong>Heidi Berry</strong>
</p>
<p>For 17.11, we&rsquo;re delighted to recognize <a href="https://gitlab.com/heidi.berry">Heidi Berry</a> as our Notable Contributor!</p>
<p>Heidi has been a standout contributor to the <a href="https://gitlab.com/gitlab-org/terraform-provider-gitlab">GitLab Terraform Provider</a> and <a href="https://gitlab.com/gitlab-org/api/client-go">client-go</a> projects. Over the past several releases, she has consistently delivered highly requested features including the ability to use <a href="https://gitlab.com/gitlab-org/terraform-provider-gitlab/-/merge_requests/1949">custom roles with Group SAML links</a>, support for setting <a href="https://gitlab.com/gitlab-org/terraform-provider-gitlab/-/merge_requests/2113">branch protection defaults for group</a>, and automatic <a href="https://gitlab.com/gitlab-org/terraform-provider-gitlab/-/merge_requests/2206">token rotation for service account tokens</a>.</p>
<p>Beyond feature development, Heidi has been instrumental in maintenance activities - <a href="https://gitlab.com/gitlab-org/terraform-provider-gitlab/-/issues/1035#note_2305643918">helping with issue backlog refinement</a>, <a href="https://gitlab.com/gitlab-org/terraform-provider-gitlab/-/merge_requests/2298">updating older tests for improved readability</a>, and <a href="https://gitlab.com/gitlab-org/terraform-provider-gitlab/-/merge_requests/2201">enhancing documentation with better examples</a>. Her contributions to client-go are particularly valuable as this library powers many downstream projects that both customers and GitLab use to interact with GitLab, including the Terraform provider and glab.</p>
<p>&ldquo;If you have ever wanted to try your hand at open source contributing, try out client-go and terraform-provider-gitlab,&rdquo; says Heidi. &ldquo;They have great documentation to get you started, and supportive maintainers ready to help. I have enjoyed using these projects to learn the go language in a practical way.&rdquo;</p>
<p>Heidi was nominated by another community contributor, <a href="https://gitlab.com/PatrickRice">Patrick Rice</a>, who is an Enterprise Architect at Kingland and member of the GitLab community Core Team. Patrick says: &ldquo;With over 100 merged contributions so far across the 17 release cycle and more issue comments, Heidi has been a great help to GitLab and Terraform. Thank you so much for your contributions!&rdquo;</p>
<p>&ldquo;Heidi does phenomenal work,&rdquo; said <a href="https://gitlab.com/timofurrer">Timo Furrer</a>, Senior Backend Engineer in Deploy::Environments at GitLab. &ldquo;She regularly goes the extra mile and implements the necessary SDK code in client-go. Heidi not only contributes a lot of code, but also helps with issue triaging. It&rsquo;s an immense help and it&rsquo;s the reason community-driven projects like these can sustain.&rdquo;</p>
<p>Heidi is a Lead Software Engineer at The Co-operative Group, where she helps make developer experience efficient, secure and as effortless as possible.</p>
<p>Thank you, Heidi, for your tremendous contributions to GitLab!</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>Customize compliance frameworks with requirements and compliance controls</strong>
    <p><p>Previously, compliance frameworks in GitLab could be created as a label to identify that your project has certain
compliance requirements or needs additional oversight. This label could then be used as a scoping mechanism to
ensure that security policies could be enforced on all projects within a group.</p>
<p>In this release, we are introducing a new way for compliance managers to get more in-depth compliance monitoring
in GitLab through &lsquo;requirements&rsquo;.</p>
<p>With requirements, as part of a custom compliance framework, you can define specific requirements from a number of
different compliance standards, laws, and regulations that must be followed as an organization.</p>
<p>We are also expanding the number of compliance controls (previously known as compliance checks) that we offer from
five to over 50! These 50 out-of-the-box (OOTB) controls can be mapped to the compliance framework requirements.</p>
<p>These controls check particular project, security, and merge request settings across your GitLab instance to help
you meet requirements under a number of different compliance standards, laws, and regulations such as SOC2, NIST,
ISO 27001, and the GitLab CIS Benchmark.</p>
<p>Adherence to these controls is reflected in standard adherence report, which is redesigned to take into account
requirements and the mapping of controls to those requirements.</p>
<p>In addition to expanding our OOTB controls, we now allow users to map requirements to external controls, which can
be for items, programs, or systems that exist outside the GitLab platform. These mappings allow you to use the
GitLab compliance centre as the single source of truth when it comes to your compliance monitoring and audit
evidence needs.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/compliance/compliance_center/compliance_status_report/">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Eclipse plugin available in beta</strong>
    <p><p>We&rsquo;re thrilled to announce the beta release of the GitLab Eclipse plugin, now available in the <a href="https://marketplace.eclipse.org/content/gitlab-eclipse">Eclipse Marketplace</a>. This powerful new plugin extends GitLab&rsquo;s Duo features directly into your Eclipse IDE, giving you seamless access to Duo Chat and AI-powered code suggestions.</p>
<p>As the plugin is currently in beta, we&rsquo;re actively improving features, including expanding authentication options, and refining the final user experience. Your feedback is invaluable. Please share your thoughts to help us make the GitLab Eclipse plugin even better by adding your feedback <a href="https://gitlab.com/gitlab-org/editor-extensions/gitlab-eclipse-plugin/-/issues/162">in issue 162</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/editor_extensions/eclipse/setup/">View Documentation</a></p>
  </li>
  <li>
    <strong>More GitLab Duo features now available on GitLab Duo Self-Hosted</strong>
    <p><p>You can now use more <a href="https://about.gitlab.com/gitlab-duo/">GitLab Duo</a> features with GitLab Duo Self-Hosted in your GitLab Self-Managed instance. The following features are available in beta:</p>
<ul>
<li><a href="https://docs.gitlab.com/user/gitlab_duo_chat/examples/#troubleshoot-failed-cicd-jobs-with-root-cause-analysis">Root Cause Analysis</a></li>
<li><a href="https://docs.gitlab.com/user/application_security/vulnerabilities/#explaining-a-vulnerability">Vulnerability Explanation</a></li>
<li><a href="https://docs.gitlab.com/user/application_security/vulnerabilities/#vulnerability-resolution">Vulnerability Resolution</a></li>
<li><a href="https://docs.gitlab.com/user/analytics/ai_impact_analytics/">AI Impact Dashboard</a></li>
<li><a href="https://docs.gitlab.com/user/discussions/#summarize-issue-discussions-with-duo-chat">Discussion Summary</a></li>
<li><a href="https://docs.gitlab.com/user/project/merge_requests/duo_in_merge_requests/#generate-a-merge-commit-message">Merge Request Commit Message</a></li>
<li><a href="https://docs.gitlab.com/user/project/merge_requests/duo_in_merge_requests/#generate-a-description-by-summarizing-code-changes">Merge Request Summary</a></li>
<li><a href="https://docs.gitlab.com/editor_extensions/gitlab_cli/#gitlab-duo-for-the-cli">GitLab Duo for the CLI</a></li>
</ul>
<p><a href="https://docs.gitlab.com/user/project/merge_requests/duo_in_merge_requests/#summarize-a-code-review">Code Review Summary</a> is also available on GitLab Duo Self-Hosted as an experiment.</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/gitlab_duo_self_hosted/#supported-gitlab-duo-features">View Documentation</a></p>
  </li>
  <li>
    <strong>Extension marketplace for Web IDE on self-managed instances</strong>
    <p><p>We&rsquo;re thrilled to announce the launch of the extension marketplace in the Web IDE for self-managed users. With the extension marketplace, you can discover, install, and manage third-party extensions to enhance your development experience.</p>
<p>By default, the GitLab instance is configured to use the Open VSX extension registry. To activate this, follow the <a href="https://docs.gitlab.com/administration/settings/vscode_extension_marketplace/#enable-with-default-extension-registry">enable with default extension registry</a> steps.</p>
<p>If you want to use your own or custom registry, you also have the option to <a href="https://docs.gitlab.com/administration/settings/vscode_extension_marketplace/#customize-extension-registry">connect a custom extension registry</a>. This provides you with more flexibility to manage available extensions.</p>
<p>After enabling the extension marketplace, individual users must still opt in to use it. They can do this by going to the <strong>Integrations</strong> section in their <a href="https://gitlab.com/-/profile/preferences">Preferences</a> settings.</p>
<p>It&rsquo;s important to note that some extensions require a local runtime environment and are not compatible with the web-only version. Despite this, you can still choose from thousands of available extensions to boost your productivity and customize your workflow.</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/settings/vscode_extension_marketplace/">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Duo with Amazon Q is generally available</strong>
    <p><p>We&rsquo;re excited to announce general availability for GitLab Duo with Amazon Q, a joint offering that brings together the comprehensive GitLab AI-powered DevSecOps platform with autonomous Amazon Q AI agents in a single, integrated solution. GitLab Duo with Amazon Q integrates AI agents directly into development workflows, allowing developers to accelerate key tasks without switching tools. Acting as intelligent assistants within the GitLab DevSecOps platform, these agents automate time-consuming processes like code generation, testing, reviews, and Java modernization, helping teams focus on innovation while maintaining security and quality standards.</p>
<p>GitLab Duo with Amazon Q provides major benefits for development teams:</p>
<ul>
<li>Streamline feature development from idea to code: use <code>/q dev</code>, which will convert an issue description directly into merge-ready code in minutes.</li>
<li>Modernize legacy code without the headache: use <code>/q transform</code> to automate the entire Java modernization process.</li>
<li>Accelerate code reviews without sacrificing quality: use <code>/q review</code> to get instant, intelligent feedback on code quality and security directly in merge requests.</li>
<li>Automate testing to ship with confidence: use <code>/q test</code> to generate comprehensive unit tests that understand your application logic.</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/user/duo_amazon_q/">View Documentation</a></p>
  </li>
  <li>
    <strong>Enhance security with protected container tags</strong>
    <p><p>Container registries are critical infrastructure for modern DevSecOps teams. Until now, GitLab users with the Developer role or higher could push and delete any container tag in their projects, creating risks of accidental or unauthorized changes to production-critical container images.</p>
<p>With protected container tags, you now have fine-grained control over who can push or delete specific container tags. You can:</p>
<ul>
<li>Create up to five protection rules per project.</li>
<li>Use RE2 regex patterns to protect tags like <code>latest</code>, semantic versions (for example, <code>v1.0.0</code>), or stable release tags (for example, <code>main-stable</code>).</li>
<li>Restrict push and delete operations to Maintainer, Owner, or Administrator roles.</li>
<li>Prevent protected tags from being removed by cleanup policies.</li>
</ul>
<p>This feature requires the next-generation container registry, which is already enabled by default on GitLab.com. For GitLab Self-Managed instance, you&rsquo;ll need to enable the <a href="https://docs.gitlab.com/administration/packages/container_registry_metadata_database/">metadata database</a> to use protected container tags.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/packages/container_registry/protected_container_tags/">View Documentation</a></p>
  </li>
  <li>
    <strong>Safeguard your registry with protected Maven packages</strong>
    <p><p>We&rsquo;re thrilled to introduce support for protected Maven packages to enhance the security and stability of your GitLab package registry. Accidental modification of packages can disrupt the entire development process. With protected packages, you can safeguard your most important dependencies against unintended changes.</p>
<p>In GitLab 17.11, you can now protect Maven packages by creating protection rules. If a package matches a protection rule, only specified users can push new versions of the package. Package protection rules prevent accidental overwrites, improve compliance with regulatory requirements, and reduce the need for manual oversight.</p>
<p><a href="https://gitlab.com/groups/gitlab-org/-/epics/5574">Protected packages</a> support for Maven and other package formats are all community contributions from <code>gerardo-navarro</code> and the Siemens crew. Thank you, Gerardo, and the rest of the crew from Siemens for their many contributions to GitLab! If you want to learn more about how Gerardo and the Siemens crew contributed this change, check out this <a href="https://www.youtube.com/watch?v=5-nQ1_Mi7zg">video</a> in which Gerardo shares his learnings and best practices for contributing to GitLab based on his experience as an external contributor.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/packages/package_registry/package_protection_rules.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Epic, issue, and task custom fields</strong>
    <p><p>With this release, you can configure text, number, single-select,
and multi-select custom fields for issues, epics, tasks, objectives, and key
results. While labels have been the primary way to categorize work items up
to this point, custom fields provide a more user-friendly approach for adding
structured metadata to your planning artifacts.</p>
<p>Custom fields are configured in your top-level group and cascade to all subgroups and projects.
You can map fields to one or more work item types and filter by custom field values in the issues and epics lists.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/work_items/custom_fields/">View Documentation</a></p>
  </li>
  <li>
    <strong>New issue look now generally available</strong>
    <p><p>As of this release, the new issue look is generally available and replaces the legacy issue experience. Issues now share a common framework with epics and tasks, featuring real-time updates and workflow improvements:</p>
<ul>
<li><strong>Drawer view:</strong> You can open items from lists or boards in a drawer for quick viewing without leaving your current context. A button at the top lets you expand to a full-page view.</li>
<li><strong>Change type:</strong> Convert types between epics, issues, and tasks using the “Change type” action (replaces “Promote to epic”)</li>
<li><strong>Start date:</strong> Issues now support start dates, aligning their functionality with epics and tasks.</li>
<li><strong>Ancestry:</strong> The complete hierarchy is above the title and the Parent field in the sidebar. To manage relationships, use the new quick action commands <code>/set_parent</code>, <code>/remove_parent</code>, <code>/add_child</code>, and <code>/remove_child</code>.</li>
<li><strong>Controls:</strong> All actions are now accessible from the top menu (vertical ellipsis), which remains visible in the sticky header when scrolling.</li>
<li><strong>Development:</strong> All development items (merge requests, branches, and feature flags) related to an issue or task are now consolidated in a single, convenient list.</li>
<li><strong>Layout:</strong> UI improvements create a more seamless experience between issues, epics, tasks, and merge requests, helping you navigate your workflow more efficiently.</li>
<li><strong>Linked items:</strong> Create relationships between tasks, issues, and epics with improved linking options. Drag and drop to change link types and toggle the visibility of labels and closed items.</li>
</ul></p>
    <p><a href="https://docs.gitlab.com/user/project/issues/">View Documentation</a></p>
  </li>
  <li>
    <strong>Service accounts UI</strong>
    <p>You now can use a dedicated space to create and manage service accounts in the GitLab UI. This interface allows you to create, monitor, and control automated access to your GitLab resources. Previously, this functionality was only available in the API.</p>
    <p><a href="https://docs.gitlab.com/ee/user/profile/service_accounts.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Automated Duo Pro and Duo Enterprise seat assignment</strong>
    <p>You can now automatically assign a Duo Pro or Duo Enterprise seat to users with SAML Group Sync. As long as the GitLab group has available Duo Pro or Duo Enterprise seats, any user mapped from the identity provider is automatically assigned a seat. This reduces the effort to manage seat assignments.</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/saml_sso/group_sync.html#gitlab-duo-seat-assignment">View Documentation</a></p>
  </li>
  <li>
    <strong>CI/CD pipeline inputs</strong>
    <p><p>CI/CD variables are essential for dynamic CI/CD workflows, and are used for many things, including as environment variables, context variables, tool configuration, and matrix variables. But developers sometimes rely on CI/CD variables to inject <a href="https://docs.gitlab.com/ci/variables/#use-pipeline-variables">pipeline variables</a> into pipelines to manually modify pipeline behavior, which have some risks due to the higher precedence of pipeline variables.</p>
<p>In GitLab 17.11 and later, you can now use <code>inputs</code> to safely modify pipeline behavior instead of using pipeline variables, including in scheduled pipelines, downstream pipelines, triggered pipelines, and other cases. Inputs provide developers with a more structured and flexible solution for injecting dynamic content at CI/CD job runtime. After you switch to inputs, you can completely <a href="https://docs.gitlab.com/ci/variables/#restrict-pipeline-variables">disable access to pipeline variables</a>.</p>
<p>We&rsquo;d greatly appreciate it if you could try it out and share your feedback through this dedicated <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/533802">issue</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ci/inputs/#for-a-pipeline">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Agentic Core</h4>
<ul>
  <li>
    <strong>GitLab Duo Chat now uses Anthropic Claude Sonnet 3.7</strong>
    <p><p>GitLab Duo Chat now uses Anthropic Claude Sonnet 3.7 as the base model, replacing Claude 3.5 Sonnet for answering most questions.</p>
<p>Claude 3.7 Sonnet has strongly improved coding and reasoning capabilities, making it even better at explaining code, generating code, processing text data, and answering complex DevSecOps questions. You&rsquo;ll notice more detailed and accurate Chat responses in these areas.</p>
<p>This upgrade applies to all Chat features, and ensures a consistent and improved experience across the entire Chat interface.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/gitlab_duo_chat/examples/">View Documentation</a></p>
  </li>
  <li>
    <strong>Open files as context now available on GitLab Duo Self-Hosted Code Suggestions</strong>
    <p>On Gitlab Duo Self-Hosted, you can now use <a href="https://docs.gitlab.com/user/project/repository/code_suggestions/#using-open-files-as-context">files open in tabs in your IDE</a> as context when using Code Suggestions.</p>
    <p><a href="https://docs.gitlab.com/user/project/repository/code_suggestions/#using-open-files-as-context">View Documentation</a></p>
  </li>
  <li>
    <strong>Select individual models for AI-powered features on GitLab Duo Self-Hosted</strong>
    <p><p>On GitLab Duo Self-Hosted, you can now select and configure individual supported models for each GitLab Duo feature and sub-feature on your GitLab Self-Managed instance.</p>
<p>To leave feedback, go to <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/524175">issue 524175</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/gitlab_duo_self_hosted/configure_duo_features/#configure-the-feature-to-use-a-self-hosted-model">View Documentation</a></p>
  </li>
  <li>
    <strong>Llama 3 models generally available for GitLab Duo Chat and Code Suggestions</strong>
    <p><p>Llama 3 models are now generally available with Gitlab Duo Self-Hosted to support GitLab Duo Chat and Code Suggestions.</p>
<p>To leave feedback on using these models with GitLab Duo Self-Hosted, see <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/523918">issue 523918</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/gitlab_duo_self_hosted/supported_models_and_hardware_requirements/#supported-models">View Documentation</a></p>
  </li>
  <li>
    <strong>Manage multiple conversations in GitLab Duo Chat</strong>
    <p><p>Multiple conversations with GitLab Duo Chat is now available in GitLab Self-Managed instances in the web UI. You can create new conversations, browse your conversation history, and switch between conversations without losing context.</p>
<p>For your privacy, conversations with no activity for 30 days are automatically deleted, and you can manually delete any conversation at any time. On GitLab Self-Managed, administrators can reduce how long conversations are retained for.</p>
<p>Share your experience with us in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/526013">issue 526013</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/gitlab_duo_chat/#have-multiple-conversations-with-chat">View Documentation</a></p>
  </li>
</ul>
<h4>Scale and Deployments</h4>
<ul>
  <li>
    <strong>All auto-disabled webhooks now automatically re-enable</strong>
    <p><p>With this release, webhooks that return <code>4xx</code> errors are now automatically re-enabled. All errors (<code>4xx</code>, <code>5xx</code>, or server errors) are treated the same way, allowing for more predictable behavior and easier troubleshooting. This change was announced in <a href="https://about.gitlab.com/blog/gitlab-webhooks-get-smarter-with-self-healing-capabilities/">this blog post</a>.</p>
<p>Failing webhooks are temporarily disabled for one minute, extending to a maximum of 24 hours. After a webhook fails 40 consecutive times, it now becomes permanently disabled.</p>
<p>Webhooks that were permanently disabled in GitLab 17.10 and earlier underwent a data migration.</p>
<ul>
<li>For GitLab.com, these changes apply automatically.</li>
<li>For GitLab Self-Managed and GitLab Dedicated, these changes affect only those instances where the <code>auto_disabling_webhooks</code> <code>ops</code> flag is enabled.</li>
</ul>
<p>Thanks to <a href="https://gitlab.com/lifez">Phawin</a> for <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/166329">this community contribution</a>!</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/integrations/webhooks/#auto-disabled-webhooks">View Documentation</a></p>
  </li>
  <li>
    <strong>Ghost user contributions auto-mapped during imports</strong>
    <p><p>Previously, ghost user contributions would create placeholder references that required manual reassignment, creating extra work during migrations.
Now, importers using new <a href="https://docs.gitlab.com/user/project/import/#user-contribution-and-membership-mapping">contributions and membership mapping functionality</a>, migration by direct transfer, GitHub, Bitbucket Server and Gitea importers,
handle ghost user contributions more intelligently.
When importing content to GitLab, contributions previously made by the ghost user on
the source instance are now automatically mapped to the ghost user on the destination instance.</p>
<p>This enhancement eliminates the creation of unnecessary placeholder users for ghost user contributions,
reducing clutter in user mapping interface and simplifying the migration process.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/import/#user-contribution-and-membership-mapping">View Documentation</a></p>
  </li>
  <li>
    <strong>SAML verification for contribution reassignment when importing to GitLab.com</strong>
    <p><p>In this milestone, we&rsquo;ve added SAML verification checks to contribution reassignment when importing to GitLab.com. These checks prevent reassignment errors in groups where SAML SSO is enabled.</p>
<p>If you import to GitLab.com and use SAML SSO for GitLab.com groups, all users must link their SAML identity to their GitLab.com account before you can reassign contributions and memberships.
When you reassign contributions to users who have not verified their SAML identity, you&rsquo;ll receive error messages. These messages explain the steps to take to help ensure your group memberships are attributed correctly.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/import/#requirements">View Documentation</a></p>
  </li>
  <li>
    <strong>Filter placeholder users in Admin area</strong>
    <p><p>Previously, placeholder users created during imports appeared mixed with regular users
without clear distinction in the <strong>Admin</strong> area <strong>Users</strong> page.</p>
<p>With this release, administrators can now filter for placeholder accounts from the search box
in the <strong>Users</strong> page in the <strong>Admin</strong> area. To do this, select <code>Type</code> in the dropdown list,
then choose <code>Placeholder</code>.</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/admin_area/#administering-users">View Documentation</a></p>
  </li>
  <li>
    <strong>Placeholder user limits appear in group usage quotas</strong>
    <p><p>For imports to GitLab.com, placeholder users are limited per top-level group. These limits depend on your GitLab license and number of seats. With this release, it&rsquo;s possible to check your placeholder user usage and limits for a top-level group in the UI.</p>
<p>To view your current usage and limits:</p>
<ol>
<li>On the left sidebar, select <strong>Search or go to</strong> and find your group. This group must be at the top level.</li>
<li>Select <strong>Settings &gt; Usage Quotas</strong>.</li>
<li>Select the <strong>Import</strong> tab.</li>
</ol>
</p>
    <p><a href="https://docs.gitlab.com/user/project/import/#placeholder-user-limits">View Documentation</a></p>
  </li>
  <li>
    <strong>Geo - New replicables view</strong>
    <p>We are introducing a new look and feel for the replicables view in Geo. The new experience better aligns with the rest of GitLab and provides a more streamlined and less cluttered interface to review the synchronization and verification status of Geo secondary sites. In addition, there is now a click-through detailed view for each replicable item, providing information such as the primary and secondary checksums, error details, and much more. This information will make troubleshooting Geo synchronization issues much easier.</p>
    <p><a href="https://docs.gitlab.com/administration/geo/">View Documentation</a></p>
  </li>
  <li>
    <strong>Linux package improvements</strong>
    <p><p>In GitLab 18.0, the minimum-supported version of PostgreSQL will be version 16. To prepare for this change, on
instances that don&rsquo;t use <a href="https://docs.gitlab.com/administration/postgresql/replication_and_failover/">PostgreSQL Cluster</a>,
upgrades to GitLab 17.11 will attempt to automatically upgrade PostgreSQL to version 16.</p>
<p>If you use <a href="https://docs.gitlab.com/administration/postgresql/replication_and_failover/">PostgreSQL Cluster</a> or <a href="https://docs.gitlab.com/omnibus/settings/database/#opt-out-of-automatic-postgresql-upgrades">opt out of this automated upgrade</a>, you must <a href="https://docs.gitlab.com/omnibus/settings/database/#upgrade-packaged-postgresql-server">manually upgrade to PostgreSQL 16</a>
to be able to upgrade to GitLab 18.0.</p>
</p>
    <p><a href="https://docs.gitlab.com/omnibus/">View Documentation</a></p>
  </li>
  <li>
    <strong>Pre-deployment opt-out toggle to disable event data sharing</strong>
    <p><p>In GitLab 18.0, we plan to enable event-level product usage data collection from GitLab Self-Managed and GitLab Dedicated instances. Unlike aggregated data, event-level data provides GitLab with deeper insights into usage, allowing us to improve user experience on the platform and increase feature adoption.</p>
<p>Starting in GitLab 17.11, you will have the ability to opt out of event data collection before it starts, effectively allowing you to choose participation in advance. For more information and details on how to opt-out please see our documentation.</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/settings/event_data/">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>Increased rule coverage for secret push protection and pipeline secret detection</strong>
    <p>GitLab secret detection has received significant updates, including 17 new secret push protection rules and 12 new pipeline secret detection rules. Some existing rules have also been updated to improve quality and reduce false positives. For details, see v0.9.0 in the <a href="https://gitlab.com/gitlab-org/security-products/secret-detection/secret-detection-rules/-/blob/main/CHANGELOG.md#v090">change log</a>.</p>
    <p><a href="https://docs.gitlab.com/user/application_security/secret_detection/detected_secrets">View Documentation</a></p>
  </li>
  <li>
    <strong>Static reachability beta with Python support</strong>
    <p><p>The Composition Analysis team has released beta support for static reachability for Python. This beta release focuses on enhancing stability, observability, and provides a better user experience via easier configuration.</p>
<p>Static reachability enriches software composition analysis (SCA) results. Powered by GitLab Advanced SAST, static reachability scans project source code to identify which open source dependencies are in use.</p>
<p>You can use the data produced by static reachability as part of your triage and remediation decision making. Static reachability data can also be used with CVSS and EPSS scores, as well as KEV indicators to provide a more focused view of your vulnerabilities.</p>
<p>We welcome feedback on this feature. If you have questions, comments, or would like to engage with our team please see this <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/535498">feedback issue</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/dependency_scanning/static_reachability/">View Documentation</a></p>
  </li>
  <li>
    <strong>Dynamic analysis support for reflected XSS checks</strong>
    <p><p>The Dynamic Analysis team has introduced a check for <a href="https://cwe.mitre.org/data/definitions/79.html">CWE-79</a>. This work allows our DAST scanner to check for reflected XSS attacks.</p>
<p>Checking for Reflective XSS is on by default. To turn off this check, in you configuration, set <code>DAST_FF_XSS_ATTACK: false</code>.
If you have questions or feedback, see <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/525861">issue 525861</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/dast/browser/checks/">View Documentation</a></p>
  </li>
  <li>
    <strong>Use imported files as context in Code Suggestions</strong>
    <p>GitLab Duo Code Suggestions can now use imported files in your IDE to enrich and improve the quality of suggestions. Imported files provide additional context about your project. Imported file context is supported for JavaScript and TypeScript files.</p>
    <p><a href="https://docs.gitlab.com/user/project/repository/code_suggestions/#using-imported-files-as-context">View Documentation</a></p>
  </li>
  <li>
    <strong>Assign projects when creating compliance frameworks</strong>
    <p><p>In the past, you couldn&rsquo;t assign new compliance frameworks to projects without navigating to the <strong>Projects</strong> tab
in the compliance center after creating the compliance framework. This situation created unnecessary friction to
creating new compliance frameworks in your groups.</p>
<p>In GitLab 17.11, when creating a compliance framework, we introduced a new step that provides the option of
assigning multiple projects to the compliance framework before it is created.</p>
<p>This new feature:</p>
<ul>
<li>Helps keep you in the compliance framework creation workflow.</li>
<li>Provides guidance for you to understand that compliance frameworks work together with projects in a group to
monitor and enforce compliance adherence for the entire group.</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/user/compliance/compliance_frameworks/#apply-a-compliance-framework-to-a-project">View Documentation</a></p>
  </li>
  <li>
    <strong>Kubernetes 1.32 support</strong>
    <p><p>This release adds full support for Kubernetes version 1.32, released in December 2024. If you deploy your apps to Kubernetes, you can now upgrade your connected clusters to the most recent version and take advantage of all its features.</p>
<p>You can read more about <a href="https://docs.gitlab.com/ee/user/clusters/agent/#supported-kubernetes-versions-for-gitlab-features">our Kubernetes support policy and other supported Kubernetes versions</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/clusters/agent/#supported-kubernetes-versions-for-gitlab-features">View Documentation</a></p>
  </li>
  <li>
    <strong>Configure SAML single sign-on with multiple identity providers in Switchboard</strong>
    <p><p>You can now configure SAML single sign-on (SSO) for your GitLab Dedicated instance for up to ten identity providers (IdPs).</p>
<p>All SAML configuration options available for GitLab Dedicated instances can be configured for each individual IdP.</p>
<p>If you had previously configured multiple IdPs, you can now view and edit all existing SAML configurations directly in Switchboard.</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/dedicated/configure_instance/saml/">View Documentation</a></p>
  </li>
  <li>
    <strong>Docker Hub authentication UI for the dependency proxy</strong>
    <p><p>We&rsquo;re excited to announce UI support for Docker Hub authentication in the GitLab Dependency Proxy. This feature was initially introduced in GitLab 17.10 with GraphQL API support only, and now includes a user interface for easier configuration.</p>
<p>With this enhancement, you can now configure Docker Hub authentication directly from your group settings page, helping you:</p>
<ul>
<li>Avoid pipeline failures due to rate limits.</li>
<li>Access private Docker Hub images.</li>
<li>Store your Docker Hub credentials, <a href="https://docs.docker.com/security/for-developers/access-tokens/">personal access token</a>, or <a href="https://docs.docker.com/security/for-admins/access-tokens/">organization access tokens</a> securely.</li>
</ul>
<p>This streamlined approach makes it easier to maintain uninterrupted access to Docker Hub images in your CI/CD pipelines without using the GraphQL API.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/packages/dependency_proxy/#authenticate-with-docker-hub">View Documentation</a></p>
  </li>
  <li>
    <strong>Set work in progress limits by weight</strong>
    <p><p>You can now set work in progress limits by weight in addition to issue count, giving you more flexibility in managing your team&rsquo;s workload.</p>
<p>Control the flow of work based on the complexity or effort of each task, rather than just the number of issues. Teams that use issue weights to represent effort can now ensure they don&rsquo;t overcommit by limiting the total weight of issues in a given board list.</p>
<p>Use this feature to optimize your team&rsquo;s productivity and create a more balanced workflow that accounts for varying task complexity.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/issue_board.html#work-in-progress-limits">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved wiki sidebar styling</strong>
    <p><p>The custom wiki sidebar now features improved styling with reduced heading sizes and better left-padding for lists. These ergonomic enhancements improve the readability of custom navigation created through the <code>_sidebar</code> wiki page.</p>
<p>Custom sidebars help teams organize their wiki content in a way that makes sense for their unique knowledge base structure. With this styling update, the sidebar is now easier to scan, creating a clearer visual hierarchy that helps team members find relevant information more quickly.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/wiki/#customize-sidebar">View Documentation</a></p>
  </li>
  <li>
    <strong>Display last comment as a column in GLQL views</strong>
    <p><p>GLQL views now support displaying the last comment on an issue or merge request as a column. By including <code>lastComment</code> as a field in your GLQL query, you can see the most recent updates without leaving your current context.</p>
<p>Previously, you had to open each issue or merge request individually to view the last comment, which was time consuming and made it difficult to get a quick overview of progress. This improvement helps teams maintain momentum by providing at-a-glance visibility into ongoing conversations and status updates.</p>
<p>We welcome your feedback on this enhancement and GLQL views in general on our <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/509791">feedback issue</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/glql/fields/#last-comment">View Documentation</a></p>
  </li>
  <li>
    <strong>Nuxt project template for GitLab Pages</strong>
    <p><p>GitLab provides templates for the most popular Static Site Generators (SSGs), and you can now create a GitLab Pages site using Nuxt, a powerful framework built on Vue.js. Nuxt is particularly valuable for teams looking to build modern, performant web applications with less configuration overhead.</p>
<p>This addition expands your options for quickly launching a Pages site with built-in CI/CD pipelines and a modern development experience, without spending time on initial setup and configuration.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/pages/getting_started/pages_new_project_template/">View Documentation</a></p>
  </li>
  <li>
    <strong>CycloneDX export for the project dependency list</strong>
    <p><p>Many organizations now require a software bill of materials (SBOM) to meet regulatory requirements and help further increase the security of the software supply chain. Previously, you could only export your dependency list as a JSON or CSV file from GitLab. Now, GitLab can generate your SBOM by exporting your dependency list in the widely-adopted CycloneDX format.</p>
<p>To download an SBOM directly as a CycloneDX file, in the dependency list, select <strong>Export</strong> &gt; <strong>Export as CycloneDX (JSON)</strong>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/dependency_list/#download-the-dependency-list">View Documentation</a></p>
  </li>
  <li>
    <strong>Email delivery for dependency list and vulnerability report export</strong>
    <p><p>Previously, when exporting the dependency list or the vulnerability report, you had to remain on the page until the export completed before you could download the report.</p>
<p>Now, you are notified by email with a download link when the dependency list or vulnerability report export is complete.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/dependency_list/#download-the-dependency-list">View Documentation</a></p>
  </li>
  <li>
    <strong>Export dependency list in CSV format</strong>
    <p>Previously, you could not export a dependency list from GitLab as CSV file. Now, when you download a dependency list, you can select the new CSV option to export the list in this format.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/dependency_list/#download-the-dependency-list">View Documentation</a></p>
  </li>
  <li>
    <strong>Tool filter replaced with Scanner and Report Type filters</strong>
    <p><p>Previously, the <strong>tool</strong> search filter in the vulnerability report allowed you to filter results based on a single group of tools that included the type of scanner (like ESLint or Gemnasium) and the type of report (like SAST or container scanning).</p>
<p>To help you find the appropriate tools more easily, we&rsquo;ve replaced the <strong>tool</strong> filter with the <strong>scanner</strong> filter and the <strong>report type</strong> filter. You can now filter your search based on each of these types of tools separately.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/vulnerability_report/#report-type-filter">View Documentation</a></p>
  </li>
  <li>
    <strong>Store and filter a `source` value for CI/CD jobs</strong>
    <p><p>GitLab 17.11 introduces a new feature that allows users to verify the origin of build artifacts by tracking the source attribute of CI/CD jobs. This enhancement is particularly valuable for security and compliance workflows. For example, organizations can implement software supply chain security measures or require verifiable evidence of security scans for compliance purposes.</p>
<p>Jobs in GitLab now store and display a <code>source</code> value that identifies whether they originated from:</p>
<ul>
<li>A scan execution policy</li>
<li>A pipeline execution policy</li>
<li>A regular pipeline</li>
</ul>
<p>You can access the <code>source</code> attribute on the <strong>Build</strong> &gt; <strong>Jobs</strong> page with a new filter option, using the Jobs API, or through the ID token <code>claims</code> for artifact verification.</p>
<p>With this new feature, you can now:</p>
<ul>
<li>Verify the authenticity of security scan results.</li>
<li>Filter jobs by source type to quickly identify policy-enforced scans.</li>
<li>Implement cryptographic verification of artifacts using the new ID token claims.</li>
<li>Ensure compliance requirements are met with proper audit trails.</li>
</ul>
<p>Security and compliance teams can leverage this feature to:</p>
<ul>
<li>
<p>View only policy-enforced jobs using the new filter on the Jobs page.</p>
</li>
<li>
<p>Automate tasks by accessing the <code>source</code> field in the Jobs API.</p>
</li>
<li>
<p>Implement artifact verification using the new ID token claims:</p>
<ul>
<li><code>job_source</code>: Identifies the job&rsquo;s origin.</li>
<li><code>job_policy_ref_uri</code>: Points to the policy file (for policy-defined jobs).</li>
<li><code>job_policy_ref_sha</code>: Contains the git commit SHA of the policy.</li>
</ul>
</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/api/jobs/#view-the-source-of-a-job">View Documentation</a></p>
  </li>
  <li>
    <strong>Enhanced sorting options for access tokens</strong>
    <p><p>There are now additional sorting options for access tokens in the UI and API. These sorting options complement GitLab&rsquo;s existing token management capabilities, giving you more control over your access token inventory, and helping you better maintain access token security. The new sorting options include:</p>
<ul>
<li>Sort by expiration date (ascending): View the tokens that expire soonest.</li>
<li>Sort by expiration date (descending): View the tokens with the longest remaining lifetime.</li>
<li>Sort by last used date (ascending): View the tokens that have not been used recently.</li>
<li>Sort by last used date (descending): View the tokens used most recently.</li>
</ul></p>
    <p><a href="https://docs.gitlab.com/user/profile/personal_access_tokens/">View Documentation</a></p>
  </li>
  <li>
    <strong>Token statistics for service account management</strong>
    <p><p>The token management interface for service accounts now includes a helpful statistics dashboard that provides at-a-glance information about your token inventory. This information can help you assess the state of your tokens and identify tokens that require attention.
The statistics dashboard includes four key metrics:</p>
<ul>
<li>Active tokens: View the total number of active tokens</li>
<li>Expiring tokens: Identify tokens that expire in the next two weeks</li>
<li>Revoked tokens: Track tokens that were manually revoked</li>
<li>Expired tokens: Monitor tokens that have previously expired
Thank you <a href="https://gitlab.com/chaitanyason9">Chaitanya Sonwane</a> for your contribution!</li>
</ul></p>
    <p><a href="https://docs.gitlab.com/ee/user/profile/service_accounts.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved pipeline graph visualization for failed jobs</strong>
    <p>You can now quickly identify failed jobs in the pipeline graph with new visual indicators. Failed job groups are highlighted in the pipeline graph, and failed jobs are grouped at the top of each stage. This improved visualization helps you troubleshoot pipeline failures without having to search through complex pipeline structures.</p>
    <p><a href="https://docs.gitlab.com/ci/pipelines/#view-pipelines">View Documentation</a></p>
  </li>
  <li>
    <strong>Force-cancel CI/CD jobs stuck in canceling state</strong>
    <p><p>CI/CD jobs can occasionally get stuck in the &lsquo;canceling&rsquo; state, blocking deployments or access to shared resources.</p>
<p>Users with the Maintainer <a href="https://docs.gitlab.com/user/permissions/">role</a> can now force-cancel these stuck jobs directly from the job logs page, ensuring problematic jobs can be properly terminated.</p>
</p>
    <p><a href="https://docs.gitlab.com/ci/jobs/#force-cancel-a-job">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved runner management in projects</strong>
    <p><p>You can now manage runners more efficiently in your projects. Runners are displayed in a single-column layout and organized in their own lists instead of the previous two-column view.</p>
<p>This improved organization makes it simpler to find and manage runners, with new features including a list of assigned projects, runner managers, and jobs that a runner has run. For information about additional runner management improvements planned for GitLab 18.0, see <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/33803">issue 33803</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ci/runners/runners_scope/#project-runners">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner 17.11</strong>
    <p><p>We’re also releasing GitLab Runner 17.11 today! GitLab Runner is the highly-scalable build agent that runs your CI/CD jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.</p>
<h4 id="whats-new">What&rsquo;s new:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/2483">Code sign GitLab Runner Windows executables</a></li>
</ul>
<h4 id="bug-fixes">Bug Fixes:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38681">Cleaning Git configuration in GitLab Runner 17.10.0 results in an error</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38382">The <code>FF_DISABLE_UMASK_FOR_KUBERNETES_EXECUTOR</code> flag doesn&rsquo;t disable the <code>umask</code> command</a></li>
</ul>
<p>The list of all changes is in the GitLab Runner <a href="https://gitlab.com/gitlab-org/gitlab-runner/blob/17-11-stable/CHANGELOG.md">CHANGELOG</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/runner">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab Patch Release: 17.10.4, 17.9.6, 17.8.7</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-10-4-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-10-4-released/</id><published>2025-04-09T00:00:00Z</published><updated>2025-04-09T00:00:00Z</updated><author><name>Costel Maxim</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On April 9, 2025, we released versions 17.10.4, 17.9.6, 17.8.7 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases, and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, you can visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-10-4-released/#denial-of-service-via-ci-pipelines">Denial of service via CI pipelines</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-10-4-released/#unintentionally-authorizing-sensitive-actions-on-users-behalf">Unintentionally authorizing sensitive actions on users behalf</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-10-4-released/#ip-restriction-bypass-through-graphql-subscription">IP Restriction Bypass through GraphQL Subscription</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-10-4-released/#unauthorized-users-can-list-the-number-of-confidential-issues">Unauthorized users can list the number of confidential issues</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-10-4-released/#debugging-information-disclosed">Debugging Information Disclosed</a></td>
          <td>Low</td>
      </tr>
  </tbody>
</table>
<h3 id="denial-of-service-via-ci-pipelines">Denial of service via CI pipelines</h3>
<p>A Denial of Service (DoS) issue has been discovered in GitLab CE/EE affecting all up to 17.8.7, 17.9 prior to 17.9.6 and 17.10 prior to 17.10.4. A denial of service could occur upon injecting oversized payloads into CI pipeline exports.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>, 6.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-1677">CVE-2025-1677</a>.</p>
<p>Thanks <a href="https://hackerone.com/pwnie">pwnie</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="unintentionally-authorizing-sensitive-actions-on-users-behalf">Unintentionally authorizing sensitive actions on users behalf</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions from 7.7 before 17.8.7, 17.9 before 17.9.6, and 17.10 before 17.10.4. Under certain conditions, an attacker could potentially trick users into unintentionally authorizing sensitive actions on their behalf.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:N</code></a>, 6.4).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-0362">CVE-2025-0362</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="ip-restriction-bypass-through-graphql-subscription">IP Restriction Bypass through GraphQL Subscription</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions from 13.12 before 17.8.7, 17.9 before 17.9.6, and 17.10 before 17.10.4. Under certain conditions users could bypass IP access restrictions and view sensitive information.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N</code></a>, 5.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-2408">CVE-2025-2408</a>.</p>
<p>Thanks <a href="https://hackerone.com/rogerace">rogerace</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="unauthorized-users-can-list-the-number-of-confidential-issues">Unauthorized users can list the number of confidential issues</h3>
<p>An issue has been discovered in GitLab EE affecting all versions from 17.1 before 17.8.7, 17.9 before  17.9.6, and 17.10 before 17.10.4, This allows attackers to perform targeted searches with sensitive keywords to get the count of issues containing the searched term.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.0/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:N/A:N"><code>CVSS:3.0/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:N/A:N</code></a>, 5.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-11129">CVE-2024-11129</a></p>
<p>Thanks <a href="https://hackerone.com/a92847865">a92847865</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="debugging-information-disclosed">Debugging Information Disclosed</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions from 17.9 before 17.9.6, and 17.10 before 17.10.4. The runtime profiling data of a specific service was accessible to unauthenticated users.
This is a low severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N</code></a>, 3.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-2469">CVE-2025-2469</a>.</p>
<p>Thanks <a href="https://hackerone.com/ap-wtioit">ap-wtioit</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="17104">17.10.4</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/186586">Cherry-picks multiple fixes into 17.10</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/186124">Fix invalid pipelines for scan execution policies</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/186658">Move group.cluster_agents field to CE</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/185812">Fixes merge requests updating URL with reports project</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/186987">Update approval rules name validation to include approval policy</a></li>
<li><a href="https://gitlab.com/gitlab-org/security/gitlab/-/merge_requests/4912">Workhorse golang-jwt/jwt upgrade to 5.2.2</a></li>
<li><a href="https://gitlab.com/gitlab-org/security/gitlab/-/merge_requests/4893">Golang Oauth2 upgrade to 0.27.0</a></li>
</ul>
<h3 id="1796">17.9.6</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/security/gitlab/-/merge_requests/4913">Workhorse golang-jwt/jwt upgrade to 5.2.2</a></li>
</ul>
<h3 id="1787">17.8.7</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2305">CI: Use gcr mirror in DinD (17.8 Backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/185302">No-op ci_runner_machines_687967fa8a batched migrations - 17.8 backport</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/186588">Cherry-picks bug fixes into 17.8</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8267">Backport fix in libarchive for CI</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8263">CI: Use gcr mirror for DinD (17.8 Backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8278">[17.8 Backport] Check packages does not have .dind job in scope</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8283">CI: Optionally enable dependency proxy (Backport 17.8)</a></li>
<li><a href="https://gitlab.com/gitlab-org/security/gitlab/-/merge_requests/4914">Workhorse golang-jwt/jwt upgrade to 5.2.2</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">Update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 17.10.3</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-10-3-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-10-3-released/</id><published>2025-04-02T00:00:00Z</published><updated>2025-04-02T00:00:00Z</updated><author><name>Reuben Pereira</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On April 2, 2025, we released versions 17.10.3 for GitLab Community Edition and Enterprise Edition.</p>
<p>These versions resolve a number of regressions and bugs. This patch release does not include any security fixes.</p>
<h2 id="gitlab-community-edition-and-enterprise-edition">GitLab Community Edition and Enterprise Edition</h2>
<h3 id="17103">17.10.3</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2303">CI: Use gcr mirror in DinD (17.10 Backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/185304">No-op ci_runner_machines_687967fa8a batched migrations - 17.10 backport</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/186279">Ensure runner taggings are copied from taggings</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/186166">Fix free push limit on non-saas</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8265">Backport fix in libarchive for CI</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8261">CI: Use gcr mirror for DinD (17.10 Backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8276">[17.10 Backport] Check packages does not have .dind job in scope</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>This version includes new post deployment migrations, and for multi-node deployments, <a href="https://docs.gitlab.com/ee/update/#upgrading-without-downtime">should not require any
downtime</a>.</p>
<p>Please be aware that by default the Omnibus packages will stop, run migrations,
and start again, no matter how “big” or “small” the upgrade is. This behavior
can be changed by adding a <a href="https://docs.gitlab.com/ee/update/zero_downtime.html"><code>/etc/gitlab/skip-auto-reconfigure</code></a> file,
which is only used for <a href="https://docs.gitlab.com/omnibus/update/README.html">updates</a>.</p>
<h2 id="updating">Updating</h2>
<p>To update, check out our <a href="https://about.gitlab.com/update/">update page</a>.</p>
<p>Note: GitLab releases have skipped 17.10.2. There is no patch with that version number.</p>
<h2 id="gitlab-subscriptions">GitLab subscriptions</h2>
<p>Access to GitLab Premium and Ultimate features is granted by a paid <a href="https://about.gitlab.com/pricing/">subscription</a>.</p>
<p>Alternatively, <a href="https://gitlab.com/users/sign_in">sign up for GitLab.com</a>
to use GitLab&rsquo;s own infrastructure.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 17.9.5</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-9-5-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-9-5-released/</id><published>2025-04-02T00:00:00Z</published><updated>2025-04-02T00:00:00Z</updated><author><name>Mayra Cabrera</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On April 2, 2025, we released versions 17.9.5 for GitLab Community Edition and Enterprise Edition.</p>
<p>These versions resolve a number of regressions and bugs. This patch release does not include any security fixes.</p>
<h2 id="gitlab-community-edition-and-enterprise-edition">GitLab Community Edition and Enterprise Edition</h2>
<h3 id="1795">17.9.5</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2304">CI: Use gcr mirror in DinD (17.9 Backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/185303">No-op ci_runner_machines_687967fa8a batched migrations - 17.9 backport</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/186278">Ensure runner taggings are copied from taggings</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8266">Backport fix in libarchive for CI</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8262">CI: Use gcr mirror for DinD (17.9 Backport)</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>This version includes new post deployment migrations, and for multi-node deployments, <a href="https://docs.gitlab.com/ee/update/#upgrading-without-downtime">should not require any downtime</a>.</p>
<p>Please be aware that by default the Omnibus packages will stop, run migrations,
and start again, no matter how “big” or “small” the upgrade is. This behavior
can be changed by adding a <a href="https://docs.gitlab.com/ee/update/zero_downtime.html"><code>/etc/gitlab/skip-auto-reconfigure</code></a> file,
which is only used for <a href="https://docs.gitlab.com/omnibus/update/README.html">updates</a>.</p>
<h2 id="updating">Updating</h2>
<p>To update, check out our <a href="https://about.gitlab.com/update/">update page</a>.</p>
<p>Note: GitLab releases have skipped 17.9.4. There is no patch with that version number.</p>
<h2 id="gitlab-subscriptions">GitLab subscriptions</h2>
<p>Access to GitLab Premium and Ultimate features is granted by a paid <a href="https://about.gitlab.com/pricing/">subscription</a>.</p>
<p>Alternatively, <a href="https://gitlab.com/users/sign_in">sign up for GitLab.com</a>
to use GitLab&rsquo;s own infrastructure.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 17.10.1, 17.9.3, 17.8.6</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-10-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-10-1-released/</id><published>2025-03-26T00:00:00Z</published><updated>2025-03-26T00:00:00Z</updated><author><name>Félix Veillette-Potvin</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On March 26, 2025, we released versions 17.10.1, 17.9.3, 17.8.6 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases, and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, you can visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-10-1-released/#cross-site-scripting-xss-through-merge-request-error-messages">Cross-site Scripting (XSS) through merge-request error messages</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-10-1-released/#cross-site-scripting-xss-through-improper-rendering-of-certain-file-types">Cross-site Scripting (XSS) through improper rendering of certain file types</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-10-1-released/#admin-privileges-persists-after-role-is-revoked">Admin Privileges Persists After Role is Revoked</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-10-1-released/#external-user-can-access-internal-projects">External user can access internal projects</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-10-1-released/#prompt-injection-in-amazon-q-integration-may-allow-unauthorized-actions">Prompt injection in Amazon Q integration may allow unauthorized actions</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-10-1-released/#uncontrolled-resource-consumption-via-a-maliciously-crafted-terraform-file-in-merge-request">Uncontrolled Resource Consumption via a maliciously crafted terraform file in merge request</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-10-1-released/#maintainer-can-inject-shell-code-in-harbor-project-name-configuration-when-using-helper-scripts">Maintainer can inject shell code in Harbor project name configuration when using helper scripts</a></td>
          <td>Low</td>
      </tr>
  </tbody>
</table>
<h3 id="cross-site-scripting-xss-through-merge-request-error-messages">Cross-site Scripting (XSS) through merge-request error messages</h3>
<p>An issue has been discovered in Gitlab EE/CE affecting all versions from 13.5.0 before 17.8.6, 17.9 before 17.9.3, and 17.10 before 17.10.1. Certain error messages could allow Cross-Site Scripting attacks (XSS).
This is a high severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N</code></a>, 8.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-2255">CVE-2025-2255</a>.</p>
<p>Thanks <a href="https://hackerone.com/yvvdwf">yvvdwf</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cross-site-scripting-xss-through-improper-rendering-of-certain-file-types">Cross-site Scripting (XSS) through improper rendering of certain file types</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions from 17.7 before 17.8.6, 17.9 before 17.9.3, and 17.10 before 17.10.1. Improper rendering of certain file types leads to cross-site scripting.
This is a high severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N</code></a>, 8.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-0811">CVE-2025-0811</a>.</p>
<p>Thanks <a href="https://hackerone.com/yvvdwf">yvvdwf</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="admin-privileges-persists-after-role-is-revoked">Admin Privileges Persists After Role is Revoked</h3>
<p>An improper access control vulnerability in GitLab CE/EE affecting all versions from 17.4 prior to 17.8.6, 17.9 prior to 17.9.3, and 17.10 prior to 17.10.1 allows a user who was an instance admin before but has since been downgraded to a regular user to continue to maintain elevated privileges to groups and projects.
This is a high severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/#vector=CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H</code></a>, 7.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-2242">CVE-2025-2242</a>.</p>
<h3 id="external-user-can-access-internal-projects">External user can access internal projects</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions from 16.0 before 17.8.6, 17.9 before 17.9.3, and 17.10 before 17.10.1, allowing internal users to gain unauthorized access to internal projects.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:U/C:H/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:U/C:H/I:L/A:N</code></a>, 5.2).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-12619">CVE-2024-12619</a>.</p>
<p>Thanks <a href="https://hackerone.com/aituglo">aituglo</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="prompt-injection-in-amazon-q-integration-may-allow-unauthorized-actions">Prompt injection in Amazon Q integration may allow unauthorized actions</h3>
<p>An issue has been discovered in the GitLab Duo with Amazon Q affecting all versions from 17.8 before 17.8.6, 17.9 before 17.9.3, and 17.10 before 17.10.1. A specifically crafted issue could manipulate AI-assisted development features to potentially expose sensitive project data to unauthorized users.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:N</code></a>, 4.4).
We have requested a CVE ID and will update this blog post when it is assigned.</p>
<p>This vulnerability has been discovered internally by GitLab team member Félix Veillette-Potvin.</p>
<h3 id="uncontrolled-resource-consumption-via-a-maliciously-crafted-terraform-file-in-merge-request">Uncontrolled Resource Consumption via a maliciously crafted terraform file in merge request</h3>
<p>An issue has been discovered in GitLab EE/CE affecting all versions from 12.10 before 17.8.6, 17.9 before 17.9.3, and 17.10 before 17.10.1. A maliciously crafted file can cause uncontrolled CPU consumption when viewing the associated merge request.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L</code></a>, 4.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-10307">CVE-2024-10307</a>.</p>
<p>Thanks <a href="https://hackerone.com/l33thaxor">l33thaxor</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="maintainer-can-inject-shell-code-in-harbor-project-name-configuration-when-using-helper-scripts">Maintainer can inject shell code in Harbor project name configuration when using helper scripts</h3>
<p>An issue was discovered in GitLab EE affecting all versions starting from 14.9 before 17.8.6, all versions starting from 17.9 before 17.9.3, all versions starting from 17.10 before 17.10.1. An input validation issue in the Harbor registry integration could have allowed a maintainer to add malicious code to the CLI commands shown in the UI.
This is a low severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:L/AC:H/PR:H/UI:R/S:C/C:L/I:L/A:N"><code>CVSS:3.1/AV:L/AC:H/PR:H/UI:R/S:C/C:L/I:L/A:N</code></a>, 3.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-9773">CVE-2024-9773</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="17101">17.10.1</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2275">Merge branch &lsquo;fixup-non-based-ubi&rsquo; into &lsquo;17-10-stable&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/185392">Changes for storing value of bypass_two_factor to session</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8252">Correct incorrect PG version in CHANGELOG</a></li>
</ul>
<h3 id="1793">17.9.3</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2264">Bump go to v1.23.6</a></li>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2276">Merge branch &lsquo;fixup-non-based-ubi&rsquo; into &lsquo;17-9-stable&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/7692">17.9 Backport: jliu/gitaly-dns-tls</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/7708">17.9 backport: Update build-proto-gem</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/184083">[Backport 17.9] Fix frozen array error with custom analyzers</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/184190">Update dependency gitlab-mail_room to v0.0.27</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/184158">[backport] Fixed regex and syntax options button under some conditions</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/183491">[17.9] Backport: Zoekt: Index pending delete projects</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/184162">[Backport 17.9] Update truncato gem</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/184345">Reorder runners backfill migrations - 17.9 backport</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/185157">[Backport 17.9] Replace #test-platform in favour of #s_developer_experience</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/184639">Update Gitaly client dependency to include DNS lookup change (backport to 17.9)</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8232">Backport &lsquo;ci-internal-release-docker-branch-dev&rsquo; into &lsquo;17-9-stable&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8243">Backport 17.9: Update container-registry to v4.15.2-gitlab</a></li>
</ul>
<h3 id="1786">17.8.6</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2278">UBI/FIPS: Fixup container_version when not using gitlab-base</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/7693">17.8 Backport: jliu/gitaly-dns-tls</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/184916">Fix a spec typo in merge_requests_controller_spec</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/184643">Update Gitaly client dependency to include DNS lookup change (backport 17.8)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/185156">[Backport 17.8] Replace #test-platform in favour of #s_developer_experience</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/184302">Fix SPP worker bug in 17.8</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/184347">Reorder runners backfill migrations - 17.8 backport</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8233">Backport &lsquo;ci-internal-release-docker-branch-dev&rsquo; into &lsquo;17-8-stable&rsquo;</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">Update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<h2 id="were-combining-patch-and-security-releases">We’re combining patch and security releases</h2>
<p>This improvement in our release process matches the industry standard and will help GitLab users get information about security and
bug fixes sooner, <a href="https://about.gitlab.com/blog/were-combining-patch-and-security-releases/">read the blog post here</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab 17.10 released</title><link href="https://docs.gitlab.com/releases/17/17-10-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/17/17-10-released/</id><published>2025-03-20T00:00:00Z</published><updated>2025-03-20T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On March 20, 2025, GitLab 17.10 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong>Alexey Butkeev</strong>
</p>
<p>Everyone can <a href="https://gitlab.com/gitlab-org/developer-relations/contributor-success/team-task/-/issues/490">nominate GitLab&rsquo;s community contributors</a>!
Show your support for our active candidates or add a new nomination! 🙌</p>
<p><a href="https://gitlab.com/abutkeev">Alexey Butkeev</a> is a valued community contributor whose contributions enhance our global reach and user experience. His impactful localization and translation contributions exemplify our Diversity, Inclusion, and Belonging value.</p>
<p>&ldquo;I&rsquo;m honored to be selected as the 17.10 MVP and to contribute to making GitLab more accessible and inclusive,&rdquo; says Alexey.
&ldquo;Localization is a team effort, and I&rsquo;m grateful to be part of such a supportive community.&rdquo;</p>
<p>In addition to his code contributions, Alexey took the initiative to find, document, and fix translation errors via GitLab and Crowdin. His thorough research and problem solving make him our 17.10 MVP.</p>
<p>Alexey was nominated by <a href="https://gitlab.com/opysaryuk">Oleksandr Pysaryuk</a>, Senior Manager, Globalization Technology at GitLab, and supported by <a href="https://gitlab.com/djsulliv">Daniel Sullivan</a>, Director of Globalization &amp; Localization at GitLab.
&ldquo;We appreciate your work and support here at GitLab so much,&rdquo; says Daniel.
&ldquo;Thank you for your part in helping us become a more globally supported company!&rdquo;</p>
<p>Thank you Alexey for making GitLab more inclusive and transparent!</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>Duo Code Review available in beta</strong>
    <p><p>Code review is an essential activity of software development. It ensures that contributions to a project maintain and improve code quality and security, and is an avenue of mentorship and feedback for engineers. It&rsquo;s also one of the most time-consuming activities in the software development process.</p>
<p>Duo Code Review is the next evolution of the code review process.</p>
<p>Duo Code Review can accelerate your development process. When it performs an initial review on your merge request, it can help identify potential bugs and suggest further improvements - some of which you can apply directly from your browser. Use it to iterate on and improve your changes before you add another human to the loop.</p>
<p><strong>Try it out:</strong></p>
<ul>
<li>To start a code review immediately, add <code>@GitLabDuo</code> as a reviewer to your merge request.</li>
<li>To refine feedback on your changes, mention <code>@GitLabDuo</code> in a comment.</li>
</ul>
<p>You can track future progress for Duo Code Review in epic <a href="https://gitlab.com/groups/gitlab-org/-/epics/13008">13008</a> and related child epics. Feedback can be provided in issue <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/517386">517386</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/merge_requests/duo_in_merge_requests/#have-gitlab-duo-review-your-code">View Documentation</a></p>
  </li>
  <li>
    <strong>Root Cause Analysis available on Gitlab Duo Self-Hosted</strong>
    <p><p>You can now use <a href="https://about.gitlab.com/blog/developing-gitlab-duo-blending-ai-and-root-cause-analysis-to-fix-ci-cd/">GitLab Duo Root Cause Analysis</a> on GitLab Duo Self-Hosted. This feature is in beta for GitLab Self-Managed instances using GitLab Duo Self-Hosted, with support for Mistral, Anthropic, and OpenAI GPT model families.</p>
<p>With Root Cause Analysis on GitLab Duo Self-Hosted, you can troubleshoot failed jobs in CI/CD pipelines faster without compromising data sovereignty. Root Cause Analysis analyzes the failed job log, quickly determines the root cause of the job failure, and suggests a fix for you.</p>
<p>Note: This feature currently has limited functionality, and full functionality is planned for 17.11.
Additional information is available in
<a href="https://docs.gitlab.com/administration/gitlab_duo_self_hosted/troubleshooting/#feature-not-accessible-or-feature-button-not-visible">troubleshooting documentation</a>
and in issue <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/527128">527128</a>.</p>
<p>Please leave feedback on Root Cause Analysis for GitLab Duo Self-Hosted in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/523912">issue 523912</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/gitlab_duo_self_hosted/#supported-gitlab-duo-features">View Documentation</a></p>
  </li>
  <li>
    <strong>Expanded AWS Regions available for GitLab Dedicated failover instances</strong>
    <p><p>GitLab Dedicated customers can now select from an expanded list of AWS regions when choosing where to host their failover instance for <a href="https://docs.gitlab.com/subscriptions/gitlab_dedicated/data_residency_and_high_availability/#disaster-recovery">disaster recovery</a>.</p>
<p>Expanding failover support to additional regions enables GitLab Dedicated customers to fully use the disaster recovery functionality of GitLab Dedicated regardless of which AWS region they need to use to satisfy their data residency needs.</p>
<p>These newly available regions are only available for hosting failover instances as they do not fully support certain AWS features that GitLab Dedicated relies on.</p>
</p>
    <p><a href="https://docs.gitlab.com/subscriptions/gitlab_dedicated/data_residency_and_high_availability/">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Query Language views Beta</strong>
    <p><p>Tracking and understanding work in progress across GitLab previously required navigating multiple locations, reducing team efficiency and consuming valuable time.</p>
<p>This release introduces GitLab Query Language (GLQL) views Beta so you can create dynamic, real-time work tracking directly in your existing workflows.</p>
<p>GLQL views embed live data queries in Markdown code blocks throughout Wiki pages, epic descriptions, issue comments, and merge requests.</p>
<p>Previously available as an experiment, GLQL views now enter beta with support for sophisticated filtering using logical expressions and operators across key fields, including assignee, author, label, and milestone. You can customize your view&rsquo;s presentation as tables or lists, control which fields appear, and set result limits to create focused, actionable insights for your team.</p>
<p>Teams can now maintain context while accessing the information they need, creating shared understanding, and improving collaboration — all without leaving their current workflow.</p>
<p><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/509791">We welcome your feedback</a> on GLQL views as we continue to enhance this feature.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/glql/#glql-views">View Documentation</a></p>
  </li>
  <li>
    <strong>Enhanced markdown experience</strong>
    <p><p>GitLab Flavored Markdown has been enhanced with several powerful improvements:</p>
<ul>
<li>
<p><strong>Improved math and image handling</strong>:</p>
<ul>
<li>Disable <a href="https://docs.gitlab.com/user/markdown/#math-equations">math rendering</a> limits in your group or self-hosted instance to handle more complex mathematical expressions.</li>
<li>Control <a href="https://docs.gitlab.com/user/markdown/#change-image-or-video-dimensions">image dimensions</a> precisely using pixel values or percentages to better manage content layout.</li>
</ul>
</li>
<li>
<p><strong>Enhanced editor experience</strong>:</p>
<ul>
<li>Continue lists automatically when pressing Enter/Return.</li>
<li>Shift text left or right using keyboard shortcuts.</li>
<li>Create clear term-definition pairs using description list syntax.</li>
<li>Adjust video widths flexibly.</li>
</ul>
</li>
<li>
<p><strong>Better content organization</strong>:</p>
<ul>
<li>Navigate content more easily with auto-expanding <a href="https://docs.gitlab.com/user/markdown/#show-item-summary">summary quick views</a> (add <code>+s</code> to URLs).</li>
<li>See referenced <a href="https://docs.gitlab.com/user/markdown/#show-item-title">issue titles</a> render automatically (add <code>+</code> to URLs).</li>
<li>Organize content modularly using <a href="https://docs.gitlab.com/user/markdown/#includes"><code>include</code> syntax</a>.</li>
<li>Create visually distinct callouts and warnings using <a href="https://docs.gitlab.com/user/markdown/#alerts">alert boxes</a>.</li>
</ul>
</li>
</ul>
<p>These improvements make GitLab Flavored Markdown more powerful for teams creating and maintaining documentation while offering greater flexibility in how content is presented and organized.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/markdown/">View Documentation</a></p>
  </li>
  <li>
    <strong>New visualization of DevOps performance with DORA metrics across projects</strong>
    <p><p>We are excited to introduce the <strong>Projects by DORA metric</strong> panel, a new addition to the <a href="https://www.youtube.com/watch?v=EA9Sbks27g4">Value Streams Dashboard</a>. This table lists all projects in the top-level group, with breakdown into the <a href="https://about.gitlab.com/solutions/value-stream-management/dora/#overview">four DORA metrics</a>. Managers can use this table to identify high, medium, and low-performing projects. This information can also help make data-driven decisions, allocate resources effectively, and focus on initiatives that enhance software delivery speed, stability, and reliability.</p>
<p>The <a href="https://docs.gitlab.com/user/analytics/dora_metrics/">DORA metrics</a> are available out-of-the-box in GitLab, and now together with the <a href="https://about.gitlab.com/blog/inside-dora-performers-score-in-gitlab-value-streams-dashboard/"><strong>DORA Performers score</strong> panel</a> executives have a complete view into their organization&rsquo;s DevOps health top to bottom.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/analytics/value_streams_dashboard/#projects-by-dora-metric">View Documentation</a></p>
  </li>
  <li>
    <strong>New issues look now in beta</strong>
    <p><p>Issues now share a common framework with epics and tasks, featuring real-time updates and workflow improvements:</p>
<ul>
<li><strong>Drawer view:</strong> Open items from lists or boards in a drawer for quick viewing without leaving your current context. A button at the top lets you expand to full page view.</li>
<li><strong>Change type:</strong> Convert types between epics, issues, and tasks using the &ldquo;Change type&rdquo; action (replaces &ldquo;Promote to epic&rdquo;)</li>
<li><strong>Start date:</strong> Issues now support start dates, aligning their functionality with epics and tasks.</li>
<li><strong>Ancestry:</strong> The complete hierarchy is above the title and the Parent field in the sidebar. To manage relationships, use the new <a href="https://docs.gitlab.com/user/project/quick_actions/">quick action</a> commands <code>/set_parent</code>, <code>/remove_parent</code>, <code>/add_child</code>, and <code>/remove_child</code>.</li>
<li><strong>Controls:</strong> All actions are now accessible from the top menu (vertical ellipsis), which remains visible in the sticky header when scrolling.</li>
<li><strong>Development:</strong> All development items (merge requests, branches, and feature flags) related to an issue or task are now consolidated in a single, convenient list.</li>
<li><strong>Layout:</strong> UI improvements create a more seamless experience between issues, epics, tasks, and merge requests, helping you navigate your workflow more efficiently.</li>
<li><strong>Linked items:</strong> Create relationships between tasks, issues, and epics with improved linking options. Drag and drop to change link types and toggle the visibility of labels and closed items.</li>
</ul></p>
    <p><a href="https://docs.gitlab.com/user/project/issues/">View Documentation</a></p>
  </li>
  <li>
    <strong>Description templates for epics, issues, tasks, objectives and key results</strong>
    <p><p>You can now streamline your workflow and maintain consistency across your projects with description templates for work items (epics, tasks, objectives, and key results).</p>
<p>This powerful addition allows you to create standardized templates, saving you time and ensuring all crucial information is included every time you create a new work item.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/description_templates/">View Documentation</a></p>
  </li>
  <li>
    <strong>Change the severity of a vulnerability</strong>
    <p><p>When triaging vulnerabilities, you need the flexibility to adjust severity levels based on your organization&rsquo;s unique security context and risk tolerance. Until now, you had to rely on the default severity levels assigned by security scanners, which might not accurately reflect the risk level for your specific environment.</p>
<p>Now you can manually change the severity of specific vulnerability occurrences to better align with your organization&rsquo;s security needs. This allows you to:</p>
<ul>
<li>Adjust the severity level of any vulnerability to <strong>Critical</strong>, <strong>High</strong>, <strong>Medium</strong>, <strong>Low</strong>, <strong>Info</strong>, or <strong>Unknown</strong>.</li>
<li>Change multiple vulnerabilities&rsquo; severity at once from the vulnerability report.</li>
<li>Easily identify which vulnerabilities have custom severity levels through visual indicators.</li>
</ul>
<p>All severity changes are tracked in the vulnerability history and audit events and can only be overridden by your team members who have at least the Maintainer role for the project, or a custom role with the <code>admin_vulnerability</code> permission. This feature gives security teams more flexibility and control over vulnerability prioritization.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/vulnerability_report/#change-or-override-vulnerability-severity">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Agentic Core</h4>
<ul>
  <li>
    <strong>GitLab Duo Chat is now resizable</strong>
    <p>In the GitLab UI, you can now resize the Duo Chat drawer. This makes it easier to view code outputs, or keep Chat open whilst working with GitLab in the background.</p>
    <p><a href="https://docs.gitlab.com/ee/user/gitlab_duo_chat/#use-gitlab-duo-chat-in-the-gitlab-ui">View Documentation</a></p>
  </li>
  <li>
    <strong>Manage multiple conversations in GitLab Duo Chat</strong>
    <p><p>Maintaining context across different topics in GitLab Duo Chat is now easier with multiple conversations. You can create new conversations, browse your conversation history, and switch between conversations.</p>
<p>Previously, starting a new conversation meant losing the context of your existing chat. Now, you can manage multiple conversations on different topics. Each conversation maintains its own context, so for example, you can ask follow-up questions about code explanations in one conversation, whilst preparing a work-plan in another conversation.</p>
<p>When you need to revisit previous discussions, select the new chat history icon to see all your recent conversations. Conversations are automatically organized by most recent activity, making it easy to pick up where you left off.</p>
<p>For your privacy, conversations with no activity for 30 days are automatically deleted, and you can manually delete any conversation at any time.</p>
<p>This feature is currently available only on GitLab.com in the web UI. It is not available in GitLab Self-Managed instances, nor in IDE integrations.</p>
<p>Share your experience with us in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/526013">issue 526013</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/gitlab_duo_chat/#have-multiple-conversations-with-chat">View Documentation</a></p>
  </li>
  <li>
    <strong>Select models for AI-powered features on GitLab Duo Self-Hosted</strong>
    <p><p>On GitLab Duo Self-Hosted, you can now select individual supported models for each GitLab Duo Chat sub-feature on your self-managed instance. Model selection and configuration for Chat sub-features is now in beta.</p>
<p>To leave feedback, go to <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/524175">issue 524175</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/gitlab_duo_self_hosted/configure_duo_features/#configure-the-feature-to-use-a-self-hosted-model">View Documentation</a></p>
  </li>
  <li>
    <strong>AI Impact Dashboard available on GitLab Duo Self-Hosted Code Suggestions</strong>
    <p><p>You can now use the AI Impact Dashboard with GitLab Duo Self-Hosted Code Suggestions on your self-managed instance to help you understand the impact of GitLab Duo on your productivity. The AI Impact Dashboard is in beta with GitLab Duo Self-Hosted, and you can use this feature with your self-managed instance and Visual Studio Code, Microsoft Visual Studio, JetBrains, and Neovim IDEs.</p>
<p>Use the AI Impact Dashboard to compare AI usage trends with metrics like lead time, cycle time, DORA, and vulnerabilities. This allows you to measure how much time is saved in your end-to-end workstream using GitLab Duo Self-Hosted, whilst staying focused on business outcomes rather than developer activity.</p>
<p>Please leave feedback on the AI Impact Dashboard in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/456105">issue 456105</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/analytics/ai_impact_analytics/">View Documentation</a></p>
  </li>
  <li>
    <strong>Meta Llama 3 models available for GitLab Duo Self-Hosted Code Suggestions and Chat</strong>
    <p><p>You can now use select Meta Llama 3 models with GitLab Duo Self-Hosted. These models are in beta for GitLab Duo Self-Hosted to support GitLab Duo Chat and Code Suggestions.</p>
<p>Please leave feedback on using these models with GitLab Duo Self-Hosted in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/523917">issue 523912</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/gitlab_duo_self_hosted/supported_models_and_hardware_requirements/#supported-models">View Documentation</a></p>
  </li>
</ul>
<h4>Scale and Deployments</h4>
<ul>
  <li>
    <strong>Timestamps of when placeholder users were created</strong>
    <p>Previously, when you imported groups or projects, you could not see when <a href="https://docs.gitlab.com/user/project/import/#placeholder-users">placeholder users</a> were created.
With this release, we&rsquo;ve added timestamps so you can track the progress of your migration and troubleshoot any issues as they occur.</p>
    <p><a href="https://docs.gitlab.com/user/project/import/#placeholder-user-attributes">View Documentation</a></p>
  </li>
  <li>
    <strong>Bulk edit to-do items</strong>
    <p>You can now efficiently manage your To-Do List with our improved bulk editing feature. Select multiple to-do items and mark them as done or snooze them in one go, giving you more control over your tasks and helping you stay organized with less effort.</p>
    <p><a href="https://docs.gitlab.com/user/todos/#bulk-edit-to-do-items">View Documentation</a></p>
  </li>
  <li>
    <strong>Snooze to-do items</strong>
    <p>You can now snooze notifications in your To-Do List, allowing you to temporarily hide items and focus on what&rsquo;s most important right now. Whether you need an hour to concentrate or want to revisit a task tomorrow, you&rsquo;ll have fine-grained control over when notifications reappear, helping you manage your workflow more effectively.</p>
    <p><a href="https://docs.gitlab.com/user/todos/#snooze-to-do-items">View Documentation</a></p>
  </li>
  <li>
    <strong>Request reassignment by using a CSV file</strong>
    <p><p>With this release, user contribution mapping now supports bulk reassignment by using a CSV file.
If you have a large user base with many placeholder users, group members with the Owner role can:</p>
<ol>
<li>Download a prefilled CSV template.</li>
<li>Add GitLab usernames or public emails from the destination instance.</li>
<li>Upload the completed file to reassign all contributions at once.</li>
</ol>
<p>This method eliminates tedious manual reassignment through the UI.
To further streamline large-scale migrations, API support for CSV-based reassignment is now also available.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/import/#request-reassignment-by-using-a-csv-file">View Documentation</a></p>
  </li>
  <li>
    <strong>New navigation experience for projects in Your Work</strong>
    <p><p>We&rsquo;re excited to announce significant improvements to the project overview in <strong>Your Work</strong>, designed to streamline how you discover and access your projects. This update introduces a more intuitive tab-based navigation system that better reflects how users interact with their projects.</p>
<ul>
<li>The new <strong>Contributed</strong> tab (previously <strong>Yours</strong>) now displays all projects you&rsquo;ve contributed to, including your personal projects, making it easier to track your development activity.</li>
<li>Find your individual projects faster with the <strong>Personal</strong> tab, now prominently featured in the main navigation.</li>
<li>Access team projects through the <strong>Member</strong> tab (formerly <strong>All</strong>), showing all projects where you have membership.</li>
<li>The <strong>Inactive</strong> tab (previously <strong>Pending deletion</strong>) now provides a comprehensive view of both archived projects and those pending deletion.</li>
</ul>
<p>Further, if you have the appropriate permissions, you can now edit or delete a project directly from the <strong>Your Work</strong> projects overview.
These changes reflect our commitment to creating a more efficient and user-friendly GitLab experience. The new layout helps you focus on the projects that matter most to your work, reducing the time spent navigating between different project categories.</p>
<p>We value your feedback on this update! Join the discussion in <a href="https://gitlab.com/groups/gitlab-org/-/epics/16662">epic 16662</a> to share your experience with the new navigation system.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/working_with_projects/">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved project creation permission settings</strong>
    <p><p>We&rsquo;ve improved the project creation permission settings to make them more clear, intuitive, and aligned with our security principles. The improved settings include:</p>
<ul>
<li>Renamed the &ldquo;Default project creation protection&rdquo; dropdown to &ldquo;Minimum role required for project creation&rdquo; to clearly reflect the setting&rsquo;s purpose.</li>
<li>Renamed the &ldquo;Developers + Maintainers&rdquo; dropdown option to &ldquo;Developers&rdquo; for consistency across the platform.</li>
<li>Reordered the dropdown options from most restrictive to least restrictive access level.</li>
</ul>
<p>These changes make it easier to understand and configure which roles can create projects within your groups, helping administrators enforce appropriate access controls more confidently.</p>
<p>Thank you <a href="https://gitlab.com/yasuk">@yasuk</a> for this community contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/settings/visibility_and_access_controls/#define-which-roles-can-create-projects">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>Dependency Scanning support for pub (Dart) package manager</strong>
    <p><p>Dependency Scanning has added support for pub, the official package manager for Dart. Support for this has been added to our Dependency Scanning <a href="https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Jobs/Dependency-Scanning.latest.gitlab-ci.yml">latest template</a> and <a href="https://gitlab.com/explore/catalog/components/dependency-scanning">CI/CD component</a>.</p>
<p>This addition was a community contribution from one of our users, Alexandre Laroche. The GitLab Composition Analysis team appreciates this contribution to improve our product, many thanks, Alexandre. If you are interested in learning more about contributing to GitLab please check out our <a href="https://about.gitlab.com/community/contribute/">Community Contribution program</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/dependency_scanning/#supported-languages-and-package-managers">View Documentation</a></p>
  </li>
  <li>
    <strong>Select a compliance framework as default from the dropdown list on the Frameworks page</strong>
    <p><p>Users can set a default compliance framework in the GitLab compliance centre, which is applied to all new and
imported projects that are created in that group. A default compliance framework has a <strong>default</strong> label to help
users identify it.</p>
<p>To make it easier to set a compliance framework as default, we are introducing the ability for users
to set a framework as default by using the framework dropdown list on the list frameworks page in the compliance
center of a top-level group. This feature isn&rsquo;t available in the compliance center of subgroups nor projects.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/compliance/compliance_center/compliance_frameworks_report/#set-and-remove-a-compliance-framework-as-default">View Documentation</a></p>
  </li>
  <li>
    <strong>Ignore specific revisions in Git blame</strong>
    <p><p>When browsing the history of a repository, there might be commits that aren&rsquo;t relevant to otherwise meaningful changes in the project. This can happen during:</p>
<ul>
<li>Refactors where you change from one library to another without changing functionality.</li>
<li>Implementation of code formatters or linters that require standardizing the entire codebase.</li>
</ul>
<p>When you look through the history of a project with <code>blame</code>, these kinds of commits make it difficult to understand the changes that occurred. Git supports identifying these commits with a <code>.git-blame-ignore-revs</code> file in your project. GitLab now allows you to toggle the blame view to show or hide these specific revisions in the &ldquo;Blame preferences&rdquo; dropdown list, making it easier to understand the history of your project.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/repository/files/git_blame/#ignore-specific-revisions">View Documentation</a></p>
  </li>
  <li>
    <strong>Path exclusions for CODEOWNERS</strong>
    <p><p>When teams configure a <code>CODEOWNERS</code> file, it&rsquo;s common to include broad matching patterns for paths
and file types. These broad configurations can be problematic if your documentation, automated
build files, or other patterns don&rsquo;t require a specified Code Owner.</p>
<p>You can now configure the <code>CODEOWNERS</code> file with path exclusions to ignore certain paths. This is helpful
when you want to exclude specific files, or paths from requiring a Code Owner approval.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/codeowners/reference/#exclusion-patterns">View Documentation</a></p>
  </li>
  <li>
    <strong>Configurable squash settings in branch rules</strong>
    <p><p>Different Git workflows require different strategies for handling commits when merging between branches. In previous versions of GitLab, you could only set a single strategy for whether commits should be squashed when merging and how strongly that should be enforced. This setup could be error-prone or require developers to make specific choices to follow the project convention for different branch targets.</p>
<p>You can now configure squash settings for each protected branch through branch rules. For example, you can:</p>
<ul>
<li>Require squashing when merging from your <code>feature</code> branch to the <code>develop</code> branch to keep history clean.</li>
<li>Disable squashing when merging from the <code>develop</code> branch to <code>main</code> branch when you want the commit history to remain intact.</li>
</ul>
<p>This flexibility ensures consistent commit history across your project while respecting the unique needs of each branch in your workflow, all without requiring manual developer intervention.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/repository/branches/branch_rules/#edit-squash-commits-option">View Documentation</a></p>
  </li>
  <li>
    <strong>Wider distribution for token expiration notifications</strong>
    <p>Previously, access token expiry notification emails were only sent to direct members of the group and project in which the token was expiring. Now, these notifications are also sent to inherited group and project members, if the setting is enabled. This wider distribution makes it easier to manage the token before expiry.</p>
    <p><a href="https://docs.gitlab.com/user/group/manage/#expiry-emails-for-group-and-project-access-tokens">View Documentation</a></p>
  </li>
  <li>
    <strong>Handling of `needs` statements in pipeline execution policies for compliance</strong>
    <p><p>To strengthen your control over pipeline execution, jobs enforced in the <code>.pipeline-policy-pre</code> reserved stage are now required to complete before jobs in subsequent stages can begin, regardless of whether the job defines any <code>needs</code> statements. Previously, jobs defined in the <code>.pipeline-policy-pre</code> stage and jobs in subsequent pipelines with a <code>needs</code> statement both started as soon as the pipeline executed. With this enhancement, jobs in subsequent stages must wait for the <code>.pipeline-policy-pre</code> to complete before starting any other jobs without dependencies, helping you enforce ordered execution and ensuring compliance within the security policies.</p>
<p>Our customers rely on reserved stages to enforce compliance and security checks before developer jobs run. A common use case is to enforce a security or compliance check that fails the entire pipeline if the check does not pass. Allowing jobs to run out of order could bypass this enforcement and weaken policy intent. This improvement provides you with a more consistent approach to compliance enforcement.</p>
<p>To inject jobs at the beginning of the pipeline without overriding <code>needs</code> behavior, configure the jobs to use a custom stage with the new custom stages feature that we introduced in 17.9.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/application_security/policies/pipeline_execution_policies/#pipeline-execution-policy-schema">View Documentation</a></p>
  </li>
  <li>
    <strong>Authenticate to private Pages with an access token</strong>
    <p><p>You can now authenticate to private GitLab Pages sites programmatically using access tokens, making it easier to automate interactions with your Pages content. Previously, accessing restricted Pages sites required interactive authentication through the GitLab UI.</p>
<p>This powerful enhancement increases productivity while maintaining security, giving developers more flexibility in how they interact with and distribute private Pages content.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/pages/pages_access_control/#authenticate-with-an-access-token">View Documentation</a></p>
  </li>
  <li>
    <strong>New insights into GitLab Duo Code Suggestions and GitLab Duo Chat trends</strong>
    <p>The AI comparison metrics panel on the AI Impact Dashboard now provides month-over-month (MoM) tracking for GitLab Duo Code Suggestions acceptance rate and GitLab Duo Chat usage (MoM%). These new trend-based insights complement the existing Duo Code Suggestions and Duo Chat tiles, which provide a 30-day snapshot of these metrics.
With these additional metrics, managers can better measure the AI impact on their software development processes and identify patterns, by comparing Code Suggestions acceptance rate and Duo Chat usage with other SDLC metrics over time.</p>
    <p><a href="https://docs.gitlab.com/user/analytics/ai_impact_analytics/">View Documentation</a></p>
  </li>
  <li>
    <strong>Docker Hub authentication for the dependency proxy</strong>
    <p><p>The GitLab Dependency Proxy for container images now supports authentication with Docker Hub, helping you avoid pipeline failures due to rate limits and giving you access to private images.</p>
<p>Starting April 1, 2025, Docker Hub will enforce stricter pull limits (100 per 6-hour window per IPv4 address or IPv6 /64 subnet) for unauthenticated users. Without authentication, your pipelines might fail once these limits are reached.</p>
<p>With this release, you can configure Docker Hub authentication through the GraphQL API using your Docker Hub credentials, <a href="https://docs.docker.com/security/for-developers/access-tokens/">personal access token</a>, or <a href="https://docs.docker.com/security/for-admins/access-tokens/">organization access tokens</a>. Support for UI configuration will be available in GitLab 17.11.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/packages/dependency_proxy/#authenticate-with-docker-hub">View Documentation</a></p>
  </li>
  <li>
    <strong>Package registry adds audit events</strong>
    <p><p>Package registry operations are now logged as audit events so teams can track when packages are published or deleted to meet compliance requirements.</p>
<p>Before this release, there was no built-in way to track who published or made changes to packages. Teams had to create their own tracking systems or manually document package changes to maintain logs of these activities. Now, each audit event shows who made a change, when it happened, how they were authenticated, and exactly what changed in the package.</p>
<p>Audit events for projects are stored either in a group namespace or the project itself for individual project Owners. Groups can turn off audit events to manage storage needs.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/compliance/audit_event_types/">View Documentation</a></p>
  </li>
  <li>
    <strong>Sort access tokens in Credentials Inventory</strong>
    <p>You can now sort personal, project, and group access tokens in the Credentials Inventory by owner, created date, and last used date. This helps you to locate and identify your access tokens more quickly.
Thank you <a href="https://gitlab.com/chaitanyason9">Chaitanya Sonwane</a> for your contribution!</p>
    <p><a href="https://docs.gitlab.com/administration/credentials_inventory/">View Documentation</a></p>
  </li>
  <li>
    <strong>Identify and revoke tokens with token information API</strong>
    <p><p>GitLab administrators can now use a unified API to identify and revoke tokens. Previously, administrators had to use endpoints related to the specific type of token. This API allows revocation regardless of the type. For a list of supported token types, see the <a href="https://docs.gitlab.com/api/admin/token/">Token information API</a>.</p>
<p>Thank you <a href="https://gitlab.com/nwittstruck">Nicholas Wittstruck</a> and the team from Siemens for your contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/api/admin/token/">View Documentation</a></p>
  </li>
  <li>
    <strong>Configurable token duration with GitLab OIDC provider</strong>
    <p><p>When using GitLab as an OpenID Connect (OIDC) provider, you can now configure the duration of ID tokens with the <code>id_token_expiration</code> attribute. Previously, ID tokens had a fixed expiration time of 120 seconds.</p>
<p>Thank you <a href="https://gitlab.com/DerAstronaut">Henry Sachs</a> for your contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/auth/oidc/#configure-a-custom-duration-for-id-tokens">View Documentation</a></p>
  </li>
  <li>
    <strong>Map OmniAuth profile attributes to user</strong>
    <p>You can now map the Organization and Title profile attributes from an OmniAuth identity provider (IdP) to a user&rsquo;s GitLab profile. This allows the IdP to be the single source of truth for these attributes, and users can no longer change them.</p>
    <p><a href="https://docs.gitlab.com/integration/omniauth/#keep-omniauth-user-profiles-up-to-date">View Documentation</a></p>
  </li>
  <li>
    <strong>Extended webhook triggers for expiring tokens</strong>
    <p>You can now trigger webhook events 60 and 30 days before a project or group access token expires. Previously, these webhook events only triggered 7 days before expiry. This is an optional setting that matches the existing email notification schedule for expiring tokens.</p>
    <p><a href="https://docs.gitlab.com/user/group/manage/#add-additional-webhook-triggers-for-group-access-token-expiration">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner 17.10</strong>
    <p><p>We’re also releasing GitLab Runner 17.10 today! GitLab Runner is the highly-scalable build agent that runs your CI/CD jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.</p>
<h4 id="whats-new">What&rsquo;s new:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38271">Perform Autoscaler executor health check before instance usage</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38249">Expand Docker executor volumes</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/6208">Add Docker excecutor configuration for device addition for services</a></li>
</ul>
<h4 id="bug-fixes">Bug Fixes:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38632">The Windows <code>gitlab-runner-helper</code> image fails due to invalid volume specification for the `/opt/step-runner&rsquo; path</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38409">Repository mirroring for RPM packages is not working properly in GitLab Runner 17.7.0 and later </a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/359825">Running <code>git submodule update --remote</code> in GitLab CI/CD returns an error</a></li>
</ul>
<p>The list of all changes is in the GitLab Runner <a href="https://gitlab.com/gitlab-org/gitlab-runner/blob/17-10-stable/CHANGELOG.md">CHANGELOG</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/runner">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab Critical Patch Release: 17.9.2, 17.8.5, 17.7.7</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-9-2-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-9-2-released/</id><published>2025-03-12T00:00:00Z</published><updated>2025-03-12T00:00:00Z</updated><author><name>Kevin Morrison</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On March 12, 2025, we released versions 17.9.2, 17.8.5, 17.7.7 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action and will be notified once their instance has been patched.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases, and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, you can visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-9-2-released/#cve-2025-25291-and-cve-2025-25292-third-party-gem-ruby-saml">CVE-2025-25291 and CVE-2025-25292 (third party gem <code>ruby-saml</code>)</a></td>
          <td>Critical</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-9-2-released/#cve-2025-27407-third-party-gem-graphql">CVE-2025-27407 (third party gem <code>graphql</code>)</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-9-2-released/#denial-of-service-due-to-inefficient-processing-of-untrusted-input">Denial of Service Due to Inefficient Processing of Untrusted Input</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-9-2-released/#credentials-disclosed-when-repository-mirroring-fails">Credentials disclosed when repository mirroring fails</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-9-2-released/#denial-of-service-vulnerability-in-gitlab-approval-rules-due-to-unbounded-field">Denial of Service Vulnerability in GitLab Approval Rules due to Unbounded Field</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-9-2-released/#internal-notes-in-merge-requests-are-emailed-to-non-members-upon-review-submission">Internal Notes in Merge Requests Are Emailed to Non-Members Upon Review Submission</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-9-2-released/#maintainer-can-inject-shell-code-in-google-integrations">Maintainer can inject shell code in Google integrations</a></td>
          <td>Low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-9-2-released/#guest-with-custom-admin-group-member-permissions-can-approve-the-users-invitation-despite-user-caps">Guest with custom <code>Admin group member</code> permissions can approve the users invitation despite user caps</a></td>
          <td>Low</td>
      </tr>
  </tbody>
</table>
<h3 id="cve-2025-25291-and-cve-2025-25292-third-party-gem-ruby-saml">CVE-2025-25291 and CVE-2025-25292 (third party gem <code>ruby-saml</code>)</h3>
<p>GitLab has remediated two privately disclosed security issues (<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-25291">CVE-2025-25291</a>, <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-25292">CVE-2025-25292</a>) identified in the <code>ruby-saml</code> library which GitLab uses when SAML SSO authentication is enabled at the instance or group level. These issues have been remediated on GitLab.com, and in GitLab CE/EE versions 17.7.7, 17.8.5, and 17.9.2.</p>
<p>On GitLab CE/EE instances using SAML authentication, under certain circumstances, an attacker with access to a valid signed SAML document from the IdP could authenticate as another valid user within the environment&rsquo;s SAML IdP.</p>
<h4 id="self-managed-gitlab-known-mitigations">Self Managed GitLab: Known Mitigations</h4>
<p>Affected customers who cannot immediately update GitLab CE/EE to address these issues may choose to perform the following mitigation steps:</p>
<p><em>Note: This vulnerability requires the attacker to have compromised a valid user account to perform the authentication bypass.</em></p>
<ol>
<li>Enable GitLab <a href="https://docs.gitlab.com/user/profile/account/two_factor_authentication/">two-factor authentication</a> for <a href="https://docs.gitlab.com/security/two_factor_authentication/#enforce-2fa-for-all-users">all user accounts</a> on the GitLab self-managed instance (NOTE: Enabling identity provider multi-factor authentication does not mitigate this vulnerability) <strong>and</strong></li>
<li>Do not allow the <a href="https://docs.gitlab.com/integration/saml/#bypass-two-factor-authentication">SAML two-factor bypass</a> option in GitLab <strong>and</strong></li>
<li><a href="https://docs.gitlab.com/integration/omniauth/#configure-common-settings">Require admin approval for automatically created new users</a> (<code>gitlab_rails['omniauth_block_auto_created_users'] = true</code>)</li>
</ol>
<h4 id="gitlab-thanks">GitLab Thanks:</h4>
<ul>
<li><a href="https://hackerone.com/ahacker1">ahacker1</a> for reporting <code>CVE-2025-25291</code> through our HackerOne bug bounty program</li>
<li><a href="https://github.com/p-">Peter Stöckli</a> (GitHub) for identifying <code>CVE-2025-25292</code> and contacting GitLab to coordinate disclosure and remediation across vendors</li>
<li>Sixto Martin Garcia (maintainer of the <code>ruby-saml</code> RubyGem) for their collaboration on remediation and coordinating disclosure</li>
</ul>
<h3 id="cve-2025-27407-third-party-gem-graphql">CVE-2025-27407 (third party gem <code>graphql</code>)</h3>
<p>GitLab has remediated a privately disclosed security issue (<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-27407">CVE-2025-27407</a>) identified in the Ruby <code>graphql</code> library, which affects and has been remediated in GitLab.com, and in GitLab CE/EE versions 17.7.7, 17.8.5, and 17.9.2.</p>
<p>Under certain circumstances, if an attacker-controlled authenticated user account attempted to transfer a maliciously-crafted project via the Direct Transfer feature (note: Direct transfer is in beta stage and is disabled by default for all self-managed Gitlab instances), remote code execution is possible. Disabling Direct Transfer removes risk of exploitation from this issue.</p>
<h4 id="self-managed-gitlab-known-mitigations-1">Self-managed GitLab: Known Mitigations</h4>
<p>Affected customers who cannot immediately update their GitLab CE/EE to address these issues may choose to perform the following mitigation steps:</p>
<ul>
<li>Disable <a href="http://docs.gitlab.com/administration/settings/import_and_export_settings/#enable-migration-of-groups-and-projects-by-direct-transfer">migration of groups and projects by direct transfer</a>, if enabled (disabled by default)</li>
</ul>
<h4 id="gitlab-thanks-1">GitLab Thanks:</h4>
<ul>
<li><a href="https://hackerone.com/yvvdwf">yvvdwf</a> for reporting this vulnerability through our HackerOne bug bounty program</li>
<li><a href="https://github.com/rmosolgo">Robert Mosolgo</a> (ruby-graphql) for their collaboration on cross-vendor disclosure and remediation</li>
</ul>
<h3 id="denial-of-service-due-to-inefficient-processing-of-untrusted-input">Denial of Service Due to Inefficient Processing of Untrusted Input</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions before 17.7.7, 17.8 prior to 17.8.5, and 17.9 prior to 17.9.2. where a denial of service vulnerability could allow an attacker to cause a system reboot under certain conditions.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:A/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:A/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>, 5.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-13054">CVE-2024-13054</a>.</p>
<p>Thanks <a href="https://hackerone.com/sim4n6">sim4n6</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="credentials-disclosed-when-repository-mirroring-fails">Credentials disclosed when repository mirroring fails</h3>
<p>An issue was discovered in GitLab EE/CE affecting all versions starting from 11.5 before 17.7.7, all versions starting from 17.8 before 17.8.5, all versions starting from 17.9 before 17.9.2. Certain user inputs in repository mirroring settings could potentially expose sensitive authentication information.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:H/I:N/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:H/I:N/A:N</code></a>, 4.4).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-12380">CVE-2024-12380</a>.</p>
<p>Thanks <a href="https://hackerone.com/sigitsetiawansss">sigitsetiawansss</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="denial-of-service-vulnerability-in-gitlab-approval-rules-due-to-unbounded-field">Denial of Service Vulnerability in GitLab Approval Rules due to Unbounded Field</h3>
<p>An issue was discovered in GitLab EE affecting all versions starting with 12.3 before 17.7.7, 17.8 prior to 17.8.5, and 17.9 prior to 17.9.2. A vulnerability in certain GitLab instances could allow an attacker to cause a denial of service condition by manipulating specific API inputs. This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H">CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H</a>, 6.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-1257">CVE-2025-1257</a>.</p>
<p>Thanks <a href="https://hackerone.com/pwnie">pwnie</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="internal-notes-in-merge-requests-are-emailed-to-non-members-upon-review-submission">Internal Notes in Merge Requests Are Emailed to Non-Members Upon Review Submission</h3>
<p>An issue has been discovered in GitLab EE/CE affecting all versions starting from 16.9 before 17.7.7, all versions starting from 17.8 before 17.8.5, all versions starting from 17.9 before 17.9.2 could allow unauthorized users to access confidential information intended for internal use only. This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N">CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</a>, 4.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-0652">CVE-2025-0652</a>.</p>
<p>Thanks <a href="https://hackerone.com/foxribeye">foxribeye</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="maintainer-can-inject-shell-code-in-google-integrations">Maintainer can inject shell code in Google integrations</h3>
<p>An issue was discovered in GitLab EE affecting all versions starting from 17.2 before 17.7.7, all versions starting from 17.8 before 17.8.5, all versions starting from 17.9 before 17.9.2. An input validation issue in the Google Cloud IAM integration feature could have enabled a Maintainer to introduce malicious code.
This is a low severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:L/AC:H/PR:H/UI:R/S:C/C:L/I:L/A:N"><code>CVSS:3.1/AV:L/AC:H/PR:H/UI:R/S:C/C:L/I:L/A:N</code></a>, 3.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-8402">CVE-2024-8402</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="guest-with-custom-admin-group-member-permissions-can-approve-the-users-invitation-despite-user-caps">Guest with custom <code>Admin group member</code> permissions can approve the users invitation despite user caps</h3>
<p>An issue was discovered in GitLab EE affecting all versions from 16.5 prior to 17.7.7, 17.8 prior to 17.8.5, and 17.9 prior to 17.9.2  which allowed a user with a custom permission to approve pending membership requests beyond the maximum number of allowed users.
This is a low severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:N/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:N/I:L/A:N</code></a>, 2.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-7296">CVE-2024-7296</a>.</p>
<p>Thanks <a href="https://hackerone.com/ashish_r_padelkar">ashish_r_padelkar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="bump-postgresql-versions-to-1417-and-168">Bump PostgreSQL versions to 14.17 and 16.8</h3>
<p>The PostgreSQL project released an update so we are updating to versions 14.17 and 16.8.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1792">17.9.2</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2239">PG: Upgrade client libraries and programs to 16.8</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/182632">Use correct project when fetching managed resources templates</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/182677">E2E test fix: web ide spec</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/182666">Prevent deletion of project_bot users with non-expiring access tokens</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/183361">Backport: Fix missing repo logic</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/183373">Backport: Search times out with certain special characters</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/182319">Backport: Fix to support custom pipcompile requirement file with the new DS analyzer</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/183982">Update gitlab-development-kit digest to 1305f9b</a></li>
</ul>
<h3 id="1785">17.8.5</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/182441">Fixes typo on profiles controller spec</a></li>
</ul>
<h3 id="1777">17.7.7</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/182443">Fixes typo on issues controller spec</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">Update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<h2 id="were-combining-patch-and-security-releases">We’re combining patch and security releases</h2>
<p>This improvement in our release process matches the industry standard and will help GitLab users get information about security and
bug fixes sooner, <a href="https://about.gitlab.com/blog/were-combining-patch-and-security-releases/">read the blog post here</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 17.9.1, 17.8.4, 17.7.6</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-9-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-9-1-released/</id><published>2025-02-26T00:00:00Z</published><updated>2025-02-26T00:00:00Z</updated><author><name>Costel Maxim</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On February 26, 2025, we released versions 17.9.1, 17.8.4, 17.7.6 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases, and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, you can visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-9-1-released/#xss-in-k8s-proxy-endpoint">XSS in k8s proxy endpoint</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-9-1-released/#xss-in-maven-dependency-proxy">XSS Maven Dependency Proxy</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-9-1-released/#html-injection-leads-to-xss-on-self-hosted-instances">HTML injection leads to XSS on self hosted instances</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-9-1-released/#improper-authorisation-check-allows-guest-user-to-read-security-policy">Improper Authorisation Check Allows Guest User to Read Security Policy</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-9-1-released/#planner-role-can-read-code-review-analytics-in-private-projects">Planner role can read code review analytics in Private Projects</a></td>
          <td>Medium</td>
      </tr>
  </tbody>
</table>
<h3 id="xss-in-k8s-proxy-endpoint">XSS in k8s proxy endpoint</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions from 15.10 prior to 17.7.6, 17.8 prior to 17.8.4, and 17.9 prior to 17.9.1. A proxy feature could potentially allow unintended content rendering leading to XSS under specific circumstances.
This is a high severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N</code></a>, 8.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-0475">CVE-2025-0475</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="xss-maven-dependency-proxy">XSS Maven Dependency Proxy</h3>
<p>A Cross Site Scripting (XSS) vulnerability in GitLab-EE affecting all versions from 16.6 prior to 17.7.6, 17.8 prior to 17.8.4, and 17.9 prior to 17.9.1 allows an attacker to bypass security controls and execute arbitrary scripts in a user&rsquo;s browser under specific conditions.
This is a high severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:H/I:H/A:N</code></a>, 7.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-0555">CVE-2025-0555</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="html-injection-leads-to-xss-on-self-hosted-instances">HTML injection leads to XSS on self hosted instances</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions from 16.6 before 17.7.6, 17.8 before 17.8.4, and 17.9 before 17.9.1. An attacker could inject HMTL into the child item search potentially leading to XSS in certain situations.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N</code></a>, 5.4).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-8186">CVE-2024-8186</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="improper-authorisation-check-allows-guest-user-to-read-security-policy">Improper Authorisation Check Allows Guest User to Read Security Policy</h3>
<p>A vulnerability in GitLab-EE affecting all versions from 16.2 prior to 17.7.6, 17.8 prior to 17.8.4, and 17.9 prior to 17.9.1 allows a Guest user to read Security policy YAML.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:N/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:N/A:N</code></a>, 5.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-10925">CVE-2024-10925</a>.</p>
<p>Thanks <a href="https://hackerone.com/yuki_osaki">yuki_osaki</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="planner-role-can-read-code-review-analytics-in-private-projects">Planner role can read code review analytics in private projects</h3>
<p>Improper authorization in GitLab EE affecting all versions from 17.7 prior to 17.7.6, 17.8 prior to 17.8.4, 17.9 prior to 17.9.1 allow users with limited permissions to access potentially sensitive project analytics data.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>, 4.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-0307">CVE-2025-0307</a>.</p>
<p>Thanks <a href="https://hackerone.com/weasterhacker">weasterhacker</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1791">17.9.1</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/182032">Backport - Merge branch &lsquo;revert-e78b1a9f&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/181864">Backport/fix ambiguous pipeline 17 9</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/182126">Make it possible for ignore unexpected EOFs in SSL connections</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/182179">Allow Duo Chat to be resizable on self-managed (backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/182385">Merge branch &lsquo;mdc/include-build-assets-image-job-sync-pipelines&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/182121">Fix instance level dashboard by default severity override</a></li>
</ul>
<h3 id="1784">17.8.4</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2233">Bump gitlab-exporter to v15.2.0</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/181136">[Backport] Return false for pending_migrations? if indexing disabled</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/181267">Merge branch &lsquo;10443-fix-workhorse-verify&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/181358">Revert stricter workhorse route regexes</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/181872">Use primary DB when authenticating via job token in jobs API</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/181865">Backport/fix ambiguous pipeline 17 8</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/182098">Backport add more custom exit codes for CI/CD failures MRs and fix assets caching in scheduled cache-assets:production job</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/181534">Backport fix CH version incompatibility</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/182388">Merge branch &lsquo;mdc/include-build-assets-image-job-sync-pipelines&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/182128">Make it possible for ignore unexpected EOFs in SSL connections</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8187">Update dependency gitlab-exporter to v15.2.0</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/181136">[Backport] Return false for pending_migrations? if indexing disabled</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/181267">Merge branch &lsquo;10443-fix-workhorse-verify&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/181358">Revert stricter workhorse route regexes</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/181872">Use primary DB when authenticating via job token in jobs API</a></li>
</ul>
<h3 id="1776">17.7.6</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/181268">Merge branch &lsquo;10443-fix-workhorse-verify&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/181359">Revert stricter workhorse route regexes</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/182151">Fix failed jobs widget polling issue</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/181863">Backport fix for ambiguous created_at</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/182104">Backport add more custom exit codes for CI/CD failures MRs and fix assets caching in scheduled cache-assets:production job</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/182390">Merge branch &lsquo;mdc/include-build-assets-image-job-sync-pipelines&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/182129">Make it possible for ignore unexpected EOFs in SSL connections</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/181268">Merge branch &lsquo;10443-fix-workhorse-verify&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/181359">Revert stricter workhorse route regexes</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<p>Note: GitLab releases have skipped 17.7.5 and 17.8.3. There are no patches with these version numbers.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<h2 id="were-combining-patch-and-security-releases">We’re combining patch and security releases</h2>
<p>This improvement in our release process matches the industry standard and will help GitLab users get information about security and
bug fixes sooner, <a href="https://about.gitlab.com/blog/were-combining-patch-and-security-releases/">read the blog post here</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab 17.9 released</title><link href="https://docs.gitlab.com/releases/17/17-9-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/17/17-9-released/</id><published>2025-02-20T00:00:00Z</published><updated>2025-02-20T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On February 20, 2025, GitLab 17.9 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong></strong>
</p>
<p>We&rsquo;re excited to recognize <a href="https://gitlab.com/salihudickson">Salihu Dickson</a> as our MVP for his outstanding contributions to developing <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/171764">Comments on Wiki pages</a>, a highly-requested feature that gathered <a href="https://gitlab.com/groups/gitlab-org/-/epics/14062">over 200 positive reactions</a> from the community!</p>
<p>His dedication spanned over six months, delivering an implementation of <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/171764">wiki top-level discussions</a> with nearly 4,000 lines of code. Salihu also created several proof-of-concept implementations and improved the Wiki experience with additional features and bug fixes.</p>
<p>&ldquo;Salihu has been an outstanding Community Contributor in developing Comments on Wiki pages!&rdquo; shares <a href="https://gitlab.com/mmacfarlane">Matthew Macfarlane</a>, Product Manager, Plan:Knowledge at GitLab. &ldquo;Salihu&rsquo;s extensive knowledge of the product has allowed us to deliver this key feature more efficiently. As a Product Manager, it is a joy to work with contributors like Salihu!&rdquo;</p>
<p>&ldquo;An incredible achievement!&rdquo; shares <a href="https://gitlab.com/afracazo">Alex Fracazo</a>, Senior Product Designer, Plan:Knowledge at GitLab. &ldquo;Salihu didn&rsquo;t just build the basic functionality, but delivered a comprehensive end-to-end feature from top-level discussions on Wiki pages to error handling and test coverage.&rdquo; Many members of the GitLab team showed strong appreciation for Salihu&rsquo;s work, including Natalia Tepluhina, Principal Engineer, Vue.js core team member, and <a href="https://gitlab.com/vshushlin">Vladimir Shushlin</a>, Engineering Manager, Plan:Knowledge at GitLab, highlighting his technical skills and collaboration.</p>
<p>Salihu, a front-end engineer at Elixir Cloud and two-time GSoC mentor, shared - &ldquo;I&rsquo;d like to thank everyone who worked closely with me to make this possible. A special thank you to <a href="https://gitlab.com/himkp">Himanshu Kapoor</a> (Staff Frontend Engineer, Plan:Knowledge at GitLab) - your mentorship over the past few months has been instrumental to all the work I&rsquo;ve done here, and I truly appreciate all the guidance and support you&rsquo;ve provided. Bringing this feature to life was really a team effort—from the reviewers who meticulously went through hundreds of lines of code, to the backend developers like <a href="https://gitlab.com/pskorupa">Piotr Skorupa</a> (Backend Engineer, Plan:Knowledge at GitLab), who made this possible.&rdquo; He expressed enthusiasm about collaborating with the team and &ldquo;contributing to many more impactful features in the future!&rdquo;</p>
<p>We are so grateful to Salihu for all of his contributions and to all of our open source community for contributing to GitLab!</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>Gitlab Duo Self-Hosted is generally available</strong>
    <p><p>You can now host selected large language models (LLMs) in your own infrastructure and configure those models as the source for GitLab Duo Code Suggestions and Chat. This feature is now generally available on self-managed GitLab environments with applicable licensing.</p>
<p>With GitLab Duo Self-Hosted, you can use models hosted either on-premise or in a private cloud as the source for GitLab Duo Chat or Code Suggestions. We currently support open-source Mistral models on vLLM or AWS Bedrock, Claude 3.5 Sonnet on AWS Bedrock, and OpenAI models on Azure OpenAI. By enabling self-hosted models, you can leverage the power of generative AI while maintaining complete data sovereignty and privacy.</p>
<p>Please leave feedback in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/512753">issue 512753</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/gitlab_duo_self_hosted/">View Documentation</a></p>
  </li>
  <li>
    <strong>Run multiple Pages sites with parallel deployments</strong>
    <p><p>You can now create multiple versions of your GitLab Pages sites simultaneously with parallel deployments. Each deployment gets a unique URL based on your configured prefix. For example, with a unique domain your site would be accessible at <code>project-123456.gitlab.io/prefix</code>, or without a unique domain at <code>namespace.gitlab.io/project/prefix</code>.</p>
<p>This feature is especially helpful when you need to:</p>
<ul>
<li>Preview design changes or content updates.</li>
<li>Test site changes in development.</li>
<li>Review changes from merge requests.</li>
<li>Maintain multiple site versions (for example, with localized content).</li>
</ul>
<p>Parallel deployments expire after 24 hours by default to help manage storage space, though you can customize this duration or set deployments to never expire. For automatic cleanup, parallel deployments created from merge requests are deleted when the merge request is merged or closed.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/pages/#parallel-deployments">View Documentation</a></p>
  </li>
  <li>
    <strong>Add project files to Duo Chat in VS Code and JetBrains IDEs</strong>
    <p><p>Add your project files directly to Duo Chat in VS Code and JetBrains to unlock more powerful, context-aware AI assistance.</p>
<p>By adding project files, Duo Chat gains deep understanding of your specific codebase, enabling it to provide highly contextual and accurate responses. This context awareness gives you more relevant code explanations, precise debugging help, and suggestions that seamlessly integrate with your existing codebase. We welcome your feedback on this new, exciting feature. Please share your thoughts in our <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/492443">feedback</a> issue.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/gitlab_duo_chat/examples.html#ask-about-specific-files">View Documentation</a></p>
  </li>
  <li>
    <strong>Workspaces container support with Sysbox</strong>
    <p><p>GitLab workspaces now supports building and running containers directly in your development environment. When your workspace runs on a Kubernetes cluster configured <a href="https://docs.gitlab.com/ee/user/workspace/configuration.html#with-sysbox">with Sysbox</a>, you can build and run containers without additional configuration.</p>
<p>Introduced in GitLab 17.4 as part of our <a href="https://about.gitlab.com/releases/2024/09/19/gitlab-17-4-released/#secure-sudo-access-for-workspaces">sudo access feature</a>, this capability enables you to maintain your complete container workflow in your GitLab workspace environment.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/workspace/configuration.html#build-and-run-containers-in-a-workspace">View Documentation</a></p>
  </li>
  <li>
    <strong>Create workspaces without a custom devfile</strong>
    <p><p>Previously, setting up a workspace required creating a <code>devfile.yaml</code> configuration file. GitLab now provides you with a default file that includes common development tools. This enhancement:</p>
<ul>
<li>Removes configuration barriers.</li>
<li>Enables you to create a workspace quickly from any project.</li>
<li>Includes common development tools pre-configured and ready to use.</li>
<li>Lets you focus on development instead of configuration.</li>
</ul>
<p>Start developing and create a workspace immediately without additional setup or configuration steps.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/workspace/#gitlab-default-devfile">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab-managed Kubernetes resources</strong>
    <p><p>Deploy your applications to Kubernetes with more control and automation using <a href="https://docs.gitlab.com/user/clusters/agent/managed_kubernetes_resources/">GitLab-managed Kubernetes resources</a>. Previously, you had to manually configure Kubernetes resources for each environment. Now, you can use GitLab-managed Kubernetes resources to automatically provision and manage these resources.</p>
<p>With GitLab-managed Kubernetes resources, you can:</p>
<ul>
<li>Automatically create namespaces and service accounts for new environments</li>
<li>Manage access permissions through role bindings</li>
<li>Configure other required Kubernetes resources</li>
</ul>
<p>When your developers deploy applications, GitLab automatically creates the necessary Kubernetes resources based on the provided resource templates, streamlining your deployment process and maintaining consistency across environments.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/clusters/agent/managed_kubernetes_resources.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Simplified access to deployments within project environments</strong>
    <p>Have you ever struggled to get an overview of your deployments within a project? You can now view recent deployment details in the environments list without having to expand each environment. For each environment, the list shows your latest successful deployment and, if different, your most recent deployment attempt.</p>
    <p><a href="https://docs.gitlab.com/ee/ci/environments/">View Documentation</a></p>
  </li>
  <li>
    <strong>Wiki page comments</strong>
    <p><p>You can now add comments directly on wiki pages, transforming your documentation into an interactive collaboration space.</p>
<p>Comments and threads on wiki pages help teams:</p>
<ul>
<li>Discuss content directly in context.</li>
<li>Suggest improvements and corrections.</li>
<li>Keep documentation accurate and up-to-date.</li>
<li>Share knowledge and expertise.</li>
</ul>
<p>With wiki comments, teams can maintain living documentation that evolves alongside their projects through direct feedback and discussion.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/discussions/">View Documentation</a></p>
  </li>
  <li>
    <strong>Enhancing workflow visibility: new insights into merge request review time</strong>
    <p><p>To improve development workflow tracking, <a href="https://about.gitlab.com/solutions/value-stream-management/">Value Stream Analytics</a> (VSA) has been extended with a new event - <em>Merge request last approved at</em>. The <a href="https://docs.gitlab.com/ee/user/project/merge_requests/approvals/">merge request approval</a> event marks the end of the review phase and the start of the final pipeline run or merge stage. For example, to calculate the total merge request review time, you can create a VSA stage with <em>Merge request reviewer first assigned</em> as the start event and <em>Merge request last approved at</em> as the end event.</p>
<p>With this enhancement, teams gain deeper insights into opportunities to optimize review times, which help reduce the overall cycle time of development, leading to faster software delivery.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/value_stream_analytics/#value-stream-stage-events">View Documentation</a></p>
  </li>
  <li>
    <strong>EPSS, KEV, and CVSS data for vulnerability risk prioritization</strong>
    <p><p>We&rsquo;ve added support for the following vulnerability risk data:</p>
<ul>
<li>Exploit Prediction Scoring System (EPSS)</li>
<li>Known Exploited Vulnerabilities (KEV)</li>
<li>Common Vulnerabilities and Exposures (CVE)</li>
</ul>
<p>You can now efficiently prioritize risk across your dependency and container image vulnerabilities using this data. You can find the data in the Vulnerability Report and in the Vulnerability Details page.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/vulnerabilities/risk_assessment_data.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Configure DAST scans through the UI with full control</strong>
    <p><p>To effectively test complex applications, security teams need flexibility when they configure DAST scans. Previously, DAST scans configured through the UI had limited configuration options, which prevented successful scanning of applications with specific security requirements. This meant you had to use pipeline-based scans even for quick security assessments.</p>
<p>You can now configure DAST scans through the UI with the same granular control available in pipeline-based scans. This includes:</p>
<ul>
<li>Full authentication configuration, including custom headers and cookies</li>
<li>Precise crawl settings like maximum pages, maximum depth, and excluded URLs</li>
<li>Advanced scan timeouts and retry attempts</li>
<li>Custom scanner behavior, like maximum links to crawl and DOM depth</li>
<li>Targeted scanning modes for specific vulnerability types</li>
</ul>
<p>Save these configurations as reusable profiles to maintain consistent security testing across your applications. Every configuration change is tracked with audit events, so you know when scan settings are added, edited, or removed.</p>
<p>This enhanced control helps you run more effective security scans while maintaining compliance using detailed audit trails. Instead of spending time managing pipeline configurations, you can quickly launch the right scan for each application to find and fix vulnerabilities faster.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/dast/on-demand_scan.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Automatic CI/CD pipeline cleanup</strong>
    <p><p>In the past, if you wanted to delete older CI/CD pipelines, you could only do this through the API.</p>
<p>In GitLab 17.9, we have introduced a project setting that allows you to set a CI/CD pipeline expiry time.
Any pipelines and related artifacts older than the defined retention period are deleted.
This can help reduce the disk usage in projects that run lots of pipelines that generate large artifacts, and even improve overall performance.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/pipelines/settings.html#automatic-pipeline-cleanup">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Agentic Core</h4>
<ul>
  <li>
    <strong>Composite identity for more secure AI connections</strong>
    <p>Previously, a request to GitLab could only be authenticated as a single user. With composite identity, we have now made it possible to authenticate a request as a service account and a user simultaneously.
AI agent use cases often require permissions to be based on the user who initiated the tasks in a system, while simultaneously showing a distinct identity that&rsquo;s separate from the initiating user. A composite identity is our new identity principal, which represents an AI agent&rsquo;s identity. This identity is linked with the identity of the human user who requests actions from the agent.
Whenever an AI agent action attempts to access a resource, a composite identity token is used. This token belongs to a service account, and is also linked with the human user who is instructing the agent. The authorization checks that run on the token take into account both principals before granting access to a resource. Both identities need to have access to the resource, otherwise access is denied.
This new functionality enhances our ability to protect resources stored in GitLab.
For more information about how the composite identity for service accounts can be used, see the <a href="https://docs.gitlab.com/development/ai_features/composite_identity/">documentation</a>.</p>
    <p><a href="https://docs.gitlab.com/development/ai_features/composite_identity/">View Documentation</a></p>
  </li>
</ul>
<h4>Scale and Deployments</h4>
<ul>
  <li>
    <strong>Restrict users from making their profile private</strong>
    <p>Users can choose to make their user profile public or private.
Administrators can now control whether users have the option to make profiles private across their GitLab instance. In the Admin Area, &ldquo;Allow users to make their profiles private&rdquo; controls this setting. This setting is enabled by default, allowing users to choose private profiles.</p>
    <p><a href="https://docs.gitlab.com/ee/administration/settings/account_and_limit_settings.md#prevent-users-from-making-their-profiles-private">View Documentation</a></p>
  </li>
  <li>
    <strong>Manage project integrations from a group with the REST API</strong>
    <p><p>Previously, you could manage project integrations from a group in the GitLab UI only. With this release, it&rsquo;s possible to manage these integrations with the REST API too.</p>
<p>Thanks to <a href="https://gitlab.com/van.m.anderson">Van</a> for their <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/148283">initial community contribution</a>, which was subsequently picked up and completed by GitLab.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/api/group_integrations.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Group sharing visibility enhancement</strong>
    <p><p>We&rsquo;re excited to announce expanded visibility for group sharing across GitLab. Previously, while you could see shared projects on a group&rsquo;s overview page, you couldn&rsquo;t see which groups your group had been invited to join. Now you can view both <strong>Shared projects</strong> and <strong>Shared groups</strong> tabs on the group overview page, giving you a complete view of how your groups are connected and shared throughout your organization. This makes it easier to audit and manage group access across your organization.</p>
<p>We welcome feedback about this change in <a href="https://gitlab.com/groups/gitlab-org/-/epics/16777">epic 16777</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/user/project/members/sharing_projects_groups/#view-shared-groups">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>Enable Dependency Scanning using SBOM for Cargo, Conda, Cocoapods and Swift projects</strong>
    <p><p>In GitLab 17.9 the Composition Analysis team starts the transition to Dependency Scanning using SBOM with the new Dependency Scanning analyzer. This analyzer will be a replacement for Gemnasium, which will reach end of support in 18.0, remaining available for use through GitLab 19.0.</p>
<p>The Dependency Scanning using SBOM approach will better support customers through expansion of language support, a tighter integration and experience within the GitLab platform, and a shift towards industry standard report types (SBOM-based scanning and reporting). As of GitLab 17.9, the new Dependency Scanning analyzer will be enabled by default in the <code>latest</code> Dependency Scanning CI/CD template (<code>Dependency-Scanning.latest.gitlab-ci.yml</code>) for the following project and file types:</p>
<ul>
<li>C/C++/Fortran/Go/Python/R projects using conda with a <code>conda-lock.yml</code> file.</li>
<li>Objective-C projects using Cocoapods with a <code>podfile.lock</code> file.</li>
<li>Rust projects using Cargo with a <code>cargo.lock</code> file.</li>
<li>Swift projects using Swift with a <code>package.resolved</code> file.</li>
</ul>
<p>With this change we are introducing a new CI/CD variable: <code>DS_ENFORCE_NEW_ANALYZER</code> which is set to <code>false</code> by default.</p>
<p>This approach ensures that all existing customers of the <code>latest</code> template continue to use the Gemnasium analyzer by default and it enables automatically the new Dependency Scanning analyzer for the file types listed above.</p>
<p>Existing customers who wish to migrate to the new Dependency Scanning analyzer can set <code>DS_ENFORCE_NEW_ANALYZER</code> to <code>true</code> (at the project, group, or instance level). You can read more about this change in the <a href="https://docs.gitlab.com/ee/update/deprecations.html?removal_milestone=18.0#dependency-scanning-upgrades-to-the-gitlab-sbom-vulnerability-scanner">deprecation announcement</a> and the associated <a href="https://docs.gitlab.com/ee/user/application_security/dependency_scanning/migration_guide_to_sbom_based_scans.html">migration guide</a>.</p>
<p>Customers who want to entirely prevent the use of the new Dependency Scanning analyzer must set the CI/CD variable <code>DS_EXCLUDED_ANALYZERS</code> to <code>dependency-scanning</code>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/dependency_scanning/dependency_scanning_sbom/">View Documentation</a></p>
  </li>
  <li>
    <strong>License scanning support for Swift packages</strong>
    <p><p>In GitLab 17.9, we added support for license scanning on Swift packages. This will allow users who use Swift within their projects to better understand the licensing of their Swift packages.</p>
<p>This data is available to composition analysis users through the Dependency List, SBOM reports, and GraphQL API.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/compliance/license_scanning_of_cyclonedx_files/index.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Multi-core Advanced SAST offers faster scans</strong>
    <p><p>GitLab Advanced SAST now offers multi-core scanning as an opt-in feature to improve performance.
This can reduce scan duration significantly, especially for larger codebases.</p>
<p>To enable it, set the <code>SAST_SCANNER_ALLOWED_CLI_OPTS</code> CI/CD variable to <code>--multi-core N</code>, where <code>N</code> is the desired number of cores to use.
You should only set this variable on the <code>gitlab-advanced-sast</code> job, not any other jobs.
Check <a href="https://docs.gitlab.com/ee/user/application_security/sast/#security-scanner-configuration">the documentation</a> for important guidance on how to select the right value.</p>
<p>We&rsquo;re working to enable this performance improvement by default; this is tracked in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/517409">issue 517409</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/sast/#security-scanner-configuration">View Documentation</a></p>
  </li>
  <li>
    <strong>Apply a compliance framework by using a project&#39;s compliance center</strong>
    <p><p>In GitLab 17.2, we released the ability for group owners to apply and remove compliance frameworks for all projects
in a group by using the group&rsquo;s compliance center.</p>
<p>We have expanded this to now allow group owners to also apply and remove compliance frameworks at the project level.
This will make it even easier for group owners to apply and monitor compliance frameworks at the project level.</p>
<p>The ability to apply and remove compliance frameworks at the project level is only available for group owners and
not project owners.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/compliance/compliance_center/compliance_projects_report.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Workspace extensions now support proposed APIs</strong>
    <p>Workspace extensions now support enabling proposed APIs, improving compatibility and reliability in production environments. This update allows extensions that depend on proposed APIs to run without errors, including critical development tools like the Python Debugger. The change expands API access while maintaining stability.</p>
    <p><a href="https://docs.gitlab.com/ee/user/workspace/#extension-marketplace">View Documentation</a></p>
  </li>
  <li>
    <strong>Implement OCI-based GitOps with the FluxCD CI/CD component</strong>
    <p>Have you ever wondered how to implement GitOps best practices with GitLab? The new <a href="https://gitlab.com/components/fluxcd/">FluxCD component</a> makes it easy. Use the FluxCD component to package Kubernetes manifests into OCI images and store the images in OCI-compatible container registries. You can optionally sign the images and trigger an immediate FluxCD reconciliation.</p>
    <p><a href="https://gitlab.com/components/fluxcd/">View Documentation</a></p>
  </li>
  <li>
    <strong>Get started with the GitLab integration with Kubernetes</strong>
    <p><p>In this release, we added new Kubernetes Getting started guides that show you how to use GitLab to deploy applications to Kubernetes directly and with FluxCD. These easy-to-follow tutorials don&rsquo;t require in-depth Kubernetes knowledge to complete, so both novice and experienced users can learn how to integrate GitLab and Kubernetes.</p>
<p>To supplement the Kubernetes Getting started guides, we also included a series of recommendations for integrating GitLab into Kubernetes environments.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/clusters/agent/getting_started">View Documentation</a></p>
  </li>
  <li>
    <strong>Discover and migrate certificate-based Kubernetes clusters</strong>
    <p><p>The certificate-based Kubernetes integration will be turned off on GitLab.com for all users between May 6, 2025 9:00 AM UTC and May 8, 2025 22:00 PM UTC, and will be removed from GitLab Self-Managed instances in GitLab 19.0 (expected in May 2026).</p>
<p>To help users migrate, we added a new cluster API endpoint that group Owners can query to <a href="https://docs.gitlab.com/ee/api/cluster_discovery.html">discover any certificate-based clusters</a> registered to a group, subgroup, or project. We also updated the <a href="https://docs.gitlab.com/ee/user/infrastructure/clusters/migrate_to_gitlab_agent.html">migration documentation</a> to provide instructions for different types of use cases.</p>
<p>We encourage all GitLab.com users to check if they are affected, and to plan their migrations as soon as possible.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/api/cluster_discovery.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Enforce custom stages in pipeline execution policies</strong>
    <p><p>We&rsquo;re excited to introduce a new capability for pipeline execution policies that allows you to enforce <strong>custom stages</strong> into your CI/CD pipelines in <code>Inject</code> mode. This feature provides greater flexibility and control over your pipeline structure while maintaining security and compliance requirements, supplying you with:</p>
<ul>
<li><strong>Enhanced pipeline customization</strong>: Define and inject custom stages at specific points in your pipeline, allowing for more granular control over job execution order.</li>
<li><strong>Improved security and compliance</strong>: Ensure that security scans and compliance checks run at the most appropriate times in your pipeline, such as after build but before deployment.</li>
<li><strong>Flexible policy management</strong>: Maintain centralized policy control while allowing development teams to customize their pipelines within defined guardrails.</li>
<li><strong>Seamless integration</strong>: Custom stages work alongside existing project stages and other policy types, providing a non-disruptive way to enhance your CI/CD workflows.</li>
</ul>
<p><strong>How does it work?</strong></p>
<p>The new and improved <code>inject_policy</code> strategy for pipeline execution policies allows you to define custom stages in your policy configuration. These stages are then intelligently merged with your project&rsquo;s existing stages using a Directed Acyclic Graph (DAG) algorithm, ensuring proper ordering and preventing conflicts.</p>
<p>For example, you can now easily inject a custom security scanning stage between your build and deploy stages.</p>
<p>The <code>inject_policy</code> stage replaces <code>inject_ci</code> which will be deprecated, allowing you to opt into the <code>inject_policy</code> mode to gain the benefits. The <code>inject_policy</code> mode will become the default when configuring policies with <code>Inject</code> in the policy editor.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/policies/pipeline_execution_policies.html#inject_policy">View Documentation</a></p>
  </li>
  <li>
    <strong>Rotate access tokens with `self_rotate` scope</strong>
    <p><p>You can now use the <code>self_rotate</code> scope to rotate access tokens. This scope is available for personal, project, or group access tokens. Previously, this required two requests: One to obtain a new token, then another to perform the token rotation.</p>
<p>Thank you <a href="https://gitlab.com/stalb">Stéphane Talbot</a> and <a href="https://gitlab.com/ajuckel">Anthony Juckel</a> for your contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html#personal-access-token-scopes">View Documentation</a></p>
  </li>
  <li>
    <strong>View inactive project and group access tokens</strong>
    <p>You can now view inactive group and project access tokens in the UI. Previously, GitLab instantly deleted project and group access tokens after they expired or were revoked. This lack of a record of inactive tokens made auditing and security reviews more difficult. GitLab now retains inactive group and project access token records for 30 days, which helps teams track token usage and expiration for compliance and monitoring purposes.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/settings/project_access_tokens.html#revoke-or-rotate-a-project-access-token">View Documentation</a></p>
  </li>
  <li>
    <strong>View access token IP addresses</strong>
    <p><p>Previously, when viewing your personal access tokens, the only usage information you could see was how many minutes ago the token was used. Now, you can also see up to the last seven IP addresses that the tokens were used from. This combined information can help you track where your token is being used.</p>
<p>Thank you <a href="https://jrm2k.us">Jayce Martin</a>, <a href="http://www.linkedin.com/in/avinash-koganti-38b511162">Avinash Koganti</a>, <a href="https://austindixon.net/">Austin Dixon</a>, and <a href="https://www.linkedin.com/in/rohit-kala-1b891a179">Rohit Kala</a> for your contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html#view-the-time-at-and-ips-where-a-token-was-last-used">View Documentation</a></p>
  </li>
  <li>
    <strong>Control access to GitLab Pages for groups</strong>
    <p>You can now restrict GitLab Pages access at the group level. Group owners can enable a single setting to make all Pages sites in a group and its subgroups visible only to project members. This centralized control simplifies security management without modifying individual project settings.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/pages/pages_access_control.html#restrict-pages-access-to-project-members-for-the-group-and-its-subgroups">View Documentation</a></p>
  </li>
  <li>
    <strong>Change work item type to another</strong>
    <p>You can now easily change the type of your work items, giving you the flexibility to manage your projects more efficiently.</p>
    <p><a href="https://docs.gitlab.com/ee/user/tasks.html#convert-a-task-into-another-item-type">View Documentation</a></p>
  </li>
  <li>
    <strong>Speed up adding new child items by keeping the form open</strong>
    <p>We&rsquo;ve streamlined the process of creating multiple child items by keeping the form open after each submission, making it easier to add multiple entries without extra clicks. This update saves you time and ensures a smoother workflow when managing your tasks.</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/epics/manage_epics.html#multi-level-child-epics">View Documentation</a></p>
  </li>
  <li>
    <strong>Work items GraphQL API - additional query filters</strong>
    <p><p>The Work Items GraphQL API now includes additional query filters that let you filter by:</p>
<ul>
<li>Created, updated, closed, and due dates</li>
<li>Health status</li>
<li>Weight</li>
</ul>
<p>These new filters give you more control when querying and organizing work items through the API.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/api/graphql/reference/">View Documentation</a></p>
  </li>
  <li>
    <strong>Block deletion of active security policy projects</strong>
    <p><p>To ensure secure management of security policies and prevent disruption to enabled and enforced policies, we&rsquo;ve added protection to prevent deletion of security policy projects that are in active use.</p>
<p>If a security policy project is linked to any groups or projects, the links must be removed before the security policy project can be deleted.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/policies/">View Documentation</a></p>
  </li>
  <li>
    <strong>Dependency list filter by component in projects</strong>
    <p><p>On the Dependencies list in a project, you can now filter by the package name using the Component filter.</p>
<p>Previously, you could not search for packages in the Dependencies list for a project level. Now, setting the Component filter will find packages that contain the specified string.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/dependency_list/#filter-dependency-list">View Documentation</a></p>
  </li>
  <li>
    <strong>Filter by identifier in the project Vulnerability Report</strong>
    <p>In the Vulnerability Report for a project, you can now filter the results by vulnerability identifier so you can find specific vulnerabilities (like CVEs or CWEs) that are in your project.
You can use the identifier in conjunction with other filters like the severity, status, or tool filters. The vulnerability identifier filter is limited to reports with 20,000 vulnerabilities or less.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/vulnerability_report/#filtering-vulnerabilities">View Documentation</a></p>
  </li>
  <li>
    <strong>Support custom roles in merge request approval policies</strong>
    <p><p>We&rsquo;ve made merge request approval policies more flexible by adding the ability to assign custom roles as approvers.</p>
<p>You can now tailor approval requirements to match your organization’s unique team structures and responsibilities, ensuring the right roles are engaged in the review process based on the policy. For example, require approval from AppSec Engineering roles for security reviews and Compliance roles for license approvals.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/policies/merge_request_approval_policies.html#require_approval-action-type">View Documentation</a></p>
  </li>
  <li>
    <strong>Search and filter the Credentials Inventory</strong>
    <p>You can now use search and filter capabilities in the Credentials Inventory. This makes it easier to identify tokens and keys which fall within certain user-defined parameters, including tokens that expire within a certain window. Previously, the entries in the Credentials Inventory were presented as a static list.</p>
    <p><a href="https://docs.gitlab.com/ee/administration/credentials_inventory.html">View Documentation</a></p>
  </li>
  <li>
    <strong>OAuth application authorization audit event</strong>
    <p><p>Previously, when a user authorized an OAuth application, no audit event was generated. However, this event is important for security teams to
monitor the OAuth applications authorized by users on a specific GitLab instance.</p>
<p>With this release, GitLab now provides a <strong>User authorized an OAuth application</strong> audit event to track when users successfully authorize OAuth
applications. This new audit event further improves your ability to audit your GitLab instance.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/compliance/audit_event_types.html#authorization">View Documentation</a></p>
  </li>
  <li>
    <strong>Use API to disable 2FA for individual enterprise users</strong>
    <p>You can now use the API to clear all two-factor authentication (2FA) registrations for an individual enterprise user. Previously, this was only possible in the UI. Using the API allows for automated and bulk operations, saving time when 2FA resets need to be done at scale.</p>
    <p><a href="https://docs.gitlab.com/ee/api/group_enterprise_users.html#disable-two-factor-authentication-for-an-enterprise-user">View Documentation</a></p>
  </li>
  <li>
    <strong>Email notifications for service accounts</strong>
    <p><p>You can now set a custom email address to receive email notifications for service accounts. When a custom email address is specified when creating a service account, GitLab sends notifications to that address. Each service account must use a unique email address. This can help you monitor processes and events more effectively.</p>
<p>Thank you <a href="https://gitlab.com/tonton1728">Gilles Dehaudt</a>, <a href="https://gitlab.com/lenaing">Étienne Girondel</a>, <a href="https://gitlab.com/Densett">Kevin Caborderie</a>, <a href="https://gitlab.com/gmcquat">Geoffrey McQuat</a>, <a href="https://gitlab.com/rbihore">Raphaël Bihore</a> from the <a href="https://www.sncf-connect-tech.fr/">SNCF Connect &amp; Tech team</a> for your contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/profile/service_accounts.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Support for additional group memberships with multiple OIDC providers</strong>
    <p>You can now configure additional group memberships when using multiple OIDC providers. Previously, if you configured multiple OIDC providers, you were limited to a single group membership.</p>
    <p><a href="https://docs.gitlab.com/ee/administration/auth/oidc.html#configure-multiple-openid-connect-providers">View Documentation</a></p>
  </li>
  <li>
    <strong>Custom expiration date for rotated service account tokens</strong>
    <p>When rotating an access token for a service account, you can now use the <code>expires_at</code> attribute to set a custom expiration date. Previously, tokens automatically expired seven days after rotation. This allows for more granular management of token lifetimes, enhancing your ability to maintain secure access controls.</p>
    <p><a href="https://docs.gitlab.com/ee/api/group_service_accounts.html#rotate-a-personal-access-token-for-a-service-account-user">View Documentation</a></p>
  </li>
  <li>
    <strong>Support merge request variables in pipeline execution policies</strong>
    <p><p>Pipeline execution policies now support additional merge request variables, allowing you to create more sophisticated policies that take into account information related to the merge request. This provides more targeted and efficient control over CI/CD enforcement. The following variables are now supported:</p>
<ul>
<li><code>CI_MERGE_REQUEST_SOURCE_BRANCH_SHA</code></li>
<li><code>CI_MERGE_REQUEST_TARGET_BRANCH_SHA</code></li>
<li><code>CI_MERGE_REQUEST_DIFF_BASE_SHA</code></li>
</ul>
<p>With this enhancement, you can:</p>
<ul>
<li>Implement advanced security scans that compare changes between source and target branches, ensuring thorough code review and vulnerability detection.</li>
<li>Create dynamic pipeline configurations that adapt based on the specifics of each merge request, streamlining your development process.</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/policies/pipeline_execution_policies.html">View Documentation</a></p>
  </li>
  <li>
    <strong>New permissions for custom roles</strong>
    <p>You can create custom roles with the <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/465324">Read compliance dashboard</a> permission. Custom roles allow you to grant only the specific permissions users need to complete their tasks. This helps you define roles that are tailored to the needs of your group, and can reduce the number of users who need the Owner or Maintainer role.</p>
    <p><a href="https://docs.gitlab.com/ee/user/custom_roles.html">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner 17.9</strong>
    <p><p>We&rsquo;re also releasing GitLab Runner 17.9 today! GitLab Runner is the highly-scalable build agent that runs
your CI/CD jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with
GitLab CI/CD, the open-source continuous integration service included with GitLab.</p>
<h4 id="whats-new">What&rsquo;s new:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38271">Add health check for runner autoscaler instances</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/37471">Add histogram metrics for runner prepare stage duration</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/421131">Add support for custom service container names to the Kubernetes executor</a></li>
</ul>
<h4 id="bug-fixes">Bug Fixes:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38484">GitLab Runner is unable to retrieve cache from S3 Express One Zone</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/37911">GitLab Runner on Kubernetes reports &lsquo;script_failure&rsquo; instead of &lsquo;runner_system_failure&rsquo; for AWS Spot instances</a></li>
</ul>
<p>The list of all changes is in the GitLab Runner <a href="https://gitlab.com/gitlab-org/gitlab-runner/blob/17-9-stable/CHANGELOG.md">CHANGELOG</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/runner">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab Patch Release: 17.8.2, 17.7.4, 17.6.5</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-8-2-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-8-2-released/</id><published>2025-02-12T00:00:00Z</published><updated>2025-02-12T00:00:00Z</updated><author><name>Rohit Shambhuni</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On February 12, 2025, we released versions 17.8.2, 17.7.4, 17.6.5 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases, and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, you can visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-8-2-released/#a-csp-bypass-xss-in-merge-request-page">A CSP-bypass XSS in merge-request page</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-8-2-released/#denial-of-service-due-to-unbounded-symbol-creation">Denial of Service due to Unbounded Symbol Creation</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-8-2-released/#exfiltrate-content-from-private-issues-using-prompt-injection">Exfiltrate content from private issues using Prompt Injection</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-8-2-released/#internal-http-header-leak-via-route-confusion-in-workhorse">Internal HTTP header leak via route confusion in workhorse</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-8-2-released/#ssrf-via-workspaces">SSRF via workspaces</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-8-2-released/#unauthorized-incident-closure-and-deletion-by-planner-role-in-gitlab">Unauthorized Incident Closure and Deletion by Planner Role in GitLab</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-8-2-released/#actioncable-does-not-invalidate-tokens-after-revocation">ActionCable does not invalidate tokens after revocation</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-8-2-released/#a-custom-permission-may-allow-overriding-repository-settings">A custom permission may allow overriding Repository settings</a></td>
          <td>Low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-8-2-released/#saml-authentication-misconfigures-external-user-attribute">SAML Authentication Misconfigures External User Attribute</a></td>
          <td>Low</td>
      </tr>
  </tbody>
</table>
<h3 id="a-csp-bypass-xss-in-merge-request-page">A CSP-bypass XSS in merge-request page</h3>
<p>An XSS vulnerability exists in GitLab CE/EE affecting all versions from 13.3 prior to 17.6.5, 17.7 prior to 17.7.4 and 17.8 prior to 17.8.2 that allows an attacker to execute unauthorized actions via a change page.
This is a high severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N</code></a>, 8.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-0376">CVE-2025-0376</a>.</p>
<p>Thanks <a href="https://hackerone.com/yvvdwf">yvvdwf</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="denial-of-service-due-to-unbounded-symbol-creation">Denial of Service due to Unbounded Symbol Creation</h3>
<p>A denial of service vulnerability in GitLab CE/EE affecting all versions from 14.1 prior to 17.6.5, 17.7 prior to 17.7.4, and 17.8 prior to 17.8.2 allows an attacker to impact the availability of GitLab via unbounded symbol creation via the scopes parameter in a Personal Access Token.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>, 6.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-12379">CVE-2024-12379</a>.</p>
<p>Thanks <a href="https://hackerone.com/sim4n6">sim4n6</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="exfiltrate-content-from-private-issues-using-prompt-injection">Exfiltrate content from private issues using Prompt Injection</h3>
<p>An issue was discovered in GitLab EE affecting all versions starting from 16.0 prior to 17.6.5, starting from 17.7 prior to 17.7.4, and starting from 17.8 prior to 17.8.2, which allows an attacker to exfiltrate contents of a private issue using prompt injection.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:N</code></a>, 6.4).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-3303">CVE-2024-3303</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="internal-http-header-leak-via-route-confusion-in-workhorse">Internal HTTP header leak via route confusion in workhorse</h3>
<p>An information disclosure vulnerability in GitLab CE/EE affecting all versions from 8.3 prior to 17.6.5, 17.7 prior to 17.7.4, and 17.8 prior to 17.8.2 allows an attacker to send a crafted request to a backend server to reveal sensitive information.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>, 4.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-1212">CVE-2025-1212</a>.</p>
<p>This vulnerability has been discovered internally by GitLab team member <a href="https://gitlab.com/joernchen">Joern Schneeweisz</a>.</p>
<h3 id="ssrf-via-workspaces">SSRF via workspaces</h3>
<p>An external service interaction vulnerability in GitLab EE affecting all versions from 15.11 prior to 17.6.5, 17.7 prior to 17.7.4, and 17.8 prior to 17.8.2 allows an attacker to send requests from the GitLab server to unintended services.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>, 4.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-9870">CVE-2024-9870</a>.</p>
<p>Thanks <a href="https://hackerone.com/retr02332">retr02332</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="unauthorized-incident-closure-and-deletion-by-planner-role-in-gitlab">Unauthorized Incident Closure and Deletion by Planner Role in GitLab</h3>
<p>Improper Authorization in GitLab CE/EE affecting all versions from 17.7 prior to 17.7.4, 17.8 prior to 17.8.2 allow users with limited permissions to perform unauthorized actions on critical project data.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/#vector=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N</code></a>, 4.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-0516">CVE-2025-0516</a>.</p>
<p>Thanks <a href="https://hackerone.com/sp4rrow">sp4rrow</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="actioncable-does-not-invalidate-tokens-after-revocation">ActionCable does not invalidate tokens after revocation</h3>
<p>An issue discovered in GitLab CE/EE affecting all versions from 16.11 prior to 17.6.5, 17.7 prior to 17.7.4, and 17.8 prior to 17.8.2 meant that long-lived connections in ActionCable potentially allowed revoked Personal Access Tokens access to streaming results.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/#vector=CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:N</code></a>, 4.2).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-1198">CVE-2025-1198</a>.</p>
<p>This vulnerability has been discovered internally by a GitLab team member <a href="https://gitlab.com/DylanGriffith">Dylan Griffith</a>.</p>
<h3 id="a-custom-permission-may-allow-overriding-repository-settings">A custom permission may allow overriding Repository settings</h3>
<p>An improper access control vulnerability in GitLab EE affecting all versions from 15.7 prior to 17.6.5, 17.7 prior to 17.7.4, and 17.8 prior to 17.8.2 allows a user with a custom permission to view contents of a repository even if that access is not authorized.
This is a low severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:L/I:N/A:N</code></a>, 2.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-1042">CVE-2025-1042</a>.</p>
<p>Thanks <a href="https://hackerone.com/mateuszek">mateuszek</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="saml-authentication-misconfigures-external-user-attribute">SAML Authentication Misconfigures External User Attribute</h3>
<p>An issue has been discovered in GitLab CE/EE for Self-Managed and Dedicated instances affecting all versions from 17.5 prior to 17.6.5, 17.7 prior to 17.7.4, and 17.8 prior to 17.8.2. It was possible for a user manually designated as an External without configuring them as such in SAML response to lose that designation, and to read and clone internal projects under certain circumstances. After upgrading to a patched version, please review and re-designate any externals users.
This is a low severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>, 3.1).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-1540">CVE-2025-1540</a>.</p>
<p>Thanks <a href="https://gitlab.com/unode">Renato Alves</a> for reporting this vulnerability.</p>
<h3 id="mattermost-security-updates-january-22-2025">Mattermost Security Updates January 22, 2025</h3>
<p>Mattermost has been updated to versions 10.2.3, which contains several patches and security fixes.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1782">17.8.2</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/178514">Fix Workhorse failing on 64-bit unaligned access on Raspberry Pi 32-bit</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/178575">[Backport] Fixed css bug for command palette file names too long</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/178596">Merge branch &lsquo;fix-environment-check-user-creation&rsquo; into &lsquo;17-8-stable-ee&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/178452">17.8: Ensure user external attribute is preserved and not set to nil</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/178961">Backporting the bug: Remove feature flag for multiple approvals</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/179349">Merge branch &lsquo;dattang/do-not-allow-release-environment-to-fail&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/179180">Fix Approval widget for project merge request settings</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/179527">Enable ai tracking without move_ai_tracking_to_instrumentation_layer flag</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/179948">Add import_vulnerabilities feature flag</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/180252">Update build-gdk-image version</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/180216">Backport: Zoekt code search always performs regex search</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/180274">Fix storing incorrect policy index in scan_result_policies</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/180206">[Backport] Only check pending migrations if indexing enabled</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/180306">Updating Duo functionality note</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/180237">[backport] Fix command palette keybindings propagation</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/180553">Backport into 17.8: Decrease log level of false error</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/180783">[Backport] Fix info and list_pending_migration rake tasks if search cluster unreachable</a></li>
</ul>
<h3 id="1774">17.7.4</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/178457">17.7: Ensure user external attribute is preserved and not set to nil</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/179058">Merge branch &lsquo;fix-environment-check-user-creation&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/179350">Merge branch &lsquo;dattang/do-not-allow-release-environment-to-fail&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/179735">Fixes typo on profiles_controller_spec</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/179933">Add import_vulnerabilities feature flag</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/180305">Updating Duo functionality note</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/180574">Backport into 17.7: Decrease log level of false error</a></li>
</ul>
<h3 id="1765">17.6.5</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2199">Backport internal release support to 17.6</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/178458">17.6: Ensure user external attribute is preserved and not set to nil</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/179351">Merge branch &lsquo;dattang/do-not-allow-release-environment-to-fail&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/179736">Fixes typo on profiles_controller_spec</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/8137">Backport internal release support to 17.6</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<h2 id="were-combining-patch-and-security-releases">We’re combining patch and security releases</h2>
<p>This improvement in our release process matches the industry standard and will help GitLab users get information about security and
bug fixes sooner, <a href="https://about.gitlab.com/blog/were-combining-patch-and-security-releases/">read the blog post here</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 17.8.1, 17.7.3, 17.6.4</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-8-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-8-1-released/</id><published>2025-01-22T00:00:00Z</published><updated>2025-01-22T00:00:00Z</updated><author><name>Ottilia Westerlund</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<p>On January 22, 2025, we released versions 17.8.1, 17.7.3, 17.6.4 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases, and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, you can visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-8-1-released/#stored-xss-via-asciidoctor-render">Stored XSS via Asciidoctor render</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-8-1-released/#developer-could-exfiltrate-protected-cicd-variables-via-ci-lint">Developer could exfiltrate protected CI/CD variables via CI lint</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-8-1-released/#cyclic-reference-of-epics-leads-resource-exhaustion">Cyclic reference of epics leads resource exhaustion</a></td>
          <td>Medium</td>
      </tr>
  </tbody>
</table>
<h3 id="stored-xss-via-asciidoctor-render">Stored XSS via Asciidoctor render</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions from 17.2 before 17.6.4, 17.7 before 17.7.3, and 17.8 before 17.8.1. Improper rendering of certain file types lead to cross-site scripting.
This is a high severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N</code></a>, 8.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-0314">CVE-2025-0314</a>.</p>
<p>Thanks <a href="https://hackerone.com/yvvdwf">yvvdwf</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="developer-could-exfiltrate-protected-cicd-variables-via-ci-lint">Developer could exfiltrate protected CI/CD variables via CI lint</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 17.0 prior to 17.6.4, from 17.7 prior to 17.7.3, and from 17.8 prior to 17.8.1. Under certain conditions, it may have been possible for users with developer role to exfiltrate protected CI/CD variables via CI lint.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N</code></a>, 6.4).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-11931">CVE-2024-11931</a>.</p>
<p>This vulnerability was internally discovered and reported by GitLab team member <a href="https://gitlab.com/greg/">Greg Myers</a>.</p>
<h3 id="cyclic-reference-of-epics-leads-resource-exhaustion">Cyclic reference of epics leads resource exhaustion</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting from 15.7 prior to 17.6.4, starting from 17.7 prior to 17.7.3, and starting from 17.8 prior to 17.8.1. It was possible to trigger a DoS by creating cyclic references between epics.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L</code></a>, 4.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-6324">CVE-2024-6324</a>.</p>
<p>Thanks <a href="https://hackerone.com/xorz">xorz</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1781">17.8.1</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/475063">Private profiles showed account creation dates although documentation stated they shouldn&rsquo;t</a></li>
</ul>
<h3 id="1773">17.7.3</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/475063">Private profiles showed account creation dates although documentation stated they shouldn&rsquo;t</a></li>
</ul>
<h3 id="1764">17.6.4</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2160">Toolbox: update URLs for AzCopy (upstream change) - 17-6-stable</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/475063">Private profiles showed account creation dates although documentation stated they shouldn&rsquo;t</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<h2 id="were-combining-patch-and-security-releases">We’re combining patch and security releases</h2>
<p>This improvement in our release process matches the industry standard and will help GitLab users get information about security and
bug fixes sooner, <a href="https://about.gitlab.com/blog/were-combining-patch-and-security-releases/">read the blog post here</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab 17.8 released</title><link href="https://docs.gitlab.com/releases/17/17-8-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/17/17-8-released/</id><published>2025-01-16T00:00:00Z</published><updated>2025-01-16T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On January 16, 2025, GitLab 17.8 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong></strong>
</p>
<p>Everyone can <a href="https://gitlab.com/gitlab-org/developer-relations/contributor-success/team-task/-/issues/490">nominate GitLab&rsquo;s community contributors</a>!
Show your support for our active candidates or add a new nomination! 🙌</p>
<p>Through the Co-Create Program, <a href="https://gitlab.com/oceane_scania">Océane Legrand</a> has been leading efforts to enhance the Conan package registry feature set, collaborating with Juan Pablo Gonzalez.
Their work has focused on bringing the feature closer to GA readiness while implementing Conan version 2 support.
This collaboration demonstrates how the Co-Create Program can drive significant improvements to GitLab&rsquo;s package registry capabilities.</p>
<p>They were nominated by <a href="https://gitlab.com/stingrayza">Raimund Hook</a>, Senior Fullstack Engineer, Contributor Success at GitLab, who highlighted their persistent collaboration and continuous iteration on the Conan Package Registry features.
Their work exemplifies GitLab values and will benefit all Conan users on the platform.</p>
<p>Océane Legrand is a Full Stack Developer at Scania where she works on maintaining their self-hosted GitLab instance on AWS.
&ldquo;The work I&rsquo;m doing in open source impacts both GitLab and Scania,&rdquo; says Océane.
&ldquo;Contributing through the Co-Create Program has given me new skills, like experience with Ruby and background migrations. When my team at Scania faced an issue during an upgrade, I was able to help troubleshoot because I&rsquo;d already encountered it through the program.&rdquo;</p>
<p><a href="https://about.gitlab.com/community/co-create/">Learn more about GitLab&rsquo;s Co-Create Program</a> where customers work directly with our product and engineering teams to develop new features and enhance existing ones.</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>Enhance security with protected container repositories</strong>
    <p><p>We&rsquo;re thrilled to announce the rollout of protected container repositories, a new feature in GitLab&rsquo;s container registry that addresses security and control challenges in managing container images. Organizations often struggle with unauthorized access to sensitive container repositories, accidental modifications, lack of granular control, and difficulties in maintaining compliance. This solution provides enhanced security through strict access controls, granular permissions for push, pull, and management operations, and seamless integration with GitLab CI/CD pipelines.</p>
<p>Protected container repositories offers value to users by reducing the risk of security breaches and accidental changes to critical assets. This feature streamlines workflows by maintaining security without sacrificing development speed, improves overall governance of the container registry, and provides peace of mind knowing that important container assets are protected according to organizational needs.</p>
<p>This feature and the <a href="https://gitlab.com/groups/gitlab-org/-/epics/5574">protected packages</a> feature are both community contributions from <code>gerardo-navarro</code> and the Siemens crew. Thank you Gerardo and the rest of the crew from Siemens for their many contributions to GitLab! If you are interesting in learning more about how Gerardo and the Siemens crew contributed this change, check out this <a href="https://www.youtube.com/watch?v=5-nQ1_Mi7zg">video</a> in which Gerardo shares his learnings and best practices for contributing to GitLab based on his experience as an external contributor.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/packages/container_registry/container_repository_protection_rules.html">View Documentation</a></p>
  </li>
  <li>
    <strong>List the deployments related to a release</strong>
    <p><p>While GitLab has long supported creating releases from Git tags and tracking deployments, this information previously lived in multiple separate places that were difficult to piece together. Now, you can see all deployments related to a release directly on the release page. Release managers can quickly verify where a release has been deployed and which environments are pending deployment. This complements the existing deployment page integration that shows release notes for tagged deployments.</p>
<p>We would like to express our gratitude to <a href="https://gitlab.com/antonkalmykov">Anton Kalmykov</a> for contributing both features to GitLab.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/releases/">View Documentation</a></p>
  </li>
  <li>
    <strong>Machine learning model experiments tracking in GA</strong>
    <p>When creating machine learning models, data scientists often experiment with different parameters, configurations, and feature engineering to improve the performance of the model. Keeping track of all this metadata and the associated artifacts so that the data scientist can later replicate the experiment is not trivial. Machine learning experiment tracking enables them to log parameters, metrics, and artifacts directly into GitLab, giving easy access later on while also keeping all experimental data within your GitLab environment. This feature is now generally available with enhanced data displays, enhanced permissions, deeper integration with GitLab, and bug fixes.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/ml/experiment_tracking/">View Documentation</a></p>
  </li>
  <li>
    <strong>Hosted runners on Linux for GitLab Dedicated now in limited availability</strong>
    <p><p>We are excited to introduce the limited availability of hosted runners on Linux for GitLab Dedicated.</p>
<p>Managing fleets of runners can be complex and require significant experience to ensure all CI/CD jobs can
scale to meet the demands of developers.</p>
<p>Hosted runners for GitLab Dedicated allow you to use fully managed runners for CI/CD jobs.
They eliminate the need to maintain your own runner infrastructure, and provide the same
security, flexibility, and efficiency of GitLab Dedicated to runners.</p>
<p>Hosted runners scale automatically to meet your CI/CD demands to ensure
optimal performance during peak times and for large projects.
The limited availability release includes Linux runners in various sizes,
ranging from 2 to 32 vCPUs, with 8 to 128 GB of memory.</p>
<p>To request access to hosted runners for GitLab Dedicated during the limited availability phase,
contact your GitLab representative.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/dedicated/hosted_runners.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Large M2 Pro hosted runners on macOS (Beta)</strong>
    <p><p>We bring M2 Pro performance to mobile DevOps teams!</p>
<p>With up to 2 times the performance of M1 runners and 6 times the performance of x86-64 macOS runners,
you can increase your development team&rsquo;s velocity when building and deploying applications.</p>
<p>Fully integrated to GitLab CI/CD and available on-demand, teams can now seamlessly create, test,
and deploy applications faster for the Apple ecosystem.</p>
<p>Try out the new M2 Pro runners today by using <code>saas-macos-large-m2pro</code> as the tag in your <code>.gitlab-ci.yml</code> file.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/runners/hosted_runners/macos.html">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Agentic Core</h4>
<ul>
  <li>
    <strong>GitLab MLOps Python Client Beta</strong>
    <p><p>Data scientists and Machine Learning engineers primarily work in Python environments, but integrating their machine learning workflows with GitLab&rsquo;s MLOps features often requires context switching and understanding of GitLab&rsquo;s API structure. This can create friction in their development process and slow down their ability to track experiments, manage model artifacts, and collaborate with team members.</p>
<p>The new GitLab MLOps Python client provides a seamless, Pythonic interface to GitLab&rsquo;s MLOps features. Data scientists can now interact with GitLab&rsquo;s <a href="https://docs.gitlab.com/ee/user/project/ml/experiment_tracking/">experiment tracking</a> and <a href="https://docs.gitlab.com/ee/user/project/ml/model_registry/">model registry</a> capabilities directly from their Python scripts and notebooks. The client includes:</p>
<ul>
<li><strong>GitLab Experiment Tracking</strong>: Easily track machine learning experiments within GitLab.</li>
<li><strong>Model Registry Integration</strong>: Register and manage models in GitLab&rsquo;s model registry.</li>
<li><strong>Experiment Management</strong>: Create and manage experiments directly from the client.</li>
<li><strong>Run Tracking</strong>: Initiate and monitor training runs with ease.</li>
</ul>
<p>This integration allows data scientists to focus on model development while automatically capturing their ML lifecycle metadata in GitLab. The Python client works seamlessly with existing ML workflows and requires minimal setup, making GitLab&rsquo;s MLOps features more accessible to the data science community.</p>
<p>We welcome the wider Python and data science community to contributions and share feedback directly in our <a href="https://gitlab.com/gitlab-org/modelops/mlops/gitlab-mlops">project&rsquo;s repository</a></p>
</p>
    <p><a href="https://gitlab.com/gitlab-org/modelops/mlops/gitlab-mlops">View Documentation</a></p>
  </li>
</ul>
<h4>Scale and Deployments</h4>
<ul>
  <li>
    <strong>View subgroups and projects pending deletion</strong>
    <p><p>When you mark a group for deletion, you need visibility into all affected subgroups and projects. Previously, only the group marked for deletion displayed a &ldquo;Pending deletion&rdquo; label, but not their subgroups and projects, making it difficult to identify which content was scheduled for deletion.</p>
<p>Now, when a group is marked for deletion, all of its subgroups and projects will display a &ldquo;Pending deletion&rdquo; label. This improved visibility helps you quickly distinguish between active and soon-to-be deleted content across your entire group hierarchy.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/#view-groups-pending-deletion">View Documentation</a></p>
  </li>
  <li>
    <strong>Track multiple to-do items in an issue or merge request</strong>
    <p>You can now keep track of multiple discussions and mentions within a single issue or merge request. With the new multiple to-do items feature, you&rsquo;ll receive separate to-do items for each mention or action, ensuring you don&rsquo;t miss important updates or requests for your attention. This enhancement helps you manage your work more effectively and respond to your team&rsquo;s needs more efficiently.</p>
    <p><a href="https://docs.gitlab.com/ee/user/todos.html#actions-that-create-to-do-items">View Documentation</a></p>
  </li>
  <li>
    <strong>Project creation protection for groups now includes Owners</strong>
    <p><p>Project creation can be restricted to specific roles in a group using the <strong>Allowed to create projects</strong> setting. The Owner role is now available as an option, enabling you to restrict new project creation to users with the Owner role for the group. This role was previously unavailable in the selection options.</p>
<p>Thank you <a href="https://gitlab.com/yasuk">@yasuk</a> for this community contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/index.html#specify-who-can-add-projects-to-a-group">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>Secret detection now includes remediation steps</strong>
    <p>It&rsquo;s important to fix exposed secrets quickly to minimize the risk of attackers using exposed credentials to break into your systems. Proper remediation requires multiple steps beyond just removing the secret, such as rotating credentials and investigating potential unauthorized access. To help keep your systems secure, secret detection now includes specific remediation steps for each type of detected secret. This guidance helps you systematically address exposures and reduce the risk of security breaches. Remediation steps will appear on all vulnerabilities upon the completion of a pipeline.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/secret_detection/">View Documentation</a></p>
  </li>
  <li>
    <strong>Find the commit that resolved a vulnerability</strong>
    <p>Previously, when a vulnerability was no longer detected, we did not provide users a way to see when or where a vulnerability was resolved.
Now, we display a link to the commit SHA where the vulnerability was resolved, providing better traceability and insight into the resolution process. This makes it easier for security and development teams to collaborate and manage vulnerabilities more effectively.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/vulnerabilities/#vulnerability-resolution">View Documentation</a></p>
  </li>
  <li>
    <strong>Use roles to define project members as Code Owners</strong>
    <p><p>You can now use roles as Code Owners in your <code>CODEOWNERS</code> file to manage role-based expertise and approvals more efficiently. Instead of listing individual users or creating groups, you can use the following syntax:</p>
<ul>
<li><code>@@developers</code> - References all users with the Developer role.</li>
<li><code>@@maintainers</code> - References all users with the Maintainer role.</li>
<li><code>@@owners</code> - References all users with the Owner role.</li>
</ul>
<p>For example, add <code>* @@maintainers</code> to require approval from any maintainer for all changes in the repository.</p>
<p>This simplifies Code Owner management as team members join, leave, or change roles in your project. The <code>CODEOWNERS</code> file remains current without manual updates, because GitLab automatically includes all users who have the specified role.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/codeowners/reference.html#add-a-role-as-a-code-owner">View Documentation</a></p>
  </li>
  <li>
    <strong>View paused Flux reconciliations on the dashboard for Kubernetes</strong>
    <p>Previously, when you suspended Flux reconciliation from the dashboard for Kubernetes, there was no clear indicator of the suspended state. We&rsquo;ve added a new &ldquo;Paused&rdquo; status to the existing set of status indicators, making it clear when Flux reconciliation is suspended and providing better visibility into the state of your deployments.</p>
    <p><a href="https://docs.gitlab.com/ee/ci/environments/kubernetes_dashboard.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Search for pods on the dashboard for Kubernetes</strong>
    <p>On the dashboard for Kubernetes, finding specific pods in large deployments can be time-consuming. A new search bar lets you quickly filter pods by name. The search works across all available pods, and you can combine it with status filters to find exactly the pods you need to monitor or troubleshoot.</p>
    <p><a href="https://docs.gitlab.com/ee/ci/environments/kubernetes_dashboard.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Support multiple distinct approval actions in merge request approval policies</strong>
    <p><p>Previously, merge request approval policies supported only a single approval rule per policy, allowing for one set of approvers stacked with an “OR” condition. As a result, it was more challenging to enforce layered security approvals from varied roles, individual approvers, or separate groups.</p>
<p>With this update, you can create up to five approval rules for each merge request approval policy, allowing for more flexible and robust approval policies. Each rule can specify different approvers or roles and each rule is evaluated independently. For example, security teams can define complex approval workflows such as requiring one approver from Group A and one from Group B, or one from a specific role and another from a specified group, ensuring compliance and enhanced control in sensitive workflows.</p>
<p>Example uses of this improvement include:</p>
<ul>
<li><strong>Distinct role approvals:</strong> One approval from a Developer role and another from a Maintainer role.</li>
<li><strong>Role and group approvals</strong>: One approval from Developer or Maintainer and a separate approval from a member of the Security Group.</li>
<li><strong>Distinct group approvals:</strong> One approval from a member of the Python Experts Group and another separate approval from a member of the Security Group.</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/policies/merge_request_approval_policies.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Primary domain redirect for GitLab Pages</strong>
    <p>You can now set a primary domain in GitLab Pages to automatically redirect all requests from custom domains to your primary domain. This helps maintain SEO rankings and provides a consistent brand experience by directing visitors to your preferred domain, regardless of which URL they initially use to access your site.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/pages/#primary-domain">View Documentation</a></p>
  </li>
  <li>
    <strong>Safeguard your dependencies with protected packages</strong>
    <p><p>We&rsquo;re thrilled to introduce support for protected PyPI packages, a new feature designed to enhance the security and stability of your GitLab package registry. In the fast-paced world of software development, accidental modification or deletion of packages can disrupt entire development processes. Protected packages address this issue by allowing you to safeguard your most important dependencies against unintended changes.</p>
<p>From GitLab 17.8, you can protect PyPI packages by creating protection rules. If a package is matched by a protection rule, only specified users can update or delete the package. With this feature, you can prevent accidental changes, improve compliance with regulatory requirements, and streamline your workflows by reducing the need for manual oversight.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/packages/package_registry/package_protection_rules.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Customizable colors for epics</strong>
    <p><p>You now have more flexibility in categorizing your epics with an expanded set of color options, including pre-existing values and custom RGB or hex codes. This enhanced visual customization allows you to easily associate epics with squads, company initiatives, or hierarchy levels, making it simpler to prioritize and organize your work on roadmaps and epic boards.</p>
<p>Your administrator must enable <a href="https://docs.gitlab.com/ee/user/group/epics/epic_work_items.html">the new look for epics</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/epics/manage_epics.html#epic-color">View Documentation</a></p>
  </li>
  <li>
    <strong>Epic ancestors</strong>
    <p><p>Navigating your <a href="https://docs.gitlab.com/ee/user/group/epics/#relationships-between-epics-and-other-items">epic hierarchy</a> just got easier with the redesigned Ancestry widget, now prominently displayed at the top of each epic in a breadcrumb-like format. You can quickly grasp the relationships between epics by seeing both immediate and ultimate parents at a glance, helping you maintain a clear overview of your project structure and easily move between related epics.</p>
<p>Your administrator must enable <a href="https://docs.gitlab.com/ee/user/group/epics/epic_work_items.html">the new look for epics</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/epics/#relationships-between-epics-and-other-items">View Documentation</a></p>
  </li>
  <li>
    <strong>Epic health status</strong>
    <p><p>You can now easily communicate the progress of your projects with the new health status feature for epics. By setting the status to &ldquo;On track,&rdquo; &ldquo;Needs attention,&rdquo; or &ldquo;At risk,&rdquo; you&rsquo;ll have a quick visual indicator of your epic&rsquo;s health, allowing you to manage risk and keep stakeholders informed about the project&rsquo;s overall status.</p>
<p>Your administrator must enable <a href="https://docs.gitlab.com/ee/user/group/epics/epic_work_items.html">the new look for epics</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/epics/manage_epics.html#health-status.">View Documentation</a></p>
  </li>
  <li>
    <strong>Epic parent</strong>
    <p><p>You can now easily manage your epic hierarchy by adding a parent directly from an epic, just as you would for an issue. This streamlined process gives you more flexibility in organizing your work, allowing you to quickly establish relationships between epics and maintain a clear structure for your projects.</p>
<p>Your administrator must enable <a href="https://docs.gitlab.com/ee/user/group/epics/epic_work_items.html">the new look for epics</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/epics/#relationships-between-epics-and-other-items">View Documentation</a></p>
  </li>
  <li>
    <strong>Track time spent on epics</strong>
    <p>You can now track time directly in epics, giving you more granular control over your project&rsquo;s time management. This new feature allows you to log time spent on different aspects of your project, helping you monitor progress, stay on schedule, and keep your budget in check as you work through sprints and milestones.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/time_tracking.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Show iteration field on child items in epics, issues, and objectives</strong>
    <p><p>When viewing epic detail, planners need to be able to see which child issues are planned into iterations (sprints) and which are not yet planned. This will allow teams to more easily make sure that all defined work is slated into sprints.</p>
<p>For epics, your administrator must enable <a href="https://docs.gitlab.com/ee/user/group/epics/epic_work_items.html">the new look for epics</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/iterations">View Documentation</a></p>
  </li>
  <li>
    <strong>Webhooks for epics</strong>
    <p><p>Supercharge your workflow automation with the epic webhooks, allowing you to receive real-time updates in your preferred tools whenever changes occur in your epics. By integrating GitLab with your other services, you can enhance collaboration, stay on top of project developments, and streamline your processes without constantly switching between applications.</p>
<p>Your administrator must enable <a href="https://docs.gitlab.com/ee/user/group/epics/epic_work_items.html">the new look for epics</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/integrations/webhook_events.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Add vulnerabilities as supported webhook events</strong>
    <p><p>Introducing a webhook integration that generates events for actions related to vulnerabilities to allow you to automate and integrate with external resources. For example, events are generated when vulnerabilities are created or the status of a vunerability changes.</p>
<!--What is the problem and solution you're proposing? This content sets the overall vision for the feature and serves as the release notes that will populate in various places, including the [release post blog](https://about.gitlab.com/releases/categories/releases/) and [Gitlab project releases](https://gitlab.com/gitlab-org/gitlab/-/releases). "--></p>
    <p><a href="https://docs.gitlab.com/ee/user/project/integrations/webhook_events.html#vulnerability-events">View Documentation</a></p>
  </li>
  <li>
    <strong>Enforce centralized workflow rules for the `override_ci` strategy</strong>
    <p><p>In pipeline execution policies, the <code>override_ci</code> strategy now supports the use of workflow rules to aid in policy enforcement for jobs defined in the policy, as well as jobs defined in the project&rsquo;s configuration when using <code>include:project</code>. By defining workflow rules in the policy, you can filter out jobs executed by the pipeline execution policy based on particular rules, such as by configuring rules that prevent the use of branch pipelines in projects.</p>
<p>To isolate the use of workflow rules to target only jobs defined in your policy, the best practice is to define the rules for the job instead of globally in the policy. Alternatively, you can group jobs and rules using a separate <code>include</code> field.</p>
<p>Previously, when using the <code>override_ci</code> strategy, workflow rules could only be applied to jobs defined in the pipeline execution policy.</p>
<p>The <code>inject_ci</code> strategy remains unchanged and workflow rules can only be used to control when policy jobs are enforced, without affecting the project&rsquo;s workflow rules.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/policies/pipeline_execution_policies.html#override_project_ci">View Documentation</a></p>
  </li>
  <li>
    <strong>Make `skip_ci` configurable for pipeline execution policies</strong>
    <p><p>We&rsquo;ve introduced a new configuration option for Pipeline Execution Policies (PEPs) that allows for more flexibility in handling the <code>[skip ci]</code> directive. This feature addresses scenarios where certain automated processes, such as semantic releases, where it&rsquo;s necessary to bypass pipeline execution while still ensuring critical security and compliance checks are performed.</p>
<p>To use this feature, set <code>skip_ci</code> to <code>allowed: false</code> in the pipeline execution policy YAML configuration or enable <strong>Prevent users from skipping pipelines</strong> in the policy editor. Then, specify the users or service accounts that are allowed to use <code>[skip ci]</code>. By default all users will be blocked from skipping pipeline execution jobs unless they are excluded within the <code>skip_ci</code> configuration as an exception.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/policies/pipeline_execution_policies.html#skip_ci-type">View Documentation</a></p>
  </li>
  <li>
    <strong>Manage concurrency of scheduled scan execution pipelines</strong>
    <p><p>To improve the scalability of global scheduled scan execution policies, we have introduced a new capability to configure a time window in a scan execution policy. The <code>time_window</code> property defines the time period in which the policy creates and executes new schedules to ensure optimal performance.</p>
<p>To use the new property, update your policy using YAML mode and follow the <a href="https://docs.gitlab.com/ee/user/application_security/policies/scan_execution_policies.html#time_window-schema"><code>time_window</code> schema</a>. You can provide a value in seconds for the window of time in which the schedules should run. For example, <code>86400</code> for a 24 hour time window. Then supply the <code>distribution: random</code> field and value to enforce the schedules to execute at random times across the defined time window.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/policies/scan_execution_policies.html#concurrency-control">View Documentation</a></p>
  </li>
  <li>
    <strong>Scaling UI performance for the &#39;Frameworks&#39; report tab in the Compliance Center</strong>
    <p><p>With GitLab 17.8, we have made changes to the backend to ensure the compliance center remains quick and responsive,
even if you have 1,000&rsquo;s of compliance frameworks in the <strong>Frameworks</strong> report tab of the compliance center.</p>
<p>Additionally, when looking for more information and clicking on a framework in the <strong>Frameworks</strong> tab, GitLab
returns up to 1,000 projects that are attached to that particular framework as part of the information in the
right-hand side pop up menu.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/compliance/compliance_center/compliance_frameworks_report.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Pipeline limits available in GitLab Community Edition</strong>
    <p>Administrators can now control pipeline resource usage by setting CI/CD limits for their GitLab Community Edition installations. Previously, this feature was only available in GitLab Enterprise Edition.</p>
    <p><a href="https://docs.gitlab.com/ee/administration/settings/continuous_integration.html#set-cicd-limits">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab Patch Release: 17.7.2</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-7-2-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-7-2-released/</id><published>2025-01-15T00:00:00Z</published><updated>2025-01-15T00:00:00Z</updated><author><name>Mayra Cabrera</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On January 15, 2025, we released versions 17.7.2 for GitLab Community Edition and Enterprise Edition.</p>
<p>These versions resolve a number of regressions and bugs. This patch release does not include any security fixes.</p>
<h2 id="gitlab-community-edition-and-enterprise-edition">GitLab Community Edition and Enterprise Edition</h2>
<h3 id="1772">17.7.2</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2159">Merge branch &lsquo;azcopy-url-20250108&rsquo; into &lsquo;17-7-stable&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/177296">Fixes issue</a> where some merge request diffs with associated comments were not visible. This does not correct the display issue for existing records, but does prevent new instances of this occurrence.</li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/176667">Remove <code>download_code</code> dependency from access to read merge requests</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/177633">Fix handling of short gzip metadata files</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>If you had previously upgraded to GitLab 17.7.0 or 17.7.1 this patch is recommended to prevent any further occurrences of merge request comments being unable to be displayed. A future release will correct the display issue for affected records.</p>
<p>This version does not include any new migrations, and for multi-node deployments, <a href="https://docs.gitlab.com/ee/update/#upgrading-without-downtime">should not require any downtime</a>.</p>
<p>Please be aware that by default the Omnibus packages will stop, run migrations,
and start again, no matter how “big” or “small” the upgrade is. This behavior
can be changed by adding a <a href="https://docs.gitlab.com/ee/update/zero_downtime.html"><code>/etc/gitlab/skip-auto-reconfigure</code></a> file,
which is only used for <a href="https://docs.gitlab.com/omnibus/update/README.html">updates</a>.</p>
<h2 id="updating">Updating</h2>
<p>To update, check out our <a href="https://about.gitlab.com/update/">update page</a>.</p>
<h2 id="gitlab-subscriptions">GitLab subscriptions</h2>
<p>Access to GitLab Premium and Ultimate features is granted by a paid <a href="https://about.gitlab.com/pricing/">subscription</a>.</p>
<p>Alternatively, <a href="https://gitlab.com/users/sign_in">sign up for GitLab.com</a>
to use GitLab&rsquo;s own infrastructure.</p>
<h2 id="were-combining-patch-and-security-releases">We’re combining patch and security releases</h2>
<p>This improvement in our release process matches the industry standard and will help GitLab users get information about security and
bug fixes sooner, <a href="https://about.gitlab.com/blog/were-combining-patch-and-security-releases/">read the blog post here</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 17.7.1, 17.6.3, 17.5.5</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-7-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-7-1-released/</id><published>2025-01-08T00:00:00Z</published><updated>2025-01-08T00:00:00Z</updated><author><name>Greg Alfaro</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On January 8, 2025, we released versions 17.7.1, 17.6.3, 17.5.5 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases, and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, you can visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h2 id="changes-to-imports">Changes to Imports</h2>
<p>GitLab released a new user contribution and membership mapping feature for GitLab importers, including Direct Transfer, GitHub, Bitbucket Server, and Gitea importers. This feature is available by default from GitLab 17.7.1. More information on the feature and availability can be found in a <a href="https://about.gitlab.com/blog/streamline-migrations-with-user-contribution-and-membership-mapping/">blog post</a> and in the documentation <a href="https://docs.gitlab.com/ee/user/project/import/index.html#user-contribution-and-membership-mapping">here</a>.</p>
<h3 id="why-gitlab-changed-its-importer-functionality">Why GitLab changed its importer functionality</h3>
<p>Vulnerabilities (<a href="https://nvd.nist.gov/vuln/detail/CVE-2024-5655">CVE-2024-5655</a>, <a href="https://nvd.nist.gov/vuln/detail/CVE-2024-6385">CVE-2024-6385</a>, <a href="https://nvd.nist.gov/vuln/detail/CVE-2024-6678">CVE-2024-6678</a>, <a href="https://nvd.nist.gov/vuln/detail/CVE-2024-8970">CVE-2024-8970</a>) affecting import functionality were discovered through our HackerOne bug bounty program. To address these vulnerabilities and further enhance security, GitLab redesigned the importers’ user contribution mapping functionality.</p>
<h3 id="whats-changing">What’s changing?</h3>
<ol>
<li><strong>Post-import mapping</strong>: Previously unavailable, this feature allows you to assign imported contributions and memberships to users on the destination instance after completing the import. Imported memberships and contributions are first mapped to placeholder users. Until they are reassigned, contributions will be displayed as associated with placeholders.</li>
<li><strong>Email-independent mapping</strong>: The new process doesn&rsquo;t rely on email addresses, allowing you to map contributions for users with different email addresses on source and destination instances.</li>
<li><strong>User control</strong>: Each user on the destination instance assigned a contribution mapping must <a href="https://docs.gitlab.com/ee/user/project/import/#accept-contribution-reassignment">accept the assignment</a> before any imported contributions are attributed to them. They can also <a href="https://docs.gitlab.com/ee/user/project/import/#reject-contribution-reassignment">reject the assignment</a>.</li>
</ol>
<p>Full details describing improved user contribution and membership mapping features are available in the GitLab docs <a href="https://docs.gitlab.com/ee/user/project/import/#user-contribution-and-membership-mapping">here</a>.</p>
<h3 id="guidance-for-gitlab-self-managed--dedicated-customers">Guidance for GitLab Self-Managed &amp; Dedicated Customers</h3>
<ol>
<li>
<p>Exploitation requires that an attacker have an authenticated user account on the target GitLab instance. Therefore, the risk is primarily limited to insider threats unless you allow open internet access <strong>and</strong> public registrations.</p>
</li>
<li>
<p>GitLab strongly recommends disabling importers until your GitLab instance is upgraded to version 17.7.1 or later. You can disable import features by:</p>
<ol>
<li>Logging in as a GitLab instance administrator user</li>
<li>Go to Admin &gt; Settings &gt; General &gt; Import and Export settings</li>
<li>Uncheck the box next to each enabled importer</li>
<li>Click Save Changes</li>
</ol>
</li>
<li>
<p>If you must enable an importer, GitLab recommends temporarily enabling it during an import and disabling the feature after the import is complete.</p>
</li>
<li>
<p>GitLab Self-Managed with Direct Transfer (beta feature) or GitHub, Bitbucket Server, or Gitea importers enabled may be vulnerable and should be upgraded immediately.</p>
</li>
</ol>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-7-1-released/#possible-access-token-exposure-in-gitlab-logs">Possible access token exposure in GitLab logs</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-7-1-released/#cyclic-reference-of-epics-leads-resource-exhaustion">Cyclic reference of epics leads resource exhaustion</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-7-1-released/#unauthorized-user-can-manipulate-status-of-issues-in-public-projects">Unauthorized user can manipulate status of issues in public projects</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-7-1-released/#instance-saml-does-not-respect-external_provider-configuration">Instance SAML does not respect <code>external_provider</code> configuration</a></td>
          <td>Medium</td>
      </tr>
  </tbody>
</table>
<h3 id="possible-access-token-exposure-in-gitlab-logs">Possible access token exposure in GitLab logs</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting from 17.4 prior to 17.5.5, starting from 17.6 prior to 17.6.3, and starting from 17.7 prior to 17.7.1. Under certain conditions, access tokens may have been logged when API requests were made in a specific manner.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:N</code></a>, 6.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-0194">CVE-2025-0194</a>.</p>
<p>This vulnerability has been discovered internally by GitLab team member <a href="https://gitlab.com/tkuah">Thong Kuah</a>.</p>
<h3 id="cyclic-reference-of-epics-leads-resource-exhaustion">Cyclic reference of epics leads resource exhaustion</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting from 15.7 prior to 17.5.5, starting from 17.6 prior to 17.6.3, and starting from 17.7 prior to 17.7.1. It was possible to trigger a DoS by creating cyclic references between epics.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L</code></a>, 4.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-6324">CVE-2024-6324</a>.</p>
<p>Thanks <a href="https://hackerone.com/xorz">xorz</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="unauthorized-user-can-manipulate-status-of-issues-in-public-projects">Unauthorized user can manipulate status of issues in public projects</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting from 15.5 before 17.5.5, 17.6 before 17.6.3, and 17.7 before 17.7.1, in which unauthorized users could manipulate the status of issues in public projects.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N</code></a>, 4.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-12431">CVE-2024-12431</a>.</p>
<p>Thanks <a href="https://hackerone.com/pwnie">pwnie</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="instance-saml-does-not-respect-external_provider-configuration">Instance SAML does not respect <code>external_provider</code> configuration</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting from 16.4 prior to 17.5.5, starting from 17.6 prior to 17.6.3, and starting from 17.7 prior to 17.7.1. When a user is created via the SAML provider, the external groups setting overrides the external provider configuration. As a result, the user may not be marked as external thereby giving those users access to internal projects or groups.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:N</code></a>, 4.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-13041">CVE-2024-13041</a>.</p>
<p>This vulnerability has been discovered internally by GitLab team member <a href="https://gitlab.com/dblessing">Drew Blessing</a>.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1771">17.7.1</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2151">Cherry pick fix for gsutil into &lsquo;17-7-stable&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/7533">backport 17.7.x: Downgrade grpc-go to v1.66.3</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/176091">Backport  Revert &ldquo;Merge branch &lsquo;improve_reference_rewriter_to_work_cross_groups&rsquo; into &lsquo;master&rsquo;&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/176128">17.7 Backport Reject system notes when indexing notes on work items</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/176577">Merge branch &lsquo;andrey-fix-qa-spec&rsquo; into 17.7</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/176356">Merge branch &lsquo;release-unique-users&rsquo; into 17.7</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/176507">Fix CI job token signing key not always generated</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/176508">Update acme-client to v2.0.19</a></li>
</ul>
<h3 id="1763">17.6.3</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2125">Cherry pick &lsquo;2125-base-force-upgrade-ubi&rsquo; into &lsquo;17-6-stable&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2152">Cherry pick fix for gsutil into &lsquo;17-6-stable&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/7535">backport 17.6.x: Downgrade grpc-go to v1.66.3</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/175367">Backport Advanced Search: Set engine for OpenSearch indices</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/175272">17.6: Fix ability to use password for Git when password for Web is disabled</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/175307">Backport running release-environments QA from the stable branch to 17.6</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/175596">Backport &lsquo;fix-env-var-for-release-environments-qa&rsquo; 17.6</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/175859">Backport &lsquo;dattang/fix-build-gdk-image-script&rsquo; to 17.6</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/175657">Backport fix for diff_files highlights preload to 17.6</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/176514">Quarantines iteration qa spec</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/176738">Quarantine outdated user_views_iteration_spec.rb</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/176754">Quarantine date sensitive specs 17.6</a></li>
</ul>
<h3 id="1755">17.5.5</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2126">Cherry pick &lsquo;2125-base-force-upgrade-ubi&rsquo; into &lsquo;17-5-stable&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2153">Cherry pick fix for gsutil into &lsquo;17-5-stable&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/7536">backport 17.5.x: Update changelog for 17.5.0</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/175308">Backport running release-environments QA from the stable branch to 17.5</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/175364">Backport &lsquo;dattang/allow-release-environments-to-fail&rsquo; to 17.5</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/175733">Backport fix for diff_files highlights preload to 17.5</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/175858">Backport &lsquo;dattang/fix-build-gdk-image-script&rsquo; to 17.5</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/176596">Quarantines iteration qa spec</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/176739">Quarantine outdated user_views_iteration_spec.rb</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/176753">Quarantine date sensitive specs 17.5</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/176568">bump devfile gem to 0.0.28 patch</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/175274">17.5: Fix ability to use password for Git when password for Web is disabled</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<h2 id="were-combining-patch-and-security-releases">We’re combining patch and security releases</h2>
<p>This improvement in our release process matches the industry standard and will help GitLab users get information about security and
bug fixes sooner, <a href="https://about.gitlab.com/blog/were-combining-patch-and-security-releases/">read the blog post here</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab 17.7 released</title><link href="https://docs.gitlab.com/releases/17/17-7-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/17/17-7-released/</id><published>2024-12-19T00:00:00Z</published><updated>2024-12-19T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On December 19, 2024, GitLab 17.7 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong>Vedant Jain</strong>
</p>
<p>Everyone can <a href="https://gitlab.com/gitlab-org/developer-relations/contributor-success/team-task/-/issues/490">nominate GitLab&rsquo;s community contributors</a>!
Show your support for our active candidates or add a new nomination! 🙌</p>
<p>Vedant has been an outstanding community contributor, known for his proactive approach to contributing, his commitment to delivering, and his collaboration skills. He excels at taking on feedback, incorporating it into his work, and seeking assistance when needed, ensuring that his contributions are not only completed but also meet GitLab&rsquo;s standards.</p>
<p>His contributions include streamlining project management processes with <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/172191">Abstracted work item attributes to a single list/board</a>, <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/173033">Ordering of metadata on work items</a>, and feature development in <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/171228">Remember the collapsed state of work item widgets</a>. Vedant also fixed links in the UI to documentation (<a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/170633">1</a>, <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/170534">2</a>), helping the technical writing team as part of an important effort to improve UX across the entire product.</p>
<p><a href="https://gitlab.com/amandarueda">Amanda Rueda</a>, Sr. Product Manager, Product Planning at GitLab, nominated Vedant and highlighted his proactive and community-oriented mindset, &ldquo;Vedant&rsquo;s work not only addresses user needs but through his contributions, he is co-creating a more stable and reliable GitLab environment. By contributing to bug fixes, usability improvements, and maintenance efforts, he has played a vital role in enhancing the overall quality of the product. His proactive approach and cross-group contributions embody GitLab&rsquo;s core values of iteration, customer collaboration, and continuous improvement, making him a standout contributor in the community.&rdquo;</p>
<p>&ldquo;Thanks to everyone who helped me achieve my contributions,&rdquo; says Vedant. &ldquo;So grateful that I am able to make a good impact and looking forward to more contributions.&rdquo;</p>
<p>Vedant is a Frontend Engineer at Atlan, an active metadata platform for modern data teams, and a Google Summer of Code 2024 Mentor.</p>
<p>We are so grateful to Vedant for all of his contributions and to all of our open source community for contributing to GitLab!</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>New Planner user role</strong>
    <p>We&rsquo;ve introduced the new Planner role to give you tailored access to Agile planning tools like epics, roadmaps, and Kanban boards without over-provisioning <a href="https://docs.gitlab.com/ee/user/permissions.html">permissions</a>. This change helps you collaborate more effectively while keeping your workflows secure and aligned with the principle of least privilege.</p>
    <p><a href="https://docs.gitlab.com/ee/user/permissions.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Instance administrators can control which integrations can be enabled</strong>
    <p><p>Instance administrators can now configure an allowlist to control which integrations can be enabled on a GitLab instance. If an empty allowlist is configured, no integrations are allowed on the instance. After an allowlist is configured, new GitLab integrations are not on the allowlist by default.</p>
<p>Previously enabled integrations that are later blocked by the allowlist settings are disabled. If these integrations are allowed again, they are re-enabled with their existing configuration.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/settings/project_integration_management.html#integration-allowlist">View Documentation</a></p>
  </li>
  <li>
    <strong>New user contribution and membership mapping available in direct transfer</strong>
    <p><p>The new method of user contribution and membership mapping is now available when you migrate between GitLab instances by <a href="https://docs.gitlab.com/ee/user/group/import/index.html">direct transfer</a>. This feature offers flexibility and control for both users managing the import process and users receiving contribution reassignments. With the new method, you can:</p>
<ul>
<li>Reassign memberships and contributions to existing users on the destination instance after the import has completed. Any memberships and contributions you import are first mapped to placeholder users. All contributions appear associated with placeholders until you reassign them on the destination instance.</li>
<li>Map memberships and contributions for users with different email addresses on source and destination instances.</li>
</ul>
<p>When you reassign a contribution to a user on the destination instance, the user can accept or reject the reassignment.</p>
<p>For more information, see <a href="https://about.gitlab.com/blog/streamline-migrations-with-user-contribution-and-membership-mapping/">streamline migrations with user contribution and membership mapping</a>. To leave feedback, add a comment to <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/502565">issue 502565</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/import/#user-contribution-and-membership-mapping">View Documentation</a></p>
  </li>
  <li>
    <strong>Auto-resolve vulnerabilities when not found in subsequent scans</strong>
    <p><p>GitLab&rsquo;s <a href="https://docs.gitlab.com/ee/user/application_security/#security-scanning-tools">security scanning tools</a> help identify known vulnerabilities and potential weaknesses in your application code. Scanning feature branches surfaces new weaknesses or vulnerabilities so they can be remediated before merging. In the case of vulnerabilities already in your project&rsquo;s default branch, fixing these in a feature branch will mark the vulnerability as no longer detected when the next default branch scan runs. While it is informative to know which vulnerabilities are no longer detected, each must still be manually marked as Resolved to close them. This can be time consuming if there are many of these to resolve, even when using the new <a href="https://docs.gitlab.com/ee/user/application_security/vulnerability_report/#activity-filter">Activity filter</a> and <a href="https://docs.gitlab.com/ee/user/application_security/vulnerability_report/#change-status-of-vulnerabilities">bulk-changing status</a>.</p>
<p>We are introducing a new policy type <em>Vulnerability Management policy</em> for users who want vulnerabilities automatically set to Resolved when no longer detected by automated scanning. Simply configure a new policy with the new Auto-resolve option and apply it to the appropriate project(s). You can even configure the policy to only Auto-resolve vulnerabilities of a certain severity or from specific security scanners. Once in place, the next time the project&rsquo;s default branch is scanned, any existing vulnerabilities that are no longer found will be marked as Resolved. The action updates the vulnerability record with an activity note, timestamp when the action occurred, and the pipeline the vulnerability was determined to be removed in.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/policies/vulnerability_management_policy.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Rotate personal, project, and group access tokens in the UI</strong>
    <p><p>You can now use the UI to rotate personal, project, and group access tokens. Previously, you had to use the API to do this.</p>
<p>Thank you <a href="https://gitlab.com/shangsuru">shangsuru</a> for your contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html#revoke-or-rotate-a-personal-access-token">View Documentation</a></p>
  </li>
  <li>
    <strong>Track CI/CD component usage across projects</strong>
    <p><p>Central DevOps teams often need to track where their CI/CD components are used across pipelines to better manage and optimize them. Without visibility, it&rsquo;s challenging to identify outdated component use, understand adoption rates, or support component life cycles.</p>
<p>To address this, we&rsquo;ve added a new GraphQL query that enables DevOps teams to view a list of projects where a component is used across their organization&rsquo;s pipelines.
This capability empowers DevOps teams to enhance productivity and make better decisions by providing crucial insights.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/api/graphql/reference/index.html#cicatalogresourcecomponentusage">View Documentation</a></p>
  </li>
  <li>
    <strong>Small hosted runner on Linux Arm available to all Tiers</strong>
    <p><p>We are excited to introduce the small hosted runner on Linux Arm for GitLab.com, available for all tiers.
This 2 vCPUs Arm runner is fully integrated with GitLab CI/CD and allows you to
build and test applications natively on the Arm architecture.</p>
<p>We are determined to provide the industry’s fastest CI/CD build speed and look forward to seeing teams achieve even shorter feedback cycles and ultimately deliver software faster.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/runners/hosted_runners/linux.html">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Scale and Deployments</h4>
<ul>
  <li>
    <strong>Omnibus improvements</strong>
    <p><p>Because of a bug, FIPS Linux packages for GitLab 17.6 and earlier did not use the system Libgcrypt, but the same Libgcrypt bundled with regular Linux packages.</p>
<p>This issue is fixed for all FIPS Linux packages for GitLab 17.7, except for AmazonLinux 2. The Libgcrypt version of AmazonLinux 2 is not compatible with the GPGME and GnuPG versions shipped with the FIPS Linux packages.</p>
<p>FIPS Linux packages for AmazonLinux 2 will continue to use the same Libgcrypt bundled with the regular Linux packages, otherwise we would have to downgrade GPGME and GnuPG.</p>
</p>
    <p><a href="https://docs.gitlab.com/omnibus/">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>Improved detection accuracy in Advanced SAST</strong>
    <p><p>We&rsquo;ve updated Advanced SAST to detect the following vulnerability classes more accurately:</p>
<ul>
<li>C#: OS command injection and SQL injection.</li>
<li>Go: path traversal.</li>
<li>Java: code injection, CRLF injection in headers or logs, cross-site request forgery (CSRF), improper certificate validation, insecure deserialization, unsafe reflection, and XML external entity (XXE) injection.</li>
<li>JavaScript: code injection.</li>
</ul>
<p>We&rsquo;ve also improved detection of user input sources for C# (ASP.NET) and Java (JSF, HttpServlet) and updated severity levels for consistency.</p>
<p>To see which types of vulnerabilities Advanced SAST detects in each language, see <a href="https://docs.gitlab.com/ee/user/application_security/sast/advanced_sast_coverage.html">Advanced SAST coverage</a>.
To use this improved cross-file, cross-function scanning, <a href="https://docs.gitlab.com/ee/user/application_security/sast/gitlab_advanced_sast.html#enable-advanced-sast-scanning">enable Advanced SAST</a>.
If you&rsquo;ve already enabled Advanced SAST, the new rules are <a href="https://docs.gitlab.com/ee/user/application_security/sast/rules.html#how-rule-updates-are-released">automatically activated</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/sast/gitlab_advanced_sast.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Efficient risk prioritization with KEV</strong>
    <p><p>In GitLab 17.7, we added support for the Known Exploited Vulnerabilities Catalog (KEV). The <a href="https://www.cisa.gov/known-exploited-vulnerabilities-catalog">KEV Catalog</a> is maintained by CISA and curates listings of CVEs that have been exploited in the wild. You can leverage KEV to better prioritize scan results and to help evaluate the potential impact a vulnerability may have on your environment.</p>
<p>This data is available to composition analysis users through GraphQL. There is <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/427441">planned work</a> to support displaying this data in the GitLab UI.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/api/graphql/reference/#cveenrichmenttype">View Documentation</a></p>
  </li>
  <li>
    <strong>Expanded Code Flow view for Advanced SAST</strong>
    <p><p>The Advanced SAST <a href="https://docs.gitlab.com/ee/user/application_security/sast/gitlab_advanced_sast.html#vulnerability-code-flow">code flow view</a> is now available wherever vulnerabilities are shown, including the:</p>
<ul>
<li><a href="https://docs.gitlab.com/ee/user/application_security/vulnerability_report/">Vulnerability Report</a>.</li>
<li><a href="https://docs.gitlab.com/ee/user/application_security/sast/#merge-request-widget">Merge request security widget</a>.</li>
<li><a href="https://docs.gitlab.com/ee/user/application_security/vulnerability_report/pipeline.html">Pipeline security report</a>.</li>
<li><a href="https://docs.gitlab.com/ee/user/application_security/sast/#merge-request-changes-view">Merge request changes view</a>.</li>
</ul>
<p>The new views are enabled on GitLab.com. On GitLab self-managed, the new views are on by default starting in GitLab 17.7 (MR changes view) and GitLab 17.6 (all other views). For details on supported versions and feature flags, see <a href="https://docs.gitlab.com/ee/user/application_security/sast/gitlab_advanced_sast.html#code-flow-feature-availability">code flow feature availability</a>.</p>
<p>To learn more about Advanced SAST, see <a href="https://about.gitlab.com/blog/gitlab-advanced-sast-is-now-generally-available/">the announcement blog</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/sast/gitlab_advanced_sast.html#vulnerability-code-flow">View Documentation</a></p>
  </li>
  <li>
    <strong>New `/help` command in GitLab Duo Chat</strong>
    <p><p>Discover GitLab Duo Chat&rsquo;s powerful features! Just type <code>/help</code> in the chat message field to explore everything it can do for you.</p>
<p>Give it a try and see how GitLab Duo Chat can make your work smoother and more efficient.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/gitlab_duo_chat/examples.html#gitlab-duo-chat-slash-commands">View Documentation</a></p>
  </li>
  <li>
    <strong>Setting `environment.action: access` and `prepare` resets the `auto_stop_in` timer</strong>
    <p><p>Previously, when using the <code>action: prepare</code>, <code>action: verify</code>, and <code>action: access</code> jobs together with the <code>auto_stop_in</code> setting, the timer was not reset. Starting in 18.0, <code>action: prepare</code> and <code>action: access</code> will reset the timer, while <code>action: verify</code> leaves it untouched.</p>
<p>For now, you can change to the new implementation by enabling the <code>prevent_blocking_non_deployment_jobs</code> feature flag.</p>
<p>Multiple breaking changes are intended to differentiate the behavior of the <code>environment.action: prepare | verify | access</code> values. The <code>environment.action: access</code> keyword will remain the closest to its current behavior, except for the timer reset.</p>
<p>To prevent future compatibility issues, you should review your use of these keywords.
Learn more about these proposed changes in the following issues:</p>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/437132">Issue 437132</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/437133">Issue 437133</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/437142">Issue 437142</a></li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/yaml/#environmentauto_stop_in">View Documentation</a></p>
  </li>
  <li>
    <strong>Kubernetes 1.31 support</strong>
    <p><p>This release adds full support for Kubernetes version 1.31, released in August 2024. If you deploy your apps to Kubernetes, you can now upgrade your connected clusters to the most recent version and take advantage of all its features.</p>
<p>For more information, see our <a href="https://docs.gitlab.com/ee/user/clusters/agent/#supported-kubernetes-versions-for-gitlab-features">Kubernetes support policy and other supported Kubernetes versions</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/clusters/agent/#supported-kubernetes-versions-for-gitlab-features">View Documentation</a></p>
  </li>
  <li>
    <strong>Set namespace and Flux resource path from CI/CD job</strong>
    <p>To use the dashboard for Kubernetes, you need to select an agent for Kubernetes connection from the environment settings, and optionally configure a namespace and a Flux resource to track the reconciliation status. In GitLab 17.6, we added support for selecting an agent with a CI/CD configuration. However, configuring the namespace and the Flux resource still required you to use the UI or make an API call. In 17.7, you can fully configure the dashboard using the CI/CD syntax with the <code>environment.kubernetes.namespace</code> and <code>environment.kubernetes.flux_resource_path</code> attributes.</p>
    <p><a href="https://docs.gitlab.com/ee/ci/environments/kubernetes_dashboard.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Group and project access tokens in credentials inventory</strong>
    <p>Group and project access tokens are now visible in the credentials inventory on GitLab.com. Previously, only personal access tokens and SSH keys were visible. Additional token types in the inventory allow for a more complete picture of credentials across the group.</p>
    <p><a href="https://docs.gitlab.com/administration/credentials_inventory/">View Documentation</a></p>
  </li>
  <li>
    <strong>Extended token expiration notifications</strong>
    <p>Previously, token expiration email notifications were only sent seven days before expiry. Now, these notifications are also sent 30 and 60 days before expiry. The increased frequency and date range of notifications makes users more aware of tokens that may be expiring soon.</p>
    <p><a href="https://docs.gitlab.com/ee/security/tokens/">View Documentation</a></p>
  </li>
  <li>
    <strong>Unicode 15.1 emoji support 🦖🍋‍🟩🐦‍🔥</strong>
    <p><p>In previous versions of GitLab, emoji support was limited to an older Unicode standard, which meant some newer emojis were unavailable.</p>
<p>GitLab 17.7 introduces support for Unicode 15.1, bringing the latest emoji additions. This includes exciting new options like the t-rex 🦖, lime 🍋‍🟩, and phoenix 🐦‍🔥, allowing you to express yourself with the most up-to-date symbols.</p>
<p>Additionally, this update enhances emoji diversity, ensuring greater representation across cultures, languages,
and identities, helping everyone feel included when communicating on the platform.</p>
</p>
    <p><a href="https://gitlab-org.gitlab.io/ruby/gems/tanuki_emoji/">View Documentation</a></p>
  </li>
  <li>
    <strong>Set your preferred text editor as default</strong>
    <p><p>In this version, we&rsquo;re introducing the ability to set a default text editor for a more personalized editing experience. With this change, you can now choose between the rich text editor, the plain text editor, or opt for no default, allowing flexibility in how you create and edit content.</p>
<p>This update ensures smoother workflows by aligning the editor interface with individual preferences or team standards. With this enhancement, GitLab continues to prioritize customization and usability for all users.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/profile/preferences.html#set-the-default-text-editor">View Documentation</a></p>
  </li>
  <li>
    <strong>New description field for access tokens</strong>
    <p>When creating a personal, project, group, or impersonation access token, you can now optionally enter a description of that token. This helps provide extra context about the token, such as where and how is it used.</p>
    <p><a href="https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html#create-a-personal-access-token">View Documentation</a></p>
  </li>
  <li>
    <strong>Enable secret push protection in your groups with APIs</strong>
    <p>With this release, you can now enable secret push protection on all projects in your group via the <a href="https://docs.gitlab.com/ee/api/group_security_settings.html">REST API</a> and the <a href="https://docs.gitlab.com/ee/api/graphql/reference/index.html#mutationsetgroupsecretpushprotection">GraphQL API</a>. This allows you to efficiently enable secret push protection on a per-group basis instead of project by project. Audit events are logged every time push protection is enabled or disabled.</p>
    <p><a href="https://docs.gitlab.com/ee/api/group_security_settings.html">View Documentation</a></p>
  </li>
  <li>
    <strong>New API endpoint to list enterprise users</strong>
    <p>Group Owners can now use a dedicated API endpoint to list enterprise users and any associated attributes.</p>
    <p><a href="https://docs.gitlab.com/ee/api/group_enterprise_users.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Remove Owner base role from custom roles</strong>
    <p>The Owner base role is no longer available when creating a custom role as it provided no additional value because permissions are additive. Existing custom roles with the Owner base role are not impacted by this change.</p>
    <p><a href="https://docs.gitlab.com/ee/user/custom_roles.html#create-a-custom-role">View Documentation</a></p>
  </li>
  <li>
    <strong>Navigation and usability improvements for the compliance center</strong>
    <p><p>We continue to make iterative and important improvements to the compliance center&rsquo;s user experience for both groups
and projects.</p>
<p>With GitLab 17.7, we shipped two key improvements:</p>
<ul>
<li>Users can now filter by groups in the <strong>Projects</strong> tab of the compliance center, which gives another option
to users to apply, filter, and search for the appropriate project, and the compliance framework attached to that
project.</li>
<li>A project&rsquo;s compliance center now has a <strong>Frameworks</strong> tab, which allows users to search for compliance
frameworks attached to that particular project.</li>
</ul>
<p>Please note that adding or editing frameworks is still done on groups, not projects.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/compliance/compliance_center/compliance_frameworks_report.html">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab Patch Release: 17.6.2, 17.5.4, 17.4.6</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-6-2-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-6-2-released/</id><published>2024-12-11T00:00:00Z</published><updated>2024-12-11T00:00:00Z</updated><author><name>Costel Maxim</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On December 11, 2024, we released versions 17.6.2, 17.5.4, 17.4.6 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases, and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, you can visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-6-2-released/#injection-of-network-error-logging-nel-headers-in-kubernetes-proxy-response-could-lead-to-ato-abusing-oauth-flows">Injection of Network Error Logging (NEL) headers in kubernetes proxy response could lead to account takeover abusing OAuth flows</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-6-2-released/#denial-of-service-by-repeatedly-sending-unauthenticated-requests-for-diff-files">Denial of Service by repeatedly sending unauthenticated requests for diff-files</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-6-2-released/#ci_job_token-could-be-used-to-obtain-gitlab-session">CI_JOB_TOKEN could be used to obtain GitLab session</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-6-2-released/#open-redirect-in-releases-api">Open redirect in releases API</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-6-2-released/#client-side-path-traversal-in-harbor-artifact-links">Client-Side Path Traversal in Harbor artifact links</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-6-2-released/#html-injection-in-vulnerability-details-could-lead-to-cross-site-scripting">HTML injection in vulnerability details could lead to Cross Site Scripting</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-6-2-released/#leak-branch-names-of-projects-with-confidential-repository">Leak branch names of projects with confidential repository</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-6-2-released/#non-member-can-view-unresolved-threads-marked-as-internal-notes">Non member can view unresolved threads marked as internal notes</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-6-2-released/#uncontrolled-resource-consumption-through-a-maliciously-crafted--file">Uncontrolled Resource Consumption through a maliciously crafted  file</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-6-2-released/#certain-sensitive-information-passed-as-literals-inside-graphql-mutations-retained-in-graphql-logs">Certain sensitive information passed as literals inside GraphQL mutations retained in GraphQL logs</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-6-2-released/#information-disclosure-of-confidential-incidents-details-to-a-group-member-in-gitlab-wiki">Information disclosure of confidential incidents details to a group member in Gitlab Wiki</a></td>
          <td>Low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-6-2-released/#domain-confusion-in-gitlab-pages-unique-domain-implementation">Domain Confusion in GitLab Pages Unique Domain Implementation</a></td>
          <td>Low</td>
      </tr>
  </tbody>
</table>
<h3 id="injection-of-network-error-logging-nel-headers-in-kubernetes-proxy-response-could-lead-to-ato-abusing-oauth-flows">Injection of Network Error Logging (NEL) headers in kubernetes proxy response could lead to ATO abusing OAuth flows</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting from 16.1 before 17.4.6, starting from 17.5 before 17.5.4, and starting from 17.6 before 17.6.2, injection of Network Error Logging (NEL) headers in kubernetes proxy response could lead to session data exfiltration.
This is a high severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code></a>, 8.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-11274">CVE-2024-11274</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="denial-of-service-by-repeatedly-sending-unauthenticated-requests-for-diff-files">Denial of Service by repeatedly sending unauthenticated requests for diff-files</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions from 9.4 before 17.4.6, 17.5 before 17.5.4, and 17.6 before 17.6.2. An attacker could cause a denial of service with requests for diff files on a commit or merge request.
This is a high severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code></a>, 7.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-8233">CVE-2024-8233</a>.</p>
<p>Thanks <a href="https://hackerone.com/a92847865">a92847865</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="ci_job_token-could-be-used-to-obtain-gitlab-session">CI_JOB_TOKEN could be used to obtain GitLab session</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 13.7 before 17.4.6, from 17.5 before 17.5.4, and from 17.6 before 17.6.2. It may have been possible for an attacker with a victim&rsquo;s <code>CI_JOB_TOKEN</code> to obtain a GitLab session token belonging to the victim.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:L"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:L</code></a>, 6.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-12570">CVE-2024-12570</a>.</p>
<p>Thanks <a href="https://hackerone.com/yvvdwf">yvvdwf</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="open-redirect-in-releases-api">Open redirect in releases API</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions from 11.8 before 17.4.6, 17.5 before 17.5.4, and 17.6 before 17.6.2. An attacker could potentially perform an open redirect against a given releases API endpoint.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:N</code></a>, 6.4).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-9387">CVE-2024-9387</a>.</p>
<p>Thanks <a href="https://hackerone.com/swiftee">swiftee</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="client-side-path-traversal-in-harbor-artifact-links">Client-Side Path Traversal in Harbor artifact links</h3>
<p>An issue was discovered in GitLab affecting all versions starting 15.2 before 17.4.6, 17.5 before  17.5.4, and 17.6 before 17.6.2. On self hosted installs, it was possible to leak the cross site request forgery (CSRF) token to an external site while the Harbor integration was enabled.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N</code></a>, 5.4).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-8647">CVE-2024-8647</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="html-injection-in-vulnerability-details-could-lead-to-cross-site-scripting">HTML injection in vulnerability details could lead to Cross Site Scripting</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions from 17.3 before 17.4.6, 17.5 before 17.5.4, and 17.6 before 17.6.2. Improper output encoding could lead to Cross Site Scripting (XSS) if Content Security Policy (CSP) is not enabled.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N</code></a>, 5.4).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-8179">CVE-2024-8179</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="leak-branch-names-of-projects-with-confidential-repository">Leak branch names of projects with confidential repository</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions from 16.9 before 17.4.6, 17.5 before 17.5.4, and 17.6 before 17.6.2. By using a specific GraphQL query, under specific conditions an unauthorised user can retrieve branch names.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N</code></a>, 5.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-8116">CVE-2024-8116</a>.</p>
<p>Thanks <a href="https://hackerone.com/shells3c">shells3c</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="non-member-can-view-unresolved-threads-marked-as-internal-notes">Non member can view unresolved threads marked as internal notes</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions from 15.0 before 17.4.6, 17.5 before 17.5.4, and 17.6 before 17.6.2 that allowed non-member users to view unresolved threads marked as internal notes in public projects merge requests.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N</code></a>, 5.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-8650">CVE-2024-8650</a>.</p>
<p>Thanks <a href="https://hackerone.com/salh4ckr">salh4ckr</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="uncontrolled-resource-consumption-through-a-maliciously-crafted--file">Uncontrolled Resource Consumption through a maliciously crafted  file</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting from 13.9 before 17.4.6, 17.5 before 17.5.4, and 17.6 before 17.6.2, that allows an attacker to cause uncontrolled resource consumption, potentially leading to a Denial of Service (DoS) condition while parsing templates to generate changelogs.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L</code></a>, 4.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-9367">CVE-2024-9367</a>.</p>
<p>Thanks <a href="https://hackerone.com/l33thaxor">l33thaxor</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="certain-sensitive-information-passed-as-literals-inside-graphql-mutations-retained-in-graphql-logs">Certain sensitive information passed as literals inside GraphQL mutations retained in GraphQL logs</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting from 11.0 before 17.4.6, starting from 17.5 before 17.5.4, and starting from 17.6 before 17.6.2, where sensitive information passed in GraphQL mutations may have been retained in GraphQL logs.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N</code></a>, 4.0).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-12292">CVE-2024-12292</a>.</p>
<p>This issue was discovered internally by GitLab team member <a href="https://gitlab.com/radbatnag">Radamanthus Batnag</a>.</p>
<h3 id="information-disclosure-of-confidential-incidents-details-to-a-group-member-in-gitlab-wiki">Information disclosure of confidential incidents details to a group member in Gitlab Wiki</h3>
<p>An issue has been discovered in GitLab EE affecting all versions starting from 14.3 before 17.4.6, all versions starting from 17.5 before 17.5.4 all versions starting from 17.6 before 17.6.2, that allows group users to view confidential incident title through the Wiki History Diff feature, potentially leading to information disclosure.
This is a low severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>, 3.1).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-10043">CVE-2024-10043</a>.</p>
<p>Thanks <a href="https://hackerone.com/mateuszek">mateuszek</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="domain-confusion-in-gitlab-pages-unique-domain-implementation">Domain Confusion in GitLab Pages Unique Domain Implementation</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 16.3 before 17.4.2, all versions starting from 17.5 before 17.5.4, all versions starting from 17.6 before 17.6.2. This issue allows an attacker to create a group with a name matching an existing unique Pages domain, potentially leading to domain confusion attacks.
This is a low severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:L"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:L</code></a>, 3.1).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-9633">CVE-2024-9633</a>.</p>
<p>Thanks <a href="https://hackerone.com/psycho_012">psycho_012</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1762">17.6.2</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2120">Upgrade to Postgres 16.6 for client libraries, openssl 3.2</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/173193">Fix 401 errors when installing the GitLab for Jira app</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/174008">Backport &lsquo;dattang/allow-release-environments-to-fail&rsquo; to 17.6</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/174254">Backport &lsquo;always-build-qa-image-for-release-environments&rsquo; to 17.6</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/174291">Add guard clause to Wiki#find_page when title is nil</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/174583">Merge branch &lsquo;498768-graphql-subscriptions-ignore-unauthorized-error&rsquo; into &lsquo;17-6-stable-ee&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/174512">Merge branch &rsquo;nd/fix-progressbar-progress&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/174700">Backport 17-6 Remove unused matched_lines_count</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/174701">Backport Zoekt indices without zoekt_repositories stuck in initializing</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/174549">Backport &lsquo;Zoekt: Do not process failed repos&rsquo; into 17.6</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/174214">Bump devfile gem to 0.1.1</a></li>
</ul>
<h3 id="1754">17.5.4</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2121">Upgrade to Postgres 16.6 for client libraries, openssl 3.2</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/173196">Fix 401 errors when installing the GitLab for Jira app</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/174255">Backport &lsquo;always-build-qa-image-for-release-environments&rsquo; to 17.5</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/174581">Merge branch &lsquo;498768-graphql-subscriptions-ignore-unauthorized-error&rsquo; into &lsquo;17-5-stable-ee&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/171140">Backport https://gitlab.com/gitlab-org/gitlab/-/merge_requests/170141 into 17.5</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/175190">Quarantine Custom model features specs</a></li>
</ul>
<h3 id="1746">17.4.6</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2122">Upgrade to Postgres 16.6 for client libraries, openssl 3.2</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/173428">Add param filtering to avoid error while saving project settings</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/173197">Fix 401 errors when installing the GitLab for Jira app</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/174256">Backport &lsquo;always-build-qa-image-for-release-environments&rsquo; to 17.4</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/174756">Backport fix for flaky tests in search_results spec</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<h2 id="were-combining-patch-and-security-releases">We’re combining patch and security releases</h2>
<p>This improvement in our release process matches the industry standard and will help GitLab users get information about security and
bug fixes sooner, <a href="https://about.gitlab.com/blog/were-combining-patch-and-security-releases/">read the blog post here</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 17.6.1, 17.5.3, 17.4.5</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-6-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-6-1-released/</id><published>2024-11-26T00:00:00Z</published><updated>2024-11-26T00:00:00Z</updated><author><name>Ottilia Westerlund</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On November 26, 2024, we released versions 17.6.1, 17.5.3, 17.4.5 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases, and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, you can visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-6-1-released/#privilege-escalation-via-lfs-tokens">Privilege Escalation via LFS Tokens</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-6-1-released/#dos-through-uncontrolled-resource-consumption-when-viewing-a-maliciously-crafted-cargotoml-file">DoS through uncontrolled resource consumption when viewing a maliciously crafted cargo.toml file.</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-6-1-released/#unintended-access-to-usage-data-via-scoped-tokens">Unintended access to Usage Data via Scoped Tokens</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-6-1-released/#gitlab-dos-via-harbor-registry-integration">Gitlab DOS via Harbor registry integration</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-6-1-released/#resource-exhaustion-and-denial-of-service-with-test_report-api-calls">Resource exhaustion and denial of service with test_report API calls</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-6-1-released/#streaming-endpoint-did-not-invalidate-tokens-after-revocation">Streaming endpoint did not invalidate tokens after revocation</a></td>
          <td>Medium</td>
      </tr>
  </tbody>
</table>
<h3 id="privilege-escalation-via-lfs-tokens">Privilege Escalation via LFS Tokens</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions from 8.12 before 17.4.5, 17.5 before 17.5.3, and 17.6 before 17.6.1. This issue allows an attacker with access to a victim&rsquo;s Personal Access Token (PAT) to escalate privileges.
This is a high severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:N </code></a>, 8.2).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-8114">CVE-2024-8114</a>.</p>
<p>Thanks <a href="https://hackerone.com/pwnie">pwnie</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="dos-through-uncontrolled-resource-consumption-when-viewing-a-maliciously-crafted-cargotoml-file">DoS through uncontrolled resource consumption when viewing a maliciously crafted cargo.toml file.</h3>
<p>A Denial of Service (DoS) issue has been discovered in GitLab CE/EE affecting all versions prior to 12.6 prior to 17.4.5, 17.5 prior to 17.5.3, and 17.6 prior to 17.6.1. An attacker could cause a denial of service with a crafted cargo.toml file.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>, 6.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-8237">CVE-2024-8237</a>.</p>
<p>Thanks <a href="https://hackerone.com/l33thaxor">l33thaxor</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="unintended-access-to-usage-data-via-scoped-tokens">Unintended Access to Usage Data via Scoped Tokens</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions from 16.9.8 before 17.4.5, 17.5 before 17.5.3, and 17.6 before 17.6.1. Certain API endpoints could potentially allow unauthorized access to sensitive data due to overly broad application of token scopes.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:N</code></a>, 6.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-11669">CVE-2024-11669</a>.</p>
<p>This vulnerability has been discovered internally by a GitLab team member, <a href="https://gitlab.com/DylanGriffith">Dylan Griffith</a>.</p>
<h3 id="gitlab-dos-via-harbor-registry-integration">Gitlab DOS via Harbor registry integration</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting from 15.6 prior to 17.4.5, starting from 17.5 prior to 17.5.3, starting from 17.6 prior to 17.6.1 which could cause Denial of Service via integrating a malicious harbor registry.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>, 5.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-8177">CVE-2024-8177</a>.</p>
<p>Thanks <a href="https://hackerone.com/a92847865">a92847865</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="resource-exhaustion-and-denial-of-service-with-test_report-api-calls">Resource exhaustion and denial of service with test_report API calls</h3>
<p>A denial of service (DoS) condition was discovered in GitLab CE/EE affecting all versions from 13.2.4 before 17.4.5, 17.5 before 17.5.3, and 17.6 before 17.6.1. By leveraging this vulnerability an attacker could create a DoS condition by sending crafted API calls.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L</code></a>, 4.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-11828">CVE-2024-11828</a>.</p>
<p>Thanks <a href="https://hackerone.com/luryus">luryus</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="streaming-endpoint-did-not-invalidate-tokens-after-revocation">Streaming endpoint did not invalidate tokens after revocation</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions from 16.11 before 17.4.5, 17.5 before 17.5.3, and 17.6 before 17.6.1. Long-lived connections could potentially bypass authentication controls, allowing unauthorized access to streaming results.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:N</code></a>, 4.2).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-11668">CVE-2024-11668</a>.</p>
<p>This vulnerability has been discovered internally by GitLab team members, <a href="https://gitlab.com/DylanGriffith">Dylan Griffith</a> and <a href="https://gitlab.com/engwan">Heinrich Lee Yu</a>.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1761">17.6.1</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/173427">Revert &ldquo;Merge branch &lsquo;include-sec-in-sidekiq-worker-attributes-concern&rsquo; into &lsquo;master&rsquo;&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/173288">Revert &ldquo;Merge branch &lsquo;421376-part-1-move-history-button&rsquo; into &lsquo;master&rsquo;&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/173464">Backport to 17.6 the fix for sbom ingestion failure when license spdx id is nil</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/173593">Cherry-pick &lsquo;jennli-patch-compile-prod-assets-rules&rsquo; into 17-6-stable-ee</a></li>
</ul>
<h3 id="1753">17.5.3</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/172339">Disable http router in tests</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/171715">Ensure auto_merge_enabled is set when validating merge trains</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/172391">Backport Index work items when project visibility level changes</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/172767">Backport fix for token revocation to 17.5</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/172871">Backport Publish AuthorizationsAddedEvent with multiple projects</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/173185">Make assertion order independent</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/173594">Cherry-pick &lsquo;jennli-patch-compile-prod-assets-rules&rsquo; into 17-5-stable-ee</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<h2 id="were-combining-patch-and-security-releases">We’re combining patch and security releases</h2>
<p>This improvement in our release process matches the industry standard and will help GitLab users get information about security and
bug fixes sooner, <a href="https://about.gitlab.com/blog/were-combining-patch-and-security-releases/">read the blog post here</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab 17.6 released</title><link href="https://docs.gitlab.com/releases/17/17-6-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/17/17-6-released/</id><published>2024-11-21T00:00:00Z</published><updated>2024-11-21T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On November 21, 2024, GitLab 17.6 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong>Joel Gerber</strong>
</p>
<p>Everyone can <a href="https://gitlab.com/gitlab-org/developer-relations/contributor-success/team-task/-/issues/490">nominate GitLab&rsquo;s community contributors</a>!
Show your support for our active candidates or add a new nomination! 🙌</p>
<p>Joel was recognized for being an invaluable contributor to our CI components, offering insightful feedback on merge requests,
and thoughtful comments on complex discussions.
His contributions include <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/464703">UI polish for the CI/CD catalog</a>,
highly requested documentation improvements for the GitLab Terraform Provider, <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/164595">job log timestamps</a>,
and <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/482524#note_2089551197">providing feedback to the UI/UX team</a>.</p>
<p>Joel is a Staff Software Engineer at <a href="https://www.hackerone.com/">HackerOne</a> and was nominated by
<a href="https://gitlab.com/leetickett-gitlab">Lee Tickett</a>, Staff FullStack Engineer, Contributor Success at GitLab,
for his contributions and for providing valuable feedback.</p>
<p><a href="https://gitlab.com/gdoyle">Gina Doyle</a>, Senior Product Designer at GitLab, added to the nomination.
&ldquo;There was a lot of discussion going on internally that led the MR process to be more complicated,&rdquo; says Gina.
&ldquo;But Joel stayed strong and active within the discussion and completed the contribution.&rdquo;</p>
<p>&ldquo;Joel also contributed to the UI polish on the CI/CD catalog issue,&rdquo; says <a href="https://gitlab.com/sunjungp">Sunjung Park</a>,
Staff Product Designer at GitLab.
&ldquo;It makes our user interface beautiful and consistent with other areas.&rdquo;</p>
<p>We are so grateful to Joel for all of his contributions and to all of our open source community for contributing to GitLab!</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>Use self-hosted model for GitLab Duo Chat</strong>
    <p><p>You can now host selected large language models (LLMs) in your own infrastructure and configure those models as the source for GitLab Duo Chat. This feature is in beta and available with an Ultimate and Duo Enterprise subscription on self-managed GitLab environments.</p>
<p>With self-hosted models, you can use models hosted either on-premise or in a private cloud as the source for GitLab Duo Chat or Code Suggestions (introduced as a beta feature in GitLab 17.5). For Code Suggestions, we currently support open-source Mistral models on vLLM or AWS Bedrock, Claude 3.5 Sonnet on AWS Bedrock, and OpenAI models on Azure OpenAI. For Chat, we currently support open-source Mistral models on vLLM or AWS Bedrock, and Claude 3.5 Sonnet on AWS Bedrock. By enabling self-hosted models, you can leverage the power of generative AI while maintaining complete data sovereignty and privacy.</p>
<p>Please leave feedback in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/501268">issue 501268</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/self_hosted_models/">View Documentation</a></p>
  </li>
  <li>
    <strong>Enhanced merge request reviewer assignments</strong>
    <p><p>After you&rsquo;ve carefully crafted your changes and prepared a merge request, the next step is to identify reviewers who can help move it forward. Identifying the right reviewers for your merge request involves understanding who the right approvers are, and who might be a subject matter expert (CODEOWNER) for the changes you&rsquo;re proposing.</p>
<p>Now, when assigning reviewers, the sidebar creates a connection between the approval requirements for your merge request and reviewers. View each approval rule, then select from approvers who can satisfy that approval rule and move the merge request forward for you. If you use <a href="https://docs.gitlab.com/ee/user/project/codeowners/#make-a-code-owners-section-optional">optional CODEOWNER sections</a> those rules are also shown in the sidebar to help you identify appropriate subject matter experts for your changes.</p>
<p>Enhanced reviewer assignments is the next evolution of applying intelligence to assigned reviewers in GitLab. This iteration builds on what we&rsquo;ve learned from suggested reviewers, and how to effectively identify the best reviewers for moving a merge request forward. In <a href="https://gitlab.com/groups/gitlab-org/-/epics/14808">upcoming iterations</a> of reviewer assignments, we&rsquo;ll continue to enhance the intelligence used to recommend and rank possible reviewers.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/merge_requests/reviews/#request-a-review">View Documentation</a></p>
  </li>
  <li>
    <strong>Support for private container registries in workspaces</strong>
    <p><p>GitLab workspaces now offer support for private container registries. With this setup, you can pull container images from any private registry of your choice. As long as your Kubernetes cluster has a valid image pull secret, you can reference the secret in your <a href="https://docs.gitlab.com/ee/user/workspace/gitlab_agent_configuration.html">GitLab agent configuration</a>.</p>
<p>This feature simplifies workflows, especially for teams that use custom or third-party container registries, and improves the flexibility and security of containerized development environments.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/workspace/configuration.html#configure-support-for-private-container-registries">View Documentation</a></p>
  </li>
  <li>
    <strong>Extension marketplace now available in workspaces</strong>
    <p><p>The extension marketplace is now available in workspaces. With the extension marketplace, you can discover, install, and manage third-party extensions to enhance your development experience. Choose from thousands of extensions to boost your productivity or customize your workflow.</p>
<p>The extension marketplace is disabled by default. To get started, go to your user preferences and <a href="https://docs.gitlab.com/ee/user/profile/preferences.html#integrate-with-the-extension-marketplace">enable the extension marketplace</a>. For enterprise users, only users with the Owner role for a top-level group can <a href="https://docs.gitlab.com/ee/user/enterprise_user/#enable-the-extension-marketplace-for-the-web-ide-and-workspaces">enable the extension marketplace</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/web_ide/index.html#extension-marketplace">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved workspace lifecycle with delayed termination</strong>
    <p><p>With this release, a workspace now stops rather than terminates after the configured timeout has elapsed. This feature means you can always restart your workspaces and pick up where you left off.</p>
<p>By default, a workspace automatically:</p>
<ul>
<li>Stops 36 hours after the workspace was last started or restarted</li>
<li>Terminates 722 hours after the workspace was last stopped</li>
</ul>
<p>You can configure these settings in your <a href="https://docs.gitlab.com/ee/user/workspace/gitlab_agent_configuration.html">GitLab agent configuration</a>.</p>
<p>With this feature, a workspace remains available for approximately one month after it was stopped. This way, you get to keep your progress while optimizing workspace resources.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/workspace/#automatic-workspace-stop-and-termination">View Documentation</a></p>
  </li>
  <li>
    <strong>Display release notes on deployment details page</strong>
    <p><p>Have you ever wondered what might be included in a deployment you&rsquo;ve been asked to approve? In past versions, you could create a release with a detailed description about its content and instructions for testing, but the related environment-specific deployment did not show this data. We are happy to share that GitLab now displays the release notes under the related deployment details page.</p>
<p>Because GitLab releases are always created from a Git tag, the release notes are shown only on deployments related to the tag-triggered pipeline.</p>
<p>This feature was contributed to GitLab by <a href="https://gitlab.com/antonkalmykov">Anton Kalmykov</a>. Thank you!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/environments/deployment_approvals.html#view-blocked-deployments">View Documentation</a></p>
  </li>
  <li>
    <strong>Admin setting to enforce CI/CD job token allowlist</strong>
    <p><p>Previously, we announced that the default CI/CD job token (<code>CI_JOB_TOKEN</code>) behavior <a href="https://docs.gitlab.com/ee/update/deprecations.html#default-cicd-job-token-ci_job_token-scope-changed">will change in GitLab 18.0</a>, requiring you to explicitly add indvidual <a href="https://docs.gitlab.com/ee/ci/jobs/ci_job_token.html#add-a-group-or-project-to-the-job-token-allowlist">projects or groups to your project&rsquo;s job token allowlist</a> if you want them to continue to be able to access your project.</p>
<p>Now, we are giving self-managed and Dedicated instance administrators the ability to enforce this more secure setting on all projects on an instance. After you enable this setting, all projects will need to make use of their allowlist if they want to use CI/CD job tokens for authentication. <em>Note: We recommend enabling this setting as part of a strong security policy.</em></p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/settings/continuous_integration.html#job-token-permissions">View Documentation</a></p>
  </li>
  <li>
    <strong>Track CI/CD job token authentications</strong>
    <p><p>Previously it was difficult to track which other projects were using accessing your project by authenticating with CI/CD job tokens. To make it easier for you to audit and control access to your project, we&rsquo;ve added an authentication log.</p>
<p>With this authentication log, you can view the list of other projects that have used a job token to authenticate with your project, both in the UI and as a downloadable CSV file. This data can be used to audit project access and aid in populating the job token allowlist to enable stronger <a href="https://docs.gitlab.com/ee/ci/jobs/ci_job_token.html#control-job-token-access-to-your-project">control over which projects can access your project</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/jobs/ci_job_token.html#job-token-authentication-log">View Documentation</a></p>
  </li>
  <li>
    <strong>Vulnerability report grouping</strong>
    <p>Users require the ability to view vulnerabilities in groups. This will help security analysts optimize their triage tasks by utilizing bulk actions. In addition users can see how many vulnerabilities match their group; i.e. how many OWASP Top 10 vulnerabilities are there?</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/vulnerability_report/#group-vulnerabilities">View Documentation</a></p>
  </li>
  <li>
    <strong>Model registry now generally available</strong>
    <p><p>GitLab&rsquo;s model registry, now generally available, is your centralized hub for managing machine learning models as part of your existing GitLab workflow. You can track model versions, store artifacts and metadata, and maintain comprehensive documentation in the model card.</p>
<p>Built for seamless integration, the model registry works natively with <a href="https://docs.gitlab.com/ee/user/project/ml/experiment_tracking/mlflow_client.html">MLflow clients</a> and connects directly to your CI/CD pipelines, enabling automated model deployment and testing. Data scientists can manage models through an intuitive UI or existing MLflow workflows, while MLOps teams can leverage semantic versioning and CI/CD integration for streamlined production deployments all within the <a href="https://docs.gitlab.com/ee/api/model_registry.html">GitLab API</a>.</p>
<p>Please feel free to drop us a note in our <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/504458">feedback issue</a> and we&rsquo;ll get back in touch! Get started today by going to <strong>Deploy &gt; Model registry</strong> in your GitLab instance.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/ml/model_registry/">View Documentation</a></p>
  </li>
  <li>
    <strong>New tenant networking configurations for GitLab Dedicated</strong>
    <p><p>As a GitLab Dedicated tenant administrator, you can now use Switchboard to set up outbound private links and private hosted zones. You can also monitor your network connections by viewing periodic snapshots in Switchboard.</p>
<p>Outbound private links and private hosted zones establish secure network connectivity between resources in your AWS account and GitLab Dedicated.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/dedicated/configure_instance/network_security.html#outbound-private-link">View Documentation</a></p>
  </li>
  <li>
    <strong>New adherence checks for SAST and DAST security scanners</strong>
    <p><p>GitLab offers a wide range of security scanners such as SAST, secret detection, dependency scanning, container scanning, and more
so that you can check your applications for security vulnerabilities.</p>
<p>You need to have a way to show auditors and relevant compliance authorities that your applications have adhered to regulatory standards that require you to have security
scanners set up for your repositories.</p>
<p>To help you demonstrate adherence to these standards, this release includes two new checks as part of the standard adherence report in the Compliance Centre. These
new checks check whether SAST and DAST has been enabled for projects within a group. The checks confirm that the SAST and DAST security scanners
correctly ran in a project and the pipeline results has the correct resulting artifacts.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/compliance/compliance_center/compliance_standards_adherence_dashboard.html#gitlab-standard">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Scale and Deployments</h4>
<ul>
  <li>
    <strong>Project events for group webhooks</strong>
    <p><p>In this release, we&rsquo;ve added project events to group webhooks. Project events are triggered when:</p>
<ul>
<li>A project is created in a group.</li>
<li>A project is deleted in a group.</li>
</ul>
<p>These events are triggered for <a href="https://docs.gitlab.com/ee/user/project/integrations/webhooks.html#group-webhooks">group webhooks</a> only.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/integrations/webhook_events.html#project-events">View Documentation</a></p>
  </li>
  <li>
    <strong>Filter GitLab Duo users by assigned seat</strong>
    <p>In previous versions of GitLab, the user list displayed on the GitLab Duo seat assignment page could not be filtered, making it difficult to see which users had previously been assigned a GitLab Duo seat. Now, you can filter your user list by Assigned seat = Yes or Assigned seat = No to see to see which users are currently assigned or not assigned a GitLab Duo seat, allowing for ease in adjusting seat allocations.</p>
    <p><a href="https://docs.gitlab.com/ee/subscriptions/subscription-add-ons.html#view-assigned-gitlab-duo-users">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Duo seat assignment email update</strong>
    <p><p>All users on self-managed instances will receive an email when they are assigned a GitLab Duo seat.</p>
<p>Previously, those assigned a Duo Enterprise seat or those granted access by bulk assignment would not be notified. You wouldn&rsquo;t know you were assigned a seat unless someone told you, or you noticed new functionality in the GitLab UI.</p>
<p>To disable this email, an administrator can disable the <code>duo_seat_assignment_email_for_sm</code> feature flag.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/subscriptions/subscription-add-ons.html#assign-gitlab-duo-seats">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>Efficient risk prioritization with EPSS</strong>
    <p><p>In GitLab 17.6, we added support for the Exploit Prediction Scoring System (EPSS). EPSS gives each CVE a score between 0 and 1 indicating the probability of the CVE being exploited in the next 30 days. You can leverage EPSS to better prioritize scan results and to help evaluate the potential impact a vulnerability may have on your environment.</p>
<p>This data is available to composition analysis users through GraphQL.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/api/graphql/reference/#cveenrichmenttype">View Documentation</a></p>
  </li>
  <li>
    <strong>Enable Secret Push Protection in your projects via API</strong>
    <p><p>It&rsquo;s now easier to programatically enable secret push protection. We&rsquo;ve updated the application settings REST API, allowing you to:</p>
<ol>
<li>Enable the feature in your self-managed instance so that it can be enabled on a per-project basis.</li>
<li>Check whether the feature has been enabled on a project.</li>
<li>Enable the feature for a specified project.</li>
</ol></p>
    <p><a href="https://docs.gitlab.com/ee/api/projects.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Secret Push Protection audit events for applied exclusions</strong>
    <p>Audit events are now logged when a secret push protection exclusion is applied. This enables security teams to audit and track any occurence when a secret on the project&rsquo;s exclusions list is allowed to be pushed.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/secret_detection/exclusions.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Automated Repository X-Ray</strong>
    <p><p>Repository X-Ray enriches code generation requests for GitLab Duo Code Suggestions by providing additional context about a project&rsquo;s dependencies to improve the accuracy and relevance of code recommendations. This improves the quality of code generation. Previously, Repository X-Ray used a CI job that you had to configure and manage.</p>
<p>Now, when a new commit is pushed to your project&rsquo;s default branch, Repository X-Ray automatically triggers a background job that scans and parses the applicable configuration files in your repository.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/repository/code_suggestions/repository_xray.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Corporate network support for GitLab Duo</strong>
    <p><p>The latest update to the GitLab Duo plugin introduces advanced proxy authentication. This enables developers to connect seamlessly in environments with strict corporate firewalls. Building on our existing HTTP proxy support, this enhancement allows for authenticated connections. It ensures secure and uninterrupted access to Duo features in VS Code and JetBrains IDEs.</p>
<p>This update is crucial for developers needing secure, authenticated connections in restricted network environments. It ensures all Duo features remain available without compromising security.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/editor_extensions/language_server/#enable-proxy-authentication">View Documentation</a></p>
  </li>
  <li>
    <strong>Merge at a scheduled date and time</strong>
    <p><p>Some merge requests may need to be held for merging until after a certain date or time. When that date and time does pass you need to find someone with permissions to merge and hope they&rsquo;re available to take care of it for you. If this is after hours or the timeline is critical you may need to prepare folks well in advance for the task.</p>
<p>Now, when you create or edit a merge request you can specify a <code>merge after</code> date. This date will be used to prevent the merge request from being merged until it has passed. Using this new capability with our previously released <a href="https://about.gitlab.com/releases/2024/09/19/gitlab-17-4-released/#auto-merge-when-all-checks-pass">improvements to auto-merge</a> gives you the flexibility to schedule merge requests to merge in the future.</p>
<p>A big thank you to <a href="https://gitlab.com/Taucher2003">Niklas van Schrick</a> for the amazing contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/merge_requests/auto_merge.html#prevent-merge-before-a-specific-date">View Documentation</a></p>
  </li>
  <li>
    <strong>Add support for values to the `glab agent bootstrap` command</strong>
    <p>In the last release, we introduced support for easy agent bootstrapping to the GitLab CLI tool. GitLab 17.6 further improves the <code>glab cluster agent bootstrap</code> command with support for custom Helm values. You can use the <code>--helm-release-values</code> and <code>--helm-release-values-from</code> flags to customize the generated <code>HelmRelease</code> resource.</p>
    <p><a href="https://gitlab.com/gitlab-org/cli/-/blob/main/docs/source/cluster/agent/bootstrap.md#options">View Documentation</a></p>
  </li>
  <li>
    <strong>Select a GitLab agent for an environment in a CI/CD job</strong>
    <p>To use the dashboard for Kubernetes, you need to select an agent for Kubernetes connection from the environment settings. Until now, you could select the agent only from the UI or (from GitLab 17.5) the API, which made configuring a dashboard from CI/CD difficult. In GitLab 17.6, you can configure an agent connection with the <code>environment.kubernetes.agent</code> syntax.
In addition, <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/500164">issue 500164</a> proposes to add support for selecting a namespace and Flux resource from your CI/CD configuration.</p>
    <p><a href="https://docs.gitlab.com/ee/ci/environments/kubernetes_dashboard.html#configure-a-dashboard-for-a-dynamic-environment">View Documentation</a></p>
  </li>
  <li>
    <strong>Audit events for privileged actions</strong>
    <p>There are now additional audit events for privileged settings-related administrator actions. A record of when these settings were changed can help improve security by providing an audit trail.</p>
    <p><a href="https://docs.gitlab.com/ee/user/compliance/audit_event_types.html#groups-and-projects">View Documentation</a></p>
  </li>
  <li>
    <strong>New audit event when merge requests are merged</strong>
    <p><p>With this release, when a merge request is merged, a new audit event type called <code>merge_request_merged</code> is triggered that contains key information about
the merge request, including:</p>
<ul>
<li>The title of the merge request</li>
<li>The description or summary of the merge request</li>
<li>How many approvals were required for merge</li>
<li>How many approvals were granted for merge</li>
<li>Which users approved the merge request</li>
<li>Whether committers approve the merge request</li>
<li>Whether authors approved the merge request</li>
<li>The date/time of the merge</li>
<li>The list of SHAs from Commit history</li>
</ul></p>
    <p><a href="https://docs.gitlab.com/ee/user/compliance/audit_event_types.html#compliance-management">View Documentation</a></p>
  </li>
  <li>
    <strong>Disable OTP authenticator and WebAuthn devices independently</strong>
    <p>It is now possible to disable the OTP authenticator and WebAuthn devices individually or simultaneously. Previously, if you disabled the OTP authenticator, the WebAuthn device(s) were also disabled. Because the two now operate independently, there is more granular control over these authentication methods.</p>
    <p><a href="https://docs.gitlab.com/ee/user/profile/account/two_factor_authentication.html#disable-two-factor-authentication">View Documentation</a></p>
  </li>
  <li>
    <strong>Use API to get information about tokens</strong>
    <p><p>Administrators can use the new token information API to get information about personal access tokens, deploy tokens, and feed tokens. Unlike other API endpoints that expose token information, this endpoint allows administrators to retrieve token information without knowing the type of the token.</p>
<p>Thank you <a href="https://gitlab.com/nwittstruck">Nicholas Wittstruck</a> and the rest of the crew from Siemens for your contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/api/admin/token.html">View Documentation</a></p>
  </li>
  <li>
    <strong>More information in sign in emails from new locations</strong>
    <p><p>GitLab optionally sends an email when a sign-in from a new location is detected. Previously, this email only contained the IP address, which is difficult to correlate to a location. This email now contains city and country location information as well.</p>
<p>Thank you <a href="https://gitlab.com/shangsuru">Henry Helm</a> for your contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/profile/notifications.html#notifications-for-unknown-sign-ins">View Documentation</a></p>
  </li>
  <li>
    <strong>Prevent modification of group protected branches</strong>
    <p><p>When a merge request approval policy is configured to prevent group branch modification, policies now account for protected branches configured for a group. This setting ensures that branches protected at the group level cannot be unprotected. Protected branches restrict certain actions, such as deleting the branch and force pushing to the branch. You can override this behavior and declare exceptions for specific top-level groups with the new <code>approval_settings.block_group_branch_modification</code> property to allow group owners to temporarily modify protected branches when necessary.</p>
<p>This new project override setting ensures that group protected branch settings cannot be modified to circumvent security and compliance requirements, ensuring more stable enforcement of protected branches.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/policies/merge_request_approval_policies.html#approval_settings">View Documentation</a></p>
  </li>
  <li>
    <strong>Top-level group Owners can create service accounts</strong>
    <p>Currently, only administrators can create service accounts on GitLab self-managed. Now, there is an optional setting which allows top-level group Owners to create service accounts. This allows administrators to choose if they would like a wider range of roles that are allowed to create service accounts, or keep it as an administrator-only task.</p>
    <p><a href="https://docs.gitlab.com/ee/administration/settings/account_and_limit_settings.html#allow-top-level-group-owners-to-create-service-accounts">View Documentation</a></p>
  </li>
  <li>
    <strong>Service accounts badge</strong>
    <p>Service accounts now have a designated badge and can be easily identified in the users list. Previously, these accounts only had the <code>bot</code> badge, making it difficult to distinguish between them and group and project access tokens.</p>
    <p><a href="https://docs.gitlab.com/ee/user/profile/service_accounts.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Deploy your Pages site with any CI/CD job</strong>
    <p>To give you more flexibility in designing your pipelines, you no longer
need to name your Pages deploy job <code>pages</code>. You can now simply use the
<code>pages</code> attribute in any CI/CD job to trigger a Pages deployment.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/pages/#user-defined-job-names">View Documentation</a></p>
  </li>
  <li>
    <strong>AI Impact Analytics API for GitLab Duo Pro</strong>
    <p>GitLab Duo Pro customers can now programmatically access AI Impact Analytics metrics with the <code>aiMetrics</code> GraphQL API. Metrics include the number of assigned GitLab Duo seats, Duo Chat users, and Code Suggestion users. The API also provides granular counts for code suggestions that are shown and accepted. With this data, you can calculate the acceptance rate for Code Suggestions, and better understand your Duo Pro users&rsquo; adoption of Duo Chat and Code Suggestions. You can also pair AI Impact Analytics metrics with Value Stream Analytics and DORA metrics to gain deeper insight into how adopting Duo Chat and Code Suggestions are impacting your team&rsquo;s productivity.</p>
    <p><a href="https://docs.gitlab.com/ee/api/graphql/reference/#aimetrics">View Documentation</a></p>
  </li>
  <li>
    <strong>Easily remove closed items from your view</strong>
    <p>You can now hide closed items from the linked and child items lists by turning off the <strong>Show closed items</strong> toggle. With this addition, you have greater control over your view and can focus on active work while reducing visual clutter in complex projects.</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/epics/manage_epics.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Query user-level GitLab Duo Enterprise usage metrics</strong>
    <p>Prior to this release, it was not possible to get GitLab Duo Chat and Code Suggestions usage data per Duo Enterprise user. In 17.6, we&rsquo;ve added a GraphQL API to provide visibility into the number of code suggestions accepted and Duo Chat interactions for each active Duo Enterprise user. The API can help you get more granular insight into who is using which Duo Enterprise features and how frequently. This is the first iteration toward our goal of <a href="https://gitlab.com/groups/gitlab-org/-/epics/15026">providing more comprehensive Duo Enterprise usage data</a> within GitLab.</p>
    <p><a href="https://docs.gitlab.com/ee/api/graphql/reference/#aiusermetrics">View Documentation</a></p>
  </li>
  <li>
    <strong>Support for license data from CycloneDX SBOMs</strong>
    <p><p>The License Scanner now has the ability to consume a dependency&rsquo;s license from a CycloneDX SBOM that includes <a href="https://docs.gitlab.com/ee/user/compliance/license_scanning_of_cyclonedx_files/#supported-languages-and-package-managers">supported package types</a>.</p>
<p>In cases where the <code>licenses</code> field of a CycloneDX SBOM is available, users will see license data from their SBOM. In cases where the SBOM lacks license information we will continue to provide this data from our License database.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/yaml/artifacts_reports.html#artifactsreportscyclonedx">View Documentation</a></p>
  </li>
  <li>
    <strong>macOS Sequoia 15 and Xcode 16 job image</strong>
    <p><p>You can now create, test, and deploy applications for the newest
generations of Apple devices using macOS Sequoia 15 and Xcode 16.</p>
<p>GitLab&rsquo;s <a href="https://docs.gitlab.com/ee/ci/runners/hosted_runners/macos.html">hosted runners on macOS</a>
help your development teams build and deploy macOS applications faster in a secure,
on-demand build environment integrated with GitLab CI/CD.</p>
<p>Try it out today by using the <code>macos-15-xcode-16</code> image in your <code>.gitlab-ci.yml</code> file.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/runners/hosted_runners/macos.html">View Documentation</a></p>
  </li>
  <li>
    <strong>JaCoCo test coverage visualization now generally available</strong>
    <p>You can now see JaCoCo test coverage results directly in your merge request diff view. This visualization allows you to quickly identify which lines are covered by tests and which need additional coverage before merging.</p>
    <p><a href="https://docs.gitlab.com/ee/ci/testing/test_coverage_visualization/jacoco.html">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner 17.6</strong>
    <p><p>We’re also releasing GitLab Runner 17.6 today! GitLab Runner is the highly-scalable build agent that runs your CI/CD jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.</p>
<h4 id="bug-fixes">Bug Fixes:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38260">In GitLab Runner 17.5.0, pods fail to become attachable</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38247">Runner crashes with <code>exec format error</code> when installing the fleeting plugin</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38244">Kubernetes executor pods with cgroup v2 enabled hang when OOMKilled</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38231">Runner defaults are not honoured when registering runner with a configuration template</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/37244">GitLab Runner waits for Kubernetes pods to become attachable during the polling period when using exec mode</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38268">Authentication issues occur when the feature flag <code>FF_GIT_URLS_WITHOUT_TOKENS</code> is enabled</a></li>
</ul></p>
    <p><a href="https://docs.gitlab.com/runner">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab Patch Release: 17.5.2, 17.4.4, 17.3.7</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-5-2-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-5-2-released/</id><published>2024-11-13T00:00:00Z</published><updated>2024-11-13T00:00:00Z</updated><author><name>Greg Myers</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On November 13, 2024, we released versions 17.5.2, 17.4.4, 17.3.7 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases, and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, you can visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-5-2-released/#unauthorized-access-to-kubernetes-cluster-agent">Unauthorized access to Kubernetes cluster agent</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-5-2-released/#device-oauth-flow-allows-for-cross-window-forgery">Device OAuth flow allows for cross window forgery</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-5-2-released/#denial-of-service-by-importing-malicious-crafted-fogbugz-import-payload">Denial of Service by importing malicious crafted FogBugz import payload</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-5-2-released/#stored-xss-through-javascript-url-in-analytics-dashboards">Stored XSS through javascript URL in Analytics dashboards</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-5-2-released/#html-injection-in-vulnerability-code-flow-could-lead-to-xss-on-self-hosted-instances">HTML injection in vulnerability Code flow could lead to XSS on self hosted instances</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-5-2-released/#information-disclosure-through-an-api-endpoint">Information disclosure through an API endpoint</a></td>
          <td>Medium</td>
      </tr>
  </tbody>
</table>
<h3 id="unauthorized-access-to-kubernetes-cluster-agent">Unauthorized access to Kubernetes cluster agent</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting from 16.0 prior to 17.3.7, starting from 17.4 prior to 17.4.4, and starting from 17.5 prior to 17.5.2, which could have allowed unauthorized access to the Kubernetes agent in a cluster under specific configurations.
This is a high severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:H"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:H</code></a>, 8.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-9693">CVE-2024-9693</a>.</p>
<p>This vulnerability was found internally by a GitLab team member <a href="https://gitlab.com/tigerwnz">Tiger Watson</a>.</p>
<h3 id="device-oauth-flow-allows-for-cross-window-forgery">Device OAuth flow allows for cross window forgery</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting from 17.2 prior to 17.3.7, starting from 17.4 prior to 17.4.4 and starting from 17.5 prior to 17.5.2, which could have allowed an attacker gaining full API access as the victim via the Device OAuth flow.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:N</code></a>, 6.8).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-7404">CVE-2024-7404</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="denial-of-service-by-importing-malicious-crafted-fogbugz-import-payload">Denial of Service by importing malicious crafted FogBugz import payload</h3>
<p>A Denial of Service (DoS) issue has been discovered in GitLab CE/EE affecting all versions starting from 7.14.1 prior to 17.3.7, 17.4 prior to 17.4.4, and 17.5 prior to 17.5.2. A denial of service could occur upon importing maliciously crafted content using the Fogbugz importer.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>, 6.5).
We have requested a CVE ID and will update this blog post when it is assigned.</p>
<p>Thanks <a href="https://hackerone.com/a92847865">a92847865</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="stored-xss-through-javascript-url-in-analytics-dashboards">Stored XSS through javascript URL in Analytics dashboards</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions from 16 before 17.3.7, 17.4 before 17.4.4, and 17.5 before 17.5.2. The vulnerability could allow an attacker to inject malicious JavaScript code in Analytics Dashboards through a specially crafted URL.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N</code></a>, 6.1).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-8648">CVE-2024-8648</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="html-injection-in-vulnerability-code-flow-could-lead-to-xss-on-self-hosted-instances">HTML injection in vulnerability Code flow could lead to XSS on self hosted instances</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions from 17.3 before 17.3.7, 17.4 before 17.4.4, and 17.5 before 17.5.2. Improper output encoding could lead to XSS if CSP is not enabled.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N</code></a>, 5.4).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-8180">CVE-2024-8180</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="information-disclosure-through-an-api-endpoint">Information disclosure through an API endpoint</h3>
<p>An issue has been discovered in GitLab EE affecting all versions starting from 17.3 before 17.3.7, all versions starting from 17.4 before 17.4.4, all versions starting from 17.5 before 17.5.2 in which an unauthenticated user may be able to read some information about an MR in a private project, under certain circumstances.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N</code></a>, 5.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-10240">CVE-2024-10240</a>.</p>
<p>This vulnerability has been discovered internally by GitLab team member <a href="https://gitlab.com/patrickbajao">Patrick Bajao</a>.</p>
<h3 id="mattermost-security-updates-october-28-2024">Mattermost Security Updates October 28, 2024</h3>
<p>Mattermost has been updated to versions 10.1.2, which contains several patches and security fixes.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1752">17.5.2</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/170051">Security patch upgrade alert: Only expose to admins 17-5</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/170814">[backport] Add epic to the scope and fix the flaky spec</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/170641">[Backport] Fix indexing subgroup associations</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/170777">Skip creating tables as partitions if any partition exists</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/170058">Add knn index setting for workitem index for opensearch clusters</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/169904">[Backport]Fix new project group templates pagination</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/170981">Update pdf worker file path in pdf viewer</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/170961">[backport] Fix issue label facet can overwrite selected labels</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/171634">Fix workitem job in 17-5-stable-ee branch</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/171703">[Backport] Go-get: return 404 error code when personal token is invalid</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/171554">Add param filtering to avoid error while saving project settings</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/171926">Skip multi-version upgrade migration spec on default branches</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/171891">Fix group wiki activity events breaking the user feed</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/172133">Destroy merge train car after branch deletion</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/171585">Backport: Remove permissions JSONB column from the condition</a></li>
</ul>
<h3 id="1744">17.4.4</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/7400">Backport fix for incorrect error classification to 17.4</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/7414">Backport 17-4: Update GoCloud to a version that supports s3ForcePathStyle</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/170209">Use dump from 17.3.5 since 17.3 is the previous required stop</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/170055">Security patch upgrade alert: Only expose to admins 17-4</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/171630">Fix workitem job in 17-4-stable-ee branch</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/171784">Don&rsquo;t run e2e:test-product-analytics</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/171736">Ensure auto_merge_enabled is set when validating merge trains</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/172134">Destroy merge train car after branch deletion</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/172135">Fix broken merge train merge when target branch deleted</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/171586">Backport: Remove permissions JSONB column from the condition</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/170978">Update pdf worker file path in pdf viewer</a></li>
</ul>
<h3 id="1737">17.3.7</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/7396">Backport dragonboat&rsquo;s file permission error to 17.3</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/170208">Use dump from 16.11.8 since 16.11 is the previous required stop</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/171632">Fix workitem job in 17-3-stable-ee branch</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<h2 id="were-combining-patch-and-security-releases">We’re combining patch and security releases</h2>
<p>This improvement in our release process matches the industry standard and will help GitLab users get information about security and
bug fixes sooner, <a href="https://about.gitlab.com/blog/were-combining-patch-and-security-releases/">read the blog post here</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 17.5.1, 17.4.3, 17.3.6</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-5-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-5-1-released/</id><published>2024-10-23T00:00:00Z</published><updated>2024-10-23T00:00:00Z</updated><author><name>Kevin Morrison</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On October 23, 2024, we released versions 17.5.1, 17.4.3, 17.3.6 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases, and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, you can visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-5-1-released/#html-injection-in-global-search-may-lead-to-xss">HTML injection in Global Search may lead to XSS</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-5-1-released/#dos-via-xml-manifest-file-import">DoS via XML manifest file import</a></td>
          <td>Medium</td>
      </tr>
  </tbody>
</table>
<h3 id="html-injection-in-global-search-may-lead-to-xss">HTML injection in Global Search may lead to XSS</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions from 15.10 before 17.3.6, 17.4 before 17.4.3, and 17.5 before 17.5.1. An attacker could inject HTML into the Global Search field on a diff view leading to XSS.
This is a high severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N</code></a>, 8.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-8312">CVE-2024-8312</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="dos-via-xml-manifest-file-import">DoS via XML manifest file import</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions from 11.2 before 17.3.6, 17.4 before 17.4.3, and 17.5 before 17.5.1. A denial of service could occur via importing a malicious crafted XML manifest file.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>, 6.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-6826">CVE-2024-6826</a>.</p>
<p>Thanks <a href="https://hackerone.com/a92847865">a92847865</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="update-regarding-helm-charts-devkit-and-analytics-stack">Update regarding helm charts, devkit and analytics stack</h3>
<p><code>Helm charts</code>, <code>devkit</code> and <code>analytics stack</code> have been patched to no longer support dynamic funnels.</p>
<h3 id="bump-ingress-nginx-controller-image-to-1112">Bump Ingress NGINX Controller image to 1.11.2</h3>
<p>The GitLab chart bundles a forked Ingress NGINX Controller subchart. We&rsquo;ve updated its image version to 1.11.2.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1751">17.5.1</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/170051">Security patch upgrade alert: Only expose to admins</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7995">Backport: Ensure postgresql_new is included in GitLab CE</a></li>
</ul>
<h3 id="1743">17.4.3</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2058">Resolve &ldquo;UBI FIPS: Error in bashrc due to hardening script&rdquo; (17.4)</a></li>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2044">Backport: fix: Allow non-root user to run the bundle-certificates script 17.4</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/7351">Backport gocloud.dev update to 17.4</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/7362">Backport bundle fetch fsck fix to 17.4</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/168691">Backport Stable Branch Danger Checks to 17-4-stable-ee</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/168669">Add version to pdf.js file in webpack builds</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/168793">Backport: Skip rspec fail-fast jobs if pipeline:skip-rspec-fail-fast label is set</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/168569">Backport fix Zoekt global code search</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/168776">Set author on issuable to current user if it is not already set</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/169190">Backport LabKit v1.21.2 update to fix broken dependency</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/169625">Fix broken duo chat spec after free access cutoff [17.4]</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7998">Backport: Ensure postgresql_new is included in GitLab CE</a></li>
</ul>
<h3 id="1736">17.3.6</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2057">Resolve &ldquo;UBI FIPS: Error in bashrc due to hardening script&rdquo; (17.3)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/7339">Backport CreateRepositoryFromURL error handling to 17.3</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/168938">Set author on issuable to current user if it is not already set</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/169627">Fix broken duo chat spec after free access cutoff [17.3]</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/168818">Backport Stable Branch Danger Checks to 17-3-stable-ee</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<h2 id="were-combining-patch-and-security-releases">We’re combining patch and security releases</h2>
<p>This improvement in our release process matches the industry standard and will help GitLab users get information about security and
bug fixes sooner, <a href="https://about.gitlab.com/blog/were-combining-patch-and-security-releases/">read the blog post here</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab 17.5 released</title><link href="https://docs.gitlab.com/releases/17/17-5-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/17/17-5-released/</id><published>2024-10-17T00:00:00Z</published><updated>2024-10-17T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On October 17, 2024, GitLab 17.5 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong>Jim Ender</strong>
</p>
<p>Everyone can <a href="https://gitlab.com/gitlab-org/developer-relations/contributor-success/team-task/-/issues/490">nominate GitLab&rsquo;s community contributors</a>!
Show your support for our active candidates or add a new nomination! 🙌</p>
<p>Jim was recognized for leading an effort to <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=updated_desc&amp;state=closed&amp;assignee_username%5B%5D=Jimender2&amp;first_page_size=100">close nearly 100 backlog issues</a>
on GitLab.
He is active in many of our weekly community pairing sessions that dive into some interesting discussions.
Jim also supports people across the <a href="https://discord.gg/gitlab">GitLab Community Discord</a>,
troubleshooting GitLab support requests and guiding new contributors.
Jim works for an industrial technology company writing software for Critical Infrastructure and ERP systems.</p>
<p>&ldquo;Even small contributions add up to make projects better,&rdquo; says Jim.
&ldquo;Something as small as documentation contributions helps others out. You don&rsquo;t have to champion a full new feature.&rdquo;</p>
<p>Jim was nominated by <a href="https://gitlab.com/leetickett-gitlab">Lee Tickett</a>, Staff FullStack Engineer, Contributor Success at GitLab.
&ldquo;Issue triage/curation has been toward the top of my list to get the wider community involved in and Jim is paving the way here,&rdquo; says Lee.</p>
<p><a href="https://gitlab.com/daniel-murphy">Daniel Murphy</a>, Senior Program Manager, Contributor Success at GitLab, added to the nomination.
&ldquo;Jim&rsquo;s outstanding support for new contributors and guidance in getting them started helps us grow as a community to co-create GitLab.&rdquo;</p>
<p>&ldquo;Impressive work on the <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/163849">merge request</a> I reviewed!&rdquo; says <a href="https://gitlab.com/vanessaotto">Vanessa Otto</a>, Senior Frontend Engineer at GitLab.
&ldquo;Jim responded quickly, understood the suggestions immediately, and implemented them seamlessly.
It was great to see such efficiency and clarity in Jim&rsquo;s approach.&rdquo;</p>
<p>We are so grateful to Jim and all of our open source community for contributing to GitLab!</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>Introducing Duo Quick Chat</strong>
    <p>Introducing Duo Quick Chat, an AI-powered chat designed to work exactly where you are in your code. Duo Quick Chat operates directly on the lines you&rsquo;re editing, offering real-time assistance without ever moving you away from your code. Whether you&rsquo;re refactoring, fixing bugs, or writing tests, Duo Quick Chat provides suggestions and explanations on the spot, ensuring that you stay fully focused without switching context.</p>
    <p><a href="https://docs.gitlab.com/ee/user/gitlab_duo_chat/#in-the-editor-window">View Documentation</a></p>
  </li>
  <li>
    <strong>Use self-hosted model for GitLab Duo Code Suggestions</strong>
    <p><p>You can now host selected large language models (LLMs) in your own infrastructure and configure those models as the source for Code Suggestions. This feature is in beta and available with an Ultimate and Duo Enterprise subscription on self-managed GitLab environments.</p>
<p>With self-hosted models, you can use models hosted either on-premise or in a private cloud to enable GitLab Duo Code Suggestions. We currently support open-source Mistral models on vLLM or AWS Bedrock. By enabling self-hosted models, you can leverage the power of generative AI while maintaining complete data sovereignty and privacy.</p>
<p>Please leave feedback in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/498376">the feedback issue</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/self_hosted_models/">View Documentation</a></p>
  </li>
  <li>
    <strong>Export code suggestion usage events</strong>
    <p><p>Previously, AI impact analytics were available only on GitLab.com to GitLab Duo Enterprise customers, and on GitLab self-managed  with a ClickHouse integration. Additionally, the default metrics were aggregated.</p>
<p>Now, you can export raw code suggestion events from the GraphQL API. This way you can import the data into your data analysis tool to get deeper insights into acceptance rates across more dimensions, such as suggestion size, language, and user. The raw events are not stored in ClickHouse, so some AI Impact Analytics metrics become available to all GitLab deployments, including GitLab Dedicated and self-managed.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/api/graphql/reference/#codesuggestionevent">View Documentation</a></p>
  </li>
  <li>
    <strong>Have a conversation with GitLab Duo Chat about your merge request</strong>
    <p><p>In response to your feedback, GitLab Duo Chat is now aware of merge requests. Whether you are a reviewer or an author, you can now converse with Chat about a merge request to quickly dig into it, or learn what to do next. Simply open your merge request and open Duo Chat, then start the conversation.</p>
<p>This new feature complements our existing feature, where you can quickly populate the description of a merge request by asking GitLab Duo to <a href="https://docs.gitlab.com/ee/user/project/merge_requests/duo_in_merge_requests.html#generate-a-description-by-summarizing-code-changes">summarize code changes</a>, so that reviewers can get a general understanding of what the merge request is about.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/gitlab_duo_chat/examples#ask-about-a-specific-merge-request">View Documentation</a></p>
  </li>
  <li>
    <strong>Enhanced branch rules editing capabilities</strong>
    <p><p>In GitLab 15.10, we introduced a <a href="https://about.gitlab.com/releases/2023/03/22/gitlab-15-10-released/#see-all-branch-related-settings-together">consolidated view for branch-related settings and rules</a>. This view provided you with an easy way to understand the configuration of your project across multiple settings.</p>
<p>Building on this feature, you can now directly modify specific branch rules in this view, including branch protections, approval rules, and external status check configurations. These new capabilities lay the foundation for <a href="https://gitlab.com/groups/gitlab-org/-/epics/12546">continued improvements</a> in branch configuration that will allow for greater flexibility in the future.</p>
<p>We encourage you to explore these new capabilities and to provide feedback. You can do this by contributing to our dedicated <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/486050">feedback issue</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/repository/branches/branch_rules.html#create-a-branch-rule">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Dedicated Tenant Overview in Switchboard</strong>
    <p><p>Switchboard&rsquo;s new Tenant Overview now provides a single place to quickly access essential information about your GitLab Dedicated instance.</p>
<p>With this first release, you can now view your current GitLab version, instance URL, and the date and time of your upcoming and past maintenance windows all on the Tenant Overview page.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/dedicated/tenant_overview.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Secret Push Protection is generally available</strong>
    <p><p>We&rsquo;re excited to announce that Secret Push Protection is now generally available for all GitLab Ultimate customers.</p>
<p>If a secret, like a key or an API token, is accidentally committed to a Git repository, anyone with access to the repository can impersonate the user of the secret for malicious purposes. A leaked secret costs time and money, and potentially damages a company&rsquo;s reputation. Secret push protection helps reduce the remediation time and reduce risk by protecting secrets from being pushed in the first place.</p>
<p>Secret push protection has been improved since the beta release. When commits are pushed by using the Git CLI, now only the changes (diff) are scanned for secrets. We&rsquo;ve also added experimental support for excluding paths, rules, or specific values to avoid false positives.</p>
<p>To learn more, see <a href="https://about.gitlab.com/blog/prevent-secret-leaks-in-source-code-with-gitlab-secret-push-protection/">the blog</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/secret_detection/secret_push_protection">View Documentation</a></p>
  </li>
  <li>
    <strong>Credentials Inventory available on GitLab.com</strong>
    <p><p>The Credentials Inventory is now available for top-level group Owners on GitLab.com. In the Credentials Inventory, you can view your <a href="https://docs.gitlab.com/ee/user/enterprise_user/">enterprise user&rsquo;s</a> personal access tokens and SSH keys across your group. You can also revoke, delete, and view additional information about the credentials. Previously, this was only available for administrators on GitLab self-managed.</p>
<p>Group Owners can use the Credentials Inventory to understand the credentials that exist in their purview, and provide increased visibility and control.</p>
</p>
    <p><a href="https://docs.gitlab.com/administration/credentials_inventory/">View Documentation</a></p>
  </li>
  <li>
    <strong>Component filter on the Dependency List</strong>
    <p>Now, in GitLab, you can filter for specific dependency components quickly to identify whether or not they are used in your group or project.
It is time consuming and inconvenient to manually go through the entire list just to verify whether or not a particular package and version is present.
With the new <strong>filter by component</strong> on the dependency list, you isolate vulnerable dependencies so that you can assess open risks in your application.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/dependency_list/#filter-dependency-list">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Scale and Deployments</h4>
<ul>
  <li>
    <strong>GitLab chart improvements</strong>
    <p>GitLab 17.5 includes an update to our version of the NGINX Ingress Controller. The <code>nginx-controller</code> container image is now version 1.11.2. Please
note this includes new RBAC requirements because the new controller now uses endpointslices and requires an RBAC rule to access them.</p>
    <p><a href="https://docs.gitlab.com/charts/">View Documentation</a></p>
  </li>
  <li>
    <strong>Omnibus improvements</strong>
    <p>GitLab 17.5 includes support for upgrading PostgreSQL from version 14.x to 16.x for single node installations. Automatic upgrades are not enabled and
so PostgreSQL upgrades must be triggered manually.</p>
    <p><a href="https://docs.gitlab.com/omnibus/">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>Elevate your coding: Duo Chat now in Visual Studio for Windows</strong>
    <p>Empower your development workflow with Duo Chat, now seamlessly integrated into Visual Studio for Windows. Duo Chat enhances your coding experience by providing AI-powered capabilities to explain, refine, debug code, or write tests all in real-time. This integration allows you to leverage Duo Chat&rsquo;s advanced AI tools directly within your familiar development environment, improving productivity and enabling faster, more efficient problem-solving.</p>
    <p><a href="https://docs.gitlab.com/ee/user/gitlab_duo_chat/index.html#use-gitlab-duo-chat-in-visual-studio-for-windows">View Documentation</a></p>
  </li>
  <li>
    <strong>Configure agent and GitOps environment settings with the REST API</strong>
    <p>You can check the status of your pods and Flux reconciliation from the GitLab environments UI.
However, this approach is hard to scale because the required settings are exposed only through GraphQL or the UI.
Now, GitLab ships with REST API support for configuring an agent for Kubernetes, as well as setting the namespace and Flux resource per environment.
To further improve support for dynamic environments, <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/467912">issue 467912</a> proposes adding support for configuring these settings in CI/CD pipelines.</p>
    <p><a href="https://docs.gitlab.com/ee/api/environments.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Easy bootstrapping of GitLab Kubernetes integration</strong>
    <p>GitLab offers flexible, reliable, and secure GitOps support with the <a href="https://docs.gitlab.com/ee/user/clusters/agent/">agent for Kubernetes</a> and its <a href="https://docs.gitlab.com/ee/user/clusters/agent/gitops.html">Flux integration</a>.
Still, bootstrapping Flux with GitLab and setting up the agent for Kubernetes used to require a lot of documentation reading and switching between the GitLab UI and the terminal.
The GitLab CLI now offers <a href="https://gitlab.com/gitlab-org/cli/-/blob/main/docs/source/cluster/agent/bootstrap.md">the <code>glab cluster agent bootstrap</code> command</a> to simplify installing the agent on top of an existing Flux installation.
Now, you can configure Flux and the agent with just two simple commands.</p>
    <p><a href="https://docs.gitlab.com/ee/user/clusters/agent/install/#bootstrap-the-agent-with-flux-support-recommended">View Documentation</a></p>
  </li>
  <li>
    <strong>Kubernetes integration support for firewalled GitLab installations</strong>
    <p><p>Until now, the agent for Kubernetes could be used only if the Kubernetes cluster could connect to the GitLab instance.
This issue meant that some customers couldn&rsquo;t use the agent if, for example, they ran GitLab on a private network or behind a firewall.
From GitLab 17.5, you can initiate the cluster-GitLab connection from GitLab, assuming that a properly configured <code>agentk</code> instance is already waiting for a connection initialization.</p>
<p>Once the initial connection is established, all the features of the agent are available. Initializing from a cluster is not changed with this development.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/clusters/agent/#receptive-agents">View Documentation</a></p>
  </li>
  <li>
    <strong>Stream Kubernetes resource events</strong>
    <p>GitLab provides a real-time view of your pods, as well as pod log streaming, all through the dashboard for Kubernetes.
In GitLab 17.4, we offered a static listing of resource-specific event information from the UI.
This release further improves the dashboard for Kubernetes by letting you stream incoming events as they emerge in the cluster.</p>
    <p><a href="https://docs.gitlab.com/ee/ci/environments/kubernetes_dashboard.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Suspend or resume GitOps reconciliation from the GitLab UI</strong>
    <p>As a Flux user, have you ever needed to quickly stop an automatic reconciliation or drift remediation? Have you wanted to trigger a <code>HelmRelease</code> to synchronize manually removed resources? These actions are best achieved with the Flux suspend and resume functions. Until now, your best option was to use the Flux CLI, which required a context switch and several commands to ensure the right resource was affected. In GitLab 17.5, you can suspend or resume a reconciliation from the built-in dashboard for Kubernetes.</p>
    <p><a href="https://docs.gitlab.com/ee/ci/environments/kubernetes_dashboard.html#suspend-or-resume-flux-reconciliation">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved user management summary</strong>
    <p><p>Administrators now have an enhanced, summarized view of the following critical pieces of information about the users on their instance:</p>
<ul>
<li>Pending approval.</li>
<li>Without two-factor authentication.</li>
<li>Administrators.</li>
</ul>
<p>This increases user management efficiency, because administrators can quickly see how many users are in these states from the summary view, and filter on them.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/profile/account/create_accounts.html#create-users-in-admin-area">View Documentation</a></p>
  </li>
  <li>
    <strong>Add groups to security policy scope</strong>
    <p><p>You can now target groups/subgroups in security policy scopes. This extends the existing options allowing you to target all projects in a group/subgroup, projects based on a defined project list, and projects matching a list of compliance framework labels.</p>
<p>This gives you further flexibility in enabling policies across your groups, while also being able to apply exceptions to scope projects out of enforcement where necessary.</p>
<p>This improvement also precedes a number of <a href="https://gitlab.com/groups/gitlab-org/-/epics/5446">enhancements</a> that will simplify the process of linking security policy projects and granularly scoping enforcement of policies.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/policies/scan-result-policies.html#security-policy-scopes">View Documentation</a></p>
  </li>
  <li>
    <strong>Disable password authentication for enterprise users</strong>
    <p>Enterprise users can authenticate using a local account with username and password. Now, group Owners can disable password authentication for the group&rsquo;s enterprise users. If password authentication is disabled, enterprise users can use either the group&rsquo;s SAML identity provider to authenticate with GitLab web UI, or a personal access token to authenticate with GitLab API and Git using HTTP Basic Authentication.</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/saml_sso/#disable-password-authentication-for-enterprise-users">View Documentation</a></p>
  </li>
  <li>
    <strong>Access compliance center on projects</strong>
    <p><p>Previously, the compliance center was available only for top-level groups and subgroups.</p>
<p>With this release, we&rsquo;ve added the compliance center to projects. At this level, compliance center provides
view-only capabilities for checks and violations that pertain to a particular project.</p>
<p>To add or edit a framework, you should access the compliance center on top-level groups instead.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/compliance/compliance_center/">View Documentation</a></p>
  </li>
  <li>
    <strong>Migration process for compliance pipelines to security policies</strong>
    <p><p>In GitLab 17.3, we announced the deprecation of compliance pipelines and its eventual removal by the 18.0 release.
Instead of compliance pipelines, you should use the pipeline execution policy type instead, which was released in GitLab 17.2.</p>
<p>To help you migrate your existing compliance pipelines over to the pipeline execution policy type, this release includes a
warning banner that:</p>
<ul>
<li>Notifies users about the deprecation of compliance pipelines.</li>
<li>Provides a prompted and guided workflow to migrate existing compliance pipelines to the pipeline execution policy type.</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/compliance_pipelines.html#pipeline-execution-policies-migration">View Documentation</a></p>
  </li>
  <li>
    <strong>View token associations using API</strong>
    <p>You can now view which groups, subgroups, and projects a token is associated with. This makes it easier to determine the impact of token expirations or revocations, and to understand where a token is able to be used.</p>
    <p><a href="https://docs.gitlab.com/ee/api/personal_access_tokens.html#list-token-associations">View Documentation</a></p>
  </li>
  <li>
    <strong>Selective SAML single sign-on enforcement</strong>
    <p><p>Previously, when SAML SSO was enabled, groups could choose to enforce SSO, which required all members to use SSO
authentication to access the group. However, some groups want the security of SSO enforcement for employees or
group members, while still allowing outside collaborators or contractors to access their groups without SSO.</p>
<p>Now, groups with SAML SSO enabled have SSO automatically enforced for all members
who have a SAML identity. Group members without SAML identities are not required to
use SSO unless SSO enforcement is explicitly enabled.</p>
<p>A member has a SAML identity if one or both of the following are true:</p>
<ul>
<li>They signed in to GitLab using their GitLab group&rsquo;s single sign-on URL.</li>
<li>They were provisioned by SCIM.</li>
</ul>
<p>To ensure smooth operation of the selective SSO enforcement feature, ensure your SAML configuration is
working properly before selecting the <strong>Enable SAML authentication for this group</strong> checkbox.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/settings/sign_in_restrictions.html#disable-password-authentication-for-users-with-an-sso-identity">View Documentation</a></p>
  </li>
  <li>
    <strong>Enhance API performance when working with container registry tags</strong>
    <p><p>We&rsquo;re excited to announce a significant improvement to our Container Registry API for self-managed GitLab instances. With the release of GitLab 17.5, we&rsquo;ve implemented keyset pagination for the <code>:id/registry/repositories/:repository_id/tags</code> endpoint, bringing it in line with the functionality already available on GitLab.com. This enhancement is part of our ongoing efforts to improve API performance and provide a consistent experience across all GitLab deployments.</p>
<p>Keyset pagination offers a more efficient method for handling large datasets, resulting in improved performance and a better user experience. This update is particularly useful when managing large container registries, as it allows for smoother navigation through repository tags. In order to use this feature, self-managed instances must upgrade to the <a href="https://docs.gitlab.com/ee/administration/packages/container_registry_metadata_database.html">next-generation container registry</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/api/container_registry.html#list-registry-repository-tags">View Documentation</a></p>
  </li>
  <li>
    <strong>Safeguard your dependencies with protected packages</strong>
    <p><p>We&rsquo;re thrilled to introduce support for protected npm packages, a new feature designed to enhance the security and stability of your GitLab package registry. In the fast-paced world of software development, accidental modification or deletion of packages can disrupt entire development processes. Protected packages address this issue by allowing you to safeguard your most important dependencies against unintended changes.</p>
<p>From GitLab 17.5, you can protect npm packages by creating protection rules. If a package is matched by a protection rule, only specified users can update or delete the package. With this feature, you can prevent accidental changes, improve compliance with regulatory requirements, and streamline your workflows by reducing the need for manual oversight.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/packages/package_registry/package_protection_rules.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Ruby support and rule updates for Advanced SAST</strong>
    <p><p>We&rsquo;ve added Ruby support to GitLab Advanced SAST.
To use this new cross-file, cross-function scanning support, <a href="https://docs.gitlab.com/ee/user/application_security/sast/gitlab_advanced_sast.html#enable-advanced-sast-scanning">enable Advanced SAST</a>.
If you&rsquo;ve already enabled Advanced SAST, Ruby support is automatically activated.</p>
<p>In the last month, we&rsquo;ve also released updates to improve the detection rules for <a href="https://docs.gitlab.com/ee/user/application_security/sast/gitlab_advanced_sast.html#supported-languages">the other languages Advanced SAST supports</a> by:</p>
<ul>
<li>Detecting additional Java path traversal, Java command injection, and JavaScript path traversal vulnerabilities.</li>
<li>Updating CWE mappings to more specifically and consistently identify vulnerability types.</li>
<li>Increasing the severity of path traversal vulnerabilities.</li>
</ul>
<p>To see which types of vulnerabilities Advanced SAST detects in each language, see the new <a href="https://docs.gitlab.com/ee/user/application_security/sast/advanced_sast_coverage.html">Advanced SAST coverage page</a>.</p>
<p>To learn more about Advanced SAST, see <a href="https://about.gitlab.com/blog/gitlab-advanced-sast-is-now-generally-available/">last month&rsquo;s announcement blog</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/sast/gitlab_advanced_sast.html">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner 17.5</strong>
    <p><p>We’re also releasing GitLab Runner 17.5 today! GitLab Runner is the highly-scalable build agent that runs your CI/CD jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.</p>
<h4 id="whats-new">What&rsquo;s new:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/26921">Support AWS S3 multipart uploads with scoped temporary credentials</a></li>
</ul>
<h4 id="bug-fixes">Bug Fixes:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38035">Jobs with extra services don&rsquo;t complete if one of the service container is not running</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38034">The <code>gitlab-runner-fips-17.4.0-1</code> package fails to run on Amazon Linux 2 and returns a glibc error</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/37394">Cache doesn&rsquo;t work with Amazon S3 when using S3 Express One Zone endpoints</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/28073">Jobs are unable to pull base images if the <code>DOCKER_AUTH_CONFIG</code> variable has multiple registries</a></li>
</ul></p>
    <p><a href="https://docs.gitlab.com/runner">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab Critical Patch Release: 17.4.2, 17.3.5, 17.2.9</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-4-2-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-4-2-released/</id><published>2024-10-09T00:00:00Z</published><updated>2024-10-09T00:00:00Z</updated><author><name>Nikhil George</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On October 9, 2024, we released versions 17.4.2, 17.3.5, 17.2.9 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. <strong>GitLab Dedicated customers do not need to take action.</strong></p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases, and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, you can visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-4-2-released/#run-pipelines-on-arbitrary-branches">Run pipelines on arbitrary branches</a></td>
          <td>Critical</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-4-2-released/#an-attacker-can-impersonate-arbitrary-user">An attacker can impersonate arbitrary user</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-4-2-released/#ssrf-in-analytics-dashboard">SSRF in Analytics Dashboard</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-4-2-released/#viewing-diffs-of-mr-with-conflicts-can-be-slow">Viewing diffs of MR with conflicts can be slow</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-4-2-released/#htmli-in-oauth-page">HTMLi in  OAuth page</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-4-2-released/#deploy-keys-can-push-changes-to-an-archived-repository">Deploy Keys can push changes to an archived repository</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-4-2-released/#guests-can-disclose-project-templates">Guests can disclose project templates</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-4-2-released/#gitlab-instance-version-disclosed-to-unauthorized-users">GitLab instance version disclosed to unauthorized users</a></td>
          <td>Low</td>
      </tr>
  </tbody>
</table>
<h3 id="run-pipelines-on-arbitrary-branches">Run pipelines on arbitrary branches</h3>
<p>An issue was discovered in GitLab EE affecting all versions starting from 12.5 prior to 17.2.9, starting from 17.3, prior to 17.3.5, and starting from 17.4 prior to 17.4.2, which allows running pipelines on arbitrary branches.
This is a critical severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:N</code></a>, 9.6).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-9164">CVE-2024-9164</a>.</p>
<p>Thanks <a href="https://hackerone.com/pwnie">pwnie</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="an-attacker-can-impersonate-arbitrary-user">An attacker can impersonate arbitrary user</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting from 11.6 prior to 17.2.9, starting from 17.3 prior to 17.3.5, and starting from 17.4 prior to 17.4.2, which allows an attacker to trigger a pipeline as another user under certain circumstances.
This is a high severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:N</code></a>, 8.2).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-8970">CVE-2024-8970</a>.</p>
<p>Thanks <a href="https://hackerone.com/yvvdwf">yvvdwf</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="ssrf-in-analytics-dashboard">SSRF in Analytics Dashboard</h3>
<p>An issue has been discovered in GitLab EE affecting all versions starting from 15.10 prior to 17.2.9, from 17.3 prior to 17.3.5, and from 17.4 prior to 17.4.2. Instances with Product Analytics Dashboard configured and enabled could be vulnerable to SSRF attacks.
This is a high severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:N</code></a>, 8.2).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-8977">CVE-2024-8977</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="viewing-diffs-of-mr-with-conflicts-can-be-slow">Viewing diffs of MR with conflicts can be slow</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting from 13.6 prior to 17.2.9, starting from 17.3 prior to 17.3.5, and starting from 17.4 prior to 17.4.2, were viewing diffs of MR with conflicts can be slow. This is a high severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"><code>AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code></a>, 7.5). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-9631">CVE-2024-9631</a>.</p>
<p>Thanks <a href="https://hackerone.com/a92847865">a92847865</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="htmli-in-oauth-page">HTMLi in OAuth page</h3>
<p>A cross-site scripting issue has been discovered in GitLab affecting all versions starting from 17.1 prior 17.2.9, starting from 17.3 prior to 17.3.5, and starting from 17.4 prior to 17.4.2. When authorising a new application, it can be made to render as HTML under specific circumstances.
This is a high severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:N</code></a>, 7.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-6530">CVE-2024-6530</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="deploy-keys-can-push-changes-to-an-archived-repository">Deploy Keys can push changes to an archived repository</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting from 8.16 prior to 17.2.9, starting from 17.3 prior to 17.3.5, and starting from 17.4 prior to 17.4.2, which allows deploy keys to push to an archived repository. This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:N/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:N/I:H/A:N</code></a>, 4.9).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-9623">CVE-2024-9623</a>.</p>
<p>Thanks <a href="https://gitlab.com/stevenorman">stevenorman</a> for reporting this vulnerability.</p>
<h3 id="guests-can-disclose-project-templates">Guests can disclose project templates</h3>
<p>An issue has been discovered in GitLab EE/CE affecting all versions starting from 11.4 before 17.2.9, all versions starting from 17.3 before 17.3.5, all versions starting from 17.4 before 17.4.2. It was possible for guest users to disclose project templates using the API.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>, 4.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-5005">CVE-2024-5005</a>.</p>
<p>Thanks <a href="https://hackerone.com/js_noob">js_noob</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="gitlab-instance-version-disclosed-to-unauthorized-users">GitLab instance version disclosed to unauthorized users</h3>
<p>An issue has been discovered in GitLab EE affecting all versions starting from 16.6 prior to 17.2.9, from 17.3 prior to 17.3.5, and from 17.4 prior to 17.4.2. It was possible for an unauthenticated attacker to determine the GitLab version number for a GitLab instance.
This is a low severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N</code></a>, 3.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-9596">CVE-2024-9596</a>.</p>
<p>This issue was discovered internally by GitLab team member <a href="https://gitlab.com/pgascouvaillancourt">Paul Gascou-Vaillancourt</a>.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1742">17.4.2</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2041">Backport: fix: Specify an absolute directory for SCHEMA_VERSIONS_DIR to 17-4-stable</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/7323">Backport grpc-go v1.67.1 upgrade to 17.4</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/167033">Update expected vulnerability in enable_advanced_sast_spec.rb</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/166877">Skip multi-version upgrade job for stable branch MRs</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/168099">Backport 17.4 Fix label filter by name for search</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/168238">Restrict duo pro assignment email to duo pro for sm</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/168156">Drop project_id not null constraint ci_deleted_objects</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/167937">[Backport] Go-get: fix 401 error for unauthenticated requests</a></li>
</ul>
<h3 id="1735">17.3.5</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2042">Backport: fix: Specify an absolute directory for SCHEMA_VERSIONS_DIR to 17-3-stable</a></li>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2045">Backport: fix: Allow non-root user to run the bundle-certificates script 17.3</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/166881">Skip multi-version upgrade job for stable branch MRs</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/168015">Ensure restricted visibility levels is an array - 17.3 backport</a></li>
</ul>
<h3 id="1729">17.2.9</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/166883">Skip multi-version upgrade job for stable branch MRs</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/168016">Ensure restricted visibility levels is an array - 17.2 backport</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<h2 id="were-combining-patch-and-security-releases">We’re combining patch and security releases</h2>
<p>This improvement in our release process matches the industry standard and will help GitLab users get information about security and
bug fixes sooner, <a href="https://about.gitlab.com/blog/were-combining-patch-and-security-releases/">read the blog post here</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Critical Patch Release: 16.10.10, 16.9.11, 16.8.10, 16.7.10, 16.6.10, 16.5.10, 16.4.7, 16.3.9, 16.2.11, 16.1.8, 16.0.10</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-10-10-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-10-10-released/</id><published>2024-09-25T00:00:00Z</published><updated>2024-09-25T00:00:00Z</updated><author><name>Greg Myers</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On September 25, 2024, we released versions 16.10.10, 16.9.11, 16.8.10, 16.7.10, 16.6.10, 16.5.10, 16.4.7, 16.3.9, 16.2.11, 16.1.8, and 16.0.10 for GitLab Community Edition (CE) and Enterprise Edition (EE). This extends the security fixes previously added to 17.3.3, 17.2.7, 17.1.8, 17.0.8, 16.11.10.</p>
<p>These versions contain backports of an important security fix which was previously <a href="https://about.gitlab.com/releases/2024/09/17/patch-release-gitlab-17-3-3-released/">released for GitLab versions 17.3.3, 17.2.7, 17.1.8, 17.0.8, and 16.11.10</a>.
We strongly recommend that all affected self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases, and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, you can visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<p>Special thanks goes to Roger Meier (@bufferoverflow) who originally created the merge request in Canonical.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issue described below be <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-10-10-released/#saml-authentication-bypass">SAML authentication bypass</a></td>
          <td>Critical</td>
      </tr>
  </tbody>
</table>
<h3 id="saml-authentication-bypass">SAML authentication bypass</h3>
<p>Updates dependencies <code>omniauth-saml</code> to version 2.2.1 and <code>ruby-saml</code> to 1.17.0 to mitigate <a href="https://nvd.nist.gov/vuln/detail/CVE-2024-45409">CVE-2024-45409</a>. This security vulnerability applies only to instances which
have configured SAML based authentication.</p>
<h4 id="self-managed-gitlab-known-mitigations">Self Managed GitLab: Known Mitigations</h4>
<p>The following mitigation for self-managed GitLab installations prevents successful exploitation of <a href="https://nvd.nist.gov/vuln/detail/CVE-2024-45409">CVE-2024-45409</a>:</p>
<ol>
<li>Enable GitLab <a href="https://docs.gitlab.com/ee/user/profile/account/two_factor_authentication.html">two-factor authentication</a> for <a href="https://docs.gitlab.com/ee/security/two_factor_authentication.html#enforce-2fa-for-all-users">all user accounts</a> on the GitLab self-managed instance (NOTE: Enabling identity provider multi-factor authentication does not mitigate this vulnerability) <strong>and</strong></li>
<li>Do not allow the <a href="https://docs.gitlab.com/ee/integration/saml.html#bypass-two-factor-authentication">SAML two-factor bypass</a> option in GitLab.</li>
</ol>
<h4 id="self-managed-gitlab-identifying--detecting-exploitation-attempts">Self Managed GitLab: Identifying &amp; Detecting Exploitation Attempts</h4>
<p>Evidence of attempted or successful exploitation of Ruby-SAML (<a href="https://nvd.nist.gov/vuln/detail/CVE-2024-45409">CVE-2024-45409</a>) will be present in the GitLab <a href="https://docs.gitlab.com/ee/administration/logs/#application_jsonlog">application_json</a> and <a href="https://docs.gitlab.com/ee/administration/logs/#auth_jsonlog">auth_json</a> log files.</p>
<h5 id="unsuccessful-exploit-attempt---hunting">Unsuccessful Exploit Attempt - Hunting</h5>
<p>Unsuccessful exploitation attempts may generate a <code>ValidationError</code> from the <code>RubySaml</code> library. This could be for a variety of reasons related to the complexity of crafting a working exploit.</p>
<p>Two examples are shown below, but the error may manifest with other descriptions. The common string to search for is <code>RubySaml::ValidationError</code> inside the application_json log.</p>
<ol>
<li>Invalid ticket due to incorrect callback URL
<ol>
<li>Example log event:</li>
<li><code>{&quot;severity&quot;:&quot;ERROR&quot;,&quot;time&quot;:&quot;2024-xx-xx&quot;,&quot;correlation_id&quot;:&quot;xx&quot;,&quot;message&quot;:&quot;(saml) Authentication failure! invalid_ticket: OneLogin::RubySaml::ValidationError, The response was received at https://domain.com/users/auth/saml/incorrect_callback instead of https://domain.com/users/auth/saml/callback&quot;}</code></li>
</ol>
</li>
<li>Invalid ticket due to a certificate signing issue
<ol>
<li>Example log event:</li>
<li><code>&quot;message&quot;:&quot;(saml) Authentication failure! invalid_ticket: OneLogin::RubySaml::ValidationError, Fingerprint mismatch&quot;</code></li>
</ol>
</li>
</ol>
<h5 id="successful-exploitation---hunting">Successful Exploitation - Hunting</h5>
<p>Successful exploitation attempts will trigger SAML related log events. However, there may be differences that make an exploit attempt unique from legitimate SAML authentication events.</p>
<p>A successful exploitation attempt will log whatever extern_id value is set by the attacker attempting exploitation. Therefore, identifying a unique extern_uid that is not common in your organization could be an indicator of potential exploitation.</p>
<ol>
<li>Example exploit authentication event in the application_json log file, with a extern_id set in exploit PoC code:
<ol>
<li>Log event:</li>
<li><code>{&quot;severity&quot;:&quot;INFO&quot;,&quot;time&quot;:&quot;2024-xx-xx&quot;,&quot;correlation_id&quot;:&quot;xx&quot;,&quot;meta.caller_id&quot;:&quot;OmniauthCallbacksController#saml&quot;,&quot;meta.remote_ip&quot;:&quot;0.0.0.0&quot;,&quot;meta.feature_category&quot;:&quot;system_access&quot;,&quot;meta.client_id&quot;:&quot;ip/0.0.0.0&quot;,&quot;message&quot;:&quot;(SAML) saving user exploit-test-user@domain.com from login with admin =\\u003e false, extern_uid =\\u003e exploit-test-user&quot;}</code></li>
</ol>
</li>
</ol>
<p>When crafting an exploit, there are many <a href="https://docs.gitlab.com/ee/integration/saml.html#configure-assertions">SAML assertions</a> an attacker would need to craft to perfectly replicate a legitimate login. These include both the key and value fields that you specify at your IdP, and may be unknown to unauthorized individuals - especially if you have customized these attributes.</p>
<p>You can review your auth_json log file to look for SAML responses with incorrect or missing information in the <code>attributes</code> section.</p>
<ol>
<li>Example of a SAML authentication event in the auth_json log file.
<ol>
<li><code>&quot;severity&quot;:&quot;INFO&quot;,&quot;time&quot;:&quot;2024-xx-xx&quot;,&quot;correlation_id&quot;:&quot;xx&quot;,&quot;meta.caller_id&quot;:&quot;OmniauthCallbacksController#saml&quot;,&quot;meta.remote_ip&quot;:&quot;0.0.0.0&quot;,&quot;meta.feature_category&quot;:&quot;system_access&quot;,&quot;meta.client_id&quot;:&quot;ip/0.0.0.0&quot;,&quot;payload_type&quot;:&quot;saml_response&quot;: {&quot;issuer&quot;: [&quot;xxx&quot;],&quot;name_id&quot;: &quot;xxx&quot;,&quot;name_id_format&quot;: &quot;xxx&quot;,&quot;name_id_spnamequalifier&quot;: null,&quot;name_id_namequalifier&quot;: null,&quot;destination&quot;: &quot;xxx&quot;,&quot;audiences&quot;: [&quot;xxx&quot;],&quot;attributes&quot;: {&quot;first_name&quot;: [&quot;xxx&quot;],&quot;last_name&quot;: [&quot;yyy&quot;], &quot;email&quot;: [&quot;zzz&quot;]}}</code></li>
</ol>
</li>
</ol>
<h5 id="detecting-exploitation-attempts">Detecting Exploitation Attempts</h5>
<p>For self managed customers forwarding GitLab application_json logs to a SIEM, creating detections to detect Ruby-SAML (<a href="https://nvd.nist.gov/vuln/detail/CVE-2024-45409">CVE-2024-45409</a>) exploitation attempts is possible. Our team is sharing two threat detections rules, written in Sigma format, to detect potential exploitation.</p>
<p><strong>Note:</strong> These detections may need to be tuned and modified to customer environments in order to deliver effective results, and due to varying configurations of different customer environments, customers should validate the legitimacy and accuracy of any events identified by these detections.</p>
<h5 id="users-with-more-than-1-unique-extern_uid-over-time">Users with more than 1 unique extern_uid over time</h5>
<p>This detection is designed to identify an authenticated SAML user with more than one extern_uid values linked to authentication events, a potential indication of malicious authentications with an attacker set extern_uid field.</p>

<div class="codeblock-wrapper" data-elastic-exclude>
  <div data-vue-app="codeblock-toolbar" data-code-language="" class="codeblock-toolbar"></div><pre tabindex="0"><code>title: Multiple extern_ids
description: Detects when their are multiple extern_id&#39;s associated with a user.
author: Gitlab Security Engineering
date: 09/15/2024
schedule: &#34;*/10 * * * *&#34;
pseudocode: |
  select log source application.log
  where 7d &lt; event_time &lt; now()
  where severity=&#34;INFO&#34; and meta_caller_id=&#34;Groups::OmniauthCallbacksController#group_saml&#34;
  regex(message, &#34;saving user (?&lt;user_email&gt;\S+) .*extern_uid \S+ (?&lt;extern_id&gt;[\S]+)&#34;)
  count extern_id by user_email as total_extern_ids
  where total_extern_ids &gt; 1
verify: Review Gitlab application logs for the source IP of the SAML authentications. If there is a singular IP for all extern_ids this could point to a false positive. Cross reference the SAML authentication source IP/s with the known user&#39;s IP from sso authentication logs.
tuning: N/A</code></pre></div>
<h5 id="gitlab-saml-authentication-from-a-different-ip-address-than-other-idp-events-for-the-same-user-over-time">GitLab SAML authentication from a different IP address than other iDP events for the same user over time</h5>
<p>This detection is designed to correlate authentication events, grouped by user, against both GitLab SAML authentication events as well as other iDP authentication events in an effort to identify any change in user IP address, which could be an indication of attacker authentication sessions.</p>

<div class="codeblock-wrapper" data-elastic-exclude>
  <div data-vue-app="codeblock-toolbar" data-code-language="" class="codeblock-toolbar"></div><pre tabindex="0"><code>title: Gitlab SAML IP differs from SSO IP
description: Detects when the source IP for the SAML authentication to Gitlab from application.log differs from the users known IP from SSO MFA logs.
author: Gitlab Security Engineering
date: 09/15/2024
schedule: &#34;*/10 * * * *&#34;
pseudocode: |
  select log source application.log
  where severity=&#34;INFO&#34; and meta_caller_id=&#34;Groups::OmniauthCallbacksController#group_saml&#34;
  regex(message, &#34;saving user (?&lt;user_email&gt;\S+) &#34;)
  #Create sub-query to bring in table from SSO authentication data
  select meta_remote_ip, user_email
  where user_email in
    (
    select log source authentication
    where 1d &lt; event_time &lt; now()
    where event_type=&#34;user.authentication.auth_via_mfa&#34;
    group by user_email, sso_source_ip
    )
  where sso_source_ip!=meta_remote_ip
verify: False positives can arise when the user is traveling. Review SSO authentication logs to see if the geo-location is similar to the SAML authentication to Gitlab. If any discrepancies are found, reach out to the user for verification. If the user is not traveling, temporarily lock the user&#39;s Gitlab account and review their activity through Gitlab&#39;s application logs.
tuning: If the query is producing high false positives, consider using geolocation functions on IPs to compare the cities and countries that are generating the authentications.</code></pre></div>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<h2 id="were-combining-patch-and-security-releases">We’re combining patch and security releases</h2>
<p>This improvement in our release process matches the industry standard and will help GitLab users get information about security and
bug fixes sooner, <a href="https://about.gitlab.com/blog/were-combining-patch-and-security-releases/">read the blog post here</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 17.4.1, 17.3.4, 17.2.8</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-4-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-4-1-released/</id><published>2024-09-25T00:00:00Z</published><updated>2024-09-25T00:00:00Z</updated><author><name>Greg Myers</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On September 25, 2024, we released versions 17.4.1, 17.3.4, 17.2.8 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases, and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, you can visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below be <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-4-1-released/#maintainer-can-leak-dependency-proxy-password-by-changing-dependency-proxy-url-via-crafted-post-request">Maintainer can leak Dependency Proxy password by changing Dependency Proxy URL via crafted POST request</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-4-1-released/#ai-feature-reads-unsanitized-content-allowing-for-attacker-to-hide-prompt-injection">AI feature reads unsanitized content, allowing for attacker to hide prompt injection</a></td>
          <td>Low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-4-1-released/#project-reference-can-be-exposed-in-system-notes">Project reference can be exposed in system notes</a></td>
          <td>Low</td>
      </tr>
  </tbody>
</table>
<h3 id="maintainer-can-leak-dependency-proxy-password-by-changing-dependency-proxy-url-via-crafted-post-request">Maintainer can leak Dependency Proxy password by changing Dependency Proxy URL via crafted POST request</h3>
<p>An information disclosure issue has been discovered in GitLab EE affecting all versions starting from 16.5 prior to 17.2.8, from 17.3 prior to 17.3.4, and from 17.4 prior to 17.4.1. A maintainer could obtain a Dependency Proxy password by editing a certain Dependency Proxy setting via a POST request.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:L/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:L/I:L/A:N</code></a>, 5.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-4278">CVE-2024-4278</a>.</p>
<p>Thanks <a href="https://hackerone.com/ac7n0w">ac7n0w</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="ai-feature-reads-unsanitized-content-allowing-for-attacker-to-hide-prompt-injection">AI feature reads unsanitized content, allowing for attacker to hide prompt injection</h3>
<p>An issue has been discovered in GitLab EE affecting all versions starting from 16.0 prior to 17.2.8, from 17.3 prior to 17.3.4, and from 17.4 prior to 17.4.1. An AI feature was found to read unsanitized content in a way that could&rsquo;ve allowed an attacker to hide prompt injection.
This is a low severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:N</code></a>, 3.1).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-4099">CVE-2024-4099</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="project-reference-can-be-exposed-in-system-notes">Project reference can be exposed in system notes</h3>
<p>An information disclosure issue has been discovered in Gitlab EE/CE affecting all versions from 15.6 prior to 17.2.8, 17.3 prior to 17.3.4, and 17.4 prior to 17.4.1. In specific conditions it was possible to disclose the path of a private project to an unauthorized user.
This is a low severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:L/I:N/A:N</code></a>, 2.6).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-8974">CVE-2024-8974</a>.</p>
<p>This vulnerability has been discovered internally by GitLab team member <a href="https://gitlab.com/leipert">Lukas Eipert</a>.</p>
<h3 id="mattermost-security-updates-august-27-2024">Mattermost Security Updates August 27, 2024</h3>
<p>Mattermost has been updated to version 9.11.1, which contains several patches and security fixes.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1741">17.4.1</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/166427">Improve OpenSSL callout message</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/166564">Change urgency of API project/:id/share to <code>low</code></a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/166363">Check commit message for issue close pattern setting</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/166540">Backport: Fixes issues with incorrectly displaying VR button</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/166694">Backport &lsquo;Fix incorrect gitlab-shell-check filename&rsquo; into 17.4</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/166933">Update OpenSSL v3 callout to delay update to GitLab 17.7</a></li>
</ul>
<h3 id="1734">17.3.4</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/166181">Improve OpenSSL callout message</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/166302">Fix Code Review AI features policies to check duo features enabled toggle</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/166934">Update OpenSSL v3 callout to delay update to GitLab 17.7</a></li>
</ul>
<h3 id="1728">17.2.8</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/166183">Improve OpenSSL callout message</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/166935">Update OpenSSL v3 callout to delay update to GitLab 17.7</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<h2 id="were-combining-patch-and-security-releases">We’re combining patch and security releases</h2>
<p>This improvement in our release process matches the industry standard and will help GitLab users get information about security and
bug fixes sooner, <a href="https://about.gitlab.com/blog/were-combining-patch-and-security-releases/">read the blog post here</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab 17.4 released</title><link href="https://docs.gitlab.com/releases/17/17-4-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/17/17-4-released/</id><published>2024-09-19T00:00:00Z</published><updated>2024-09-19T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On September 19, 2024, GitLab 17.4 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong>Archish Thakkar</strong>
</p>
<p>Everyone can <a href="https://gitlab.com/gitlab-org/developer-relations/contributor-success/team-task/-/issues/490">nominate GitLab&rsquo;s community contributors</a>!
Show your support for our active candidates or add a new nomination! 🙌</p>
<p>Archish Thakkar is one of GitLab&rsquo;s top contributors this year with <a href="https://gitlab.com/groups/gitlab-org/-/issues/?sort=created_date&amp;state=closed&amp;assignee_username%5B%5D=archish27&amp;first_page_size=100">46 closed issues</a> and <a href="https://gitlab.com/groups/gitlab-org/-/merge_requests?assignee_username%5B%5D=archish27&amp;first_page_size=100&amp;sort=created_date&amp;state=merged">119 merged MRs</a>. These contributions have helped Archish earn top spots in the last two <a href="https://gitlab-community.gitlab.io/community-projects/merge-request-leaderboard/?&amp;createdAfter=2024-08-26&amp;createdBefore=2024-09-02&amp;mergedBefore=2024-10-03&amp;label=Hackathon">GitLab Hackathons</a>. He is a Senior Software Engineer at <a href="https://middleware.io/">Middleware</a> and passionate open source contributor.</p>
<p>Archish was nominated by <a href="https://gitlab.com/splattael">Peter Leitzen</a>, Staff Backend Engineer, Engineering Productivity at GitLab. The nomination was supported by <a href="https://gitlab.com/mwoolf">Max Woolf</a>, Staff Backend Engineer at GitLab, and <a href="https://gitlab.com/jnutt">James Nutt</a>, Senior Backend Engineer at GitLab. Archish&rsquo;s contributions have increased in the past two months where he has consistently demonstrated outstanding commitment to improving GitLab&rsquo;s codebase, contributing multiple QoL (Quality of Life) fixes and reducing technical debt.</p>
<p>Many thanks to Archish and the rest of GitLab&rsquo;s open source contributors for co-creating GitLab!</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>More context-aware GitLab Duo Code Suggestions using open tabs</strong>
    <p><p>Elevate your coding workflow and receive more context-aware Code Suggestions using the contents of other open tabs.</p>
<p>This improvement to Code Suggestions now uses the content of your open editor tabs to provide more relevant and accurate code recommendations.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/repository/code_suggestions/#use-open-tabs-as-context">View Documentation</a></p>
  </li>
  <li>
    <strong>Auto-merge when all checks pass</strong>
    <p><p>Merge requests have many required checks that must pass before they are mergeable. These checks can include approvals, unresolved threads, pipelines, and other items that need to be satisfied. When you&rsquo;re responsible for merging code, it can be hard to keep track of all of these events, and know when to come back and check to see if a merge request can be merged.</p>
<p>GitLab now supports <strong>Auto-merge</strong> for all checks in merge requests. Auto-merge enables any user who is eligible to merge to set a merge request to <strong>Auto-merge</strong>, even before all the required checks have passed. As the merge request continues through its lifecycle, the merge request automagically merges after the last failing check passes.</p>
<p>We&rsquo;re really excited about this improvement to accelerate your merge request workflows. You can leave feedback about this feature in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/438395">issue 438395</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/merge_requests/auto_merge.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Extension marketplace now available in the Web IDE</strong>
    <p><p>We&rsquo;re thrilled to announce the launch of the extension marketplace in the Web IDE on GitLab.com. With the extension marketplace, you can discover, install, and manage third-party extensions and enhance your development experience. Some extensions are not compatible with the web-only version because they require a local runtime environment. However, you can still choose from thousands of extensions to boost your productivity or customize your workflow.</p>
<p>The extension marketplace is disabled by default. To get started, you can enable the extension marketplace in the <strong>Integrations</strong> section of your <a href="https://gitlab.com/-/profile/preferences">user preferences</a>. For <a href="https://docs.gitlab.com/ee/user/enterprise_user/">enterprise users</a>, only users with the Owner role for a top-level group can enable the extension marketplace.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/web_ide/index.html#extension-marketplace">View Documentation</a></p>
  </li>
  <li>
    <strong>Secure sudo access for workspaces</strong>
    <p><p>You can now configure sudo access for your workspace, making it easier than ever to install, configure, and run dependencies directly in your development environment. We&rsquo;ve implemented three secure methods to ensure a seamless development experience:</p>
<ul>
<li>Sysbox</li>
<li>Kata Containers</li>
<li>User namespaces</li>
</ul>
<p>With this feature, you can fully customize your environment to match your workflow and project needs.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/workspace/configuration.html#configure-sudo-access-for-a-workspace">View Documentation</a></p>
  </li>
  <li>
    <strong>List Kubernetes resource events</strong>
    <p><p>GitLab provides a real-time view into your pods and streaming pod logs. Until now, however, we didn&rsquo;t show you resource-specific event information from the UI,
so you still had to use 3rd party tools to debug Kubernetes deployments.
This release adds events to the resource details view of <a href="https://docs.gitlab.com/ee/ci/environments/kubernetes_dashboard.html">the dashboard for Kubernetes</a>.</p>
<p>This is the first time we&rsquo;ve added events to the UI. Currently, events are refreshed every time you open the resource details view. You can track the development of real-time event streaming in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/470042">issue 470042</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/environments/kubernetes_dashboard.html">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Pages without wildcard DNS is generally available</strong>
    <p><p>Previously, to create a GitLab Pages project, you needed a domain formatted like <code>name.example.io</code>
or <code>name.pages.example.io</code>. This requirement meant you had to set up wildcard DNS records and
TLS certificate. In this release, setting up a GitLab Pages project without a DNS wildcard has
moved from beta to generally available.</p>
<p>Removing the requirement for wildcard certificates eases administrative overhead associated with
GitLab Pages. Some customers can&rsquo;t use GitLab Pages because of organizational restrictions on
wildcard DNS records or certificates.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/pages/#pages-domain-without-wildcard-dns">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Pages parallel deployments in beta</strong>
    <p><p>This release introduces Pages parallel deployments in beta. You can now easily preview changes and manage parallel deployments for your
GitLab Pages sites. This enhancement allows for seamless experimentation with new ideas, so you can test and refine your sites with confidence. By
catching any issues early, you can ensure that the live site remains stable and polished, building on the already great foundation of GitLab Pages.</p>
<p>Additionally, parallel deployments can be useful for localization when you deploy different language versions of an application or website.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/pages/#parallel-deployments">View Documentation</a></p>
  </li>
  <li>
    <strong>Summarize issue discussions with GitLab Duo Chat</strong>
    <p>Getting up to speed on lengthy issue discussions can be a significant time investment. With this release, AI-generated issue discussion summarization has been integrated with Duo Chat and is now generally available for GitLab.com, Self-managed, and Dedicated customers.</p>
    <p><a href="https://docs.gitlab.com/ee/user/discussions/index.html#summarize-issue-discussions-with-duo-chat">View Documentation</a></p>
  </li>
  <li>
    <strong>Advanced SAST is generally available</strong>
    <p><p>We&rsquo;re excited to announce that our Advanced Static Application Security Testing (SAST) scanner is now generally available for all GitLab Ultimate customers.</p>
<p>Advanced SAST is a new scanner powered by the technology we <a href="https://about.gitlab.com/blog/oxeye-joins-gitlab-to-advance-application-security-capabilities/">acquired from Oxeye</a> earlier this year. It uses a proprietary detection engine with rules informed by in-house security research to identify exploitable vulnerabilities in first-party code. It delivers more accurate results so developers and security teams don&rsquo;t have to sort through the noise of false-positive results.</p>
<p>Along with the new scanning engine, GitLab 17.4 includes:</p>
<ul>
<li>A new <a href="https://docs.gitlab.com/ee/user/application_security/vulnerabilities/#vulnerability-code-flow">code-flow view</a> that traces a vulnerability&rsquo;s path across files and functions.</li>
<li>An automatic migration that allows Advanced SAST to &ldquo;take over&rdquo; existing results from previous GitLab SAST scanners.</li>
</ul>
<p>To learn more, see <a href="https://about.gitlab.com/blog/gitlab-advanced-sast-is-now-generally-available/">the announcement blog</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/sast/gitlab_advanced_sast.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Hide CI/CD variable values in the UI</strong>
    <p>You might not want anyone to see the value of a variable after it is saved to project settings. You can now select the new <strong>Masked and hidden</strong> visibility option when creating a CI/CD variable. Selecting this option will permanently mask the value of the variable in the CI/CD settings UI, restricting the value from being displayed to anyone in the future and decreasing visibility of your data.</p>
    <p><a href="https://new.docs.gitlab.com/ci/variables/#define-a-cicd-variable-in-the-ui">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Scale and Deployments</h4>
<ul>
  <li>
    <strong>Omnibus improvements</strong>
    <p><p>GitLab 17.4 includes PostgreSQL 16 by default for fresh installations of GitLab.</p>
<p>GitLab 17.7 will include OpenSSL V3. This will affect Omnibus instances with external integration setup&rsquo;s that do not meet the minimum requirements of TLS 1.2 or above for outbound connections, along with at least 112-bit encryption for TLS certificates. Please review our <a href="https://docs.gitlab.com/omnibus/settings/ssl/openssl_3.html">OpenSSL upgrade documentation</a> for more information or if your are unsure if your instance will be affected.</p>
</p>
    <p><a href="https://docs.gitlab.com/omnibus/">View Documentation</a></p>
  </li>
  <li>
    <strong>List groups invited to a group or project using the Groups or Projects API</strong>
    <p>We added new endpoints to the Groups API and Projects API to retrieve the groups that have been invited to a group or project. This functionality is available only on the Members page of a group or project. We hope that this addition will make it easier to automate membership management for your groups and projects. The endpoints are rate-limited to 60 requests per minute per user.</p>
    <p><a href="https://docs.gitlab.com/ee/api/groups.html#list-a-groups-invited-groups">View Documentation</a></p>
  </li>
  <li>
    <strong>Restrict group access by domain with the Groups API</strong>
    <p>Previously, you could only add domain restrictions at the group level in the UI. Now, you can also do this by using the new <code>allowed_email_domains_list</code> attribute in the Groups API.</p>
    <p><a href="https://docs.gitlab.com/ee/api/groups.html#update-group">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved source display for group and project members</strong>
    <p>We have simplified the display of the source column on the Members page for groups and projects. Direct members are still indicated as <code>Direct member</code>. Inherited members are now listed as <code>Inherited from</code> followed by the group name. Members that were added by inviting a group to the group or project are listed as <code>Invited group</code> followed by the group name. For members that inherited from an invited group that was added to a parent group, we now display the last step to keep the display actionable for users managing membership.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/members/#membership-types">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Duo seat assignment email</strong>
    <p><p>Users on self-managed instances will now receive an email when they are assigned a GitLab Duo seat. Previously, you wouldn&rsquo;t know you were assigned a seat unless someone told you, or you noticed new functionality in the GitLab UI.</p>
<p>To disable this email, an administrator can disable the <code>duo_seat_assignment_email_for_sm</code> feature flag.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/subscriptions/subscription-add-ons.html#assign-gitlab-duo-seats">View Documentation</a></p>
  </li>
  <li>
    <strong>Resend failed webhook requests with the API</strong>
    <p><p>Previously, GitLab provided the ability to resend webhook requests only in the UI, which was inefficient if many
requests failed.</p>
<p>So that you can handle failed webhook requests programmatically, in this release thanks to a community contribution, we
added API endpoints for resending them:</p>
<ul>
<li><a href="https://docs.gitlab.com/ee/api/projects.html#resend-project-hook-event">Project webhook requests</a></li>
<li><a href="https://docs.gitlab.com/ee/api/groups.html#resend-group-hook-event">Group webhook requests</a> (Premium and Ultimate tier only)</li>
</ul>
<p>You can now:</p>
<ol>
<li>Get a list of <a href="https://docs.gitlab.com/ee/api/projects.html#get-project-hook-events">project hook</a> or <a href="https://docs.gitlab.com/ee/api/groups.html#get-group-hook-events">group hook</a> events.</li>
<li>Filter the list to see failures.</li>
<li>Use the <code>id</code> of any event to resend it.</li>
</ol>
<p>Thanks to <a href="https://gitlab.com/lifez">Phawin</a> for <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/151130">this community contribution</a>!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/api/projects.html#resend-project-hook-event">View Documentation</a></p>
  </li>
  <li>
    <strong>Idempotency keys for webhook requests</strong>
    <p><p>From this release, we support an idempotency key in the headers of webhook requests. An idempotency key is a unique ID that remains consistent across webhook retries, which
allows webhook clients to detect retries. Use the <code>Idempotency-Key</code> header to ensure the idempotency of webhook effects on integrations.</p>
<p>Thanks to <a href="https://gitlab.com/van.m.anderson">Van</a> for this <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/160952">community contribution</a>!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/integrations/webhooks.html#delivery-headers">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>CI/CD component for code intelligence</strong>
    <p><p>Code intelligence in GitLab provides code navigation features when browsing a repository. Getting started with code navigation is often complicated, as you must configure a CI/CD job. This job can require custom scripting to provide the correct output and artifacts.</p>
<p>GitLab now supports an official <a href="https://gitlab.com/explore/catalog/components/code-intelligence">Code intelligence CI/CD component</a> for easier setup. Add this component to your project by following the instructions for <a href="https://docs.gitlab.com/ee/ci/components/index.html#use-a-component">using a component</a>. This greatly simplifies adopting code intelligence in GitLab.</p>
<p>Currently, the component supports these languages:</p>
<ul>
<li>Go version 1.21 or later.</li>
<li>TypeScript or JavaScript.</li>
</ul>
<p>We&rsquo;ll continue to evaluate <a href="https://github.com/sourcegraph/scip?tab=readme-ov-file#tools-using-scip">available SCIP indexers</a> as we look to broaden language support for the new component. If you&rsquo;re interested in adding support for a language, please open a merge request in the <a href="https://gitlab.com/components/code-intelligence">code intelligence component</a> project.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/code_intelligence.html#with-the-cicd-component">View Documentation</a></p>
  </li>
  <li>
    <strong>Linked files in merge request show first</strong>
    <p><p>When you share a link to a specific file in a merge request, it&rsquo;s often because you want the person to look at something within that file. Merge requests previously needed to load all of the files before scrolling to the specific position you&rsquo;ve referenced. Linking directly to a file is a great way to improve the speed of collaboration in merge requests:</p>
<ol>
<li>Find the file you want to show first. Right-click the name of the file to copy the link to it.</li>
<li>When you visit that link, your chosen file is shown at the top of the list. The file browser shows a link icon next to the file name.</li>
</ol>
<p>Feedback about linked files can be left in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/439582">issue 439582</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/merge_requests/changes.html#show-a-linked-file-first">View Documentation</a></p>
  </li>
  <li>
    <strong>Authenticate with OAuth for GitLab Duo in JetBrains IDEs</strong>
    <p>Our GitLab Duo plugin for JetBrains now offers a more secure and streamlined onboarding process. Sign in quickly and securely with OAuth. It integrates seamlessly with your existing workflow, with no personal access token required!</p>
    <p><a href="https://docs.gitlab.com/ee/editor_extensions/jetbrains_ide/#configure-the-extension">View Documentation</a></p>
  </li>
  <li>
    <strong>Non-deployment jobs to protected environments aren&#39;t turned into manual jobs</strong>
    <p><p>Due to an implementation issue, the <code>action: prepare</code>, <code>action: verify</code>, and <code>action: access</code> jobs
become manual jobs when they run against a protected environment. These jobs require manual interaction to run,
although they don&rsquo;t require any additional approvals.</p>
<p><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/390025">Issue 390025</a> proposes to fix the implementation, so these jobs won&rsquo;t be turned into manual jobs.
After this proposed change, to keep the current behavior, you will need to
<a href="https://docs.gitlab.com/ee/ci/jobs/job_control.html#types-of-manual-jobs">explicitly set the jobs to manual</a>.</p>
<p>For now, you can change to the new implementation now by enabling the <code>prevent_blocking_non_deployment_jobs</code> feature flag.</p>
<p>Any proposed breaking changes are intended to differentiate the behavior of the
<code>environment.action: prepare | verify | access</code> values.
The <code>environment.action: access</code> keyword will remain the closest to its current behavior.</p>
<p>To prevent future compatibility issues, you should review your use of these keywords now.
You can learn more about these proposed changes in the following issues:</p>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/437132">Issue 437132</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/437133">Issue 437133</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/437142">Issue 437142</a></li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/jobs/job_control.html#types-of-manual-jobs">View Documentation</a></p>
  </li>
  <li>
    <strong>Trigger a Flux reconciliation from the cluster UI</strong>
    <p><p>Although you can configure Flux to trigger reconciliations at specified intervals, there are situations where you might want an immediate reconciliation. In past releases, you could trigger the reconciliation from a CI/CD pipeline or from the command line. In GitLab 17.4, you can now trigger a reconciliation from a dashboard for Kubernetes with no additional configuration.</p>
<p>To trigger a reconciliation, go to a configured dashboard and select the Flux status badge.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/environments/kubernetes_dashboard.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Optional token expiration</strong>
    <p>Administrators can now decide if they want to enforce a mandatory expiration date for personal, project, and group access tokens. If administrators disable this setting, any new access token generated will not be required to have an expiration date. By default this setting is enabled, and an expiration less than that of the maximum allowed lifetime is required. This setting is available in GitLab 16.11 and later.</p>
    <p><a href="https://docs.gitlab.com/ee/administration/settings/account_and_limit_settings.html#require-expiration-dates-for-new-access-tokens">View Documentation</a></p>
  </li>
  <li>
    <strong>Search by multiple compliance frameworks</strong>
    <p><p>In GitLab 17.3, we provided users with the ability to add multiple compliance frameworks to a project.</p>
<p>Now you can search by multiple compliance frameworks, which makes it easier to search for projects that have multiple compliance frameworks attached to them.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/compliance/compliance_center/compliance_projects_report.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Grant read access to pipeline execution YAML files in projects linked to security policies</strong>
    <p><p>In GitLab 17.4, we added a setting to security policies you can use to grant read access to <code>pipeline-execution.yml</code> files for all linked projects. This setting gives you more flexibility to enable users, bots, or tokens that enforce pipeline execution globally across projects. For example, you can ensure a group or project access tokens can read security policy configurations in order to trigger pipelines during pipeline execution. You still can&rsquo;t view the security policy project repository or YAML directly. The configuration is used only during pipeline creation.</p>
<p>To configure the setting, go to the security policy project you want to share. Select <strong>Settings &gt; General &gt; Visibility, project features, permissions</strong>, scroll to <strong>Pipeline execution policies</strong>, and enable the <strong>Grant access to this repository for projects linked to it as the security policy project source for security policies</strong> toggle.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/policies/">View Documentation</a></p>
  </li>
  <li>
    <strong>Support suffix for jobs with name collisions in pipeline execution policy pipelines</strong>
    <p><p>An enhancement to the <a href="https://about.gitlab.com/releases/2024/07/18/gitlab-17-2-released/#pipeline-execution-policy-type">17.2 release of pipeline execution policies</a>, policy creators may now configure pipeline execution policies to handle collisions in job names gracefully. With the <code>policy.yml</code> for the pipeline execution policy, you may now configure the following options:</p>
<ul>
<li><code>suffix: on_conflict</code> configures the policy to gracefully handle collisions by renaming policy jobs, which is the new default behavior</li>
<li><code>suffix: never</code> enforces all jobs names are unique and will fail pipelines if collisions occur, which has been the default behavior since 17.2</li>
</ul>
<p>With this improvement, you can ensure security and compliance jobs executed within a pipeline execution policy always run, while also preventing unnecessary impacts to developers downstream.</p>
<p>In a follow-up enhancement, we will introduce the configuration option within the policy editor.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/policies/pipeline_execution_policies.html#pipeline-execution-policy-schema">View Documentation</a></p>
  </li>
  <li>
    <strong>Resizable wiki sidebar</strong>
    <p>You can now adjust the wiki sidebar to see longer page titles, improving the overall discoverability of
content. As wiki content grows, having a resizable sidebar helps manage and browse through complex hierarchies or extensive
lists of pages more efficiently.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/wiki/">View Documentation</a></p>
  </li>
  <li>
    <strong>Support for ingesting CycloneDX 1.6 SBOMs</strong>
    <p><p>GitLab 15.3 added support for <a href="https://docs.gitlab.com/ee/ci/yaml/artifacts_reports.html#artifactsreportscyclonedx">ingesting CycloneDX SBOMs</a>.</p>
<p>In GitLab 17.4 we have added support for ingesting CycloneDX version 1.6 SBOMs.</p>
<p>Fields relating to hardware (HBOM), services (SaaSBOM), and AI/ML models (AI/ML-BOM) are not currently supported. SBOMs that contain data relating to these BOMs will be processed, but the data will not be analyzed or presented to users. Support for these other BOM-types is being tracked in this <a href="https://gitlab.com/groups/gitlab-org/-/epics/14989">epic</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/yaml/artifacts_reports.html#artifactsreportscyclonedx">View Documentation</a></p>
  </li>
  <li>
    <strong>Automatic cleanup for removed SAST analyzers</strong>
    <p><p>In <a href="https://docs.gitlab.com/ee/update/deprecations.html#sast-analyzer-coverage-changing-in-gitlab-170">GitLab 17.0</a>, <a href="https://docs.gitlab.com/ee/update/deprecations.html#sast-analyzer-coverage-changing-in-gitlab-160">16.0</a>, and <a href="https://docs.gitlab.com/ee/update/deprecations.html#sast-analyzer-consolidation-and-cicd-template-changes">15.4</a>, we streamlined GitLab SAST so it uses fewer separate analyzers to scan your code for vulnerabilities.</p>
<p>Now, after you upgrade to GitLab 17.3.1 or later, a one-time data migration will automatically resolve leftover vulnerabilities from the <a href="https://docs.gitlab.com/ee/user/application_security/sast/#end-of-supported-analyzers">analyzers that have reached End of Support</a>.
This helps clean up your Vulnerability Report so you can focus on the vulnerabilities that are still detected by the most up-to-date analyzers.</p>
<p>The migration only resolves vulnerabilities that you haven&rsquo;t confirmed or dismissed, and it doesn&rsquo;t affect vulnerabilities that were <a href="https://docs.gitlab.com/ee/user/application_security/sast/analyzers/#transition-to-semgrep-based-scanning">automatically translated to Semgrep-based scanning</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/sast/#end-of-supported-analyzers">View Documentation</a></p>
  </li>
  <li>
    <strong>Secret Detection support for Anthropic API keys</strong>
    <p>Both pipeline and client-side Secret Detection now support detection of <a href="https://www.anthropic.com/">Anthropic</a> API keys.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/secret_detection/pipeline/detected_secrets.html">View Documentation</a></p>
  </li>
  <li>
    <strong>JaCoCo support for test coverage visualization available in beta</strong>
    <p>You can now use JaCoCo coverage reports, a popular standard for coverage calculation, inside your merge requests. The feature is available as beta, but ready for testing by anyone who wants to use JaCoCo coverage reports right away. If you have any feedback, feel free to contribute to the <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/479804">feedback issue</a>.</p>
    <p><a href="https://docs.gitlab.com/ee/ci/testing/test_coverage_visualization/jacoco.html">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner 17.4</strong>
    <p><p>We’re also releasing GitLab Runner 17.4 today! GitLab Runner is the highly-scalable build agent that runs your CI/CD jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.</p>
<h4 id="whats-new">What&rsquo;s new:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/29223">GitLab Runner fleeting plugin for Azure compute (GA)</a></li>
</ul>
<h4 id="bug-fixes">Bug Fixes:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/37952">The entire <code>step_script</code> contents appear in the job log&rsquo;s <code>after_script</code> section when a Kubernetes executor job is cancelled before completion</a></li>
</ul>
<p>The list of all changes is in the GitLab Runner <a href="https://gitlab.com/gitlab-org/gitlab-runner/blob/17-4-stable/CHANGELOG.md">CHANGELOG</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/runner">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab Critical Patch Release: 17.3.3, 17.2.7, 17.1.8, 17.0.8, 16.11.10</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-3-3-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-3-3-released/</id><published>2024-09-17T00:00:00Z</published><updated>2024-09-17T00:00:00Z</updated><author><name>Rohit Shambhuni</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On September 17, 2024, we released versions 17.3.3, 17.2.7, 17.1.8, 17.0.8, 16.11.10 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version.</p>
<p><strong>All GitLab Dedicated instances have been upgraded and customers do not need to take action.</strong></p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases, and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, you can visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<p>Version 17.2.6 has been used to remediate GitLab Dedicated and hasn&rsquo;t been made public. Version 17.2.7 contains identical changes.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-3-3-released/#saml-authentication-bypass">SAML authentication bypass</a></td>
          <td>Critical</td>
      </tr>
  </tbody>
</table>
<h3 id="saml-authentication-bypass">SAML authentication bypass</h3>
<p>Updates dependencies <code>omniauth-saml</code> to version 2.2.1 and <code>ruby-saml</code> to 1.17.0 to mitigate <a href="https://nvd.nist.gov/vuln/detail/CVE-2024-45409">CVE-2024-45409</a>. This security vulnerability applies only to instances which
have configured SAML based authentication.</p>
<h4 id="self-managed-gitlab-known-mitigations">Self Managed GitLab: Known Mitigations</h4>
<p>The following mitigation for self-managed GitLab installations prevents successful exploitation of <a href="https://nvd.nist.gov/vuln/detail/CVE-2024-45409">CVE-2024-45409</a>:</p>
<ol>
<li>Enable GitLab <a href="https://docs.gitlab.com/ee/user/profile/account/two_factor_authentication.html">two-factor authentication</a> for <a href="https://docs.gitlab.com/ee/security/two_factor_authentication.html#enforce-2fa-for-all-users">all user accounts</a> on the GitLab self-managed instance (NOTE: Enabling identity provider multi-factor authentication does not mitigate this vulnerability) <strong>and</strong></li>
<li>Do not allow the <a href="https://docs.gitlab.com/ee/integration/saml.html#bypass-two-factor-authentication">SAML two-factor bypass</a> option in GitLab.</li>
</ol>
<h4 id="self-managed-gitlab-identifying--detecting-exploitation-attempts">Self Managed GitLab: Identifying &amp; Detecting Exploitation Attempts</h4>
<p>Evidence of attempted or successful exploitation of Ruby-SAML (<a href="https://nvd.nist.gov/vuln/detail/CVE-2024-45409">CVE-2024-45409</a>) will be present in the GitLab <a href="https://docs.gitlab.com/ee/administration/logs/#application_jsonlog">application_json</a> and <a href="https://docs.gitlab.com/ee/administration/logs/#auth_jsonlog">auth_json</a> log files.</p>
<h5 id="unsuccessful-exploit-attempt---hunting">Unsuccessful Exploit Attempt - Hunting</h5>
<p>Unsuccessful exploitation attempts may generate a <code>ValidationError</code> from the <code>RubySaml</code> library. This could be for a variety of reasons related to the complexity of crafting a working exploit.</p>
<p>Two examples are shown below, but the error may manifest with other descriptions. The common string to search for is <code>RubySaml::ValidationError</code> inside the application_json log.</p>
<ol>
<li>Invalid ticket due to incorrect callback URL
<ol>
<li>Example log event:</li>
<li><code>{&quot;severity&quot;:&quot;ERROR&quot;,&quot;time&quot;:&quot;2024-xx-xx&quot;,&quot;correlation_id&quot;:&quot;xx&quot;,&quot;message&quot;:&quot;(saml) Authentication failure! invalid_ticket: OneLogin::RubySaml::ValidationError, The response was received at https://domain.com/users/auth/saml/incorrect_callback instead of https://domain.com/users/auth/saml/callback&quot;}</code></li>
</ol>
</li>
<li>Invalid ticket due to a certificate signing issue
<ol>
<li>Example log event:</li>
<li><code>&quot;message&quot;:&quot;(saml) Authentication failure! invalid_ticket: OneLogin::RubySaml::ValidationError, Fingerprint mismatch&quot;</code></li>
</ol>
</li>
</ol>
<h5 id="successful-exploitation---hunting">Successful Exploitation - Hunting</h5>
<p>Successful exploitation attempts will trigger SAML related log events. However, there may be differences that make an exploit attempt unique from legitimate SAML authentication events.</p>
<p>A successful exploitation attempt will log whatever extern_id value is set by the attacker attempting exploitation. Therefore, identifying a unique extern_uid that is not common in your organization could be an indicator of potential exploitation.</p>
<ol>
<li>Example exploit authentication event in the application_json log file, with a extern_id set in exploit PoC code:
<ol>
<li>Log event:</li>
<li><code>{&quot;severity&quot;:&quot;INFO&quot;,&quot;time&quot;:&quot;2024-xx-xx&quot;,&quot;correlation_id&quot;:&quot;xx&quot;,&quot;meta.caller_id&quot;:&quot;OmniauthCallbacksController#saml&quot;,&quot;meta.remote_ip&quot;:&quot;0.0.0.0&quot;,&quot;meta.feature_category&quot;:&quot;system_access&quot;,&quot;meta.client_id&quot;:&quot;ip/0.0.0.0&quot;,&quot;message&quot;:&quot;(SAML) saving user exploit-test-user@domain.com from login with admin =\\u003e false, extern_uid =\\u003e exploit-test-user&quot;}</code></li>
</ol>
</li>
</ol>
<p>When crafting an exploit, there are many <a href="https://docs.gitlab.com/ee/integration/saml.html#configure-assertions">SAML assertions</a> an attacker would need to craft to perfectly replicate a legitimate login. These include both the key and value fields that you specify at your IdP, and may be unknown to unauthorized individuals - especially if you have customized these attributes.</p>
<p>You can review your auth_json log file to look for SAML responses with incorrect or missing information in the <code>attributes</code> section.</p>
<ol>
<li>Example of a SAML authentication event in the auth_json log file.
<ol>
<li><code>&quot;severity&quot;:&quot;INFO&quot;,&quot;time&quot;:&quot;2024-xx-xx&quot;,&quot;correlation_id&quot;:&quot;xx&quot;,&quot;meta.caller_id&quot;:&quot;OmniauthCallbacksController#saml&quot;,&quot;meta.remote_ip&quot;:&quot;0.0.0.0&quot;,&quot;meta.feature_category&quot;:&quot;system_access&quot;,&quot;meta.client_id&quot;:&quot;ip/0.0.0.0&quot;,&quot;payload_type&quot;:&quot;saml_response&quot;: {&quot;issuer&quot;: [&quot;xxx&quot;],&quot;name_id&quot;: &quot;xxx&quot;,&quot;name_id_format&quot;: &quot;xxx&quot;,&quot;name_id_spnamequalifier&quot;: null,&quot;name_id_namequalifier&quot;: null,&quot;destination&quot;: &quot;xxx&quot;,&quot;audiences&quot;: [&quot;xxx&quot;],&quot;attributes&quot;: {&quot;first_name&quot;: [&quot;xxx&quot;],&quot;last_name&quot;: [&quot;yyy&quot;], &quot;email&quot;: [&quot;zzz&quot;]}}</code></li>
</ol>
</li>
</ol>
<h5 id="detecting-exploitation-attempts">Detecting Exploitation Attempts</h5>
<p>For self managed customers forwarding GitLab application_json logs to a SIEM, creating detections to detect Ruby-SAML (<a href="https://nvd.nist.gov/vuln/detail/CVE-2024-45409">CVE-2024-45409</a>) exploitation attempts is possible. Our team is sharing two threat detections rules, written in Sigma format, to detect potential exploitation.</p>
<p><strong>Note:</strong> These detections may need to be tuned and modified to customer environments in order to deliver effective results, and due to varying configurations of different customer environments, customers should validate the legitimacy and accuracy of any events identified by these detections.</p>
<h5 id="users-with-more-than-1-unique-extern_uid-over-time">Users with more than 1 unique extern_uid over time</h5>
<p>This detection is designed to identify an authenticated SAML user with more than one extern_uid values linked to authentication events, a potential indication of malicious authentications with an attacker set extern_uid field.</p>

<div class="codeblock-wrapper" data-elastic-exclude>
  <div data-vue-app="codeblock-toolbar" data-code-language="" class="codeblock-toolbar"></div><pre tabindex="0"><code>title: Multiple extern_ids
description: Detects when their are multiple extern_id&#39;s associated with a user. 
author: Gitlab Security Engineering
date: 09/15/2024
schedule: &#34;*/10 * * * *&#34;
pseudocode: |
  select log source application.log
  where 7d &lt; event_time &lt; now()
  where severity=&#34;INFO&#34; and meta_caller_id=&#34;Groups::OmniauthCallbacksController#group_saml&#34;
  regex(message, &#34;saving user (?&lt;user_email&gt;\S+) .*extern_uid \S+ (?&lt;extern_id&gt;[\S]+)&#34;)
  count extern_id by user_email as total_extern_ids
  where total_extern_ids &gt; 1
verify: Review Gitlab application logs for the source IP of the SAML authentications. If there is a singular IP for all extern_ids this could point to a false positive. Cross reference the SAML authentication source IP/s with the known user&#39;s IP from sso authentication logs. 
tuning: N/A</code></pre></div>
<h5 id="gitlab-saml-authentication-from-a-different-ip-address-than-other-idp-events-for-the-same-user-over-time">GitLab SAML authentication from a different IP address than other iDP events for the same user over time</h5>
<p>This detection is designed to correlate authentication events, grouped by user, against both GitLab SAML authentication events as well as other iDP authentication events in an effort to identify any change in user IP address, which could be an indication of attacker authentication sessions.</p>

<div class="codeblock-wrapper" data-elastic-exclude>
  <div data-vue-app="codeblock-toolbar" data-code-language="" class="codeblock-toolbar"></div><pre tabindex="0"><code>title: Gitlab SAML IP differs from SSO IP
description: Detects when the source IP for the SAML authentication to Gitlab from application.log differs from the users known IP from SSO MFA logs. 
author: Gitlab Security Engineering
date: 09/15/2024
schedule: &#34;*/10 * * * *&#34;
pseudocode: |
  select log source application.log 
  where severity=&#34;INFO&#34; and meta_caller_id=&#34;Groups::OmniauthCallbacksController#group_saml&#34;
  regex(message, &#34;saving user (?&lt;user_email&gt;\S+) &#34;)
  #Create sub-query to bring in table from SSO authentication data
  select meta_remote_ip, user_email
  where user_email in
    (
    select log source authentication
    where 1d &lt; event_time &lt; now()
    where event_type=&#34;user.authentication.auth_via_mfa&#34;
    group by user_email, sso_source_ip
    )
  where sso_source_ip!=meta_remote_ip
verify: False positives can arise when the user is traveling. Review SSO authentication logs to see if the geo-location is similar to the SAML authentication to Gitlab. If any discrepancies are found, reach out to the user for verification. If the user is not traveling, temporarily lock the user&#39;s Gitlab account and review their activity through Gitlab&#39;s application logs. 
tuning: If the query is producing high false positives, consider using geolocation functions on IPs to compare the cities and countries that are generating the authentications.</code></pre></div>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1733">17.3.3</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/165585">Improve OpenSSL 3 upgrading warning notes</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/166063">Upgrade bundler for the GitLab Backup CLI gem</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/166059">Update ruby-saml and omniauth-saml</a></li>
</ul>
<h3 id="1727">17.2.7</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/165587">Improve OpenSSL 3 upgrading warning notes</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/166043">Update ruby-saml and omniauth-saml</a></li>
</ul>
<h3 id="1718">17.1.8</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/165589">Improve OpenSSL 3 upgrading warning notes</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/166058">Update ruby-saml and omniauth-saml</a></li>
</ul>
<h3 id="1708">17.0.8</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/166058">Update ruby-saml and omniauth-saml</a></li>
</ul>
<h3 id="161110">16.11.10</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/166058">Update ruby-saml and omniauth-saml</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<h2 id="were-combining-patch-and-security-releases">We’re combining patch and security releases</h2>
<p>This improvement in our release process matches the industry standard and will help GitLab users get information about security and
bug fixes sooner, <a href="https://about.gitlab.com/blog/were-combining-patch-and-security-releases/">read the blog post here</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Critical Patch Release: 17.3.2, 17.2.5, 17.1.7</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-3-2-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-3-2-released/</id><published>2024-09-11T00:00:00Z</published><updated>2024-09-11T00:00:00Z</updated><author><name>Ottilia Westerlund</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On September 11, 2024, we released versions 17.3.2, 17.2.5, 17.1.7 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action.</p>
<p>GitLab releases fixes for vulnerabilities in patch releases. There are two types of patch releases:
scheduled releases, and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, you can visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are committed to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-3-2-released/#execute-environment-stop-actions-as-the-owner-of-the-stop-action-job">Execute environment stop actions as the owner of the stop action job</a></td>
          <td>Critical</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-3-2-released/#prevent-code-injection-in-product-analytics-funnels-yaml">Prevent code injection in Product Analytics funnels YAML</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-3-2-released/#ssrf-via-dependency-proxy">SSRF via Dependency Proxy</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-3-2-released/#denial-of-service-via-sending-a-specific-post-request">Denial of Service via sending a a specific POST request</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-3-2-released/#ci_job_token-can-be-used-to-obtain-gitlab-session-token">CI_JOB_TOKEN can be used to obtain GitLab session token</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-3-2-released/#variables-from-settings-are-not-overwritten-by-pep-if-a-template-is-included">Variables from settings are not overwritten by PEP if a template is included</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-3-2-released/#guests-can-disclose-the-full-source-code-of-projects-using-custom-group-level-templates">Guests can disclose the full source code of projects using custom group-level templates</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-3-2-released/#identitiescontroller-allows-linking-of-arbitrary-unclaimed-provider-identities">IdentitiesController allows linking of arbitrary unclaimed provider identities</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-3-2-released/#open-redirect-in-repotreeid-endpoint-can-lead-to-account-takeover-through-broken-oauth-flow">Open redirect in repo/tree/:id endpoint can lead to account takeover through broken OAuth flow</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-3-2-released/#open-redirect-in-release-permanent-links-can-lead-to-account-takeover-through-broken-oauth-flow">Open redirect in release permanent links can lead to account takeover through broken OAuth flow</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-3-2-released/#guest-user-with-admin-group-member-permission-can-edit-custom-role-to-gain-other-permissions">Guest user with Admin group member permission can edit custom role to gain other permissions</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-3-2-released/#exposure-of-protected-and-masked-cicd-variables-by-abusing-on-demand-dast">Exposure of protected and masked CI/CD variables by abusing on-demand DAST</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-3-2-released/#credentials-disclosed-when-repository-mirroring-fails">Credentials disclosed when repository mirroring fails</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-3-2-released/#commit-information-visible-through-release-atom-endpoint-for-guest-users">Commit information visible through release atom endpoint for guest users</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-3-2-released/#dependency-proxy-credentials-are-logged-in-plaintext-in-graphql-logs">Dependency Proxy Credentials are Logged in Plaintext in graphql Logs</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-3-2-released/#user-application-can-spoof-the-redirect-url">User Application can spoof the redirect url</a></td>
          <td>Low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-3-2-released/#group-developers-can-view-group-runners-information">Group Developers can view group runners information</a></td>
          <td>Low</td>
      </tr>
  </tbody>
</table>
<h3 id="execute-environment-stop-actions-as-the-owner-of-the-stop-action-job">Execute environment stop actions as the owner of the stop action job</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting from 8.14 prior to 17.1.7, starting from 17.2 prior to 17.2.5, and starting from 17.3 prior to 17.3.2, which allows an attacker to trigger a pipeline as an arbitrary user under certain circumstances.
This is a critical severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H</code></a>, 9.9).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-6678">CVE-2024-6678</a>.</p>
<p>Thanks <a href="https://hackerone.com/yvvdwf">yvvdwf</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="prevent-code-injection-in-product-analytics-funnels-yaml">Prevent code injection in Product Analytics funnels YAML</h3>
<p>An issue has been discovered in GitLab EE affecting all versions starting from 16.11 prior to 17.1.7, from 17.2 prior to 17.2.5, and from 17.3 prior to 17.3.2. Due to incomplete input filtering, it was possible to inject commands into a connected Cube server.
This is a high severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:H"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>, 8.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-8640">CVE-2024-8640</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="ssrf-via-dependency-proxy">SSRF via Dependency Proxy</h3>
<p>A server-side request forgery issue has been discovered in GitLab EE affecting all versions starting from 16.8 prior to 17.1.7, from 17.2 prior to 17.2.5, and from 17.3 prior to 17.3.2. It was possible for an attacker to make requests to internal resources using a custom Maven Dependency Proxy URL.
This is a high severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N</code></a>, 7.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-8635">CVE-2024-8635</a>.</p>
<p>This vulnerability was discovered internally by GitLab team member <a href="https://gitlab.com/joernchen">joernchen</a>.</p>
<h3 id="denial-of-service-via-sending-a-specific-post-request">Denial of Service via sending a specific POST request</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting from 16.4 prior to 17.1.7, starting from 17.2 prior to 17.2.5, starting from 17.3 prior to 17.3.2  which could cause Denial of Service via sending a specific POST request.
This is a high severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code></a>, 7.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-8124">CVE-2024-8124</a>.</p>
<p>Thanks <a href="https://hackerone.com/sim4n6">sim4n6</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="ci_job_token-can-be-used-to-obtain-gitlab-session-token">CI_JOB_TOKEN can be used to obtain GitLab session token</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 13.7 prior to 17.1.7, from 17.2 prior to 17.2.5, and from 17.3 prior to 17.3.2. It may have been possible for an attacker with a victim&rsquo;s CI_JOB_TOKEN to obtain a GitLab session token belonging to the victim.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:L"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:L</code></a>, 6.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-8641">CVE-2024-8641</a>.</p>
<p>Thanks <a href="https://hackerone.com/yvvdwf">yvvdwf</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="variables-from-settings-are-not-overwritten-by-pep-if-a-template-is-included">Variables from settings are not overwritten by PEP if a template is included</h3>
<p>An issue was discovered with pipeline execution policies in GitLab EE affecting all versions from 17.2 prior to 17.2.5, 17.3 prior to 17.3.2 which allows authenticated users to bypass variable overwrite protection via inclusion of a CI/CD template.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N</code></a>, 6.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-8311">CVE-2024-8311</a>.</p>
<p>This vulnerability has been discovered internally by GitLab team member <a href="https://gitlab.com/Andyschoenen">Andy Schoenen</a>.</p>
<h3 id="guests-can-disclose-the-full-source-code-of-projects-using-custom-group-level-templates">Guests can disclose the full source code of projects using custom group-level templates</h3>
<p>An issue has been discovered in GitLab EE affecting all versions starting from 11.2 before 17.1.7, all versions starting from 17.2 before 17.2.5, all versions starting from 17.3 before 17.3.2. It was possible for a guest to read the source code of a private project by using group templates.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N</code></a>, 6.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-4660">CVE-2024-4660</a>.</p>
<p>Thanks <a href="https://hackerone.com/js_noob">js_noob</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="identitiescontroller-allows-linking-of-arbitrary-unclaimed-provider-identities">IdentitiesController allows linking of arbitrary unclaimed provider identities</h3>
<p>An issue has been discovered in GitLab EE/CE affecting all versions from 16.9.7 prior to 17.1.7, 17.2 prior to 17.2.5, and 17.3 prior to 17.3.2. An improper input validation error allows attacker to squat on accounts via linking arbitrary unclaimed provider identities when JWT authentication is configured.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:N</code></a>, 6.4).
We have requested a CVE ID and will update this blog post when it is assigned.</p>
<p>This vulnerability was discovered internally by GitLab team member <a href="https://gitlab.com/joernchen">Joern Schneeweisz</a>.</p>
<h3 id="open-redirect-in-repotreeid-endpoint-can-lead-to-account-takeover-through-broken-oauth-flow">Open redirect in repo/tree/:id endpoint can lead to account takeover through broken OAuth flow</h3>
<p>An issue has been discovered in GitLab EE affecting all versions starting from 11.1 before 17.1.7, 17.2 before 17.2.5, and 17.3 before 17.3.2. Under certain conditions an open redirect vulnerability could allow for an account takeover by breaking the OAuth flow.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:N</code></a>, 6.4).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-4283">CVE-2024-4283</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="open-redirect-in-release-permanent-links-can-lead-to-account-takeover-through-broken-oauth-flow">Open redirect in release permanent links can lead to account takeover through broken OAuth flow</h3>
<p>An issue has been discovered in GitLab EE affecting all versions starting from 12.9 before 17.1.7, 17.2 before 17.2.5, and 17.3 before 17.3.2. Under certain conditions an open redirect vulnerability could allow for an account takeover by breaking the OAuth flow.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:N</code></a>, 6.4).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-4612">CVE-2024-4612</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="guest-user-with-admin-group-member-permission-can-edit-custom-role-to-gain-other-permissions">Guest user with Admin group member permission can edit custom role to gain other permissions</h3>
<p>A privilege escalation issue has been discovered in GitLab EE affecting all versions starting from 16.6 prior to 17.1.7, from 17.2 prior to 17.2.5, and from 17.3 prior to 17.3.2. A user assigned the Admin Group Member custom role could have escalated their privileges to include other custom roles.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:L/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:L/I:H/A:N</code></a>, 5.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-8631">CVE-2024-8631</a>.</p>
<p>Thanks <a href="https://hackerone.com/chotebabume">chotebabume</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="exposure-of-protected-and-masked-cicd-variables-by-abusing-on-demand-dast">Exposure of protected and masked CI/CD variables by abusing on-demand DAST</h3>
<p>An issue was discovered in GitLab EE starting with version 13.3 before 17.1.7, 17.2 before 17.2.5, and 17.3 before 17.3.2 that would allow an attacker to modify an on-demand DAST scan without permissions and leak variables.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:N/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:N/A:N</code></a>, 5.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-2743">CVE-2024-2743</a>.</p>
<p>Thanks <a href="https://hackerone.com/0xn3va">0xn3va</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="credentials-disclosed-when-repository-mirroring-fails">Credentials disclosed when repository mirroring fails</h3>
<p>An issue has been discovered discovered in GitLab CE/EE affecting all versions starting from 15.10 before 17.1.7, all versions starting from 17.2 before 17.2.5, all versions starting from 17.3 before 17.3.2 will disclose user password from repository mirror configuration.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:U/C:H/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:U/C:H/I:N/A:N</code></a>, 4.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-5435">CVE-2024-5435</a>.</p>
<p>Thanks <a href="https://hackerone.com/gudanggaramfilter">gudanggaramfilter</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="commit-information-visible-through-release-atom-endpoint-for-guest-users">Commit information visible through release atom endpoint for guest users</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting with 17.0 before 17.1.7, 17.2 before 17.2.5, and 17.3 before 17.3.2. An attacker as a guest user was able to access commit information via the release Atom endpoint, contrary to permissions.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>, 4.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-6389">CVE-2024-6389</a>.</p>
<p>Thanks <a href="https://hackerone.com/ashish_r_padelkar">ashish_r_padelkar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="dependency-proxy-credentials-are-logged-in-plaintext-in-graphql-logs">Dependency Proxy Credentials are Logged in Plaintext in graphql Logs</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting from 16.5 prior to 17.1.7, starting from 17.2 prior to 17.2.5, and starting from 17.3 prior to 17.3.2, where dependency proxy credentials are retained in graphql Logs.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N</code></a>, 4.0).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-4472">CVE-2024-4472</a>.</p>
<p>Thanks <a href="https://hackerone.com/ac7n0w">ac7n0w</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="user-application-can-spoof-the-redirect-url">User Application can spoof the redirect url</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 17.1 to 17.1.7, 17.2 prior to 17.2.5 and 17.3 prior to 17.3.2. A crafted URL could be used to trick a victim to trust an attacker controlled application.
This is a low severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:N/A:N</code></a>, 3.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-6446">CVE-2024-6446</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="group-developers-can-view-group-runners-information">Group Developers can view group runners information</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting from 16.7 prior to 17.1.7, 17.2 prior to 17.2.5, and 17.3 prior to 17.3.2,  where group runners information was disclosed to unauthorised group members.
This is a low severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:N/A:N</code></a>, 3.1).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-6685">CVE-2024-6685</a>.</p>
<p>Thanks <a href="https://hackerone.com/ashish_r_padelkar">ashish_r_padelkar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1732">17.3.2</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/2012">UBI: Backport openssl gem pin to 17-3-stable</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/163188">Backport &ldquo;Disable allow_failure for release-environments pipeline&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/163437">Fix issue when resizing images in RTE</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/163809">Backport fix for listing projects via API</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/164228">Backport lock retries timeout for sliding list strategy to <code>17-3</code></a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/164748">backport archived filter regression bugfix</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/164791">Ensure to update updated_at when updating access data</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/164894">Backport OpenSSL v3 callout to 17.3</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/165464">Quarantine pypi package registry spec</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/164830">Fix Sidekiq crashing when GITLAB_LOG_LEVEL set to debug</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/165343">[17.3 Backport] Bump OpenSSL to 3.2.0</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/165279">Backport 17.3 - Remove elasticsearch call on init</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7890">Downgrade OpenSSL version to 1.1.1</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7895">[17.3 Backport] Deprecate CentOS 7</a></li>
</ul>
<h3 id="1725">17.2.5</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/163189">Backport &ldquo;Disable allow_failure for release-environments pipeline&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/163421">Always build assets image when tagging</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/162466">Update google-cloud-core and google-cloud-env gems</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/162937">Backport to 17.2: Fixes Geo Replication Details incorrectly empty</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/164893">Backport OpenSSL v3 callout to 17.2</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/164561">Backport to 17.2: Fix JobArtifactState query timeout</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7874">CI: Add test basic package functionality before release (17.2 Backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7876">Use latest builder images for check-packages pipeline (17.2 Backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7896">[17.2 Backport] Deprecate CentOS 7</a></li>
</ul>
<h3 id="1717">17.1.7</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/163191">Backport &ldquo;Disable allow_failure for release-environments pipeline&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/162939">Backport to 17.1: Fixes Geo Replication Details view</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/164892">Backport OpenSSL v3 callout to 17.1</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/165270">Backport to 17.1: Fix JobArtifactState query timeout</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7875">CI: Add test basic package functionality before release (17.1 Backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7877">Use latest builder images for check-packages pipeline (17.1 Backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7897">[17.1 Backport] Deprecate CentOS 7</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<h2 id="were-combining-patch-and-security-releases">We’re combining patch and security releases</h2>
<p>This improvement in our release process matches the industry standard and will help GitLab users get information about security and
bug fixes sooner, <a href="https://about.gitlab.com/blog/were-combining-patch-and-security-releases/">read the blog post here</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 16.11.9</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-11-9-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-11-9-released/</id><published>2024-09-11T00:00:00Z</published><updated>2024-09-11T00:00:00Z</updated><author><name>Ahmad Tolba</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On September 11, 2024, we released versions 16.11.9 for GitLab Community Edition and Enterprise Edition.</p>
<p>These versions resolve a number of regressions and bugs. This patch release does not include any security fixes.</p>
<h2 id="gitlab-community-edition-and-enterprise-edition">GitLab Community Edition and Enterprise Edition</h2>
<h3 id="16119">16.11.9</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/7207">repository: Add empty vote in ApplyGitattributes</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7881">CI: Add test basic package functionality before release (16.11 Backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7879">Use latest builder images for check-packages pipeline (16.11 Backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/469443">Private dotenv artifacts not accessible to downstream jobs</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>This version does not include any new migrations, and for multi-node deployments, <a href="https://docs.gitlab.com/ee/update/#upgrading-without-downtime">should not require any downtime</a>.</p>
<p>Please be aware that by default the Omnibus packages will stop, run migrations,
and start again, no matter how “big” or “small” the upgrade is. This behavior
can be changed by adding a <a href="https://docs.gitlab.com/ee/update/zero_downtime.html"><code>/etc/gitlab/skip-auto-reconfigure</code></a> file,
which is only used for <a href="https://docs.gitlab.com/omnibus/update/README.html">updates</a>.</p>
<h2 id="updating">Updating</h2>
<p>To update, check out our <a href="https://about.gitlab.com/update/">update page</a>.</p>
<h2 id="gitlab-subscriptions">GitLab subscriptions</h2>
<p>Access to GitLab Premium and Ultimate features is granted by a paid <a href="https://about.gitlab.com/pricing/">subscription</a>.</p>
<p>Alternatively, <a href="https://gitlab.com/users/sign_in">sign up for GitLab.com</a>
to use GitLab&rsquo;s own infrastructure.</p>
<h2 id="were-combining-patch-and-security-releases">We’re combining patch and security releases</h2>
<p>This improvement in our release process matches the industry standard and will help GitLab users get information about security and
bug fixes sooner, <a href="https://about.gitlab.com/blog/were-combining-patch-and-security-releases/">read the blog post here</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 17.3.1, 17.2.4, 17.1.6</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-3-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-3-1-released/</id><published>2024-08-21T00:00:00Z</published><updated>2024-08-21T00:00:00Z</updated><author><name>Ameya Darshan</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On August 21, 2024, we released versions 17.3.1, 17.2.4, 17.1.6 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version.</p>
<p>GitLab releases fixes for vulnerabilities in dedicated patch releases. There are two types of patch releases:
scheduled releases, and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, you can visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are dedicated to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-3-1-released/#the-gitlab-web-interface-does-not-guarantee-information-integrity-when-downloading-source-code-from-releases">The GitLab Web Interface Does Not Guarantee Information Integrity When Downloading Source Code from Releases.</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-3-1-released/#denial-of-service-by-importing-maliciously-crafted-github-repository">Denial of Service by importing maliciously crafted GitHub repository</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-3-1-released/#prompt-injection-in-resolve-vulnerabilty-results-in-arbitrary-command-execution-in-victims-pipeline">Prompt injection in &ldquo;Resolve Vulnerabilty&rdquo; results in arbitrary command execution in victim&rsquo;s pipeline</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-3-1-released/#an-unauthorized-user-can-perform-certain-actions-through-graphql-after-a-group-owner-enables-ip-restrictions">An unauthorized user can perform certain actions through GraphQL after a group owner enables IP restrictions</a></td>
          <td>Medium</td>
      </tr>
  </tbody>
</table>
<h3 id="the-gitlab-web-interface-does-not-guarantee-information-integrity-when-downloading-source-code-from-releases">The GitLab Web Interface Does Not Guarantee Information Integrity When Downloading Source Code from Releases.</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting from 8.2 prior to 17.1.6 starting from 17.2 prior to 17.2.4, and starting from 17.3 prior to 17.3.1, which allows an attacker to create a branch with the same name as a deleted tag.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:H/A:N</code></a>, 5.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-6502">CVE-2024-6502</a>.</p>
<p>Thanks <a href="https://hackerone.com/st4nly0n">st4nly0n</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="denial-of-service-by-importing-maliciously-crafted-github-repository">Denial of Service by importing maliciously crafted GitHub repository</h3>
<p>A Denial of Service (DoS) issue has been discovered in GitLab CE/EE affecting all versions prior to 17.1.6, 17.2 prior to 17.2.4, and 17.3 prior to 17.3.1. A denial of service could occur upon importing a maliciously crafted repository using the GitHub importer.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>, 6.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-8041">CVE-2024-8041</a>.</p>
<p>Thanks <a href="https://hackerone.com/a92847865">a92847865</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="prompt-injection-in-resolve-vulnerabilty-results-in-arbitrary-command-execution-in-victims-pipeline">Prompt injection in &ldquo;Resolve Vulnerabilty&rdquo; results in arbitrary command execution in victim&rsquo;s pipeline</h3>
<p>An issue was discovered in GitLab EE affecting all versions starting from 17.0 prior to 17.1.6 starting from 17.2 prior to 17.2.4, and starting from 17.3 prior to 17.3.1, allows an attacker to execute arbitrary command in a victim&rsquo;s pipeline through prompt injection.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:N</code></a>, 6.4).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-7110">CVE-2024-7110</a>.</p>
<p>This vulnerability has been discovered internally by GitLab team member <a href="https://gitlab.com/dappelt">Dennis Appelt</a>.</p>
<h3 id="an-unauthorized-user-can-perform-certain-actions-through-graphql-after-a-group-owner-enables-ip-restrictions">An unauthorized user can perform certain actions through GraphQL after a group owner enables IP restrictions</h3>
<p>An issue has been discovered in GitLab EE affecting all versions starting from 12.5 before 17.1.6, all versions starting from 17.2 before 17.2.4, all versions starting from 17.3 before 17.3.1. Under certain conditions it may be possible to bypass the IP restriction for groups through GraphQL allowing unauthorized users to perform some actions at the group level.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N</code></a>, 4.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-3127">CVE-2024-3127</a>.</p>
<p>Thanks <a href="https://hackerone.com/0x777">0x777</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="mattermost-security-updates-july-2-2024">Mattermost Security Updates July 2, 2024</h3>
<p>Mattermost has been updated to versions 9.9.0, which contains several patches and security fixes.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1731">17.3.1</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/162860">Fix timeout when checking group dependencies (17.3 backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/162869">Resolve &ldquo;Background migrations removed issues&rdquo; (backport to 17.3)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/162798">Backport to 17.3: Fixes Geo Replication Details incorrectly empty</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/162829">17.3 Backport vulnerability migration bugfix</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7852">Add debian 10 (Buster) to deprecated OS list</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7868">Raise default PostgreSQL shared buffers minimum to 256 MB</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/162931">Include language server version in code suggestions</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/162968">Turn NotFound from Gitaly into 404 for InfoRefs</a></li>
</ul>
<h3 id="1724">17.2.4</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/161900">Backport 17.2: Build assets image when running release environments</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/161129">Backport DORA DF score recalculation</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/162292">Backport 17.2 - Do not run release-environments on tagging</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/162311">Remove stong_memoization for cloud connector services</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/161773">Check if columns exist before running credit card hashing background migration</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/162491">Merge branch &lsquo;jennykim/remove-release-environment-canonical-pipeline&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/162523">Fix empty dependency list page</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/162544">Backport 17-2: handle empty repository.ff_merge</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/162868">17.2 backport for: Resolve &ldquo;Background migrations removed in 17.1 cause upgrade issues&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/162935">Include language server version in code suggestions</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/162969">Turn NotFound from Gitaly into 404 for InfoRefs)</a></li>
</ul>
<h3 id="1716">17.1.6</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/161489">Backport 17.1: Release Environments - pipeline level resource group</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/161901">Backport 17.1: Build assets image when running release environments</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/162293">Backport 17.1 - Do not run release-environments on tagging</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/162001">Fix backport gitlab-qa shm fix to 17.1 stable branch version</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/162492">Backport canonical RE downstream pipeline removal</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/162771">Update minimum Go version requirement for self-compiled (17.1)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/162542">Backport 17-1: handle empty repository.ff_merge</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/162865">Resolve &ldquo;Background migrations removed issues&rdquo; (backport to 17.1)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/163169">Fix: backport !157455 to 17-1-stable-ee</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/162936">Include language server version in code suggestions</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<p>Note: GitLab releases have skipped 17.2.3 and 17.1.5 . There are no patches with these version numbers.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<h2 id="were-combining-patch-and-security-releases">We’re combining patch and security releases</h2>
<p>This improvement in our release process matches the industry standard and will help GitLab users get information about security and
bug fixes sooner, <a href="https://about.gitlab.com/blog/were-combining-patch-and-security-releases/">read the blog post here</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab 17.3 released</title><link href="https://docs.gitlab.com/releases/17/17-3-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/17/17-3-released/</id><published>2024-08-15T00:00:00Z</published><updated>2024-08-15T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On August 15, 2024, GitLab 17.3 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong>Anton Kalmykov</strong>
</p>
<p>Everyone can <a href="https://gitlab.com/gitlab-org/developer-relations/contributor-success/team-task/-/issues/490">nominate GitLab&rsquo;s community contributors</a>!
Show your support for our active candidates or add a new nomination! 🙌</p>
<p>Anton Kalmykov is one of GitLab&rsquo;s top contributors this year with 37 <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests?scope=all&amp;state=merged&amp;author_username=antonkalmykov">merged contributions</a>
since February and more in progress.
Anton is a Senior Frontend Engineer at <a href="https://yolo.com/">Yolo group (Bombay Games)</a>.</p>
<p>&ldquo;Contributing to GitLab is one of the most challenging, ambitious, and exciting initiatives,&rdquo; says Anton.
&ldquo;I appreciate the opportunity to be involved in creating and improving such a great product.
Thanks to this chance, I have learned a lot of new things, and I still have a lot to do.
I am incredibly grateful to the GitLab team, especially those who have checked my MRs, guided me,
and helped me do things right.&rdquo;</p>
<p>Anton was nominated by <a href="https://gitlab.com/lohrc">Christina Lohr</a>, Senior Product Manager at GitLab,
for helping out the Tenant Scale
group with several frontend issues.</p>
<p>&ldquo;We have a lot of smaller UX improvements to work through for our basic workflows, and it is great
to get help from the community to complete these initiatives faster,&rdquo; says Christina.
&ldquo;All these improvements are helping to create a more cohesive user experience between groups and projects.
Thank you Anton.&rdquo;</p>
<p>Many thanks to Anton and the rest of GitLab&rsquo;s open source contributors for co-creating GitLab!</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>Troubleshoot failed jobs with root cause analysis</strong>
    <p>Root cause analysis is now generally available. With root cause analysis, you can troubleshoot failed jobs in CI/CD pipelines faster. This AI-powered feature analyzes the failed job log, quickly determines the root cause of the job failure, and suggests a fix for you.</p>
    <p><a href="https://docs.gitlab.com/ee/user/gitlab_duo_chat/examples.md#troubleshoot-failed-cicd-jobs-with-root-cause-analysis">View Documentation</a></p>
  </li>
  <li>
    <strong>Health check for GitLab Duo in beta</strong>
    <p><p>You can now troubleshoot the setup for GitLab Duo on your self-managed instance. In the <strong>Admin</strong> area, on the GitLab Duo page, select <strong>Run health check</strong>.
This health check performs a series of validations and suggests appropriate corrective actions to ensure GitLab Duo is operational.</p>
<p>The health check for GitLab Duo is available on Self-managed and GitLab Dedicated as a beta feature.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/gitlab_duo/setup.html#run-a-health-check-for-gitlab-duo">View Documentation</a></p>
  </li>
  <li>
    <strong>Delete a pod from the GitLab UI</strong>
    <p><p>Have you ever needed to restart or delete a failing pod in Kubernetes? Until now, you had to leave GitLab, use another tool to connect to the cluster, stop the pod, and wait for a new pod to start. GitLab now has built-in support for deleting pods, so you can smoothly troubleshoot your Kubernetes clusters.</p>
<p>You can stop a pod from a <a href="https://docs.gitlab.com/ee/ci/environments/kubernetes_dashboard.html">dashboard for Kubernetes</a>, which lists all the pods across your cluster or namespace.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/environments/kubernetes_dashboard.html#delete-a-pod">View Documentation</a></p>
  </li>
  <li>
    <strong>Easily connect to a cluster from your local terminal</strong>
    <p><p>Do you want to connect to a Kubernetes cluster from your local terminal or using one of the desktop Kubernetes GUI tools?
GitLab allows you to connect to a terminal using the <a href="https://docs.gitlab.com/ee/user/clusters/agent/user_access.html">user access feature of the agent for Kubernetes</a>.
Previously, finding commands required navigating out of GitLab to browse the documentation. Now, GitLab provides the connect command from the UI. GitLab can even help you configure user access!</p>
<p>To retrieve the connection command, either go to a <a href="https://docs.gitlab.com/ee/ci/environments/kubernetes_dashboard.html">Kubernetes dashboard</a>, or to the <a href="https://docs.gitlab.com/ee/user/clusters/agent/work_with_agent.html#view-your-agents">agent list</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/clusters/agent/user_access.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Resolve a vulnerability with AI</strong>
    <p>Vulnerability resolution uses AI to give specific code suggestions for users to fix vulnerabilities. With the click of a button you can open a merge request to get started resolving any SAST vulnerability from the <a href="https://docs.gitlab.com/ee/user/application_security/vulnerabilities/#availability">list of supported CWE identifiers</a>.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/vulnerabilities/#vulnerability-resolution">View Documentation</a></p>
  </li>
  <li>
    <strong>Add multiple compliance frameworks to a single project</strong>
    <p><p>You can create a compliance framework to identify that your project has certain compliance requirements or needs additional oversight.
The compliance framework can optionally enforce compliance pipeline configuration to the projects on which it is applied.</p>
<p>Previously, users could only apply one compliance framework to a project, which limited how many compliance requirements could be set on a project.
We have now provided the ability for a user to apply multiple compliance frameworks per project.
This will allow users to apply multiple different compliance frameworks onto a single project at a given time.
With this release, you can apply multiple compliance frameworks to a project. The project is then set with the compliance requirements of each framework.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/compliance_frameworks.html#add-a-compliance-framework-to-a-project">View Documentation</a></p>
  </li>
  <li>
    <strong>AI Impact analytics: Code Suggestions acceptance rate and GitLab Duo seats usage</strong>
    <p><p>These two new metrics highlight the effectiveness and utilization of GitLab Duo, and are now included in the <a href="https://about.gitlab.com/blog/developing-gitlab-duo-ai-impact-analytics-dashboard-measures-the-roi-of-ai/">AI Impact analytics in the Value Streams Dashboard</a>, which helps organizations understand the impact of GitLab Duo on delivering business value.</p>
<p>The <strong>Code Suggestions acceptance rate</strong> metric indicates how frequently developers accept code suggestions made by GitLab Duo. This metric reflects both the effectiveness of these suggestions and the level of trust contributors have in AI capabilities. Specifically, the metric represents the percentage of code suggestions provided by GitLab Duo that have been accepted by code contributors in the last 30 days.</p>
<p>The <strong>GitLab Duo seats assigned and used</strong> metric shows the percentage of consumed licensed seats, helping organizations plan effectively for license utilization, resource allocation, and understanding of usage patterns. This metric tracks the ratio of assigned seats that have used at least one AI feature in the last 30 days.</p>
<p>With the addition of these new metrics, we have also introduced new overview tiles — a new visualization which provides a clear summary of the metrics, helping you quickly assess the current state of your AI features.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/analytics/value_streams_dashboard.html#ai-impact-analytics">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Scale and Deployments</h4>
<ul>
  <li>
    <strong>Omnibus improvements</strong>
    <p><p>GitLab 17.3 includes packages for supporting <a href="https://www.raspberrypi.com/news/bookworm-the-new-version-of-raspberry-pi-os/">Raspberry Pi OS 12</a>.</p>
<p>Debian 10 has reached <a href="https://www.debian.org/releases/buster/">EOL on June 30th, 2024</a>. GitLab will remove support for Debian 10 in GitLab 17.6.</p>
</p>
    <p><a href="https://docs.gitlab.com/omnibus/">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved sorting and filtering for projects and groups in Your Work</strong>
    <p><p>We have updated the sorting and filtering functionality of the project and group overview in <strong>Your Work</strong>.
Previously, in the <strong>Your Work</strong> page for projects, you could filter by name and language, and use a pre-defined set of sorting options. We have standardized the sorting options to include <strong>Name</strong>, <strong>Created date</strong>, <strong>Updated date</strong>, and <strong>Stars</strong>. We also added a navigation element to sort in ascending or descending order, and moved the language filter to the filter menu. Now you can find archived projects in the new <strong>Inactive</strong> tab. Additionally, we added a <strong>Role</strong> filter that allows you to search for projects you are the Owner of.</p>
<p>In the Your Work page for groups, we have standardized the sorting options to include <strong>Name</strong>, <strong>Created date</strong>, and <strong>Updated date</strong>, and added a navigation element to sort in ascending or descending order.</p>
<p>We welcome feedback about these changes in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/438322">#438322</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/working_with_projects.html#search-in-projects">View Documentation</a></p>
  </li>
  <li>
    <strong>End-to-end instance indexing for advanced search</strong>
    <p><p>When you enable advanced search in GitLab, you can now select <strong>Index the instance</strong> to perform initial indexing or re-create an index from scratch. This setting achieves functional parity with the <code>gitlab:elastic:index</code> rake task by indexing all supported types of data into the integrated Elasticsearch or OpenSearch cluster.</p>
<p><strong>Index the instance</strong> replaces the setting to index all projects, which was limited to the initial indexing only.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/integration/advanced_search/elasticsearch.html#index-the-instance">View Documentation</a></p>
  </li>
  <li>
    <strong>Toggle inheriting settings for integrations by using the API</strong>
    <p><p>Until now, you could only control whether a project inherited integration settings, or used its
own settings, using the UI.</p>
<p>In this milestone, we are introducing a new <code>use_inherited_settings</code> parameter to the REST API of all integrations. This parameter allows you to use the API to set
whether or not a project inherits integration settings. If not set, the default behavior is <code>false</code> (use the project&rsquo;s own settings).</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/api/integrations.html">View Documentation</a></p>
  </li>
  <li>
    <strong>List group or project webhook events with the API</strong>
    <p><p>Since GitLab 9.3 you can view project webhook request history in the UI, and since GitLab 15.3 you can also <a href="https://docs.gitlab.com/ee/user/project/integrations/webhooks.html#view-webhook-request-history">view group webhook request history in the UI</a>.</p>
<p>In this release, that data is now exposed in the REST API, which can help you automate processes to discover and respond to webhook errors. You can get a list of events for a specific <a href="https://docs.gitlab.com/ee/api/projects.html#get-project-hook-events">project hook</a> and <a href="https://docs.gitlab.com/ee/api/groups.html#get-group-hook-events">group hook</a> in the past 7 days.</p>
<p>Thanks to <a href="https://gitlab.com/lifez">Phawin</a> for <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/151048">this community contribution</a>!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/api/projects.html#get-project-hook-events">View Documentation</a></p>
  </li>
  <li>
    <strong>Find group settings by using the command palette</strong>
    <p><p>In 17.2, we added the ability to <a href="https://about.gitlab.com/releases/2024/07/18/gitlab-17-2-released/#find-project-settings-by-using-the-command-palette">search for project settings by using the command palette</a>. This change made it easier to quickly find the settings you need.</p>
<p>With 17.3, you can now search for group settings from the command palette as well. Try it out by visiting a group, selecting <strong>Search or go to</strong>, entering command mode with <code>&gt;</code>, and typing the name of a settings section, like <strong>Merge request approvals</strong>. Select a result to jump right to the setting itself.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/search/command_palette.html">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>Granular control of code suggestions by language in VS Code</strong>
    <p>Get more control over your coding experience in VS Code by enabling or disabling code suggestions for specific programming languages. This granular control allows you to customize your workflow, reducing irrelevant or intrusive suggestions while maintaining the benefits of code suggestions for your preferred languages.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/repository/code_suggestions/supported_extensions.html#manage-languages-for-code-suggestions">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved TLS support in JetBrains IDEs</strong>
    <p>For tighter security in sensitive environments, you can now configure custom HTTP agent options, including client certificates and certificate authorities, directly in your JetBrains IDE settings.</p>
    <p><a href="https://docs.gitlab.com/ee/editor_extensions/jetbrains_ide/#add-a-custom-certificate-for-code-suggestions">View Documentation</a></p>
  </li>
  <li>
    <strong>More easily remove content from repositories</strong>
    <p><p>Currently, the process for removing content from a repository is complicated, and you might have to force push the project to GitLab.
This is prone to errors and can cause you to temporarily turn off protections to enable the push.
It can be even harder to delete files that use too much space within the repository.</p>
<p>You can now use the new repository maintenance option in project settings to remove blobs based on a list of object IDs.
With this new method, you can selectively remove content without the need to force push a project back to GitLab.</p>
<p>In the event that secrets or other content has been pushed that needs to be redacted from a project, we&rsquo;re also introducing a new option to redact text.
Provide a string that GitLab will replace with <code>***REMOVED***</code> in files across the project.
After the text has been redacted, run housekeeping to remove old versions of the string.</p>
<p>This new UI streamlines the way you can manage your repositories when content needs to be removed.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/repository/reducing_the_repo_size_using_git.html#remove-blobs">View Documentation</a></p>
  </li>
  <li>
    <strong>Audit event when agent for Kubernetes is created and deleted</strong>
    <p><p>Because the agent for Kubernetes allows bi-directional data flow between a Kubernetes cluster and GitLab, it&rsquo;s important to know when a component that can access your systems is added or removed.
In past releases, compliance teams had to use custom tooling or search for this data in GitLab directly. GitLab now provides the following audit events:</p>
<ul>
<li><code>cluster_agent_created</code> records who registered a new agent for Kubernetes.</li>
<li><code>cluster_agent_create_failed</code> records who tried to register a new agent for Kubernetes but failed.</li>
<li><code>cluster_agent_deleted</code> records who removed an agent for Kubernetes registration.</li>
<li><code>cluster_agent_delete_failed</code> records who tried to remove an agent for Kubernetes registration but failed.</li>
</ul>
<p>These audit events extend the <code>cluster_agent_token_created</code> and <code>cluster_agent_token_revoked</code> audit events to further improve the ability to audit your GitLab instance.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/compliance/audit_event_types.html#deployment-management">View Documentation</a></p>
  </li>
  <li>
    <strong>Kubernetes 1.30 support</strong>
    <p><p>This release adds full support for Kubernetes version 1.30, released in April 2024. If you deploy your apps to Kubernetes, you can now upgrade your connected clusters to the most recent version and take advantage of all its features.</p>
<p>You can read more about <a href="https://docs.gitlab.com/ee/user/clusters/agent/#supported-kubernetes-versions-for-gitlab-features">our Kubernetes support policy and other supported Kubernetes versions</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/clusters/agent/#supported-kubernetes-versions-for-gitlab-features">View Documentation</a></p>
  </li>
  <li>
    <strong>Add authentication to merge request external status checks</strong>
    <p><p>External status checks can now be configured with HMAC (Hash-based Message Authentication Code) authentication. This will provide a more secure way to verify the authenticity of requests from GitLab to external services.</p>
<p>When enabled for your status check, a shared secret is used to generate a unique signature for each request. The signature is sent in the <code>X-Gitlab-Signature</code> header, using SHA256 as the hash algorithm.</p>
<ul>
<li>Improved Security: HMAC authentication prevents tampering with requests and ensures they come from a legitimate source.</li>
<li>Compliance: This feature is particularly valuable for regulated industries, such as banking, where security is paramount.</li>
<li>Backwards Compatibility: The feature will be optional and backwards compatible. Users can choose to enable HMAC authentication for new or existing checks, but existing external status checks will continue to function without changes.</li>
</ul>
<p>In a <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/476163">future iteration</a>, GitLab plans to add an option to also verify and block HTTP requests.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/merge_requests/status_checks.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Filter the member list in a group or project by role</strong>
    <p>Users can now filter the Members page by role. Use the filter to find members with a specific role.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/members/index.html">View Documentation</a></p>
  </li>
  <li>
    <strong>View role details in the right drawer</strong>
    <p>Previously, if you wanted to view permissions for the custom roles of a user, you had to have the Owner role in the group. This requirement made it difficult to troubleshoot and understand what actions a user can perform when assigned a custom role. Now, any user can view the permissions of a user assigned a custom role in the Members page.</p>
    <p><a href="https://docs.gitlab.com/ee/user/custom_roles.html">View Documentation</a></p>
  </li>
  <li>
    <strong>LDAP group link support for custom roles</strong>
    <p><p>Organizations that use LDAP group links to manage user permissions for groups can already use default roles for membership.</p>
<p>In this release, we&rsquo;re extending that support to <a href="https://docs.gitlab.com/ee/user/custom_roles.html">custom roles</a>. This configuration makes it easier to map access to a
large group of users.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/access_and_permissions.html#manage-group-memberships-via-ldap">View Documentation</a></p>
  </li>
  <li>
    <strong>New permission for custom roles</strong>
    <p><p>You can create custom roles with the following new permission:</p>
<ul>
<li><a href="https://docs.gitlab.com/ee/user/custom_roles/abilities.html#runner">Read Runners</a></li>
</ul>
<p>With custom roles, you can reduce the number of users with the Owner role by creating users with equivalent permissions. This helps you define roles that are tailored to the needs of your group, and prevents users from being given more privileges than they need.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/custom_roles.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Disable personal access tokens using Admin UI</strong>
    <p>Administrators can now disable or re-enable instance personal access tokens through the Admin UI. Previously, administrators had to use the application settings API or the GitLab Rails console to do this.</p>
    <p><a href="https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html#use-the-admin-ui">View Documentation</a></p>
  </li>
  <li>
    <strong>Bluesky identifier in user profile</strong>
    <p><p>You can now add your Bluesky did:plc identifier to your GitLab profile.</p>
<p>Thank you <a href="https://domi.zip/">Dominique</a> for your contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/profile/#add-external-accounts-to-your-user-profile-page">View Documentation</a></p>
  </li>
  <li>
    <strong>Subdomain cookies preserved on sign out</strong>
    <p><p>GitLab&rsquo;s sign out process has been improved so that cookies from sibling subdomains are not deleted on sign out. Previously, these cookies were deleted, causing users to be signed out of other subdomain services on the same top-level domain as GitLab. For example, if a user has Kibana set up on <code>kibana.example.com</code> and GitLab set up on <code>gitlab.example.com</code>, signing out from GitLab will no longer sign the user out from Kibana.</p>
<p>Thank you <a href="https://gitlab.com/GCSBOSS">Guilherme C. Souza</a> for your contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/profile/active_sessions.html">View Documentation</a></p>
  </li>
  <li>
    <strong>AI Impact analytics with enhanced sparklines trend visualization</strong>
    <p>We are excited to announce a significant improvement to our <a href="https://about.gitlab.com/blog/developing-gitlab-duo-ai-impact-analytics-dashboard-measures-the-roi-of-ai/">AI Impact analytics</a> with the introduction of sparklines. These small, simple graphs embedded in data tables enhance the readability and accessibility of AI Impact data. By transforming numerical values into visual representations, the new sparklines make it easier to identify trends over time, so you can spot upward or downward movements. This new visual approach also streamlines the process of comparing trends across multiple metrics, reducing the time and effort required when relying solely on numbers.</p>
    <p><a href="https://docs.gitlab.com/ee/user/analytics/value_streams_dashboard.html#ai-impact-analytics">View Documentation</a></p>
  </li>
  <li>
    <strong>Add merge requests to tasks</strong>
    <p>Tasks are frequently used to break down issues into engineering implementation steps. Before this release, there was no way to connect a merge request to a task it implements. You can now use the same <a href="https://docs.gitlab.com/ee/user/project/issues/managing_issues.html#closing-issues-automatically">closing pattern</a> that you would when referencing issues from a merge request description to connect a merge request to a task. From the task view, connected merge requests are visible from the sidebar. If your project has the <a href="https://docs.gitlab.com/ee/user/project/issues/managing_issues.html#disable-automatic-issue-closing">auto-close setting enabled</a>, the task will automatically close when the connected merge request is merged into your default branch.</p>
    <p><a href="https://docs.gitlab.com/ee/user/tasks.html#add-a-merge-request-and-automatically-close-tasks">View Documentation</a></p>
  </li>
  <li>
    <strong>Set parent items for OKRs and tasks</strong>
    <p>You can now effortlessly update parent assignments for <a href="https://docs.gitlab.com/ee/user/okrs.html#set-an-objective-as-a-parent">OKRs</a> and <a href="https://docs.gitlab.com/ee/user/tasks.html#set-an-issue-as-a-parent">tasks</a>, directly from the child record, eliminating the need to navigate back and forth. This is a great step towards our goal of <a href="https://gitlab.com/groups/gitlab-org/-/epics/10501">improving efficiency with your workflows</a>.</p>
    <p><a href="https://docs.gitlab.com/ee/user/okrs.html#set-an-objective-as-a-parent">View Documentation</a></p>
  </li>
  <li>
    <strong>Report abuse for task, objective and key result items</strong>
    <p>You can now easily report abuse for work items directly from the <strong>Actions</strong> menu, just like you can with legacy issues. This new feature helps keep your workspace clean and safe by allowing you to quickly flag inappropriate content, ensuring a better collaborative environment for your team.</p>
    <p><a href="https://docs.gitlab.com/ee/user/report_abuse.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Resolve threads in tasks, objectives, and key results</strong>
    <p>You can now resolve threads in tasks, objectives, and key results, making it easier to manage and track important conversations. Resolved threads are collapsed by default, helping you focus on active discussions and streamline your collaboration workflows.</p>
    <p><a href="https://docs.gitlab.com/ee/user/discussions/#resolve-a-thread">View Documentation</a></p>
  </li>
  <li>
    <strong>New Value Stream Analytics stage events for Cycle Time Reduction</strong>
    <p>To improve the tracking of merge request (MR) review time in GitLab, we added a new stage event to <a href="https://about.gitlab.com/solutions/value-stream-management/">Value Stream Analytics</a>: <strong>MR first reviewer assigned</strong>.
With this new event teams can identify where delays occur in the review process, find opportunities to improve collaboration, and encourage a culture of responsiveness and accountability among team members. Reducing the review time directly impacts the overall cycle time of development, <a href="https://about.gitlab.com/blog/three-steps-to-optimize-software-value-streams/">leading to faster software delivery</a>. For example, you can now add a new custom <strong>Review Time to Merge (RTTM)</strong> stage that starts with <strong>MR first reviewer assigned</strong> and ends with <strong>MR merged</strong>.</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/value_stream_analytics/#value-stream-stage-events">View Documentation</a></p>
  </li>
  <li>
    <strong>Rust support for Dependency and License Scanning</strong>
    <p><p>Composition Analysis has delivered Rust support for Dependency and License Scanning. Rust scanning supports the <code>Cargo.lock</code> file type.</p>
<p>To enable Rust scanning for your Project use the <code>cargo</code> template from the <a href="https://gitlab.com/explore/catalog/components/dependency-scanning">Dependency Scanning CI/CD Component</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/compliance/license_scanning_of_cyclonedx_files/#supported-languages-and-package-managers">View Documentation</a></p>
  </li>
  <li>
    <strong>Display SBOM ingestion errors in GitLab UI</strong>
    <p><p>GitLab 15.3 added support for <a href="https://docs.gitlab.com/ee/ci/yaml/artifacts_reports.html#artifactsreportscyclonedx">ingesting CycloneDX SBOMs</a>. While the SBOM reports are validated against the CycloneDX schema, any warnings and errors produced as part of validation were not displayed to the user.</p>
<p>In GitLab 17.3 these validation messages appear in the GitLab UI on the project-level Vulnerability Report and Dependency List pages.</p>
<p>Users will be able to view SBOM ingestion errors in the following areas of the GitLab UI: the project level vulnerability report and dependency list pages, the licenses and security tabs of the pipeline page.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/dependency_list/">View Documentation</a></p>
  </li>
  <li>
    <strong>Enforce the ruleset used in SAST, IaC Scanning, and Secret Detection</strong>
    <p><p>You can customize the rules used in <a href="https://docs.gitlab.com/ee/user/application_security/sast/customize_rulesets.html">SAST</a>, <a href="https://docs.gitlab.com/ee/user/application_security/iac_scanning/#customize-rules">IaC Scanning</a>, and <a href="https://docs.gitlab.com/ee/user/application_security/secret_detection/pipeline/index.html#customizing-analyzer-settings">Secret Detection</a> by creating a local configuration file committed in the repository or by setting a CI/CD variable to apply a shared configuration across multiple projects.</p>
<p>Previously, scanners preferred the local configuration file, even if you also set a shared ruleset reference.
This precedence order made it difficult to ensure that scans would use a known, trusted ruleset.</p>
<p>Now, we&rsquo;ve added a new CI/CD variable, <code>SECURE_ENABLE_LOCAL_CONFIGURATION</code>, to control whether local configuration files are allowed.
It defaults to <code>true</code>, which keeps the existing behavior: local configuration files are allowed and are preferred over shared configurations.
If you set the value to <code>false</code> when you <a href="https://docs.gitlab.com/ee/user/application_security/#enforce-scan-execution">enforce scan execution</a>, you can be sure that scans use your shared ruleset, or the default ruleset, even if project developers add a local configuration file.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/sast/customize_rulesets.html#specify-a-remote-configuration-file">View Documentation</a></p>
  </li>
  <li>
    <strong>Filter jobs by job name</strong>
    <p><p>You can now quickly find a specific job by searching for a job name.</p>
<p>Previously, you could only filter the list of jobs by status, requiring manual scrolling to find a specific job. With this release, you can now enter a job name to filter the results. The results will only include jobs in pipelines that ran after the release of GitLab 17.3.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/jobs/">View Documentation</a></p>
  </li>
  <li>
    <strong>Merge train visualization</strong>
    <p>You can now visualize the merge train to gain better insight into the status and order of merge requests in the pipeline. With merge train visualization, you can identify conflicts earlier, take actions on merge requests directly in the merge train, and minimize the risk of breaking the default branch.</p>
    <p><a href="https://docs.gitlab.com/ee/ci/pipelines/merge_trains.html">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner 17.3</strong>
    <p><p>We&rsquo;re releasing GitLab Runner 17.3 today! GitLab Runner is the lightweight, highly scalable agent that runs your CI/CD jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.</p>
<h4 id="bug-fixes">Bug fixes:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/37780">Jobs appear to hang when canceled in the Kubernetes runner</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/37490">Log level not updated when not specified</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/27099">Job log adds extra newlines when using the runner Kubernetes executor</a></li>
</ul>
<p>For a list of all changes, see the GitLab Runner <a href="https://gitlab.com/gitlab-org/gitlab-runner/blob/17-3-stable/CHANGELOG.md">changelog</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/runner">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved performance for hosted runners on macOS</strong>
    <p>We have shipped performance improvements with the recent upgrade to macOS 14.5 and Xcode 15.4. With this change, Xcode build jobs are significantly faster compared to previous job executions.</p>
    <p><a href="https://docs.gitlab.com/ee/ci/runners/hosted_runners/macos.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Description and type added to CI/CD catalog component input details</strong>
    <p>The details page for a CI/CD component in the catalog provides useful information about the component. In this release we&rsquo;ve added two more columns to the table that shows information about available inputs. The new <strong>Description</strong> and <strong>Type</strong> columns make it much easier to understand what an input is used for, and what type of value is expected.</p>
    <p><a href="https://docs.gitlab.com/ee/ci/components/#cicd-catalog">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab Patch Release: 17.2.2, 17.1.4, 17.0.6</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-2-2-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-2-2-released/</id><published>2024-08-07T00:00:00Z</published><updated>2024-08-07T00:00:00Z</updated><author><name>Costel Maxim</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On August 7, 2024, we released versions 17.2.2, 17.1.4, 17.0.6 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version.</p>
<p>GitLab releases fixes for vulnerabilities in dedicated patch releases. There are two types of patch releases:
scheduled releases, and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, you can visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are dedicated to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-2-2-released/#privilege-escalation-via-lfs-tokens-granting-unrestricted-repository-access">Privilege Escalation via LFS Tokens Granting Unrestricted Repository Access</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-2-2-released/#cross-project-access-of-security-policy-bot">Cross project access of Security policy bot</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-2-2-released/#advanced-search-redos-in-highlight-for-code-results">Advanced search ReDOS in highlight for code results</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-2-2-released/#denial-of-service-via-banzai-pipeline">Denial of Service via banzai pipeline</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-2-2-released/#denial-of-service-using-adoc-files">Denial of service using adoc files</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-2-2-released/#redos-in-refmatcher-when-matching-branch-names-using-wildcards">ReDoS in RefMatcher when matching branch names using wildcards</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-2-2-released/#path-encoding-can-cause-the-web-interface-to-not-render-diffs-correctly">Path encoding can cause the Web interface to not render diffs correctly.</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-2-2-released/#xss-while-viewing-raw-xhtml-files-through-api">XSS while viewing raw XHTML files through API</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-2-2-released/#ambiguous-tag-name-exploitation">Ambiguous tag name exploitation</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-2-2-released/#logs-disclosings-potentially-sensitive-data-in-query-params">Logs disclosings potentially sensitive data in query params</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-2-2-released/#password-bypass-on-approvals-using-policy-projects">Password bypass on approvals using policy projects</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-2-2-released/#redos-when-parsing-git-push">ReDoS when parsing git push</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-2-2-released/#webhook-deletion-audit-log-can-preserve-auth-credentials">Webhook deletion audit log can preserve auth credentials</a></td>
          <td>Medium</td>
      </tr>
  </tbody>
</table>
<h3 id="privilege-escalation-via-lfs-tokens-granting-unrestricted-repository-access">Privilege Escalation via LFS Tokens Granting Unrestricted Repository Access</h3>
<p>A permission check vulnerability in GitLab CE/EE affecting all versions starting from 8.12 prior to 17.0.6, 17.1 prior to 17.1.4, and 17.2 prior to 17.2.2  allowed for LFS tokens to read and write to the user owned repositories.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N</code></a>, 6.8).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-3035">CVE-2024-3035</a>.</p>
<p>Thanks <a href="https://hackerone.com/pwnie">pwnie</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="cross-project-access-of-security-policy-bot">Cross project access of Security policy bot</h3>
<p>An issue was discovered in GitLab EE affecting all versions starting from 16.0 prior to 17.0.6, starting from 17.1 prior to 17.1.4, and starting from 17.2 prior to 17.2.2, which allowed cross project access for Security policy bot.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:N </code></a>, 4.4).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-6356">CVE-2024-6356</a>.</p>
<p>Thanks <a href="https://hackerone.com/yvvdwf">yvvdwf</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="advanced-search-redos-in-highlight-for-code-results">Advanced search ReDOS in highlight for code results</h3>
<p>A Denial of Service (DoS) condition has been discovered in GitLab CE/EE affecting all versions starting with 15.9 before 17.0.6, 17.1 prior to 17.1.4, and 17.2 prior to 17.2.2. It is possible for an attacker to cause catastrophic backtracking while parsing results from Elasticsearch.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L</code></a>, 4.3).
We have requested a CVE ID and will update this blog post when it is assigned.</p>
<p>This vulnerability was discovered internally by GitLab team member <a href="https://gitlab.com/terrichu">Terri Chu</a>.</p>
<h3 id="denial-of-service-via-banzai-pipeline">Denial of Service via banzai pipeline</h3>
<p>Multiple Denial of Service (DoS) conditions has been discovered in GitLab CE/EE affecting all versions starting from 1.0 prior to 17.0.6, starting from 17.1 prior to 17.1.4, and starting from 17.2 prior to 17.2.2 which allowed an attacker to cause resource exhaustion via banzai pipeline.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>, 6.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-5423">CVE-2024-5423</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="denial-of-service-using-adoc-files">Denial of service using adoc files</h3>
<p>A Denial of Service (DoS) condition has been discovered in GitLab CE/EE affecting all versions starting with 12.6 before 17.0.6, 17.1 prior to 17.1.4, and 17.2 prior to 17.2.2. It is possible for an attacker to cause a denial of service using crafted adoc files.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>, 6.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-4210">CVE-2024-4210</a>.</p>
<p>Thanks <a href="https://hackerone.com/gudanggaramfilter">gudanggaramfilter</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="redos-in-refmatcher-when-matching-branch-names-using-wildcards">ReDoS in RefMatcher when matching branch names using wildcards</h3>
<p>ReDoS flaw in RefMatcher when matching branch names using wildcards in GitLab EE/CE affecting all versions from 11.3 prior to 17.0.6, 17.1 prior to 17.1.4, and 17.2 prior to 17.2.2 allows denial of service via Regex backtracking.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code></a>, 6.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-2800">CVE-2024-2800</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="path-encoding-can-cause-the-web-interface-to-not-render-diffs-correctly">Path encoding can cause the Web interface to not render diffs correctly.</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting from 8.16 prior to 17.0.6, starting from 17.1 prior to 17.1.4, and starting from 17.2 prior to 17.2.2, which causes the web interface to fail to render the diff correctly when the path is encoded.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:H/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:H/A:N</code></a>, 5.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-6329">CVE-2024-6329</a>.</p>
<p>Thanks <a href="https://hackerone.com/st4nly0n">st4nly0n</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="xss-while-viewing-raw-xhtml-files-through-api">XSS while viewing raw XHTML files through API</h3>
<p>A cross-site scripting issue has been discovered in GitLab affecting all versions starting from 5.1 prior 17.0.6, starting from 17.1 prior to 17.1.4, and starting from 17.2 prior to 17.2.2. When viewing an XML file in a repository in raw mode, it can be made to render as HTML if viewed under specific circumstances.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:N </code></a>, 4.4).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-4207">CVE-2024-4207</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="ambiguous-tag-name-exploitation">Ambiguous tag name exploitation</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions before 17.0.6, 17.1 prior to 17.1.4, and 17.2 prior to 17.2.2. An issue was found that allows someone  to abuse a discrepancy between the Web application display and the git command line interface to social engineer victims into cloning non-trusted code.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N</code></a>, 5.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-3958">CVE-2024-3958</a>.</p>
<p>Thanks <a href="https://hackerone.com/st4nly0n">st4nly0n</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="logs-disclosings-potentially-sensitive-data-in-query-params">Logs disclosings potentially sensitive data in query params</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 13.9 before 17.0.6, all versions starting from 17.1 before 17.1.4, all versions starting from 17.2 before 17.2.2. Under certain conditions, access tokens may have been logged when an API request was made in a specific manner.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:N/A:N</code></a>, 4.9).
We have requested a CVE ID and will update this blog post when it is assigned.</p>
<p>This vulnerability was discovered internally by GitLab team member <a href="https://gitlab.com/dcouture">Dominic Couture</a>.</p>
<h3 id="password-bypass-on-approvals-using-policy-projects">Password bypass on approvals using policy projects</h3>
<p>An issue was discovered in GitLab EE starting from version 16.7 before 17.0.6, version 17.1 before 17.1.4 and 17.2 before 17.2.2 that allowed bypassing the password re-entry requirement to approve a policy.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:N"><code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:N</code></a>, 4.2).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-4784">CVE-2024-4784</a>.</p>
<p>Thanks <a href="https://hackerone.com/vexin">vexin</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="redos-when-parsing-git-push">ReDoS when parsing git push</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting from 11.10 prior to 17.0.6, 17.1 prior to 17.1.4, and 17.2 prior to 17.2.2, with the processing logic for parsing invalid commits can lead to a regular expression DoS attack on the server.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L"><code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L</code></a>, 4.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-3114">CVE-2024-3114</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="webhook-deletion-audit-log-can-preserve-auth-credentials">Webhook deletion audit log can preserve auth credentials</h3>
<p>An issue was discovered in GitLab EE affecting all versions starting from 17.0 prior to 17.0.6, starting from 17.1 prior to 17.1.4, and starting from 17.2 prior to 17.2.2, where webhook deletion audit log preserved auth credentials.
This is a medium severity issue (<a href="https://gitlab-com.gitlab.io/gl-security/product-security/appsec/cvss-calculator/explain#explain=CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:L/I:N/A:N"><code>CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:L/I:N/A:N</code></a>, 4.1).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-7586">CVE-2024-7586</a>.</p>
<p>This vulnerability was discovered internally by GitLab Team <a href="https://gitlab.com/anton">Anton Smith</a>.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1722">17.2.2</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/1932">Backups: Fix parsing of existing backups in Azure storage (Backport 17.2)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/7147">Do not consider pool repos dangling on restore</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/160253">Never return nil when search for CC service</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/160554">Fix issue in RTE related to adding text before a mention</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/160666">Backport &lsquo;Check if params data cannot be JSONified&rsquo; into 17.2</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/160434">Document Rake task to show/edit token expirations</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/160678">Backport 17.2 - Introduce lock-free rescheduling for duplicate job</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/160767">Ignore unknown sequences in sequence fix migration</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/160744">Fix squished badges rendering in 17.2</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/161081">Optimize CustomAbility specs to reduce build times</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/161200">Backport Do not index associated issues that are epic work item type</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/160911">bug: Fix template error due to divided by zero</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/161241">Put groups_direct field in CI JWT tokens behind feature flag</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/161430">Backport &lsquo;Fix cluster check metrics&rsquo; into 17.2</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/161539">Backport Beyond Identity bug fixes to 17.2</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/161543">Enable <code>project_daily_statistic_counter_attribute_fetch</code> FF by default</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/161488">Backport 17.2: Release Environments - pipeline level resource group</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/161386">Add require_personal_access_token_expiry application setting</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-pages/-/merge_requests/1030">Backport 17.2: Mark Cookie SameSite as default over HTTP</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7814">Pin QA CI tests to stable gitlab-org/gitlab branches</a></li>
</ul>
<h3 id="1714">17.1.4</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/1933">Backups: Fix parsing of existing backups in Azure storage (Backport 17.1)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/160679">Backport 17.1 - Introduce lock-free rescheduling for duplicate job</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/160941">Table driven spec needs shorter spec titles backport</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/161079">Optimize CustomAbility specs to reduce build times</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/161242">Put groups_direct field in CI JWT tokens behind feature flag</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/161408">Increase SQL query threashold on work_items test</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/160667">Backport &lsquo;Check if params data cannot be JSONified&rsquo; into 17.1</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/161541">Backport Beyond Identity bug fixes to 17.1</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/161668">Backport gitlab-qa shm fix to 17.1 stable branch</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/161388">Add require_personal_access_token_expiry application setting</a></li>
</ul>
<h3 id="1706">17.0.6</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/1934">Backups: Fix parsing of existing backups in Azure storage (Backport 17.0)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/160815">Backport 17.0 - Introduce lock-free rescheduling for duplicate job</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/160940">Table driven spec needs shorter spec titles backport</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/161240">Put groups_direct field in CI JWT tokens behind feature flag</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/161389">Add require_personal_access_token_expiry application setting</a></li>
</ul>
<h3 id="16118">16.11.8</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/161391">Add require_personal_access_token_expiry application setting</a></li>
</ul>
<h3 id="add-require_personal_access_token_expiry-application-setting">Add require_personal_access_token_expiry application setting</h3>
<p>This default enabled, optional setting added for admins of GitLab self-managed instances on versions 16.11 and above allow them to enable mandatory expiraton on all new personal, project and group access tokens. Expirations set for existing tokens are not affected by this setting. For usage information see <a href="https://docs.gitlab.com/ee/administration/settings/account_and_limit_settings.html#require-expiration-dates-for-new-access-tokens">Require expiration dates for new access tokens</a></p>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<h2 id="were-combining-patch-and-security-releases">We’re combining patch and security releases</h2>
<p>This improvement in our release process matches the industry standard and will help GitLab users get information about security and
bug fixes sooner, <a href="https://about.gitlab.com/blog/were-combining-patch-and-security-releases/">read the blog post here</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 17.2.1, 17.1.3, 17.0.5</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-2-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-2-1-released/</id><published>2024-07-24T00:00:00Z</published><updated>2024-07-24T00:00:00Z</updated><author><name>Greg Alfaro</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On July 24, 2024, we released versions 17.2.1, 17.1.3, 17.0.5 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version.</p>
<p>GitLab releases fixes for vulnerabilities in dedicated patch releases. There are two types of patch releases:
scheduled releases, and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, you can visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are dedicated to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-2-1-released/#xss-via-the-maven-dependency-proxy">XSS via the Maven Dependency Proxy</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-2-1-released/#project-level-analytics-settings-leaked-in-dom">Project level analytics settings leaked in DOM</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-2-1-released/#reports-can-access-and-download-job-artifacts-despite-use-of-settings-to-prevent-it">Reports can access and download job artifacts despite use of settings to prevent it</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-2-1-released/#direct-transfer---authorised-projectgroup-exports-are-accessible-to-other-users">Direct Transfer - Authorised project/group exports are accessible to other users</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-2-1-released/#bypassing-tag-check-and-branch-check-through-imports">Bypassing tag check and branch check through imports</a></td>
          <td>Low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-2-1-released/#project-importexport---make-projectgroup-export-files-hidden-to-everyone-except-user-who-initiated-it">Project Import/Export - Make project/group export files hidden to everyone except user who initiated it</a></td>
          <td>Low</td>
      </tr>
  </tbody>
</table>
<h3 id="xss-via-the-maven-dependency-proxy">XSS via the Maven Dependency Proxy</h3>
<p>A cross site scripting vulnerability exists in GitLab CE/EE affecting all versions from 16.6 prior to 17.0.5, 17.1 prior to 17.1.3, 17.2 prior to 17.2.1 allowing an attacker to execute arbitrary scripts under the context of the current logged in user.
This is a high severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:H/I:H/A:N</code>, 7.7)</p>
<p>This vulnerability has been discovered internally by GitLab team member <a href="https://gitlab.com/joernchen">Joern Schneeweisz</a>.</p>
<h3 id="project-level-analytics-settings-leaked-in-dom">Project level analytics settings leaked in DOM</h3>
<p>An issue was discovered in GitLab EE affecting all versions starting from 16.11 prior to 17.0.5, 17.1 prior to 17.1.3, 17.2 prior to 17.2.1 where certain project-level analytics settings could be leaked in DOM to group members with Developer or higher roles.
This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:H/I:N/A:N </code>, 4.4).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-5067">CVE-2024-5067</a>.</p>
<p>Thanks <a href="https://hackerone.com/yvvdwf">yvvdwf</a> and <a href="https://hackerone.com/zebraman">zebraman</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="reports-can-access-and-download-job-artifacts-despite-use-of-settings-to-prevent-it">Reports can access and download job artifacts despite use of settings to prevent it</h3>
<p>An information disclosure vulnerability in GitLab CE/EE affecting all versions starting from 16.7 prior to 17.0.5, starting from 17.1 prior to 17.1.3, and starting from 17.2 prior to 17.2.1 where job artifacts can be inappropriately exposed to users lacking the proper authorization level.
This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code>, 4.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-7057">CVE-2024-7057</a>.</p>
<p>Thanks <a href="https://hackerone.com/ricardobrito">ricardobrito</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="direct-transfer---authorised-projectgroup-exports-are-accessible-to-other-users">Direct Transfer - Authorised project/group exports are accessible to other users</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting from 15.6 prior to 17.0.5, starting from 17.1 prior to 17.1.3, and starting from 17.2 prior to 17.2.1 where it was possible to disclose limited information of an exported group or project to another user.</p>
<p>This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:N/A:N</code>, 4.1 ).</p>
<p>This vulnerability was found internally by a GitLab team member <a href="https://gitlab.com/jnutt">James Nutt</a>.</p>
<h3 id="bypassing-tag-check-and-branch-check-through-imports">Bypassing tag check and branch check through imports</h3>
<p>A resource misdirection vulnerability in GitLab CE/EE affecting all versions 12.0 prior to 17.0.5, 17.1 prior to 17.1.3, and 17.2 prior to 17.2.1 allows an attacker to craft a repository import in such a way as to misdirect commits.
This is a low severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:N/I:L/A:N</code>, 2.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-0231">CVE-2024-0231</a>.</p>
<p>Thanks <a href="https://hackerone.com/aaron_dewes">aaron_dewes</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="project-importexport---make-projectgroup-export-files-hidden-to-everyone-except-user-who-initiated-it">Project Import/Export - Make project/group export files hidden to everyone except user who initiated it</h3>
<p>An information disclosure vulnerability in GitLab CE/EE in project/group exports affecting all versions from 15.4 prior to 17.0.5, 17.1 prior to 17.1.3, and 17.2 prior to 17.2.1 allows unauthorized users to view the resultant export.
This is a low severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:L/I:N/A:N</code>, 2.6).</p>
<p>This vulnerability has been discovered internally by GitLab team member <a href="https://gitlab.com/wortschi">Martin Wortschack</a></p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1721">17.2.1</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/7103">Revert &ldquo;Ensure page token is for the same tree&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159815">Fix order-dependent Elasticsearch spec failure</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159794">Backport to run Release Environments on RC tag into &lsquo;17-2-stable-ee&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159993">Fix state leak in cluster_util_spec.rb</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/160006">Ensure rspec helpers call curl with &ndash;fail</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/160047">Run e2e:package-and-test-ee for MR targeting stable branches</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/160129">Remove build-gdk-image, e2e:test-on-gdk, and retag-gdk-image jobs (17.2)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/160007">17.2 backport for fix PEP when SEC is available</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/160276">bugfix: Only run advanced SAST job when Ultimate license present</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/160377">Backport pipeline fixes for 17.2</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/469443">Private dotenv artifacts not accessible to downstream jobs</a></li>
</ul>
<h3 id="1713">17.1.3</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/1921">Backport mock tag cleanup related fixes</a></li>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/1904">Multiarch fixes backport (17.1)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/158737">Backport release-environments pipeline in security repo to 17.1</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/158841">Backport [17.1] Fix empty minimum_should_match in query</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159016">Fix wildcard search for package.json in npm upload</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159075">NPM registry: replace the saj parser (17.1 backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159701">Fix Content-Disposition header for Azure in API download (17.1 Backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159817">Fix order-dependent Elasticsearch spec failure</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159795">Backport to run Release Environments on RC tag into &lsquo;17-1-stable-ee&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159995">Fix state leak in cluster_util_spec.rb</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/160094">Merge branch &lsquo;sh-curl-fail-ci&rsquo; into &lsquo;master&rsquo; - 17.1</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159003">Ignore object pool already exists creation errors 17.1</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/158509">Backport token logging improvements</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159049">Backport add Rake task to show token expiration info</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/160128">Remove build-gdk-image, e2e:test-on-gdk, and retag-gdk-image jobs (17.1)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/160392">Backport pipeline fixes for 17.1</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/469443">Private dotenv artifacts not accessible to downstream jobs</a></li>
</ul>
<h3 id="1705">17.0.5</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/1920">Backport mock tag cleanup related fixes</a></li>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/1903">Multiarch fixes backport (17.0)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159796">Backport to run Release Environments on RC tag into &lsquo;17-0-stable-ee&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159286">Backport Resolve &ldquo;Geo: JWT token expiration too short&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159019">Ignore object pool already exists creation errors 17.0</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/158907">Fix 500 error using a instance runner registration token</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/158511">Backport token logging improvements</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/158266">Drop migration that finalizes migration to add PAT expiration</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159417">Update the token expiration banner</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159054">Backport add Rake task to show token expiration info</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/160326">Fix order-dependent custom role definition spec failure</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/160393">Backport pipeline fixes for 17.0</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/469443">Private dotenv artifacts not accessible to downstream jobs</a></li>
</ul>
<h3 id="16117">16.11.7</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159287">Backport Resolve &ldquo;Geo: JWT token expiration too short&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159019">Ignore object pool already exists creation errors 17.0</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/157277">Backport token logging improvements</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/158416">Drop migration that finalizes migration to add PAT expiration</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159418">Update the token expiration banner</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159056">Backport add Rake task to show token expiration info</a></li>
</ul>
<h3 id="16109">16.10.9</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/158516">Backport token logging improvements</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/158414">Drop migration that finalizes migration to add PAT expiration</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159419">Update the token expiration banner</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159057">Backport add Rake task to show token expiration info</a></li>
</ul>
<h3 id="16910">16.9.10</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/158517">Backport token logging improvements</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/153470">Drop migration that finalizes migration to add PAT expiration</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159421">Update the token expiration banner</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159058">Backport add Rake task to show token expiration info</a></li>
</ul>
<h3 id="1689">16.8.9</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/158518">Backport token logging improvements</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/153469">Drop migration that finalizes migration to add PAT expiration</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159424">Update the token expiration banner</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159066">Backport add Rake task to show token expiration info</a></li>
</ul>
<h3 id="1679">16.7.9</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/158519">Backport token logging improvements</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/153468">Drop migration that finalizes migration to add PAT expiration</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159426">Update the token expiration banner</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159069">Backport add Rake task to show token expiration info</a></li>
</ul>
<h3 id="1669">16.6.9</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/158525">Backport token logging improvements</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/153466">Drop migration that finalizes migration to add PAT expiration</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159429">Update the token expiration banner</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159089">Backport add Rake task to show token expiration info</a></li>
</ul>
<h3 id="1659">16.5.9</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/158526">Backport token logging improvements</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/153459">Drop migration that finalizes migration to add PAT expiration</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/158110">Add the token expiration banner</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159093">Backport add Rake task to show token expiration info</a></li>
</ul>
<h3 id="1646">16.4.6</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/153458">Drop migration that finalizes migration to add PAT expiration</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/158474">Add the token expiration banner</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159125">Backport add Rake task to show token expiration info</a></li>
</ul>
<h3 id="1638">16.3.8</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/153457">Drop migration that finalizes migration to add PAT expiration</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/158475">Add the token expiration banner</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159383">Backport add Rake task to show token expiration info</a></li>
</ul>
<h3 id="16210">16.2.10</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/153453">Drop migration that finalizes migration to add PAT expiration</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/158479">Add the token expiration banner</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159401">Backport add Rake task to show token expiration info</a></li>
</ul>
<h3 id="1617">16.1.7</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/153448">Drop migration that finalizes migration to add PAT expiration</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/158476">Add the token expiration banner</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159414">Backport add Rake task to show token expiration info</a></li>
</ul>
<h3 id="1609">16.0.9</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/153435">Drop migration that finalizes migration to add PAT expiration</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/158477">Add the token expiration banner</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/159446">Backport add Rake task to show token expiration info</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<h2 id="were-combining-patch-and-security-releases">We’re combining patch and security releases</h2>
<p>This improvement in our release process matches the industry standard and will help GitLab users get information about security and
bug fixes sooner, <a href="https://about.gitlab.com/blog/were-combining-patch-and-security-releases/">read the blog post here</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab 17.2 released</title><link href="https://docs.gitlab.com/releases/17/17-2-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/17/17-2-released/</id><published>2024-07-18T00:00:00Z</published><updated>2024-07-18T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On July 18, 2024, GitLab 17.2 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong>Phawin Khongkhasawan</strong>
</p>
<p>Everyone can <a href="https://gitlab.com/gitlab-org/developer-relations/contributor-success/team-task/-/issues/490">nominate GitLab&rsquo;s community contributors</a>!
Show your support for our active candidates or add a new nomination! 🙌</p>
<p>Phawin Khongkhasawan is a Tech Lead at <a href="https://www.jitta.com/">Jitta</a> and started contributing
to GitLab in February of 2024.
In just a few months, Phawin has merged over 20 contributions and his contributions have also been
featured in <a href="https://about.gitlab.com/releases/2024/04/18/gitlab-16-11-released/#test-project-hooks-with-the-rest-api">16.11</a>,
<a href="https://about.gitlab.com/releases/2024/05/16/gitlab-17-0-released/#customize-avatars-for-users">17.0</a>,
and <a href="https://about.gitlab.com/releases/2024/06/20/gitlab-17-1-released/#require-confirmation-for-manual-jobs">17.1</a>.</p>
<p>Phawin was first nominated by <a href="https://gitlab.com/m_frankiewicz">Magdalena Frankiewicz</a>, Product Manager at GitLab,
for improving Webhook related features like the request to <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/455589">Allow triggering of project test webhooks via the API</a>.
GitLab engineers <a href="https://gitlab.com/marc_shaw">Marc Shaw</a> and <a href="https://gitlab.com/jivanvl">Jose Ivan Vargas</a>,
and GitLab Product Manager <a href="https://gitlab.com/rutshah">Rutvik Shah</a>, highlighted Phawin&rsquo;s patience
in collaboration and iteration, two of <a href="https://handbook.gitlab.com/handbook/values/">GitLab&rsquo;s core values</a>.</p>
<p>&ldquo;I really appreciate Phawin&rsquo;s work, patience and perseverance on pushing the feature to <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/147052">Add order by merged_at</a>
to the finish line,&rdquo; says <a href="https://gitlab.com/patrickbajao">Patrick Bajao</a>, Staff Backend Engineer at GitLab.
&ldquo;It took a couple of milestones before it got merged and deployed, but he didn&rsquo;t stop and he continued
to collaborate with us.&rdquo;</p>
<p>A big thank you to Phawin for showing how new contributors can make an immediate impact and help
co-create GitLab.</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>Log streaming for Kubernetes pods and containers</strong>
    <p>In GitLab 16.1, we introduced the Kubernetes pod list and detail views. However, you still had to use third-party tools for an in-depth analysis of your workloads.
GitLab now ships with a log streaming view for pods and containers, so you can quickly check and troubleshoot issues across your environments without leaving your application delivery tool.</p>
    <p><a href="https://docs.gitlab.com/ee/ci/environments/kubernetes_dashboard.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Gitlab Duo disabling input and output logging by default.</strong>
    <p><p>GitLab is now disabling AI input and output logging for GitLab Duo by default.</p>
<p>At GitLab, we aim to ensure that customers have sovereignty over their data.
We&rsquo;ve now disabled input and output logging by default and will only log inputs and outputs with customers&rsquo; explicit
consent via a GitLab Support ticket.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/gitlab_duo/data_usage.html#data-retention">View Documentation</a></p>
  </li>
  <li>
    <strong>Block a merge request by requesting changes</strong>
    <p><p>When you perform a review, you can complete it by choosing whether to <code>approve</code>, <code>comment</code>, or <code>request changes</code> (<a href="https://about.gitlab.com/releases/2024/02/15/gitlab-16-9-released/#request-changes-on-merge-requests">released in GitLab 16.9</a>). While reviewing, you might find changes that should prevent a merge request from merging until they&rsquo;re resolved, and so you complete your review with <code>request changes</code>.</p>
<p>When requesting changes, GitLab now adds a merge check that prevents merging until the request for changes has been resolved. The request for changes can be resolved when the original user who requested changes re-reviews the merge request and subsequently approves the merge request. If the user who originally requested changes is unable to approve, the request for changes can be <strong>Bypassed</strong> by anyone with merge permissions, so development can continue.</p>
<p>Leave us feedback about this new feature in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/455339">issue 455339</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/merge_requests/reviews/index.html#prevent-merge-when-you-request-changes">View Documentation</a></p>
  </li>
  <li>
    <strong>Vulnerability Explanation</strong>
    <p>Vulnerability Explanation is now a part of GitLab Duo Chat and is generally available. With Vulnerability Explanation, you can open chat from any SAST vulnerability to better understand the vulnerability, see how it could be exploited, and review a potential fix.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/vulnerabilities/#explaining-a-vulnerability">View Documentation</a></p>
  </li>
  <li>
    <strong>OAuth 2.0 device authorization grant support</strong>
    <p>GitLab now supports the <a href="https://datatracker.ietf.org/doc/html/rfc8628">OAuth 2.0 device authorization grant flow</a>. This flow makes it possible to securely authenticate your GitLab identity from input constrained devices where browser interactions are not an option.
This makes the device authorization grant flow ideal for users attempting to use GitLab services from headless servers or other devices with no, or limited, UI.
Thank you <a href="https://kitware.com/">John Parent</a> for your contribution!</p>
    <p><a href="https://docs.gitlab.com/ee/api/oauth2.html#device-authorization-grant-flow">View Documentation</a></p>
  </li>
  <li>
    <strong>Pipeline execution policy type</strong>
    <p><p>The pipeline execution policy type is a new type of <a href="https://docs.gitlab.com/ee/user/application_security/policies/">security policy</a> that allows users to support enforcement of generic CI jobs, scripts, and instructions.</p>
<p>The pipeline execution policy type enables security and compliance teams to enforce customized <a href="https://gitlab.com/gitlab-org/gitlab/-/tree/master/lib/gitlab/ci/templates/Jobs">GitLab security scanning templates</a>, <a href="https://gitlab.com/gitlab-org/gitlab/-/tree/master/lib/gitlab/ci/templates">GitLab or partner-supported CI templates</a>, 3rd party security scanning templates, custom reporting rules through CI jobs, or custom scripts/rules through GitLab CI.</p>
<p>The pipeline execution policy has two modes: inject and override. The <em>inject</em> mode injects jobs into the project&rsquo;s CI/CD pipeline. The <em>override</em> mode replaces the project&rsquo;s CI/CD pipeline configuration.</p>
<p>As with all GitLab policies, enforcement can be managed centrally by designated security and compliance team members who create and manage the policies. <a href="https://docs.gitlab.com/ee/user/application_security/policies/pipeline_execution_policies.html">Learn how to get started by creating your first pipeline execution policy</a>!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/policies/pipeline_execution_policies.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Expanded support of custom rulesets in pipeline secret detection</strong>
    <p><p>We have expanded support of custom rulesets in pipeline secret detection.</p>
<p>You can use two new types of passthroughs, <code>git</code> and <code>url</code>, to configure remote rulesets. This makes it easier to manage workflows such as sharing ruleset configurations across multiple projects.</p>
<p>You can also extend the default configuration with a remote ruleset by using one of those new types of passthroughs.</p>
<p>The analyzer also now supports:</p>
<ul>
<li>Chaining up to 20 passthroughs into a single configuration to replace predefined rules.</li>
<li>Including environment variables in passthroughs.</li>
<li>Setting a timeout when loading a passthrough.</li>
<li>Validating TOML syntax in ruleset configuration.</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/secret_detection/pipeline/index.html#customize-analyzer-rulesets">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Duo Chat and Code Suggestions available in workspaces</strong>
    <p><a href="https://docs.gitlab.com/ee/user/gitlab_duo_chat/">GitLab Duo Chat</a> and <a href="https://docs.gitlab.com/ee/user/project/repository/code_suggestions/">Code Suggestions</a> are now available in workspaces! Whether you&rsquo;re seeking quick answers or efficient code improvements, Duo Chat and Code Suggestions are designed to boost productivity and streamline your workflow, making remote development in workspaces more efficient and effective than ever.</p>
    <p><a href="https://docs.gitlab.com/ee/user/gitlab_duo/">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Scale and Deployments</h4>
<ul>
  <li>
    <strong>Improved sorting and filtering in group overview</strong>
    <p><p>We have updated the sorting and filtering functionality of the group overview page. The search element now stretches across the whole page, allowing you to see your search strings better. We have standardized the sorting options to <code>Name</code>, <code>Created date</code>, <code>Updated date</code>, and <code>Stars</code>.</p>
<p>We welcome feedback about these changes in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/438322">issue 438322</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/#view-a-group">View Documentation</a></p>
  </li>
  <li>
    <strong>List groups that a group was invited to using the Groups API</strong>
    <p><p>We added a new endpoint to the Groups API to list the groups a group has been invited to.
This functionality complements the <a href="https://docs.gitlab.com/ee/api/groups.html#list-a-groups-shared-projects">endpoint to list the projects that a group has been invited to</a>, so you can now get a complete overview of all the groups and projects that your group has been added to.
The endpoint is rate-limited to 60 requests per minute per user.</p>
<p>Thank you <a href="https://gitlab.com/imskr">@imskr</a> for this community contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/api/groups.html#list-a-groups-shared-groups">View Documentation</a></p>
  </li>
  <li>
    <strong>Resolve to-do items, one discussion at a time</strong>
    <p><p>Discussions on GitLab issues can get busy. GitLab helps you manage these conversations by raising a to-do item for comments that are relevant to you, and automatically resolves the item when you take an action on the issue.</p>
<p>Previously, when you took action on a thread in the issue, all to-do items were resolved, even if you were mentioned in several different threads. Now, GitLab resolves only the to-do item for the thread you interacted with.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/todos.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Indicate imported items in UI</strong>
    <p><p>You can import projects to GitLab from <a href="https://docs.gitlab.com/ee/user/project/import/#supported-import-sources">other SCM solutions</a>. However, it was difficult to know
if project items were imported or created on the GitLab instance.</p>
<p>With this release, we&rsquo;ve added visual indicators to items imported from GitHub, Gitea, Bitbucket Server, and Bitbucket Cloud where the creator is identified as a specific
user. For example, merge requests, issues, and notes.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/import/#supported-import-sources">View Documentation</a></p>
  </li>
  <li>
    <strong>Deleted branches are removed from Jira development panel</strong>
    <p><p>Previously, when using <a href="https://docs.gitlab.com/ee/integration/jira/connect-app.html">GitLab for Jira Cloud app</a>, if you deleted a branch in GitLab, that branch still
appeared in Jira development panel. Selecting that branch caused a <code>404</code> error on GitLab.</p>
<p>From this release, branches deleted in GitLab are removed from the Jira development panel.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/integration/jira/development_panel.html#feature-availability">View Documentation</a></p>
  </li>
  <li>
    <strong>Find project settings by using the command palette</strong>
    <p><p>GitLab offers many settings across projects, groups, the instance, and for yourself personally. To find the setting you&rsquo;re looking for, you often have to spend time clicking through many different areas of the UI.</p>
<p>With this release, you can now search for project settings from the command palette. Try it out by visiting a project, selecting <strong>Search or go to&hellip;</strong>, entering command mode with <code>&gt;</code>, and typing the name of a settings section, like <strong>Protected tags</strong>. Select a result to jump right to the setting itself.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/search/command_palette.html">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>Merge commit message generation now GA</strong>
    <p><p>Crafting commit messages is an important part of ensuring that future users understand what and why changes were made to the codebase. It&rsquo;s challenging to come up with a message that communicates your changes effectively and takes into account everything you might have changed.</p>
<p>Generation of merge commits with GitLab Duo is now Generally Available to help ensure every merge request has quality commit messages. Before you merge, select <strong>Edit commit message</strong> in the merge widget, then use the <strong>Generate commit message</strong> option to have a commit message drafted.</p>
<p>This new GitLab Duo capability is a great way to make sure your project&rsquo;s commit history is a valuable resource for future developers.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/merge_requests/duo_in_merge_requests.html#generate-a-merge-commit-message">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Duo for the CLI now GA</strong>
    <p><p>GitLab Duo for the CLI is now generally available for all users. You can now <code>ask</code> GitLab Duo to help you with finding the right <code>git</code> command for your need.</p>
<p>Use <code>glab duo ask &lt;git question&gt;</code> to have GitLab Duo provide you with formatted <code>git</code> commands to achieve your goals. The GitLab CLI then provides additional details on the commands and what they will do, including information on any flags being passed. You&rsquo;re then able to run the commands and get their output directly in your workflow.</p>
<p>The <code>ask</code> command for the GitLab CLI is a great way to speed up your workflow with <code>git</code> commands you need a little extra help remembering.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/editor_extensions/gitlab_cli/index.html#gitlab-duo-for-the-cli">View Documentation</a></p>
  </li>
  <li>
    <strong>Pure SSH transfer protocol for LFS</strong>
    <p><p>Back in September 2021, <a href="https://github.com/git-lfs/git-lfs/blob/main/CHANGELOG.md#300-24-sep-2021"><code>git-lfs</code> 3.0.0</a>
released support for using SSH as the transfer protocol instead of HTTP.
Prior to <code>git-lfs</code> 3.0.0, HTTP was the only supported transfer protocol
which meant using <code>git-lfs</code> at GitLab was not possible for some users.
With this release, we&rsquo;re very excited to offer the ability to
enable support for SSH over HTTP as the transfer protocol for <code>git-lfs</code>.</p>
<p>Thank you to <a href="https://gitlab.com/KyleFromKitware">Kyle Edwards</a> and
<a href="https://gitlab.com/joe-snyder">Joe Snyder</a> for this contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/lfs/#pure-ssh-transfer-protocol">View Documentation</a></p>
  </li>
  <li>
    <strong>Deployments and approvals to protected environments trigger an audit event</strong>
    <p><p>An accessible record of deployment events, like deployment approvals, is essential for compliance management. Until now, GitLab did not provide deployment-related audit events, so compliance managers had to use custom tooling or search for this data in GitLab directly. GitLab now provides three audit events:</p>
<ul>
<li><code>deployment_started</code> records who started a deployment job, and when it was started.</li>
<li><code>deployment_approved</code> records who approved a deployment job, and when it was approved.</li>
<li><code>deployment_rejected</code> records who rejected a deployment job, and when it was rejected.</li>
</ul></p>
    <p><a href="https://docs.gitlab.com/ee/user/compliance/audit_event_types.html#continuous-delivery">View Documentation</a></p>
  </li>
  <li>
    <strong>Assigning frameworks at subgroup compliance center</strong>
    <p><p>The compliance center is the central location for compliance teams to
manage their compliance standards adherence reporting, violations reporting,
and compliance frameworks for their group.</p>
<p>Previously, all of the associated features of the compliance center were only available for top-level groups.
This meant that for subgroups, owners didn&rsquo;t have access to any of the functionality provided by the compliance center on the top-level group.</p>
<p>To help address these key pain points, we&rsquo;ve added the ability to assign and unassign compliance frameworks for subgroups. Now, group owners can
visualize their compliance posture at the subgroup level in addition to the full top-group-level compliance centre dashboard that was already available.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/compliance/compliance_center/compliance_projects_report.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Expand &#34;Scan Execution Policies&#34; to run `latest` templates for each GitLab analyzer</strong>
    <p><p><a href="https://docs.gitlab.com/ee/user/application_security/policies/scan-execution-policies.html">Scan execution policies</a> have been expanded to allow you to choose between <code>default</code> and <code>latest</code> GitLab templates when defining the policy rules. While <code>default</code> reflects the current behavior, you may update your policy to <code>latest</code> to use features available only in the latest template of the given security analyzer.</p>
<p>By utilizing the <code>latest</code> template, you may now ensure scans are enforced on merge request pipelines, along with any other rules enabled in the <code>latest</code> template. Previously this was limited to branch pipelines or a specified schedule.</p>
<p>Note: Be sure to review all changes between <code>default</code> and <code>latest</code> templates before modifying the policy to ensure this suits your needs!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/policies/scan-execution-policies.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Identify dates when multiple access tokens expire</strong>
    <p>Administrators can now run a script that identifies dates when multiple access tokens expire. You can use this script in combination with other scripts on the <a href="https://docs.gitlab.com/ee/security/token_overview.html#troubleshooting">token troubleshooting page</a> to identify and extend large batches of tokens that might be approaching their expiration date, if token rotation has not yet been implemented.</p>
    <p><a href="https://docs.gitlab.com/ee/security/token_overview.html#identify-dates-when-many-tokens-expire">View Documentation</a></p>
  </li>
  <li>
    <strong>OAuth authorization screen improvements</strong>
    <p>The OAuth authorization screen now more clearly describes the authorization you are granting. It also includes a &ldquo;verified by GitLab&rdquo; section for applications that are provided by GitLab. Previously, the user experience was the same, regardless of whether an application was provided by GitLab or not. This new functionality provides an extra layer of trust.</p>
    <p><a href="https://docs.gitlab.com/ee/integration/oauth_provider.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Streamlined instance administrator setup</strong>
    <p>The administrator setup experience for a new install of GitLab has been streamlined and made more secure. The initial administrator root email address is now randomzied, and administrators are forced to change this email address to an account that they can access. Previously, this step could have been delayed, and an administrator might forget to change the email address.</p>
    <p><a href="https://docs.gitlab.com/ee/administration/">View Documentation</a></p>
  </li>
  <li>
    <strong>User API added to the Snowflake Data Connector</strong>
    <p>In GitLab 17.2, we&rsquo;ve added support for the <a href="https://docs.gitlab.com/ee/api/users.html#list-users">Users API</a> to the <a href="https://app.snowflake.com/marketplace/listing/GZTYZXESENG/gitlab-gitlab-data-connector">GitLab Data Connector</a>,
which is available in the Snowflake Marketplace app. You can now stream user data from self-managed GitLab instances to Snowflake using the Users API.</p>
    <p><a href="https://docs.gitlab.com/ee/integration/snowflake.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Simplified setup for Google Cloud integration</strong>
    <p>Google Cloud CLI commands are now natively available when setting up workload identity federation for the Google Cloud IAM integration. Previously, the guided setup used a script downloaded through cURL commands. Also, help text has been added to better describe the setup process. These improvements help group owners set up the Google Cloud IAM integration more quickly.</p>
    <p><a href="https://docs.gitlab.com/ee/tutorials/set_up_gitlab_google_integration/#secure-your-usage-with-google-cloud-identity-and-access-management-iam">View Documentation</a></p>
  </li>
  <li>
    <strong>Separate wiki page title and path fields</strong>
    <p>In GitLab 17.2, wiki page titles are separate from their paths. In previous releases, if a page title changed, the path would also change, which could cause links to the page to break. Now, if a wiki page&rsquo;s title changes, the path remains unchanged. Even if a wiki page path changes, an automatic redirect is set up to prevent broken links.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/wiki/">View Documentation</a></p>
  </li>
  <li>
    <strong>Improvements to the wiki sidebar</strong>
    <p><p>GitLab 17.2 adds several enhancements to how wikis display the sidebar. Now, a wiki displays all pages in the sidebar (up to 5000 pages), displays a table of contents (TOC), and provides a search bar to quickly find pages.</p>
<p>Previously, the sidebar lacked a TOC, making it challenging to navigate to sections of a page. The new TOC feature helps to see the page structure clearly, as well as navigate quickly to different sections, greatly improving usability.</p>
<p>The addition of a search bar makes discovering content easier. And because the sidebar now displays all pages, you can seamlessly browse an entire wiki.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/wiki/">View Documentation</a></p>
  </li>
  <li>
    <strong>Document modules in the Terraform module registry</strong>
    <p><p>The Terraform module registry now displays Readme files! With this highly requested feature, you can transparently document the purpose, configuration, and requirements of each module.</p>
<p>Previously, you had to search other sources for this critical information, which made it difficult to properly evaluate and use modules. Now, with the module documentation readily available, you can quickly understand a module&rsquo;s capabilities before you use it. This accessibility empowers you to confidently share and reuse Terraform code across your organization.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/packages/terraform_module_registry/index.html#view-terraform-modules">View Documentation</a></p>
  </li>
  <li>
    <strong>Add type attribute to issues events webhook</strong>
    <p>Issues, tasks, incidents, requirements, objectives, and key results
all trigger payloads under the <strong>Issues Events</strong> webhook category. Until now, there has been no way to quickly determine the type of object that triggered the webhook within the event payload. This release introduces an <code>object_attributes.type</code> attribute available on payloads within the <strong>Issues events</strong>, <strong>Comments</strong>, <strong>Confidential issues events</strong>, and <strong>Emoji events</strong> triggers.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/integrations/webhook_events.html#issue-events">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Advanced SAST available in Beta for Go, Java, and Python</strong>
    <p><p>GitLab Advanced SAST is now available <a href="https://docs.gitlab.com/ee/policy/experiment-beta-support.html#beta">as a Beta feature</a> for Ultimate customers.
Advanced SAST uses cross-file, cross-function analysis to deliver higher-quality results.
It now supports Go, Java, and Python.</p>
<p>During the Beta phase, we recommend running Advanced SAST in test projects, not replacing existing SAST analyzers.
To enable Advanced SAST, see the <a href="https://docs.gitlab.com/ee/user/application_security/sast/gitlab_advanced_sast.html#enable-advanced-sast-scanning">instructions</a>.
Starting in GitLab 17.2, Advanced SAST is included in the <a href="https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Jobs/SAST.latest.gitlab-ci.yml"><code>SAST.latest</code> CI/CD template</a>.</p>
<p>This is part of our iterative <a href="https://about.gitlab.com/blog/oxeye-joins-gitlab-to-advance-application-security-capabilities/">integration of Oxeye technology</a>.
In upcoming releases, we plan to move Advanced SAST to General Availability, add support for <a href="https://gitlab.com/groups/gitlab-org/-/epics/14312">other languages</a>, and introduce new UI elements to trace how vulnerabilities flow.
We welcome any testing feedback in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/466322">issue 466322</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/sast/gitlab_advanced_sast.html">View Documentation</a></p>
  </li>
  <li>
    <strong>API Security Testing now supports signed authentication requests</strong>
    <p>API Security already has support for &ldquo;overrides&rdquo; which can modify the requests sent by the scanner. However these overrides must be set ahead of time and cannot change based on the request itself. GitLab 17.2 adds a &ldquo;per-request script&rdquo; (<code>APISEC_PER_REQUEST_SCRIPT</code>), which allows a user to provide a C# script that is called prior to sending each request. This provides support for &ldquo;signing&rdquo; the request with a secret as a form of authentication.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/api_security_testing/configuration/variables.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Container Scanning: Continuous Vulnerability Scanning OS support</strong>
    <p><p>As a follow up to the Continuous Vulnerability Scanning for Container scanning MVC, during 17.2 we added support for APK and RPM operating system package versions.</p>
<p>This enhancement allows our analyzer to fully support Continuous Vulnerability Scans for Container Scanning advisories by comparing the package versions for <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/428703">APK</a> and <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/428941">RPM</a> operating system purl types.</p>
<p>As a note, RPM versions containing a caret (<code>^</code>) are not supported. Work to support these versions is being tracked in this <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/459969">issue</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/continuous_vulnerability_scanning/#supported-package-types">View Documentation</a></p>
  </li>
  <li>
    <strong>DAST analyzer updates</strong>
    <p><p>During the 17.2 release milestone, we published the following updates.</p>
<ol>
<li>We added three new checks:</li>
</ol>
<ul>
<li>Check 506.1 is a passive check that identifies request URLs that are likely compromised by the Polyfill.io CDN takeover.</li>
<li>Check 384.1 is a passive check that identifies session fixation weaknesses, which could allow a valid session identifier to be reused by malicious actors.</li>
<li>Check 16.11 is an active check that identifies when the TRACE HTTP debugging method is enabled on a production server, which could inadvertently expose sensitive information.</li>
</ul>
<ol start="2">
<li>We addressed the following bugs to reduce false positives:</li>
</ol>
<ul>
<li>DAST checks 614.1 (Sensitive cookie without Secure attribute) and 1004.1 (Sensitive cookie without HttpOnly attribute) no longer create findings when a site has cleared a cookie by setting an expiry date in the past.</li>
<li>DAST check 1336.1 (Server-Side Template Injection) no longer relies on a 500 HTTP response status code to determine attack success.</li>
</ul>
<ol start="3">
<li>We added the following enhancements:</li>
</ol>
<ul>
<li>All response headers are now presented as evidence in a DAST vulnerability finding. This additional context reduces time spent on triaging findings.</li>
<li>Sitemap.xml files are now crawled for additional URLs, leading to better coverage of target websites.</li>
</ul></p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/dast/browser/checks/">View Documentation</a></p>
  </li>
  <li>
    <strong>API Fuzz Testing now supports signed authentication requests</strong>
    <p>API Fuzzing already has support for &ldquo;overrides&rdquo; which can modify the requests sent by the scanner. However these overrides must be set ahead of time and cannot change based on the request itself. GitLab 17.2 adds a &ldquo;per-request script&rdquo; (<code>FUZZAPI_PER_REQUEST_SCRIPT</code>), which allows a user to provide a C# script that is called prior to sending each request. This provides support for &ldquo;signing&rdquo; the request with a secret as a form of authentication.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/api_fuzzing/configuration/variables.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Secret push protection now available for Self-Managed, and improved warnings of potential leaks</strong>
    <p><p>During the 17.2 release milestone, we published the following updates:</p>
<ul>
<li>Secret Push Protection beta is now available for self-managed customers. After an administrator <a href="https://docs.gitlab.com/ee/user/application_security/secret_detection/secret_push_protection/#allow-the-use-of-secret-push-protection-in-your-gitlab-instance">enables the feature instance-wide</a>, follow our documentation to <a href="https://docs.gitlab.com/ee/user/application_security/secret_detection/secret_push_protection/#enable-secret-push-protection-in-a-project">enable push protection</a> on your projects.</li>
<li><a href="https://docs.gitlab.com/ee/user/application_security/secret_detection/client/">Warnings for potential leaks in text content</a> have been enriched with more detail, making it easier to understand which type of secret is about to be leaked in a description or comment in either an issue, epic, or MR.</li>
</ul></p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/secret_detection/">View Documentation</a></p>
  </li>
  <li>
    <strong>Sort options for pipeline schedules</strong>
    <p>You can now sort the pipeline schedules list by description, ref, next run, created date, and updated date.</p>
    <p><a href="https://docs.gitlab.com/ee/ci/pipelines/schedules.html">View Documentation</a></p>
  </li>
  <li>
    <strong>`rules:changes:compare_to` now supports CI/CD variables</strong>
    <p>In GitLab 15.3 we introduced the <a href="https://docs.gitlab.com/ee/ci/yaml/#ruleschangescompare_to"><code>compare_to</code> keyword</a> for <code>rules:change</code>. This made it possible to define the exact ref to compare against. Beginning in GitLab 17.2, you can now use CI/CD variables with this keyword, making it easier to define and reuse <code>compare_to</code> values in multiple jobs.</p>
    <p><a href="https://docs.gitlab.com/ee/ci/yaml/#ruleschangescompare_to">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner 17.2</strong>
    <p><p>We&rsquo;re releasing GitLab Runner 17.2 today! GitLab Runner is the lightweight, highly scalable agent that runs your CI/CD jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.</p>
<h4 id="whats-new">What&rsquo;s new:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/29222">GitLab Runner fleeting plugin for AWS EC2 instances (GA)</a></li>
<li><a href="https://gitlab.com/gitlab-org/charts/gitlab-runner/-/issues/545">Permit configuration of Runner <code>livenessProbe</code> and <code>readinessProbe</code></a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/28867">Ability to enable and disable the <code>umask 0000</code> command for the Kubernetes executor</a></li>
<li><a href="https://gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/-/issues/203">Support for Red Hat OpenShift 4.16 for the GitLab Runner Operator</a></li>
</ul>
<h4 id="bug-fixes">Bug Fixes:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/30876">Gitlab Runner upgrade removes all cache volumes</a></li>
</ul>
<p>For a list of all changes, see the GitLab Runner <a href="https://gitlab.com/gitlab-org/gitlab-runner/blob/17-2-stable/CHANGELOG.md">CHANGELOG</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/runner">View Documentation</a></p>
  </li>
  <li>
    <strong>New agent authorization strategy for workspaces</strong>
    <p><p>With this release, we&rsquo;ve implemented a new authorization strategy for workspaces to address the limitations of the legacy strategy while providing group owners and administrators more control and flexibility. With the new authorization strategy, group owners and administrators can control which cluster agents to use for hosting workspaces.</p>
<p>To ensure a smooth transition, users on the legacy authorization strategy are migrated automatically to the new strategy. Existing agents that support workspaces are allowed automatically in the root group where these agents are located. This migration also occurs even if these agents have been allowed in different groups in a root group.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/workspace/gitlab_agent_configuration.html">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab Critical Patch Release: 17.1.2, 17.0.4, 16.11.6</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-1-2-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-1-2-released/</id><published>2024-07-10T00:00:00Z</published><updated>2024-07-10T00:00:00Z</updated><author><name>Rohit Shambhuni</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On July 10, 2024, we released versions 17.1.2, 17.0.4, 16.11.6 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all GitLab installations be upgraded to
one of these versions immediately. GitLab.com and GitLab Dedicated are already running the patched version.</p>
<p>GitLab releases fixes for vulnerabilities in dedicated patch releases. There are two types of patch releases:
scheduled releases, and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, you can visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are dedicated to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-1-2-released/#an-attacker-can-run-pipeline-jobs-as-an-arbitrary-user">An attacker can run pipeline jobs as an arbitrary user</a></td>
          <td>Critical</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-1-2-released/#developer-user-with-admin_compliance_framework-permission-can-change-group-url">Developer user with <code>admin_compliance_framework</code> permission can change group URL</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-1-2-released/#admin-push-rules-custom-role-allows-creation-of-project-level-deploy-token">Admin push rules custom role allows creation of project level deploy token</a></td>
          <td>Low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-1-2-released/#package-registry-vulnerable-to-manifest-confusion">Package registry vulnerable to manifest confusion</a></td>
          <td>Low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-1-2-released/#user-with-admin_group_member-permission-can-ban-group-members">User with <code>admin_group_member</code> permission can ban group members</a></td>
          <td>Low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-1-2-released/#subdomain-takeover-in-gitlab-pages">Subdomain takeover in GitLab pages</a></td>
          <td>Low</td>
      </tr>
  </tbody>
</table>
<h3 id="an-attacker-can-run-pipeline-jobs-as-an-arbitrary-user">An attacker can run pipeline jobs as an arbitrary user</h3>
<p>An issue was discovered in GitLab CE/EE affecting versions 15.8 prior to 16.11.6, 17.0 prior to 17.0.4, and 17.1 prior to 17.1.2, which allows an attacker to trigger a pipeline as another user under certain circumstances.
This is a critical severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:N</code>, 9.6).
It is now resolved in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-6385">CVE-2024-6385</a>.</p>
<p>Thanks to <a href="https://hackerone.com/yvvdwf">yvvdwf</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="developer-user-with-admin_compliance_framework-permission-can-change-group-url">Developer user with <code>admin_compliance_framework</code> permission can change group URL</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting from 17.0 prior to 17.0.4 and from 17.1 prior to 17.1.2 where a Developer user with <code>admin_compliance_framework</code> custom role may have been able to modify the URL for a group namespace.
This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:N/I:H/A:N</code>, 4.9).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-5257">CVE-2024-5257</a>.</p>
<p>Thanks <a href="https://hackerone.com/js_noob">js_noob</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="admin-push-rules-custom-role-allows-creation-of-project-level-deploy-token">Admin push rules custom role allows creation of project level deploy token</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting from 17.0 prior to 17.0.4 and from 17.1 prior to 17.1.2 where a Guest user with <code>admin_push_rules</code> permission may have been able to create project-level deploy tokens.
This is a low severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:L/I:L/A:N</code>, 3.8).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-5470">CVE-2024-5470</a>.</p>
<p>Thanks <a href="https://hackerone.com/indoappsec">indoappsec</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="package-registry-vulnerable-to-manifest-confusion">Package registry vulnerable to manifest confusion</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting from 11.8 prior to 16.11.6, starting from 17.0 prior to 17.0.4, and starting from 17.1 prior to 17.1.2 where it was possible to upload an NPM package with conflicting package data.
This is a low severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:N/I:L/A:N</code>, 3.0).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-6595">CVE-2024-6595</a>.</p>
<p>This vulnerability was found internally by a GitLab team member <a href="https://gitlab.com/ameyadarshan">Ameya Darshan</a>. Thanks to <a href="https://x.com/darcy">Darcy Clarke</a> for their work on <a href="https://blog.vlt.sh/blog/the-massive-hole-in-the-npm-ecosystem">manifest confusion</a>.</p>
<h3 id="user-with-admin_group_member-permission-can-ban-group-members">User with <code>admin_group_member</code> permission can ban group members</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting from 16.5 prior to 16.11.6, starting from 17.0 prior to 17.0.4, and starting from 17.1 prior to 17.1.2 in which a user with <code>admin_group_member</code> custom role permission could ban group members.
This is a low severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:N/I:L/A:N</code>, 2.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-2880">CVE-2024-2880</a>.</p>
<p>Thanks <a href="https://hackerone.com/ashish_r_padelkar">ashish_r_padelkar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="subdomain-takeover-in-gitlab-pages">Subdomain takeover in GitLab Pages</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions prior to 16.11.6, starting from 17.0 prior to 17.0.4, and starting from 17.1 prior to 17.1.2, which allows a subdomain takeover in GitLab Pages by checking if the domain is enabled every time the custom domain is resolved.
This is a low severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:L/A:N</code>, 3.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-5528">CVE-2024-5528</a>.</p>
<p>Thanks <a href="https://hackerone.com/fdeleite">fdeleite</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1712">17.1.2</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/7058">git: Update <code>symlinkPointsToGitDir</code> version check</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/157347">Fix MailRoom not loading in Omnibus</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/157428">Use static AWS credentials for elasticsearch indexer if set</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/157655">ci: For 17-1 Use default Ruby version for MRs targeting stable branches</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/157430">Remove transaction opening for non-basic search count</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/157757">Merge branch &rsquo;echui-gitlab-master-patch-58822&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/157312">Update FF version info for graphql_minimal_auth_methods</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/157608">Merge branch &lsquo;correct_finalize_epics_backfilling&rsquo; into &lsquo;17-1-stable-ee&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/158201">Fix merge unverified changes modal showing incorrectly</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/158332">Backport 17.1: Field needs to be called Url</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/158452">Backport Release Environments notification pipeline change to 17.1</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/157381">Update dependency slack-messenger to v2.3.5</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7734">Force ffi gem to use Ruby platform gem</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7744">Fix Redis password handling with reserved characters</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7765">Pin QA CI tests to stable gitlab-org/gitlab branches</a></li>
</ul>
<h3 id="1704">17.0.4</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/158455">Backport Release Environments notification pipeline change to 16.11</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/158453">Backport Release Environments notification pipeline change to 17.0</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/157383">Update dependency slack-messenger to v2.3.5</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7764">Pin QA CI tests to stable gitlab-org/gitlab branches</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7745">Fix Redis password handling with reserved characters</a></li>
</ul>
<h3 id="16116">16.11.6</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/157242">Update versioning info for graphql FF</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/157451">Define the Ruby patch version to use in CI jobs in 16.11</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/158326">For 16.11: Explicitly set Omnibus and CNG Ruby version in CI</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/158459">Backport Release Environments notification pipeline change to 16.11</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/157385">Update dependency slack-messenger to v2.3.5</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7763">Pin QA CI tests to stable gitlab-org/gitlab branches</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update GitLab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<h2 id="were-combining-patch-and-security-releases">We’re combining patch and security releases</h2>
<p>This improvement in our release process matches the industry standard and will help GitLab users get information about security and
bug fixes sooner, <a href="https://about.gitlab.com/blog/were-combining-patch-and-security-releases/">read the blog post here</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Critical Patch Release: 17.1.1, 17.0.3, 16.11.5</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-1-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-1-1-released/</id><published>2024-06-26T00:00:00Z</published><updated>2024-06-26T00:00:00Z</updated><author><name>Nikhil George</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On June 26, 2024, we released versions 17.1.1, 17.0.3, 16.11.5 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version.</p>
<p>GitLab releases fixes for vulnerabilities in dedicated patch releases. There are two types of patch releases:
scheduled releases, and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, you can visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are dedicated to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-1-1-released/#run-pipelines-as-any-user">Run pipelines as any user</a></td>
          <td>Critical</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-1-1-released/#stored-xss-injected-in-imported-projects-commit-notes">Stored XSS injected in imported project&rsquo;s commit notes</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-1-1-released/#csrf-on-graphql-api-introspectionquery">CSRF on GraphQL API <code>IntrospectionQuery</code></a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-1-1-released/#remove-search-results-from-public-projects-with-unauthorized-repos">Remove search results from public projects with unauthorized repos</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-1-1-released/#cross-window-forgery-in-user-application-oauth-flow">Cross window forgery in user application OAuth flow</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-1-1-released/#project-maintainers-can-bypass-groups-merge-request-approval-policy">Project maintainers can bypass group&rsquo;s merge request approval policy</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-1-1-released/#redos-via-custom-built-markdown-page">ReDoS via custom built markdown page</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-1-1-released/#private-job-artifacts-can-be-accessed-by-any-user">Private job artifacts can be accessed by any user</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-1-1-released/#security-fixes-for-banzai-pipeline">Security fixes for banzai pipeline</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-1-1-released/#redos-in-dependency-linker">ReDoS in dependency linker</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-1-1-released/#denial-of-service-using-a-crafted-openapi-file">Denial of service using a crafted OpenAPI file</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-1-1-released/#merge-request-title-disclosure">Merge request title disclosure</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-1-1-released/#access-issues-and-epics-without-having-an-sso-session">Access issues and epics without having an SSO session</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-1-1-released/#non-project-member-can-promote-key-results-to-objectives">Non project member can promote key results to objectives</a></td>
          <td>Low</td>
      </tr>
  </tbody>
</table>
<h3 id="run-pipelines-as-any-user">Run pipelines as any user</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting from 15.8 prior to 16.11.5, starting from 17.0 prior to 17.0.3, and starting from 17.1 prior to 17.1.1, which could allow an attacker to trigger a pipeline as another user under certain circumstances. This is a critical severity issue (CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:N, 9.6). It is now resolved in the latest release and is assigned CVE-2024-5655.</p>
<p>Thanks to <a href="https://hackerone.com/ahacker1">ahacker1</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<p>Breaking changes:</p>
<ol>
<li>This fix changes the MR re-targeting workflow so that a pipeline will not automatically run when a merge request is automatically re-targeted due to its previous target branch being merged. Users will need  to manually start a pipeline to have CI execute for their changes.</li>
<li>GraphQL authentication using CI_JOB_TOKEN is disabled by default from 17.0.0, and back ported to 17.0.3, 16.11.5 in the current patch release. If access to the GraphQL API is required, please configure one of the several supported token types for authentication.</li>
</ol>
<p>At this time, we have not found evidence of abuse of this vulnerability on the platforms managed by GitLab, including GitLab.com and GitLab Dedicated instances.</p>
<h3 id="stored-xss-injected-in-imported-projects-commit-notes">Stored XSS injected in imported project&rsquo;s commit notes</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting from 16.9 prior to 16.11.5, starting from 17.0 prior to 17.0.3, and starting from 17.1 prior to 17.1.1, where a stored XSS vulnerability could be imported from a project with malicious commit notes.
This is a high severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N</code>, 8.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-4901">CVE-2024-4901</a>.</p>
<p>Thanks <a href="https://hackerone.com/yvvdwf">yvvdwf</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="csrf-on-graphql-api-introspectionquery">CSRF on GraphQL API <code>IntrospectionQuery</code></h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions from 16.1.0 before 16.11.5, all versions starting from 17.0 before 17.0.3, all versions starting from 17.1.0 before 17.1.1 which allowed for a CSRF attack on GitLab&rsquo;s GraphQL API leading to the execution of arbitrary GraphQL mutations. This is a high severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:N</code>, 8.1). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-4994">CVE-2024-4994</a>.</p>
<p>Thanks <a href="https://hackerone.com/ahacker1">ahacker1</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="remove-search-results-from-public-projects-with-unauthorized-repos">Remove search results from public projects with unauthorized repos</h3>
<p>Improper authorization in global search in GitLab EE affecting all versions from 16.11 prior to 16.11.5 and 17.0 prior to 17.0.3 and 17.1 prior to 17.1.1 allows an attacker leak content of a private repository in a public project. This is a high severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N</code>, 7.5). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-6323">CVE-2024-6323</a>.</p>
<p>Thanks to GitLab Team Member, <a href="https://gitlab.com/joernchen">@joernchen</a> for reporting this issue.</p>
<h3 id="cross-window-forgery-in-user-application-oauth-flow">Cross window forgery in user application OAuth flow</h3>
<p>A Cross Window Forgery vulnerability exists within GitLab CE/EE affecting all versions from 16.3 prior to 16.11.5, 17.0 prior to 17.0.3, and 17.1 prior to 17.1.1. This condition allows for an attacker to abuse the OAuth authentication flow via a crafted payload. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:N</code>, 6.8). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-2177">CVE-2024-2177</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="project-maintainers-can-bypass-groups-merge-request-approval-policy">Project maintainers can bypass group&rsquo;s merge request approval policy</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting from 16.10 prior to 16.11.5, starting from 17.0 prior to 17.0.3, and starting from 17.1 prior to 17.1.1, which allows a project maintainer can delete the merge request approval policy via graphQL. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:N/I:H/A:N</code>, 6.8).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-5430">CVE-2024-5430</a>.</p>
<p>Thanks <a href="https://hackerone.com/js_noob">js_noob</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="redos-via-custom-built-markdown-page">ReDoS via custom built markdown page</h3>
<p>A Denial of Service (DoS) condition has been discovered in GitLab CE/EE affecting all versions from 7.10 prior before 16.11.5, version 17.0 before 17.0.3, and 17.1 before 17.1.1. It is possible for an attacker to cause a denial of service using a crafted markdown page. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code>, 6.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-4025">CVE-2024-4025</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="private-job-artifacts-can-be-accessed-by-any-user">Private job artifacts can be accessed by any user</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting from 16.7 prior to 16.11.5, starting from 17.0 prior to 17.0.3, and starting from 17.1 prior to 17.1.1, which allows private job artifacts can be accessed by any user. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N</code>, 6.5). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-3959">CVE-2024-3959</a>.</p>
<p>Thanks <a href="https://hackerone.com/js_noob">js_noob</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="security-fixes-for-banzai-pipeline">Security fixes for banzai pipeline</h3>
<p>Multiple Denial of Service (DoS) issues has been discovered in GitLab CE/EE affecting all versions starting from 1.0 prior to 16.11.5, starting from 17.0 prior to 17.0.3, and starting from 17.1 prior to 17.1.1 which allowed an attacker to cause resource exhaustion via banzai pipeline. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code>, 6.5). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-4557">CVE-2024-4557</a>.</p>
<p>Thanks <a href="https://hackerone.com">joaxcar</a> and <a href="https://hackerone.com/setiawan_">setiawan_</a> for reporting these vulnerability through our HackerOne bug bounty program</p>
<h3 id="redos-in-dependency-linker">ReDoS in dependency linker</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting from 9.2 prior to 16.11.5, starting from 17.0 prior to 17.0.3, and starting from 17.1 prior to 17.1.1, with the processing logic for generating link in dependency files can lead to a regular  expression DoS attack on the server. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code>, 6.5). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-1493">CVE-2024-1493</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="denial-of-service-using-a-crafted-openapi-file">Denial of service using a crafted OpenAPI file</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting from 12.0 prior to 16.11.5, starting from 17.0 prior to 17.0.3, and starting from 17.1 prior to 17.1.1, which allows for an attacker to cause a denial of service using a crafted OpenAPI file. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H</code>, 5.3). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-1816">CVE-2024-1816</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="merge-request-title-disclosure">Merge request title disclosure</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting from 16.9 prior to 16.11.5, starting from 17.0 prior to 17.0.3, and starting from 17.1 prior to 17.1.1, which allows merge request title to be visible publicly despite being set as project members only. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N</code>, 5.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-2191">CVE-2024-2191</a>.</p>
<p>Thanks <a href="https://hackerone.com/ashish_r_padelkar">ashish_r_padelkar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="access-issues-and-epics-without-having-an-sso-session">Access issues and epics without having an SSO session</h3>
<p>An issue was discovered in GitLab EE affecting all versions starting from 16.0 prior to 16.11.5, starting from 17.0 prior to 17.0.3, and starting from 17.1 prior to 17.1.1, which allows an attacker to access issues and epics without having an SSO session using Duo Chat. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code>, 4.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-3115">CVE-2024-3115</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="non-project-member-can-promote-key-results-to-objectives">Non project member can promote key results to objectives</h3>
<p>An issue was discovered in GitLab CE/EE affecting all versions starting from 16.1 prior to 16.11.5, starting from 17.0 prior to 17.0.3, and starting from 17.1 prior to 17.1.1, which allows non-project member to promote key results to objectives. This is a low severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:N</code>, 3.1). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-4011">CVE-2024-4011</a>.</p>
<p>Thanks <a href="https://hackerone.com/ashish_r_padelkar">ashish_r_padelkar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1711">17.1.1</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/156799">Prevent cng e2e test from running in security fork</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/157027">Only enumerate commits in pre-receive check if push came from Web</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/156968">Revert &ldquo;Allow <code>admin_runner</code> ability to change shared runners setting&rdquo;</a></li>
</ul>
<h3 id="1703">17.0.3</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/155704">Fix missing filename when downloading generic package in release page</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/156392">Update an expired test certificate</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/156424">Prevent starting multiple Capybara proxy servers</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/156482">Backport 3 commits for Merge Train pipelines support in 17-0-stable-ee</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/156635">Fix error when calling GQL ciConfig endpoint with include:component</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/155926">Only allow documented token types for GraphQL authentication</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/155242">Add a banner informing about token expiration</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/157026">Only enumerate commits in pre-receive check if push came from Web</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7705">Backport QA test fixes for stable branches</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7724">Merge branch &lsquo;sh-patch-inspec-gem&rsquo; into &lsquo;master&rsquo;</a></li>
</ul>
<h3 id="16115">16.11.5</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/156425">Prevent starting multiple Capybara proxy servers</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/156393">Update an expired test certificate</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/156746">Enable invert_emails_disabled_to_emails_enabled by default</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/155925">Only allow documented token types for GraphQL authentication</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/155265">Add a banner informing about token expiration</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7704">Backport QA test fixes for stable branches</a></li>
</ul>
<h3 id="16108">16.10.8</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/155266">Add a banner informing about token expiration</a></li>
</ul>
<h3 id="1699">16.9.9</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/155267">Add a banner informing about token expiration</a></li>
</ul>
<h3 id="1688">16.8.8</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/155268">Add a banner informing about token expiration</a></li>
</ul>
<h3 id="1678">16.7.8</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/155269">Add a banner informing about token expiration</a></li>
</ul>
<h3 id="1668">16.6.8</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/155270">Add a banner informing about token expiration</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<h2 id="were-combining-patch-and-security-releases">We’re combining patch and security releases</h2>
<p>This improvement in our release process matches the industry standard and will help GitLab users get information about security and
bug fixes sooner, <a href="https://about.gitlab.com/blog/were-combining-patch-and-security-releases/">read the blog post here</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab 17.1 released</title><link href="https://docs.gitlab.com/releases/17/17-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/17/17-1-released/</id><published>2024-06-20T00:00:00Z</published><updated>2024-06-20T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On June 20, 2024, GitLab 17.1 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong></strong>
</p>
<p>Everyone can <a href="https://gitlab.com/gitlab-org/developer-relations/contributor-success/team-task/-/issues/490">nominate GitLab&rsquo;s community contributors</a>!
Show your support for our active candidates or add a new nomination! 🙌</p>
<p>Shubham Kumar <a href="https://gitlab.com/dashboard/issues?sort=due_date_desc&amp;state=closed&amp;assignee_username%5B%5D=imskr&amp;milestone_title=17.1">completed 7 issues during 17.1</a>
and has been consistently contributing to GitLab since 2021.
He has now reached over 50 merged contributions!
Shubham is a <a href="https://contributors.gitlab.com/docs/previous-heroes">GitLab Hero</a> and a former Google Summer of Code contributor.</p>
<p>Shubham was nominated by <a href="https://gitlab.com/lohrc">Christina Lohr</a>, Senior Product Manager at GitLab.
&ldquo;Shubham has helped with a lot of issues over the past weeks and months, specifically with closing gaps in our API offering,&rdquo; says Christina.
&ldquo;I cannot write release posts fast enough for all the additions that Shubham is pushing through!&rdquo;</p>
<p>&ldquo;The open-source community is amazing,&rdquo; says Shubham.
&ldquo;I am grateful for the opportunity and recognition, and I look forward to continuing my contributions to the GitLab platform.&rdquo;</p>
<p>Joe Snyder was nominated by <a href="https://gitlab.com/phikai">Kai Armstrong</a>, Principal Product Manager at GitLab,
for building a much requested feature for <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/24733">restricting diffs from being included in emails</a>.
This contribution took more than 10 merge requests going back to GitLab 15.3.
&ldquo;This is a massive feature that&rsquo;s taken many milestones, complicated migrations, and changes to the product to enable it&rsquo;s support,&rdquo; says Kai.
&ldquo;Joe worked tirelessly with many maintainers and collaborators over the milestones to get this work done.&rdquo;</p>
<p><a href="https://gitlab.com/jocelynjane">Jocelyn Eillis</a>, Product Manager at GitLab, supported Joe&rsquo;s nomination
by highlighting additional work to fix a bug where <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/361438">nested variables in <code>build:resource_group</code> are not expanded</a>.
&ldquo;This bug had 23 upvotes in addition to documented customer demand in the issue itself,&rdquo; says Jocelyn.
&ldquo;The quick turnaround on reviewer feedback means we were able to get this into GitLab 17.1!&rdquo;</p>
<p>This is Joe&rsquo;s second GitLab MVP after previously being awarded in <a href="https://about.gitlab.com/releases/2023/11/16/gitlab-16-6-released/#mvp">GitLab 16.6</a>.
Joe is a Senior R&amp;D Engineer at <a href="https://www.kitware.com/">Kitware</a> and has been contributing to GitLab since 2021.</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>Model registry available in beta</strong>
    <p><p>GitLab now officially supports model registry in beta as a first-class concept. You can add and edit models directly via the UI, or use the MLflow integration to use GitLab as a model registry backend.</p>
<p>A model registry is a hub that helps data science teams manage machine learning models and their related metadata. It serves as a centralized location for organizations to store, version, document, and discover trained machine learning models. It ensures better collaboration, reproducibility, and governance over the entire model lifecycle.</p>
<p>We think of the model registry as a cornerstone concept that enables teams to collaborate, deploy, monitor, and continuously train models, and are very interested in your feedback. Please feel free to drop us a note in our <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/465405">feedback issue</a> and we&rsquo;ll get back in touch!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/ml/model_registry/">View Documentation</a></p>
  </li>
  <li>
    <strong>See multiple GitLab Duo Code Suggestions in VS Code</strong>
    <p>GitLab Duo Code Suggestions in VS Code will now show you if there are multiple suggestions available. Simply hover over the suggestion and use the arrows or keyboard shortcut to cycle through the suggestions.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/repository/code_suggestions/supported_extensions.html#view-multiple-code-suggestions">View Documentation</a></p>
  </li>
  <li>
    <strong>Secret Push Protection available in beta</strong>
    <p><p>If a secret, like a key or an API token, is accidentally committed to a Git repository, anyone with repository access can impersonate the user of the secret for malicious purposes. To address this risk, most organizations require exposed secrets to be revoked and replaced, but you can save remediation time and reduce risk by preventing secrets from being pushed in the first place.</p>
<p>Secret push protection checks the content of each commit pushed to GitLab. <a href="https://docs.gitlab.com/ee/user/application_security/secret_detection/secret_push_protection/detected_secrets.html">If any secrets are detected</a>, the push is blocked and displays information about the commit, including:</p>
<ul>
<li>The commit ID that contains the secret.</li>
<li>The filename and line number that contains the secret.</li>
<li>The type of secret.</li>
</ul>
<p>Need to bypass secret push protection for testing? When you skip secret push detection, GitLab logs an audit event so you can investigate.</p>
<p>Secret push protection is available on GitLab.com and for Dedicated customers as a <a href="https://docs.gitlab.com/ee/policy/experiment-beta-support.html#beta">Beta</a> feature and can be enabled on a <a href="https://docs.gitlab.com/ee/user/application_security/secret_detection/secret_push_protection/index.html#enable-secret-push-protection-in-a-project">per project basis</a>. You can help us improve secret push protection by providing feedback in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/467408">issue 467408</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/secret_detection/secret_push_protection">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner Autoscaler is generally available</strong>
    <p><p>In earlier versions of GitLab, some customers needed an autoscaling solution for GitLab Runner on virtual machine instances on public cloud platforms. These customers had to rely on the legacy <a href="https://docs.gitlab.com/runner/configuration/autoscale.html">Docker Machine executor</a> or custom solutions stitched together by using cloud provider technologies.</p>
<p>Today, we&rsquo;re pleased to announce the general availability of the GitLab Runner Autoscaler. The GitLab Runner Autoscaler is composed of GitLab-developed taskscaler and <a href="https://docs.gitlab.com/runner/fleet_scaling/fleeting.html">fleeting</a> technologies and the cloud provider plugin for Google Compute Engine.</p>
</p>
    <p><a href="https://docs.gitlab.com/runner/runner_autoscale/">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab connector application now available on the Snowflake Marketplace</strong>
    <p><p>Audit events are created and stored in GitLab. Before this release, audit events could only be accessed from in GitLab, with results reviewed using the GitLab UI or set a streaming destination to receive all audit events as structured JSON.</p>
<p>However, customers also wanted the ability to have audit events in third-party destinations (such as SIEM solutions like Snowflake) to make it easier to:</p>
<ul>
<li>See, combine, manipulate, and report on all of the audit event data from an organization&rsquo;s multiple systems, including GitLab.</li>
<li>Look only at specific audit events that they care about so that they can quickly answer the questions they are interested in.</li>
<li>Have a full picture of what goes on inside GitLab, and be able to review it after the fact.</li>
</ul>
<p>To help customers with these tasks, we have created a GitLab connector application for the <a href="https://app.snowflake.com/marketplace/listing/GZTYZXESENG/gitlab-gitlab-data-connector">Snowflake Marketplace</a>, which uses the Audit events API.
To make use of this functionality, customers must deploy and manage the application using the Snowflake Marketplace.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/integration/snowflake.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved wiki user experience</strong>
    <p><p>The wiki feature in GitLab 17.1 provides a more unified and efficient workflow:</p>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/281830">Easier and quicker cloning</a> with a new repository clone button. This improves collaboration, and speeds up access to the wiki content for editing or viewing.</li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/335169">A more obvious delete option</a> in a more discoverable location. This reduces the time spent searching for it, and minimizes potential errors or confusion when managing wiki pages.</li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/221061">Allowing empty pages to be valid</a>, improving flexibility. Create empty placeholders when you need them. Focus on better planning and organization of wiki content, and fill in the empty pages later.</li>
</ul>
<p>These enhancements improve ease of use, discoverability, and content management in your wiki&rsquo;s workflow. We want your wiki experience to be efficient and user-friendly. By making cloning repositories more accessible, relocating key options for better visibility, and allowing for the creation of empty placeholders, we&rsquo;re refining our platform to better meet your users&rsquo; needs.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/wiki/">View Documentation</a></p>
  </li>
  <li>
    <strong>New Value Stream Management report generator tool</strong>
    <p><p>With the addition of the new Reports Generation Tool for Value Stream Management, we empower decision-makers to be more efficient and effective in the software development life cycle (SDLC) optimization.</p>
<p>You can now schedule <a href="https://gitlab.com/components/vsd-reports-generator#example-for-monthly-executive-value-streams-report">DevSecOps comparison metrics reports</a> or the <a href="https://about.gitlab.com/releases/2024/05/16/gitlab-17-0-released/#ai-impact-analytics-in-the-value-streams-dashboard">AI Impact analytics</a> report to be delivered automatically, proactively, and with relevant information in GitLab issues. With scheduled reports, managers can focus on analyzing insights and making informed decisions, rather than spending time manually searching for the right dashboard with the required data.</p>
<p>You can access the scheduled reports tool using the <a href="https://gitlab.com/explore/catalog">CI/CD Catalog</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/analytics/value_streams_dashboard.html#schedule-value-streams-dashboard-reports">View Documentation</a></p>
  </li>
  <li>
    <strong>Container images linked to signatures</strong>
    <p><p>The GitLab container registry now associates signed container images with their signatures. With this improvement, users can more easily:</p>
<ul>
<li>Identify which images are signed and which are not.</li>
<li>Find and validate the signatures that are associated with a container image.</li>
</ul>
<p>This improvement is generally available only on GitLab.com. Self-managed support is in beta and requires users to enable the
<a href="https://docs.gitlab.com/ee/administration/packages/container_registry_metadata_database.html">next-generation container registry</a>, which is also in beta.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/packages/container_registry/#container-image-signatures">View Documentation</a></p>
  </li>
  <li>
    <strong>Require confirmation for manual jobs</strong>
    <p><p>Manual jobs can be used to trigger highly critical operations in your CI pipeline, such as deploying to production. With this release, you can now configure a manual job to require confirmation before it runs. Use <code>manual_confirmation</code> with <code>when: manual</code> to display a confirmation dialog in the UI when a job is run manually. Requiring confirmation for manual jobs provides an additional layer of security and control.</p>
<p>Special thanks to <a href="https://gitlab.com/lifez">Phawin</a> for this community contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/jobs/job_control.html#add-a-confirmation-dialog-for-manual-jobs">View Documentation</a></p>
  </li>
  <li>
    <strong>Runner fleet dashboard for groups</strong>
    <p><p>Operators of self-managed runner fleets at the group level need observability and the ability to quickly answer critical questions about their runner fleet infrastructure at a glance. With the runner fleet dashboard for groups, you directly have runner fleet observability and actionable insights in the GitLab UI. You can now quickly determine the runner health, and gain insights into runner usage metrics as well as CI/CD job queue service capabilities, in your organization&rsquo;s target service-level objectives.</p>
<p>Customers on GitLab.com can use all of the fleet dashboard metrics available for groups today. Self-managed customers can use most of the fleet dashboard metrics, but must configure the ClickHouse analytics database to use the <strong>Runner usage</strong> and <strong>Wait time to pick a job</strong> metrics.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/runners/runner_fleet_dashboard_groups.html">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Scale and Deployments</h4>
<ul>
  <li>
    <strong>Omnibus improvements</strong>
    <p>Gitlab 17.1 includes packages for supporting <a href="https://docs.gitlab.com/ee/administration/package_information/supported_os.html">Ubuntu Noble 24.04</a>.</p>
    <p><a href="https://docs.gitlab.com/omnibus/">View Documentation</a></p>
  </li>
  <li>
    <strong>New GraphQL API argument `markedForDeletionOn` for groups and projects</strong>
    <p><p>You can now use the new GraphQL API argument <code>markedForDeletionOn</code> to list the groups or projects that were marked for deletion at a specific date.</p>
<p>Thank you <a href="https://gitlab.com/imskr">@imskr</a> for this community contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/api/graphql/reference/index.html#querygroups">View Documentation</a></p>
  </li>
  <li>
    <strong>New placeholders for group and project badges</strong>
    <p><p>You can now create badge links and image URLs using four new placeholders:</p>
<ul>
<li><code>%{project_namespace}</code> - referencing the full path of a project namespace</li>
<li><code>%{group_name}</code> - referencing the group name</li>
<li><code>%{gitlab_server}</code> - referencing the group&rsquo;s or project&rsquo;s server name</li>
<li><code>%{gitlab_pages_domain}</code> - referencing the group&rsquo;s or project&rsquo;s domain name</li>
</ul>
<p>Thank you <a href="https://gitlab.com/TamsilAmani">@TamsilAmani</a> for this community contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/badges.html#placeholders">View Documentation</a></p>
  </li>
  <li>
    <strong>New `%{latest_tag}` placeholder for badges</strong>
    <p><p>You can now create badge links and image URLs using a <code>%{latest_tag}</code> placeholder. This placeholder references the latest tag that was published for a repository.</p>
<p>Thank you <a href="https://gitlab.com/TamsilAmani">@TamsilAmani</a> for this community contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/badges.html#placeholders">View Documentation</a></p>
  </li>
  <li>
    <strong>Filter groups by `marked_for_deletion_on` date with the Groups API</strong>
    <p><p>You can now filter responses in the Groups API using the attribute <code>marked_for_deletion_on</code>, which returns groups that were marked for deletion at a specific date.</p>
<p>Thank you <a href="https://gitlab.com/imskr">@imskr</a> for this community contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/api/groups.html#list-groups">View Documentation</a></p>
  </li>
  <li>
    <strong>List contributed projects of a user with GraphQL API</strong>
    <p><p>You can now use the new GraphQL API field <code>User.contributedProjects</code> to list the projects a user has contributed to.</p>
<p>Thank you <a href="https://gitlab.com/yasuk">@yasuk</a> for this community contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/api/graphql/reference/index.html#usercontributedprojects">View Documentation</a></p>
  </li>
  <li>
    <strong>Add members by username with the Members API</strong>
    <p><p>Previously, when using the Members API, you could add members to groups and projects only by their user ID. With this release, you can now add members also by their username.</p>
<p>Thank you <a href="https://gitlab.com/imskr">@imskr</a> for this community contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/api/members.html#add-a-member-to-a-group-or-project">View Documentation</a></p>
  </li>
  <li>
    <strong>Updated sorting and filtering functionality in Explore</strong>
    <p><p>We have updated the sorting and filtering functionality of the group and project Explore pages. The filtering bar is now wider for better readability.</p>
<p>In the Explore page for projects, you can now use standardized sorting options that include <strong>Name</strong>, <strong>Created date</strong>, <strong>Updated date</strong>, and <strong>Stars</strong>, and a navigation element to sort in ascending or descending order. The language filter has moved to the filter menu. A new <strong>Inactive</strong> tab displays archived projects for a more focused search. Additionally, you can use a <strong>Role</strong> filter to search for projects you are the Owner of.</p>
<p>In the Explore page for groups, we have standardized the sorting options to include <strong>Name</strong>, <strong>Created date</strong>, and <strong>Updated date</strong>, and added a navigation element to sort in ascending or descending order.</p>
<p>We welcome feedback about these changes in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/438322">issue 438322</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/working_with_projects.html#search-in-projects">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved visibility level selection</strong>
    <p><p>Previously, a group&rsquo;s or project&rsquo;s general settings displayed only permitted visibility levels. This view often confused users who tried to understand why the other options were not available, and could lead to information being displayed incorrectly. The new view shows all visibility levels, greying out the options that are not available for selection. In addition, a popover gives further context about why an option is not available. For example, a visibility level could be unavailable because an administrator restricted it, or it would cause a conflict with a project&rsquo;s or parent group&rsquo;s visibility setting.</p>
<p>We hope these changes help you resolve the conflicts in selecting your desired visibility option. Thank you <a href="https://gitlab.com/gerardo-navarro">@gerardo-navarro</a> for this community contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/public_access.html#change-group-visibility">View Documentation</a></p>
  </li>
  <li>
    <strong>Filter projects by `marked_for_deletion_on` date with the Projects API</strong>
    <p><p>You can now filter responses in the Projects API using the attribute <code>marked_for_deletion_on</code>, which returns projects that were marked for deletion at a specific date.</p>
<p>Thank you <a href="https://gitlab.com/imskr">@imskr</a> for this community contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/api/projects.html#list-all-projects">View Documentation</a></p>
  </li>
  <li>
    <strong>Audit event on webhook creation</strong>
    <p><p>Audit events make a record of important actions that are performed in GitLab. Until now, no audit event was created when a system, group, or
project webhook was added by a user.</p>
<p>In this release, we&rsquo;ve added an audit event for when a user creates a system, group, or project webhook.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/compliance/audit_event_types.html#webhooks">View Documentation</a></p>
  </li>
  <li>
    <strong>Use REST API to cancel a running direct transfer migration</strong>
    <p><p>Until now cancelling a running direct transfer migration
<a href="https://docs.gitlab.com/ee/user/group/import/direct_transfer_migrations.html#cancel-a-running-import">required access to a Rails console</a>.</p>
<p>In this release, we&rsquo;ve added the ability for Administrators to cancel a migration by using the REST API.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/api/bulk_imports.html#cancel-a-migration">View Documentation</a></p>
  </li>
  <li>
    <strong>Test group hooks with the REST API</strong>
    <p><p>Previously, you could test only project hooks with the REST API. With this release, you can also trigger test hooks for specified groups.</p>
<p>This endpoint has a special rate limit of three requests per minute per group hook. To disable this limit on self-managed GitLab and GitLab Dedicated, an administrator can disable the <code>web_hook_test_api_endpoint_rate_limit</code> feature flag.</p>
<p>Thanks to <a href="https://gitlab.com/lifez">Phawin</a> for <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/150486">this community contribution</a>!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/api/groups.html#trigger-a-test-group-hook">View Documentation</a></p>
  </li>
  <li>
    <strong>Re-import a chosen project relation by using the API</strong>
    <p><p>When importing projects from export files with many items of the same type (for example, merge requests or pipelines), sometimes some of those items aren&rsquo;t imported.</p>
<p>In this release, we&rsquo;ve added an API endpoint that re-imports a named relation, skipping items that have already been imported. The API requires both:</p>
<ul>
<li>A project export archive.</li>
<li>A type. Either issues, merge requests, pipelines, or milestones.</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/ee/api/project_import_export#import-a-single-relation">View Documentation</a></p>
  </li>
  <li>
    <strong>Keep inherited membership structure when importing by direct transfer</strong>
    <p><p>Until now, <a href="https://docs.gitlab.com/ee/user/project/members/#inherited-membership">inherited memberships</a> were not imported reliably when migrating
by direct transfer. This meant that inherited members of projects were imported as direct members.</p>
<p>From this release, GitLab now first migrates group membership before migrating project memberships. This replicates the inherited memberships on
the source GitLab instance.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/import/#memberships">View Documentation</a></p>
  </li>
  <li>
    <strong>Use the REST API to set custom webhook headers</strong>
    <p><p>In GitLab 16.11, we introduced the ability to
<a href="https://about.gitlab.com/releases/2024/04/18/gitlab-16-11-released/#custom-webhook-headers">add custom headers when you create or edit a webhook</a>.</p>
<p>With this release, you can now use the GitLab REST API to set custom webhook headers.</p>
<p>Thanks to <a href="https://gitlab.com/Taucher2003">Niklas</a> for <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/153768">this community contribution</a>!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/api/projects.html#set-a-custom-header">View Documentation</a></p>
  </li>
  <li>
    <strong>Backups include external merge request diffs stored on disk</strong>
    <p><p>The <code>gitlab-backup</code> tool now supports backing up <a href="https://docs.gitlab.com/ee/administration/merge_request_diffs.html">external merge request diffs</a> stored on local disk. Note, the <code>gitlab-backup</code> tool does not backup files stored on object storage. Therefore, if external merge diffs are stored on object storage they will need to be backed up manually.</p>
<p>The <code>backup-utility</code> for Cloud Native Hybrid environments already supported backing up external merge request diffs and this functionality remains unchanged.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/backup_restore/backup_gitlab.html#command-line-interface">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>Disable diff previews in code review emails</strong>
    <p><p>When you review code in a merge request and comment on a line of code, GitLab includes a few lines of the diff in the email notification to participants. Some organizational policies treat email as a less secure system, or might not control their own infrastructure for email. This can present risks to IP or access control of source code.</p>
<p>New settings are available in groups and projects to enable organizations to remove diff previews from merge request emails. This can help ensure that sensitive information isn&rsquo;t available outside of GitLab.</p>
<p>A gigantic thank you to <a href="https://gitlab.com/joe-snyder">Joe Snyder</a> for contributing this!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/manage#disable-diff-previews-in-email-notifications">View Documentation</a></p>
  </li>
  <li>
    <strong>Administrators can search users by partial email address</strong>
    <p><p>Administrators can now search users by partial email address in the User overview of the Admin Area. For instance, you can filter users by a specific email domain to find all users from a distinct institution. This feature is limited to administrators to prevent unprivileged users from accessing email addresses of other accounts.</p>
<p>Thanks <a href="https://gitlab.com/zzaakiirr">@zzaakiirr</a> for this community contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/admin_area.html#administering-users">View Documentation</a></p>
  </li>
  <li>
    <strong>Show Release RSS icon on Releases page</strong>
    <p><p>Do you need to be notified when a new release is posted? GitLab now provides an RSS feed for releases. You can subscribe to a release feed with the RSS icon on the project release page.</p>
<p>Thanks to <a href="https://gitlab.com/schurzi">Martin Schurz</a> for the contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/releases/#track-releases-with-an-rss-feed">View Documentation</a></p>
  </li>
  <li>
    <strong>New permissions for custom roles</strong>
    <p><p>In GitLab 17.1, you can create custom roles with the following new permissions:</p>
<ul>
<li><a href="https://docs.gitlab.com/ee/user/custom_roles/abilities.html#code-review-workflow">Manage merge request settings</a></li>
<li><a href="https://docs.gitlab.com/ee/user/custom_roles/abilities.html#integrations">Manage integrations</a></li>
<li><a href="https://docs.gitlab.com/ee/user/custom_roles/abilities.html#continuous-delivery">Manage deploy tokens</a></li>
<li><a href="https://docs.gitlab.com/ee/user/custom_roles/abilities.html#team-planning">Read CRM Contacts</a></li>
</ul>
<p>With custom roles, you can reduce the number of users with the Owner role by creating users with equivalent permissions. This helps you define roles that are tailored specifically to the needs of your group, and prevents unnecessary privilege escalation.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/custom_roles.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Merge request approval policies fail open/closed (Policy editor)</strong>
    <p><p>Building on the previous <a href="https://gitlab.com/groups/gitlab-org/-/epics/10816">iteration</a>, we are introducing a new option within the policy editor allowing users to toggle security policies to fail open or fail closed. This enhancement extends the YAML support to allow for simpler configuration within the policy editor view.</p>
<p>For example, a merge request policy configured to fail open allows a merge request to merge if there is not enough evidence to evaluate the criteria. The lack of evidence might be because an analyzer is not enabled for the project, or the analyzer failed to produce results for the policy to evaluate. This approach allows for progressive rollout of policies as teams work to ensure proper scan execution and enforcement.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/policies/scan-result-policies.html#fallback_behavior">View Documentation</a></p>
  </li>
  <li>
    <strong>Project Owners receive expiring access token notifications</strong>
    <p><p>Both project Owners and Maintainers with direct membership now receive email notifications when their project access tokens are close to expiring. Previously, only project Maintainers received this notification. This helps keep more people informed about upcoming token expiration.</p>
<p>Thank you <a href="https://gitlab.com/arcesium-henner">Jacob Henner</a> for your contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/security/token_overview.html#project-access-tokens">View Documentation</a></p>
  </li>
  <li>
    <strong>Downscale pasted images on image upload</strong>
    <p>GitLab 17.1 enhances the handling of high-resolution images, enabling them to be downscaled during upload. Previously, images displayed in their original size, resulting in suboptimal display quality. This improvement ensures large images don&rsquo;t break the visual flow of the pages they are included in.</p>
    <p><a href="https://docs.gitlab.com/ee/user/markdown.html#change-the-image-or-video-dimensions">View Documentation</a></p>
  </li>
  <li>
    <strong>Draggable media in the rich text editor</strong>
    <p>Previously, moving media in the rich text editor required you to copy and paste each item manually. This often slowed down the inclusion of media in issues, epics, and wikis. In GitLab 17.1, you can now drag and drop media in the rich text editor, significantly enhancing efficiency during editing.</p>
    <p><a href="https://docs.gitlab.com/ee/user/rich_text_editor.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Pages support for mutual TLS in GitLab API calls</strong>
    <p><p>GitLab can be configured to <a href="https://docs.gitlab.com/omnibus/settings/ssl/#enable-2-way-ssl-client-authentication">enforce client authentication with SSL certificates</a>. However, the GitLab Pages service was incompatible with that feature, because it couldn&rsquo;t be configured to use client certificates, and calls to the internal API were rejected.</p>
<p>From GitLab 17.1, you can configure a client certificate for GitLab Pages. This allows you to enable client authentication with the GitLab API, strengthening the security of your GitLab instance.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/pages/#support-mutual-tls-when-calling-the-gitlab-api">View Documentation</a></p>
  </li>
  <li>
    <strong>Redirect wiki pages to new URL when renamed</strong>
    <p>GitLab 17.1 introduces a significant enhancement to wiki page redirects. When you rename a wiki page, anyone trying to access the old page is automatically redirected to the new page, ensuring all existing links remain functional. This improvement streamlines the workflow for managing page name changes and enhances the overall knowledge management experience.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/wiki/">View Documentation</a></p>
  </li>
  <li>
    <strong>Updated Pages UI</strong>
    <p>In GitLab 17.1 we&rsquo;ve improved the Pages user interface. Improvements include more efficient use of screen space. These UI improvements are focused on improving user experience and efficiency when managing Pages.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/pages/">View Documentation</a></p>
  </li>
  <li>
    <strong>Display the last published date for container images</strong>
    <p><p>Previously, the published timestamp was often incorrect in the container registry user interface. This meant that you couldn&rsquo;t rely on this important data to find and validate your container images.</p>
<p>In GitLab 17.1, we&rsquo;ve updated the UI to include accurate <code>last_published_at</code> timestamps. You can find this information by navigating to <strong>Deploy &gt; Container Registry</strong> and selecting a tag to view more details. The last published date is available at the top of the page.</p>
<p>This improvement is generally available only on GitLab.com. Self-managed support is in beta and available only on instances that have enabled the beta <a href="https://docs.gitlab.com/ee/administration/packages/container_registry_metadata_database.html">next-generation container registry</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/packages/container_registry/#view-the-container-registry">View Documentation</a></p>
  </li>
  <li>
    <strong>Sort container registry tags by publish date</strong>
    <p><p>You use the GitLab container registry to view, push, and pull Docker or OCI images alongside your source code as well as pipelines. After a container image has been built, you often need to find and validate that it has been built correctly. For many customers, finding the correct container image using the user interface can be challenging.</p>
<p>You can now sort the container registry tags list by publish date. You can use this feature to quickly find and validate the most recently published container image.</p>
<p>This improvement is generally available only on GitLab.com. Self-managed support is in Beta because it requires the next-generation container registry, which is also in Beta. To learn more, see the <a href="https://docs.gitlab.com/ee/administration/packages/container_registry_metadata_database.html">container registry metadata database documentation</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/packages/container_registry/#view-the-container-registry">View Documentation</a></p>
  </li>
  <li>
    <strong>Real-time board updates for a smoother workflow</strong>
    <p>You&rsquo;ll now notice a smoother experience when updating issues on <a href="https://docs.gitlab.com/ee/user/project/issue_board.html">boards</a>! Changes you make in the sidebar will instantly appear on the board itself, no more refreshing required. This reactive boards experience streamlines your workflow, allowing you to quickly make updates while seeing them reflected in real-time.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/issue_board.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Track time on tasks</strong>
    <p>With this release, you can now set time estimates and record time spent on tasks with a <a href="https://docs.gitlab.com/ee/user/project/quick_actions.html">quick action</a> or in the time tracking widget in the task&rsquo;s sidebar. Time spent on a task can be viewed with the task&rsquo;s time tracking report.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/time_tracking.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Understand an epic&#39;s progress percentage</strong>
    <p>You can now easily see the overall progress of an epic based on the weight completion of its child items. This new progress rollup in the hierarchy widget makes it easier to understand the full scope of work for an epic and track progress as you go.</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/epics/manage_epics.html#view-epic-progress">View Documentation</a></p>
  </li>
  <li>
    <strong>API Security Testing analyzer updates</strong>
    <p><p>GitLab 17.1 adds the following configuration variables for API Security Testing:</p>
<ol>
<li><code>APISEC_SUCCESS_STATUS_CODES</code> creates a comma-separated list of HTTP success status codes that define whether an API security testing scanning job has passed.</li>
<li><code>APISEC_TARGET_CHECK_DISABLED</code> disables waiting for the target API to become available before scanning begins.</li>
<li><code>APISEC_TARGET_CHECK_STATUS_CODE</code> specifies the expected status code for the API target availability check. If not provided, any non-500 status code is acceptable to the scanner.</li>
</ol>
<p>These new variables provide greater customization and flexibility to ensure scans run successfully.</p>
<p>DAST API was renamed API Security Testing in 16.10. Variable names now begin with the prefix <code>APISEC</code>. Previously, they began with <code>DAST_API</code>. Variables prefixed with <code>DAST_API</code> will be supported until 18.0 (May 2025). To ensure your configurations work as expected, you should update your variable names as soon as possible.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/api_security_testing/configuration/variables.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Container Scanning for Registry</strong>
    <p><p>GitLab Composition Analysis now supports Container Scanning for Registry.</p>
<p>If Container Scanning for Registry has been enabled on a project, and a container image is pushed to the container registry in your project, GitLab checks its tag and scan limit.</p>
<p>If the tag is <code>latest</code>, and the number of scans is under the limit (50 scans/day), then GitLab creates a new pipeline that runs a <code>container_scanning</code> job on the image. The pipeline is associated with the user who pushed the image to the registry.</p>
<p>The scan job generates a CycloneDX SBOM that is uploaded to GitLab. The Continuous Vulnerability Scanning features are activated and scan the packages detected in the SBOM.</p>
<p>Note: a vulnerability scan is only perfomed when a new advisory is published. This occurs when the <a href="https://docs.gitlab.com/ee/administration/settings/security_and_compliance.html">package metadata is synchronized</a>.</p>
<p>As always, we appreciate feedback on our newly released features. To provide feedback, please comment on this <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/466117">feedback issue</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/container_scanning/">View Documentation</a></p>
  </li>
  <li>
    <strong>Fuzz Testing analyzer updates</strong>
    <p><p>GitLab 17.1 adds the following configuration variables for Fuzz Testing:</p>
<ol>
<li><code>FUZZAPI_SUCCESS_STATUS_CODES</code> creates a comma-separated list of HTTP success status codes that define whether a Fuzz Testing job has passed.</li>
<li><code>FUZZAPI_TARGET_CHECK_SKIP</code> disables waiting for the target API to become available before scanning begins.</li>
<li><code>FUZZAPI_TARGET_CHECK_STATUS_CODE</code> specifies the expected status code for the API target availability check. If not provided, any non-500 status code is acceptable to the scanner.</li>
</ol>
<p>These new variables provide greater customization and flexibility for ensuring scans run.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/api_fuzzing/configuration/variables.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Enhanced control over who can override user-defined variables</strong>
    <p>To better control who can override user-defined variables, we are introducing the <code>ci_pipeline_variables_minimum_role</code> project setting. This new setting provides greater flexibility than the existing <a href="https://docs.gitlab.com/ee/ci/variables/#restrict-who-can-override-variables"><code>restrict_user_defined_variables</code></a> setting. You can now restrict override permissions to no users, or only users with at least the Developer, Maintainer, or Owner roles.</p>
    <p><a href="https://docs.gitlab.com/ee/ci/variables/#restrict-who-can-override-variables-by-user-minimum-role">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner 17.1 released</strong>
    <p><p>Today we&rsquo;re releasing GitLab Runner 17.1! GitLab Runner is the lightweight, highly scalable agent that runs your CI/CD jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.</p>
<h4 id="whats-new">What&rsquo;s new:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/29221">GitLab Runner fleeting plugin for GCP Compute Engine</a></li>
</ul>
<h4 id="bug-fixes">Bug Fixes:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/37689">Runner helper images missing the entry point</a></li>
</ul>
<p>The list of all changes is in the GitLab Runner <a href="https://gitlab.com/gitlab-org/gitlab-runner/blob/17-1-stable/CHANGELOG.md">change log</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/runner">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab Patch Release: 17.0.2, 16.11.4, 16.10.7</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-0-2-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-0-2-released/</id><published>2024-06-12T00:00:00Z</published><updated>2024-06-12T00:00:00Z</updated><author><name>Greg Myers</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On June 12, 2024, we released versions 17.0.2, 16.11.4, 16.10.7 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version.</p>
<p>GitLab releases fixes for vulnerabilities in dedicated patch releases. There are two types of patch releases:
scheduled releases, and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, you can visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are dedicated to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-0-2-released/#redos-in-gomod-dependency-linker">ReDoS in gomod dependency linker</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-0-2-released/#redos-in-ci-interpolation-fix-bypass">ReDoS in CI interpolation (fix bypass)</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-0-2-released/#redos-in-asana-integration-issue-mapping-when-webhook-is-called">ReDoS in Asana integration issue mapping when webhook is called</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-0-2-released/#xss-and-content-injection-when-viewing-raw-xhtml-files-on-ios-devices">XSS and content injection when viewing raw XHTML files on IOS devices</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-0-2-released/#missing-agentk-request-validation-could-cause-kas-to-panic">Missing agentk request validation could cause KAS to panic</a></td>
          <td>Low</td>
      </tr>
  </tbody>
</table>
<h3 id="redos-in-gomod-dependency-linker">ReDoS in gomod dependency linker</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 13.1 prior to 16.10.7, starting from 16.11 prior to 16.11.4, and starting from 17.0 prior to 17.0.2. It was possible for an attacker to cause a denial of service using maliciously crafted file.
This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code>, 6.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-1495">CVE-2024-1495</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="redos-in-ci-interpolation-fix-bypass">ReDoS in CI interpolation (fix bypass)</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions prior to 16.10.7, starting from 16.11 prior to 16.11.4, and starting from 17.0 prior to 17.0.2. A vulnerability in GitLab&rsquo;s CI/CD pipeline editor could allow for denial of service attacks through maliciously crafted configuration files.
This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code>, 6.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-1736">CVE-2024-1736</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="redos-in-asana-integration-issue-mapping-when-webhook-is-called">ReDoS in Asana integration issue mapping when webhook is called</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 8.4 prior to 16.10.7, starting from 16.11 prior to 16.11.4, and starting from 17.0 prior to 17.0.2. A vulnerability in GitLab&rsquo;s Asana integration allowed an attacker to potentially cause a regular expression denial of service by sending specially crafted requests.
This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code>, 6.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-1963">CVE-2024-1963</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="xss-and-content-injection-when-viewing-raw-xhtml-files-on-ios-devices">XSS and content injection when viewing raw XHTML files on iOS devices</h3>
<p>A cross-site scripting issue has been discovered in GitLab affecting all versions starting from 5.1 before 16.10.7, all versions starting from 16.11 before 16.11.4, all versions starting from 17.0 before 17.0.2. When viewing an XML file in a repository in raw mode, it can be made to render as HTML if viewed under specific circumstances.
This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:N</code>, 4.4).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-4201">CVE-2024-4201</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="missing-agentk-request-validation-could-cause-kas-to-panic">Missing agentk request validation could cause KAS to panic</h3>
<p>DoS in KAS in GitLab CE/EE affecting all versions from 16.10.0 prior to 16.10.6 and 16.11.0 prior to 16.11.3 allows an attacker to crash KAS via crafted gRPC requests.
This is a low severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:L</code>, 3.1).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-5469">CVE-2024-5469</a>.</p>
<p>This vulnerability has been discovered internally by the Environments team.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1702">17.0.2</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/6996">Makefile: update Git versions (v17.0 backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/154018">Update VERSION files</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/154019">Docs: Backport Dedicated AI updates</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/154505">Fix failing specs in 17-0-stable-ee</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/154624">Include headers in LfsDownloadObject</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/155385">[17.0] Deprecate support for Ubuntu 18.04</a></li>
</ul>
<h3 id="16114">16.11.4</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/6997">Makefile: update Git versions (v16.11 backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/153752">Backport &lsquo;run-release-environment-for-tag-commits&rsquo; into 16.11</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/154041">Dedicated AI updates</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/153833">Speed up as-if-foss Rubocop</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/154370">Inclusion of headers in LfsDownloadObject for GitHub imports</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/154504">Fix failing specs on 16-11-stable</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/154838">Stop orphaning pages deployments on Geo secondaries on 16.11</a></li>
</ul>
<h3 id="16107">16.10.7</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/6998">Makefile: update Git versions (v16.10 backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/153753">Backport &lsquo;run-release-environment-for-tag-commits&rsquo; into 16.10</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/154503">Fix failing specs on 16-10-stable-ee</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/154837">Stop orphaning pages deployments on Geo secondaries on 16.10</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<h2 id="were-combining-patch-and-security-releases">We’re combining patch and security releases</h2>
<p>This improvement in our release process matches the industry standard and will help GitLab users get information about security and
bug fixes sooner, <a href="https://about.gitlab.com/blog/were-combining-patch-and-security-releases/">read the blog post here</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 17.0.1, 16.11.3, 16.10.6</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-0-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-0-1-released/</id><published>2024-05-22T00:00:00Z</published><updated>2024-05-22T00:00:00Z</updated><author><name>Greg Alfaro</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On May 22, 2024, we released versions 17.0.1, 16.11.3, and 16.10.6 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version.</p>
<p>GitLab releases fixes for vulnerabilities in dedicated patch releases. There are two types of patch releases:
scheduled releases, and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, you can visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are dedicated to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-0-1-released/#1-click-account-takeover-via-xss-leveraging-the-vs-code-editor-web-ide">1-click account takeover via XSS leveraging the VS code editor (Web IDE)</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-0-1-released/#a-dos-vulnerability-in-the-description-field-of-the-runner">A DOS vulnerability in the &lsquo;description&rsquo; field of the runner</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-0-1-released/#csrf-via-k8s-cluster-integration">CSRF via K8s cluster-integration</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-0-1-released/#using-set-pipeline-status-of-a-commit-api-incorrectly-create-a-new-pipeline-when-sha-and-pipeline_id-did-not-match">Using Set Pipeline Status of a Commit API incorrectly create a new pipeline when SHA and pipeline_id did not match</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-0-1-released/#redos-on-wiki-render-apipage">Redos on wiki render API/Page</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-0-1-released/#resource-exhaustion-and-denial-of-service-with-test_report-api-calls">Resource exhaustion and denial of service with test_report API calls</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-17-0-1-released/#guest-user-can-view-dependency-lists-of-private-projects-through-job-artifacts">Guest user can view dependency lists of private projects through job artifacts</a></td>
          <td>Medium</td>
      </tr>
  </tbody>
</table>
<h3 id="1-click-account-takeover-via-xss-leveraging-the-vs-code-editor-web-ide">1-click account takeover via XSS leveraging the VS code editor (Web IDE)</h3>
<p>A XSS condition exists within GitLab in versions 15.11 before 16.10.6, 16.11 before 16.11.3, and 17.0 before 17.0.1. By leveraging this condition, an attacker can craft a malicious page to exfiltrate sensitive user information.
This is a high severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:N</code>, 8.0)
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-4835">CVE-2024-4835</a>.</p>
<p>Thanks <a href="https://hackerone.com/matanber">matanber</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="a-dos-vulnerability-in-the-description-field-of-the-runner">A DOS vulnerability in the &lsquo;description&rsquo; field of the runner</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions up to 16.10.6, versions 16.11 up to 16.11.3, and 17.0 up to 17.0.1. A runner registered with a crafted description has the potential to disrupt the loading of targeted GitLab web resources.
This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code>, 6.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-2874">CVE-2024-2874</a>.</p>
<p>Thanks <a href="https://hackerone.com/ac7n0w">ac7n0w</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="csrf-via-k8s-cluster-integration">CSRF via K8s cluster-integration</h3>
<p>A CSRF vulnerability exists within GitLab CE/EE from versions 16.3 up to 16.10.6, from 16.11 up to 16.11.3, from 17.0 up to 17.0.1. By leveraging this vulnerability, an attacker could exfiltrate anti-CSRF tokens via the Kubernetes Agent Server (KAS).
This is a medium severity issue (<code>AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N</code>, 5.4).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-7045">CVE-2023-7045</a>.</p>
<p>Thanks <a href="https://hackerone.com/imrerad">imrerad</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h3 id="using-set-pipeline-status-of-a-commit-api-incorrectly-create-a-new-pipeline-when-sha-and-pipeline_id-did-not-match">Using Set Pipeline Status of a Commit API incorrectly create a new pipeline when SHA and pipeline_id did not match</h3>
<p>An authorization vulnerability exists within GitLab from versions 16.10 up to 16.10.6, 16.11 up to 16.11.3, and 17.0 up to 17.0.1 where an authenticated attacker could utilize a crafted naming convention to bypass pipeline authorization logic.
This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:N</code>, 4.4).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-5258">CVE-2024-5258</a>.</p>
<p>Thanks to GitLab Team Member, Andrew Winata for reporting this issue.</p>
<h3 id="redos-on-wiki-render-apipage">Redos on wiki render API/Page</h3>
<p>A Denial of Service (DoS) condition has been discovered in GitLab CE/EE affecting all versions before 16.10.6, version 16.11 before 16.11.3, and 17.0 before 17.0.1. It is possible for an attacker to cause a denial of service using a crafted wiki page.
This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L</code>, 4.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-6502">CVE-2023-6502</a>.</p>
<p>Thanks <code>Anonymizer</code> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="resource-exhaustion-and-denial-of-service-with-test_report-api-calls">Resource exhaustion and denial of service with test_report API calls</h3>
<p>A denial of service (DoS) condition was discovered in GitLab CE/EE affecting all versions from 13.2.4 up to 16.10.6, 16.11 up to 16.11.3, and 17.0 up to 17.0.1. By leveraging this vulnerability an attacker could create a DoS condition by sending crafted API calls.
This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L</code>, 4.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-1947">CVE-2024-1947</a>.</p>
<p>Thanks <a href="https://hackerone.com/luryus">luryus</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="guest-user-can-view-dependency-lists-of-private-projects-through-job-artifacts">Guest user can view dependency lists of private projects through job artifacts</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 11.11 prior to 16.10.6, starting from 16.11 prior to 16.11.3, and starting from 17.0 prior to 17.0.1. A Guest user can view dependency lists of private projects through job artifacts.
This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code>, 4.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-5318">CVE-2024-5318</a>.</p>
<p>Thanks <a href="https://hackerone.com/ricardobrito">ricardobrito</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="stored-xss-via-pdfjs">Stored XSS via PDFjs</h3>
<p>Mitigations were made to take care of vulnerability in PDF.js <a href="https://nvd.nist.gov/vuln/detail/CVE-2024-4367">CVE-2024-4367</a>.</p>
<p>Thanks <a href="https://hackerone.com/h4x0r_dz">h4x0r_dz</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="mattermost-security-updates-april-25th-2024">Mattermost Security Updates April 25th, 2024</h3>
<p>Mattermost has been updated to versions 9.7.2, which contains several patches and security fixes.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="1701">17.0.1</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/6922">Makefile: update Git versions (v17.0 backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/153144">Merge branch &lsquo;rymai-master-patch-5345&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/153330">Don&rsquo;t fail so loudly if default work item type is invalid</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/152962">[17.0 backport] Project transfer fix for ES indexing</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/153304">Ensure BLPOP/BRPOP returns nil instead of raising ReadTimeoutError</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/153574">[17-0] Fix Sidekiq migration timeout</a></li>
</ul>
<h3 id="16113">16.11.3</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/6919">Makefile: update Git versions (v16.11 backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/152328">Revert removal of bitbucket_server_convert_mentions_to_users FF</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/152915">Cherry pick print-out-release-environment-variables to 16.11</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/152891">[16-11] Fix Sidekiq migration timeout</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/153146">Merge branch &lsquo;rymai-master-patch-5345&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/153302">Ensure BLPOP/BRPOP returns nil instead of raising ReadTimeoutError</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7602">Draft: Update changelog for 16.11.0</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7586">BACKPORT-16-11-stable: Use bundler to install Omnibus gems</a></li>
</ul>
<h3 id="16106">16.10.6</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/6920">Makefile: update Git versions (v16.10 backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/152248">Revert &ldquo;Remove bitbucket_server_convert_mentions_to_users feature flag&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/152916">Cherry pick print-out-release-environment-variables to 16.10</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/153147">Merge branch &lsquo;rymai-master-patch-5345&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/153301">Ensure BLPOP/BRPOP returns nil instead of raising ReadTimeoutError</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7585">BACKPORT-16-10-stable: Use bundler to install Omnibus gems</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<h2 id="were-combining-patch-and-security-releases">We’re combining patch and security releases</h2>
<p>This improvement in our release process matches the industry standard and will help GitLab users get information about security and
bug fixes sooner, <a href="https://about.gitlab.com/blog/were-combining-patch-and-security-releases/">read the blog post here</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab 17.0 released</title><link href="https://docs.gitlab.com/releases/17/17-0-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/17/17-0-released/</id><published>2024-05-16T00:00:00Z</published><updated>2024-05-16T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On May 16, 2024, GitLab 17.0 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong></strong>
</p>
<p>Everyone can <a href="https://gitlab.com/gitlab-org/developer-relations/contributor-success/team-task/-/issues/490">nominate GitLab&rsquo;s community contributors</a>!
Show your support for our active candidates or add a new nomination 🙌</p>
<p>Niklas van Schrick now has the hat trick with three MVPs and has become one of GitLab&rsquo;s most consistent contributors with at least one merge request per milestone since GitLab 14.3.</p>
<p>Niklas was nominated by <a href="https://gitlab.com/m_frankiewicz">Magdalena Frankiewicz</a>, Product Manager at GitLab, for contributing a feature to create custom webhook payload templates and then following it up with the <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/17290">ability to specify custom webhook headers</a>.
&ldquo;This solved a highly demanded 7-year-old feature request with 65 upvotes,&rdquo; says Magdalena.
&ldquo;Users can now fully design custom webhooks!&rdquo;</p>
<p>Niklas is a member of the <a href="https://about.gitlab.com/community/core-team/">GitLab Core Team</a> and helps the wider community and GitLab live up to our mission to enable everyone to contribute.</p>
<p>&ldquo;During my journey, I interacted with a lot of different reviewers, maintainers, designers, technical writers, product managers, and probably more,&rdquo; Niklas says.
&ldquo;Everyone was helpful and did their best to help move issues and merge requests forward.&rdquo;</p>
<p>Gerardo Navarro has been contributing to GitLab for over a year and takes home a second GitLab MVP award.</p>
<p>Gerardo was nominated for creating ongoing contributions towards a feature to <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/437926">show protected packages in the package registry list</a>. This feature is part of a series of contributions related to the <a href="https://gitlab.com/groups/gitlab-org/-/epics/5574">protected packages epic</a> that intends to increase security by enabling fine-grained permissions to create, update, and delete packages from the package registry.</p>
<p>Many thanks to Gerardo Navarro and the rest of the team from Siemens for helping co-create GitLab.</p>
<p>&ldquo;Thank you very much for appreciating our work with such a cool award,&rdquo; says Gerardo.
&ldquo;I feel honored. I am still learning a lot with every contribution.&rdquo;</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>CI/CD Catalog with components and inputs now generally available</strong>
    <p><p>The CI/CD Catalog is now generally available. As part of this release, we&rsquo;re also making <a href="https://docs.gitlab.com/ee/ci/components/">CI/CD components</a> and <a href="https://docs.gitlab.com/ee/ci/yaml/inputs.html">inputs</a> generally available.</p>
<p>With the CI/CD Catalog, you gain access to a vast array of components created by the community and industry experts.
Whether you&rsquo;re seeking solutions for continuous integration, deployment pipelines, or automation tasks, you&rsquo;ll find a diverse selection of components tailored to suit your requirements.
You can read more about the Catalog and its features in the following <a href="https://about.gitlab.com/blog/ci-cd-catalog-goes-ga-no-more-building-pipelines-from-scratch/">blog post</a>.</p>
<p>You&rsquo;re invited to contribute CI/CD components to the Catalog and help expand this new and growing part of GitLab.com!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/components/#cicd-catalog">View Documentation</a></p>
  </li>
  <li>
    <strong>AI Impact analytics in the Value Streams Dashboard</strong>
    <p><p>AI Impact is a dashboard available in the Value Streams Dashboard that helps organizations understand the <a href="https://about.gitlab.com/blog/measuring-ai-effectiveness-beyond-developer-productivity-metrics/">impact of GitLab Duo on their productivity</a>.
This new month-over-month metric view compares the AI Usage trends with SDLC metrics like lead time, cycle time, DORA, and vulnerabilities. Software leaders can use the AI Impact dashboard to measure how much time is saved in their end-to-end workstream, while staying focused on business outcomes rather than developer activity.</p>
<p>In this first release, the AI usage is measured as the monthly <a href="https://docs.gitlab.com/ee/user/project/repository/code_suggestions/">Code Suggestions</a> usage rate, and is calculated as the number of monthly unique Code Suggestions users divided by total monthly unique <a href="https://docs.gitlab.com/ee/user/group/contribution_analytics/">contributors</a>.</p>
<p>The AI Impact dashboard is available to users on the Ultimate tier for a limited time. Afterwards, a GitLab Duo Enterprise license will be required to use the dashboard.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/analytics/value_streams_dashboard.html#ai-impact-analytics">View Documentation</a></p>
  </li>
  <li>
    <strong>Introducing hosted runners on Linux Arm</strong>
    <p><p>We are excited to introduce hosted runners on Linux Arm for GitLab.com.
The now available <code>medium</code> and <code>large</code> Arm machine types, equipped with 4 and 8 vCPUs respectively, and fully integrated with GitLab CI/CD, will allow you to build and test your application faster and more cost-efficient than ever before.</p>
<p>We are determined to provide the industry&rsquo;s fastest CI/CD build speed and look forward to seeing teams achieve even shorter feedback cycles and ultimately deliver software faster.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/runners/hosted_runners/linux.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Introducing deployment detail pages</strong>
    <p><p>You can now link directly to a deployment in GitLab. Previously, if you were collaborating on a deployment, you had to look up the deployment from the deployment list. Because of the number of deployments listed, finding the correct deployment was difficult and prone to error.</p>
<p>From 17.0, GitLab offers a deployment details view that you can link to directly. In this first version, the deployment details page offers an overview of the deployment job and the possibility to approve, reject, or comment on a deployment in a continuous delivery setting. We are looking into further avenues to enhance the deployment details page, including by linking to it from the related pipeline job. We would love to hear your feedback in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/450700">issue 450700</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/environments/deployment_approvals.html#approve-or-reject-a-deployment">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Duo Chat now uses Anthropic Claude 3 Sonnet</strong>
    <p><p>GitLab Duo Chat just got a lot better. It now uses Anthropic Claude 3 Sonnet as the base model, replacing Claude 2.1 for answering most questions.</p>
<p>At GitLab, we apply a test-driven approach when choosing the best model for a set of tasks and authoring well-performing prompts. With recent adjustments to the chat prompts, we have achieved significant improvements in the correctness, comprehensiveness, and readability of chat answers based on Claude 3 Sonnet compared to the previous chat version built on Claude 2.1. Hence, we have now switched to this new model version.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/gitlab_duo_chat/index.html">View Documentation</a></p>
  </li>
  <li>
    <strong>How-to questions in GitLab Duo Chat supported on self-managed deployments</strong>
    <p><p>A popular capability of GitLab Duo Chat is answering questions about how to use GitLab. While Chat offers various other capabilities, this particular functionality was previously only available on GitLab.com. With this release, we&rsquo;re making it accessible to GitLab self-managed deployments as well, aligning with our commitment to delivering a delightful experience across all types of deployments.</p>
<p>Whether you&rsquo;re a newcomer or an expert, you can ask Chat for help with queries like &ldquo;How do I change my password in GitLab?&rdquo; or &ldquo;How do I connect a Kubernetes cluster to GitLab?&rdquo;. Chat aims to provide helpful information to solve your problems more efficiently.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/gitlab_duo_chat/examples.html#ask-about-gitlab">View Documentation</a></p>
  </li>
  <li>
    <strong>New usage overview panel in the Value Streams Dashboard</strong>
    <p><p>We enhanced the Value Streams Dashboard with an Overview panel. This new visualization addresses the need for executive-level insights into software delivery performance, and gives a clear picture of GitLab usage in the context of software development life cycle (SDLC).</p>
<p>The Overview panel displays metrics for the group level, such as number of (sub)groups, projects, users, issues, merge requests, and pipelines.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/analytics/value_streams_dashboard.html#overview-panel">View Documentation</a></p>
  </li>
  <li>
    <strong>Add a group to the CI/CD job token allowlist</strong>
    <p><p>Introduced in GitLab 15.9, the CI/CD job token allowlist prevents unauthorized access from other projects to your project. Previously, you could allow access at the project level from other specific projects only, with a maximum limit of 200 total projects.</p>
<p>In GitLab 17.0, you can now add groups to a project&rsquo;s CI/CD job token allowlist. The maximum limit of 200 now applies to both projects and groups, meaning a project allowlist can now have up to 200 projects and groups authorized for access. This improvement makes it easier to add large numbers of projects associated with a group.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/jobs/ci_job_token.html#control-job-token-access-to-your-project">View Documentation</a></p>
  </li>
  <li>
    <strong>Enhanced context control with the `rules:exists` CI/CD keyword</strong>
    <p><p>The <code>rules:exists</code> CI/CD keyword has default behaviors that vary based on where the keyword is defined, which can make it harder to use with more complex pipelines. When defined in a job, <code>rules:exists</code> searches for specified files in the project running the pipeline. However, when defined in an <code>include</code> section, <code>rules:exists</code> searches for specified files in the project hosting the configuration file containing the <code>include</code> section. If configuration is split over multiple files and projects, it can be hard to know which exact project will be searched for defined files.</p>
<p>In this release, we have introduced <code>project</code> and <code>ref</code> subkeys to <code>rules:exists</code>, providing you a way to explicitly control the search context for this keyword. These new subkeys help you ensure accurate rule evaluation by precisely specifying the search context, mitigating inconsistencies, and enhancing clarity in your pipeline rule definitions.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/yaml/#rulesexistsproject">View Documentation</a></p>
  </li>
  <li>
    <strong>Change log for configuration changes made using Switchboard</strong>
    <p><p>You can now view the status of configuration changes made to your GitLab Dedicated instance infrastructure using the Switchboard <a href="https://docs.gitlab.com/ee/administration/dedicated/configure_instance/#configure-your-instance-using-switchboard">configuration page</a>.</p>
<p>All users with access to view or edit your tenant in Switchboard will be able to view changes in the Configuration Change log and track their progress as they are applied to your instance.</p>
<p>Currently, the Switchboard configuration page and change log are available for changes like managing access to your instance by adding an <a href="https://docs.gitlab.com/ee/administration/dedicated/configure_instance/network_security.html#ip-allowlist">IP to the allowlist</a> or configuring your instance&rsquo;s <a href="https://docs.gitlab.com/ee/administration/dedicated/configure_instance.html#saml">SAML settings</a>.</p>
<p>We will be extending this functionality to enable self-serve updates for additional configurations in <a href="https://about.gitlab.com/releases/whats-new/#whats-coming">coming quarters</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/dedicated/configure_instance/#view-the-configuration-change-log">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Scale and Deployments</h4>
<ul>
  <li>
    <strong>GitLab chart improvements</strong>
    <p><p>The <a href="https://docs.gitlab.com/operator/">GitLab Operator</a> is now available for production use for cloud-native hybrid installations. See the <a href="https://docs.gitlab.com/operator/installation.html">installation documentation</a> before adopting the GitLab Operator.</p>
<p>Support for a fallback to BusyBox images when you specify custom BusyBox values (<code>global.busybox</code>) is removed. Support for BusyBox-based init containers was deprecated in GitLab 16.2 (Helm chart 7.2) in favor of a common GitLab-based init image.</p>
<p>Support for <code>gitlab.kas.privateApi.tls.enabled</code> and <code>gitlab.kas.privateApi.tls.secretName</code> is also removed. You must use <code>global.kas.tls.enabled</code> and <code>global.kas.tls.secretName</code> instead.</p>
<p>The deprecated queue selector and negate options are removed from the Sidekiq chart.</p>
</p>
    <p><a href="https://docs.gitlab.com/charts/">View Documentation</a></p>
  </li>
  <li>
    <strong>Linux package improvements</strong>
    <p>CentOS Linux 7 will reach <a href="https://www.redhat.com/en/topics/linux/centos-linux-eol">end of life</a> on June 30, 2024. This makes GitLab 17.6 the last GitLab version in which we can provide packages for CentOS 7.</p>
    <p><a href="https://docs.gitlab.com/omnibus/">View Documentation</a></p>
  </li>
  <li>
    <strong>Two database mode is available in Beta</strong>
    <p><p>Currently, most self-managed customers only utilize a single database.
In order to ensure that the setup between GitLab.com and self-managed is the same, we ask self-managed customers to migrate and run two databases by default.
In 16.0, two database connections became the default for self-managed installations.
In 17.0, we <a href="https://docs.gitlab.com/ee/administration/postgresql/multiple_databases.html">release two database mode as a limited Beta</a>, with the goal to make running decomposed generally available by 19.0.
Migration to two databases remains optional in 17.0, but needs to be performed before upgrading to 19.0.</p>
<p>The migration requires downtime.
Self-managed customers can use a <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/368729">tool</a> that executes this migration with some downtime.
We introduced a new <code>gitlab-ctl</code> command that allows you to upgrade your single-database GitLab instances to a decomposed setup.
This setup contains commands that will work with our Linux package.
The <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/135585">actual migration</a> (copying the database) is part of a rake task in the GitLab project.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/postgresql/multiple_databases.html#migrate-existing-installations-using-a-script">View Documentation</a></p>
  </li>
  <li>
    <strong>Private shared group members are listed on Members tab for all members</strong>
    <p>Previously, when a public group or project invited a private group, the private group was listed only in the Groups tab of the Members page, and private members were not visible to members of the public group. To enable better collaboration between members of these groups, we are now also listing all invited group members in the Members tab, including members from private invited groups. The source of membership will be masked from members that do not have access to the private group. However, the source of membership will be visible to users who have at least the Maintainer role in the project or Owner role in the group, so that they can manage members in their project or group. If the current user viewing the Members tab is unauthenticated or not a member of the group or project, they will not see the private group members. We hope this change will make it easier for group and project members to understand at a glance who has access to a group or project.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/members/sharing_projects_groups.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Members page displays members from invited groups</strong>
    <p>Previously, members of groups that were invited to a group or project were visible only in the Groups tab of the Members page. This meant users had to check both the Groups and Members tabs to understand who has access to a certain group or project. Now, shared members are listed also in the Members tab, giving a complete overview of all the members that are part of a group or project at a glance.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/members/#add-groups-to-a-project">View Documentation</a></p>
  </li>
  <li>
    <strong>Import from Bitbucket Cloud by using REST API</strong>
    <p><p>In this milestone, we added the ability to import Bitbucket Cloud projects by using the REST API.</p>
<p>This can be a better solution for importing a lot of projects than importing by using the UI.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/api/import.html#import-repository-from-bitbucket-cloud">View Documentation</a></p>
  </li>
  <li>
    <strong>Re-import a chosen project relation by using the API</strong>
    <p><p>When importing projects from export files with many items of the same type (for example, merge requests or pipelines), sometimes some of those items weren&rsquo;t imported.</p>
<p>In this release, we added an API endpoint that re-imports a named relation, skipping items that have already been imported. The API requires both:</p>
<ul>
<li>A project export archive.</li>
<li>A type (issues, merge requests, pipelines, or milestones).</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/ee/api/project_import_export#import-a-single-relation">View Documentation</a></p>
  </li>
  <li>
    <strong>View issues from multiple Jira projects in GitLab</strong>
    <p><p>For larger repositories, you can now view issues from multiple Jira projects in GitLab when you set up the Jira issue integration. With this release, you can:</p>
<ul>
<li>Enter up to 100 Jira project keys separated by commas.</li>
<li>Leave <strong>Jira project keys</strong> blank to include all available keys.</li>
</ul>
<p>When you view Jira issues in GitLab, you can <a href="https://docs.gitlab.com/ee/integration/jira/configure.html#filter-jira-issues">filter the issues</a> by project.</p>
<p>To <a href="https://docs.gitlab.com/ee/integration/jira/configure.html#create-a-jira-issue-for-a-vulnerability">create Jira issues for vulnerabilities</a> in GitLab Ultimate, you can specify only one Jira project.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/integration/jira/configure.html#view-jira-issues">View Documentation</a></p>
  </li>
  <li>
    <strong>Enable viewing Jira issues in GitLab with the REST API</strong>
    <p><p>With this release, you can use the REST API to enable <a href="https://docs.gitlab.com/ee/integration/jira/configure.html#view-jira-issues">viewing Jira issues</a> in GitLab. You can also specify one or more Jira projects to view issues from.</p>
<p>Thanks to <a href="https://gitlab.com/ivantedja">Ivan</a> for <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/150209">this community contribution</a>!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/api/integrations.html#jira">View Documentation</a></p>
  </li>
  <li>
    <strong>Multiple external participants for Service Desk</strong>
    <p><p>Sometimes there is more than one person involved in resolving a support ticket or
the requester wants to keep colleagues up-to date on the state of the ticket.</p>
<p>Now you can have a maximum of 10 external participants without a GitLab account on a
Service Desk ticket and regular issues.</p>
<p>External participants receive Service Desk notification emails for each public comment
on the ticket, and their replies will appear as comments in the GitLab UI.</p>
<p>Simply use the quick actions <a href="https://docs.gitlab.com/ee/user/project/service_desk/external_participants.html#add-an-external-participant"><code>/add_email</code></a>
and <a href="https://docs.gitlab.com/ee/user/project/service_desk/external_participants.html#add-an-external-participant"><code>remove_email</code></a>
to add or remove external participants with a few keystrokes.</p>
<p>You can also configure GitLab to
<a href="https://docs.gitlab.com/ee/user/project/service_desk/external_participants.html#add-external-participants-from-the-cc-header">add all email addresses from the <code>Cc</code> header</a>
of the initial email to the Service Desk ticket.</p>
<p>You can <a href="https://docs.gitlab.com/ee/user/project/service_desk/configure.html#customize-emails-sent-to-external-participants">tailor all Service Desk email templates to your liking</a>,
using markdown, HTML, and dynamic placeholders.
An <a href="https://docs.gitlab.com/ee/user/project/service_desk/external_participants.html#add-an-external-participant">unsubscribe link placeholder</a>
is available to make it easy for external participants to opt out of a conversation.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/service_desk/external_participants.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Indicate that items were imported using direct transfer</strong>
    <p><p>You can migrate GitLab groups and projects between GitLab instances <a href="https://docs.gitlab.com/ee/user/group/import/">by using direct transfer</a>.</p>
<p>Until now, imported items were not easily identifiable. With this release, we&rsquo;ve added visual indicators to items imported with direct transfer, where the creator is identified as a specific user:</p>
<ul>
<li>Notes (system notes and user comments)</li>
<li>Issues</li>
<li>Merge requests</li>
<li>Epics</li>
<li>Designs</li>
<li>Snippets</li>
<li>User profile activity</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/import/#review-results-of-the-import">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>1Password secrets integration in GitLab Duo Plugin for JetBrains IDEs</strong>
    <p><p>You can now integrate 1Password secrets management with the GitLab Duo plugin for JetBrains.</p>
<p>Developers can replace their personal access tokens in their JetBrains IDE settings with 1Password secrets references. This simplifies managing secrets, and enables seamless secrets rotation without manual token updates.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/editor_extensions/jetbrains_ide/index.html#integrate-with-1password-cli">View Documentation</a></p>
  </li>
  <li>
    <strong>Access GitLab Duo Chat faster with customizable shortcuts</strong>
    <p><p>Opening Duo Chat directly from your editor in JetBrains is now even easier.</p>
<p>Use the default <kbd>Alt</kbd>+<kbd>D</kbd> keyboard shortcut (or set your own) to open Duo Chat quickly and type your question. Use the same keyboard shortcut to close the window.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/editor_extensions/jetbrains_ide/index.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Project comment templates</strong>
    <p><p>Following the release of <a href="https://about.gitlab.com/releases/2024/04/18/gitlab-16-11-released/#group-comment-templates">group comment templates in GitLab 16.11</a>, we&rsquo;re bringing these to projects in GitLab 17.0.</p>
<p>Across an organization, it can be helpful to have the same templated response in issues, epics, and merge requests. These responses might include standard questions that need to be answered, responses to common problems, or good structure for merge request review comments. Project-level comment templates give you an additional way to scope the availability of templates, bringing organizations more control and flexibility in sharing these across users.</p>
<p>To create a comment template, go to any comment box on GitLab and select <strong>Insert comment template &gt; Manage project comment templates</strong>. After you create a comment template, it&rsquo;s available for all project members. Select the <strong>Insert comment template</strong> icon while making a comment, and your saved response will be applied.</p>
<p>We&rsquo;re really excited about this iteration of comment templates and if you have any feedback, please leave it in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/451520">issue 451520</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/profile/comment_templates.html#for-a-project">View Documentation</a></p>
  </li>
  <li>
    <strong>Commit signing for GitLab UI commits</strong>
    <p>Previously, web commits and automated commits made by GitLab could not be signed. Now you can configure your self-managed instance with a signing key, a committer name, and email address to sign web and automated commits.</p>
    <p><a href="https://docs.gitlab.com/ee/administration/gitaly/configure_gitaly.html#configure-commit-signing-for-gitlab-ui-commits">View Documentation</a></p>
  </li>
  <li>
    <strong>Increase Kubernetes agent authorization limit</strong>
    <p><p>With the GitLab agent for Kubernetes, you can share a single agent connection with a group. We aim to support a single agent across a large multi-tenant cluster. However, you might have faced a limitation on the number of connection sharing. Until now, an agent could be shared with only 100 projects and groups using <a href="https://docs.gitlab.com/ee/user/clusters/agent/ci_cd_workflow.html">CI/CD</a>, and 100 projects and groups using the <a href="https://docs.gitlab.com/ee/user/clusters/agent/user_access.html"><code>user_access</code></a> keyword. In GitLab 17.0, the number of projects and groups you can share with is raised to 500.</p>
<p>If you need to run multiple agents in a cluster, we would like to hear your feedback in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/454110">issue 454110</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/clusters/agent/">View Documentation</a></p>
  </li>
  <li>
    <strong>Support for GitLab agent for Kubernetes in FIPS mode</strong>
    <p>From GitLab 17.0, you can install GitLab in FIPS mode with the agent for Kubernetes components enabled. Now, FIPS-compliant users can benefit from all the <a href="https://docs.gitlab.com/ee/user/clusters/agent/">Kubernetes integrations with GitLab</a>.</p>
    <p><a href="https://docs.gitlab.com/ee/administration/clusters/kas.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Track fast-forward merge requests in deployments</strong>
    <p>In past releases, merge requests were tracked in a deployment only if the project&rsquo;s merge method was <strong>Merge commit</strong> or <strong>Merge commit with semi-linear history</strong>. From GitLab 17.0, merge requests are tracked in deployments, including in projects with the merge method <strong>Fast-forward merge</strong>.</p>
    <p><a href="https://docs.gitlab.com/ee/ci/environments/#track-newly-included-merge-requests-per-deployment">View Documentation</a></p>
  </li>
  <li>
    <strong>Identify sessions initiated by Admin Mode</strong>
    <p><p>As an instance administrator, when you use multiple browsers or different computers, it is difficult to know which sessions are in Admin Mode and which aren&rsquo;t. Now, administrators can go to <strong>User Settings &gt; Active Sessions</strong> to identify which sessions use Admin Mode.</p>
<p>Thank you <a href="https://gitlab.com/bufferoverflow">Roger Meier</a> for your contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/settings/sign_in_restrictions#check-if-your-session-has-admin-mode-enabled">View Documentation</a></p>
  </li>
  <li>
    <strong>Customize avatars for users</strong>
    <p>You can now use the API to upload a custom avatar for any user type, including bot users. This can be especially helpful for visually distinguishing bot users, such as group and project access tokens or service accounts, from human users in the UI.
Thank you <a href="https://gitlab.com/lifez">Phawin</a> for your contribution!</p>
    <p><a href="https://docs.gitlab.com/ee/api/users.html#upload-a-current-user-avatar">View Documentation</a></p>
  </li>
  <li>
    <strong>Edit a custom role and its permissions</strong>
    <p>Previously, you could not edit an existing custom role and its permissions. Now, you can edit a custom role and its permissions without having to re-create the role to make a change.</p>
    <p><a href="https://docs.gitlab.com/ee/user/custom_roles.html#edit-a-custom-role">View Documentation</a></p>
  </li>
  <li>
    <strong>New permissions for custom roles</strong>
    <p><p>There are new permissions available you can use to create custom roles:</p>
<ul>
<li><a href="https://docs.gitlab.com/ee/user/custom_roles/abilities.html#security-policy-management">Assign security policy links</a></li>
<li><a href="https://docs.gitlab.com/ee/user/custom_roles/abilities.html#compliance-management">Manage and assign compliance frameworks</a></li>
<li><a href="https://docs.gitlab.com/ee/user/custom_roles/abilities.html#webhooks">Manage webhooks</a></li>
<li><a href="https://docs.gitlab.com/ee/user/custom_roles/abilities.html#source-code-management">Manage push rules</a></li>
</ul>
<p>With the release of these custom permissions, you can reduce the number of Owners needed in a group by creating a custom role with these Owner-equivalent permissions. Custom roles allow you to define granular roles that give a user only the permissions they need to do their jobs, and reduce unnecessary privilege escalation.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/custom_roles.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Manage custom roles at self-managed instance level</strong>
    <p><p>Before this release, on self-managed GitLab, custom roles had to be created at the group level. This meant administrators could not centrally manage custom roles for the instance, which resulted in duplicate roles across the instance. Now custom roles are managed at the self-managed instance level. Only administrators can create custom roles, but both administrators and group Owners can assign these custom roles.</p>
<p>For more information on migrating existing custom roles, API endpoints, and workflows, see <a href="https://gitlab.com/groups/gitlab-org/-/epics/11851">epic 11851</a>.</p>
<p>This update does not impact custom role workflows on GitLab.com.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/custom_roles.html">View Documentation</a></p>
  </li>
  <li>
    <strong>UX improvements to custom roles</strong>
    <p><p>A series of improvements have been made to the user experience for custom roles, specifically:</p>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/393238">A new page opens when creating a new custom role</a>.</li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/437592">Improved design for the custom role table</a>.</li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/434431">Improved design for the delete custom role dialog</a>.</li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/430915">Precheck permissions of the base role</a>.</li>
</ul></p>
    <p><a href="https://docs.gitlab.com/ee/user/custom_roles.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved branch protection settings for administrators and for groups</strong>
    <p><p>Previously, setting up default branch protection options did not allow for the same level of configuration that the settings for protected branches did.</p>
<p>In this release, we have updated the default branch protection settings to provide the same experience that you have with protected branches.
This allows more flexibility in protecting your default branch and simplifies the process to match what already exists in the protected branch settings.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/repository/branches/default.html#instance-level-default-branch-protection">View Documentation</a></p>
  </li>
  <li>
    <strong>Optional configuration for policy bot comment</strong>
    <p>The security policy bot posts a comment on merge requests when they violate a policy to help users understand when policies are enforced on their project, when evaluation is completed, and if there are any violations blocking an MR, with guidance to resolve them. These comments are now optional and can be enabled or disabled within each policy. This gives organizations the flexibility and control to determine how they want to communicate about these policies to their users.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/policies/scan-result-policies.html#send_bot_message-action-type">View Documentation</a></p>
  </li>
  <li>
    <strong>Updated filtering on the Vulnerability Report</strong>
    <p>The old implementation of the Vulnerability Report filters wasn&rsquo;t scalable.
We were limited by horizontal space on the page. You can now use the filtered
search component to filter the Vulnerability Report by any combination of
status, severity, tool, or activity. This change allows us to add new filters,
like this proposed <a href="https://gitlab.com/groups/gitlab-org/-/epics/13340">filter by identifier</a>.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/vulnerability_report/#vulnerability-report-filters">View Documentation</a></p>
  </li>
  <li>
    <strong>Toggle merge request approval policies to fail open or fail closed</strong>
    <p><p>Compliance operates on a sliding scale for many organizations as they strike a balance between meeting requirements and ensuring developer velocity is not impacted. Merge request approval policies help to operationalize security and compliance in the heart of the DevSecOps workflow - the merge request. We&rsquo;re introducing a new <code>fail open</code> option for merge request approval policies to offer flexibility to teams who want to ease the transition to policy enforcement as they roll out controls in their organization.</p>
<p>When a merge request approval policy is configured to fail open, MRs will now only be blocked if a policy rule is violated <strong>and</strong> if that project has the security analyzer properly configured. If an analyzer is not enabled for a project or if the analyzer does not successfully produce results, the policy will no longer consider this a violation for the given rule and analyzer. This approach allows for progressive rollout of policies as teams work to ensure proper scan execution and enforcement.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/policies/scan-result-policies.html#fallback_behavior">View Documentation</a></p>
  </li>
  <li>
    <strong>Automatic deletion of unverified secondary email addresses</strong>
    <p>If you add a secondary email address to your user profile and do not verify it, that email address is now automatically deleted after three days. Previously, these email addresses were in a reserved state and could not be released without manual intervention. This automatic deletion reduces administrator overhead and prevents users from reserving email addresses that they do not have ownership of.</p>
    <p><a href="https://docs.gitlab.com/ee/user/profile/#delete-emails-from-your-user-profile">View Documentation</a></p>
  </li>
  <li>
    <strong>Filter package registry UI for packages with errors</strong>
    <p><p>You can use the GitLab package registry to publish and download packages. Sometimes, packages fail to upload due to an error. Previously, there was no way to quickly view packages that failed to upload. This made it challenging to get a holistic view of your organization&rsquo;s package registry.</p>
<p>Now you can filter the package registry UI for packages that failed to upload. This improvement makes it easier to investigate and resolve any issues you encounter.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/packages/package_registry/#view-packages">View Documentation</a></p>
  </li>
  <li>
    <strong>New median time to merge metric in Value Streams Dashboard</strong>
    <p><p>We added a new metric to the Value Streams Dashboard: median time to merge. In GitLab, this metric represents the median time between when a merge request was created and when it was merged. This new metric measures DevOps health by identifying the efficiency and productivity of your merge request and code review processes.</p>
<p>By analyzing how this metric evolves in the <a href="https://www.youtube.com/watch?v=yNZRac7gyYo">context of other SDLC metrics</a>, teams can identify low or high productivity months, understand the impact of new DevOps practices on the development speed and delivery process, reduce their overall lead time, and increase the velocity of their software delivery.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/analytics/value_streams_dashboard.html#dashboard-metrics-and-drill-down-reports">View Documentation</a></p>
  </li>
  <li>
    <strong>Design Management features extended to Product teams</strong>
    <p>GitLab is expanding collaboration by updating our permissions. Now, users with the Reporter role can access Design Management features, enabling product teams to engage more directly in the design process. This change simplifies workflows and accelerates innovation by inviting broader participation from across your organization.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/issues/design_management.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Enhanced epic deletion protection</strong>
    <p><p>We&rsquo;ve updated what happens when you delete an epic to better safeguard your project&rsquo;s structure and data. It&rsquo;s all about giving you more control and peace of mind while managing your projects.</p>
<p>Now, when you delete a parent epic, instead of deleting all its child records automatically, we preserve them by detaching the parent relationship first. This change provides you with a safer way to manage your epics, ensuring accidental deletions don&rsquo;t result in losing valuable information.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/epics/manage_epics.html#delete-an-epic">View Documentation</a></p>
  </li>
  <li>
    <strong>Sort the Roadmap by created date, last updated date, and title</strong>
    <p>We expanded the epic sorting options available in the Roadmap view, providing you more flexibility in organizing and prioritizing your projects. You can now sort epics by <strong>created date</strong>, <strong>last updated date</strong>, and <strong>title</strong>. This enhancement lays the groundwork for even more advanced sorting capabilities in the future to help you manage epics more dynamically.</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/roadmap/#sort-and-filter-the-roadmap">View Documentation</a></p>
  </li>
  <li>
    <strong>Simplified configuration file schema for Value Streams Dashboard</strong>
    <p><p>You can now customize Value Streams Dashboard panels using a simplified schema-driven customizable UI framework. In the new format, the fields provide more flexibility of displaying the data and laying out the dashboard panels. With the new framework, administrators can track changes to the dashboard over time. This version history can help you revert to previous versions and compare changes between dashboard versions.</p>
<p>Using this customization, decision-makers can focus on the most relevant information for their business, while teams can better organize and display key DevSecOps metrics.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/analytics/value_streams_dashboard.html#customize-the-dashboard-panels">View Documentation</a></p>
  </li>
  <li>
    <strong>Guests in groups can link issues</strong>
    <p>We reduced the minimum role required to relate issues and tasks from Reporter to Guest, giving you more flexibility to organize work across your GitLab instance while maintaining <a href="https://docs.gitlab.com/ee/user/permissions.html">permissions</a>.</p>
    <p><a href="https://docs.gitlab.com/ee/user/permissions.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Milestones and iterations visible on issue boards</strong>
    <p>We&rsquo;ve improved issue boards to offer you clearer insights into your project&rsquo;s timeline and phases. Now, with milestone and iteration details directly visible on issue cards, you can easily track progress and adjust your team&rsquo;s workload on the fly. This enhancement is designed to make your planning and execution more efficient, keeping you in the loop and ahead of schedule.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/issue_board.html">View Documentation</a></p>
  </li>
  <li>
    <strong>API Security Testing analyzer updates</strong>
    <p><p>We published the following API Security Testing analyzer updates during the 17.0 release milestone:</p>
<ul>
<li>System environment variables are now passed from the CI runner to the custom Python scripts used for certain advanced scenarios (like request signing). This will make implementing these scenarios easier. See <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/457795">issue 457795</a> for more details.</li>
<li>API Security containers now run as a non-root user, which improves flexibility and compliance. See <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/287702">issue 287702</a> for more details.</li>
<li>Support for servers that only offer TLSv1.3 ciphers, which enables more customers to adopt API Security Testing. See <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/441470">issue 441470</a> for more details.</li>
<li>Upgrade to Alpine 3.19, which addresses security vulnerabilities. See <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/456572">issue 456572</a> for more details.</li>
</ul>
<p>As <a href="https://docs.gitlab.com/ee/update/deprecations.html#secure-analyzers-major-version-update">previously announced</a>, <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/456874">we increased the major version number of API Security Testing to version 5</a> in GitLab 17.0.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/api_security_testing/">View Documentation</a></p>
  </li>
  <li>
    <strong>Dependency Scanning support for Android</strong>
    <p>Users of Dependency Scanning can now scan Android projects. To configure Android scanning, use the <a href="https://gitlab.com/explore/catalog/components/android-dependency-scanning">CI/CD Catalog component</a>. Android scanning is also supported for users of the <a href="https://docs.gitlab.com/ee/user/application_security/dependency_scanning/#enabling-the-analyzer-by-using-the-cicd-template">CI/CD template</a>.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/dependency_scanning/index.html#enabling-dependency-scanning-by-using-cicd-components">View Documentation</a></p>
  </li>
  <li>
    <strong>Dependency Scanning default Python image</strong>
    <p><p>Following the deprecation of Python 3.9 as the default Python image, Python 3.11 is now the default image.</p>
<p>As outlined in the <a href="https://docs.gitlab.com/ee/update/deprecations.html?removal_milestone=17.0#deprecate-python-39-in-dependency-scanning-and-license-scanning">deprecation notice</a>, the target for the new default Python version was 3.10. The direct move to Python 3.11 was required to ensure FIPS compliance.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/dependency_scanning/index.html#supported-languages-and-package-managers">View Documentation</a></p>
  </li>
  <li>
    <strong>DAST now supports both arm64 and amd64 architectures by default</strong>
    <p>DAST 5 supports both arm64 and amd64 architectures by default. This enables customers to choose the Runner host architecture and optimize cost savings.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/dast/index.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Streamlined SAST analyzer coverage for more languages</strong>
    <p><p>GitLab Static Application Security Testing (SAST) now scans the same <a href="https://docs.gitlab.com/ee/user/application_security/sast/#supported-languages-and-frameworks">languages</a> with fewer <a href="https://docs.gitlab.com/ee/user/application_security/sast/analyzers/">analyzers</a>, offering a simpler, more customizable scan experience.</p>
<p>In GitLab 17.0, we&rsquo;ve replaced language-specific analyzers with <a href="https://docs.gitlab.com/ee/user/application_security/sast/rules.html">GitLab-managed rules</a> in the <a href="https://gitlab.com/gitlab-org/security-products/analyzers/semgrep">Semgrep-based analyzer</a> for the following languages:</p>
<ul>
<li>Android</li>
<li>C and C++</li>
<li>iOS</li>
<li>Kotlin</li>
<li>Node.js</li>
<li>PHP</li>
<li>Ruby</li>
</ul>
<p>As <a href="https://docs.gitlab.com/ee/update/deprecations.html#sast-analyzer-coverage-changing-in-gitlab-170">announced</a>, we&rsquo;ve updated the <a href="https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Jobs/SAST.gitlab-ci.yml">SAST CI/CD template</a> to reflect the new scanning coverage and to remove language-specific analyzer jobs that are no longer used.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/sast/#supported-languages-and-frameworks">View Documentation</a></p>
  </li>
  <li>
    <strong>Secret Detection now supports remote rulesets when overriding or disabling rules</strong>
    <p>We resolved a Secret Detection bug that impacted remote rulesets. It&rsquo;s now possible to override or disable rules via remote rulesets. Remote rulesets offer a scalable way to configure rules in a single place, which can be applied across multiple projects.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/secret_detection/pipeline/index.html#specify-a-remote-configuration-file">View Documentation</a></p>
  </li>
  <li>
    <strong>Introducing advanced vulnerability tracking for Secret Detection</strong>
    <p><p>Secret Detection now uses an advanced vulnerability tracking algorithm to more accurately identify when the same secret has moved within a file due to refactoring or unrelated changes. A new finding is no longer created if:</p>
<ul>
<li>A leak moves within a file.</li>
<li>A new leak of the same value appears within the same file.</li>
</ul>
<p>Otherwise, the existing workflow (merge request widget, pipeline report, and vulnerability report) will treat the findings the same as before. By ensuring that duplicate vulnerabilities are not reported as secrets shift locations, teams are more easily able to manage leaked secrets.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/secret_detection/pipeline/#advanced-vulnerability-tracking">View Documentation</a></p>
  </li>
  <li>
    <strong>Semantic version ranges for published CI/CD components</strong>
    <p><p>When using a CI/CD Catalog component, you might want to have it automatically use the latest version. For example, you don&rsquo;t want to have to manually monitor all the components you use and manually switch to the next version every time there is a minor update or security patch. But using <code>~latest</code> is also a bit risky because minor version updates could have undesired behavior changes, and major version updates have a higher risk of breaking changes.</p>
<p>With this release, you can opt to use the latest major or minor version of a CI/CD component. For example, specify <code>2</code> for the component version, and you&rsquo;ll get all updates for that major version, like <code>2.1.1</code>, <code>2.1.2</code>, <code>2.2.0</code>, but not <code>3.0.0</code>. Specify <code>2.1</code> and you&rsquo;ll only get patch updates for that minor version, like <code>2.1.1</code>, <code>2.1.2</code>, but not <code>2.2.0</code>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/components/#semantic-versioning">View Documentation</a></p>
  </li>
  <li>
    <strong>Standardized CI/CD Catalog component publishing process</strong>
    <p>We have been hard at work on CI/CD components, including making the process of releasing components to the CI/CD Catalog a consistent experience. As part of that work, we&rsquo;ve made releasing versions from a CI/CD job with the <a href="https://docs.gitlab.com/ee/ci/yaml/index.html#release"><code>release</code> keyword</a> and the <code>release-cli</code> image the only method. All improvements to the release process will apply to this method only. To avoid breaking changes introduced by this restriction, make sure you always use the latest version of the image (<code>release-cli:latest</code>) or at least a version greater than <code>v0.17</code>. The <a href="https://docs.gitlab.com/ee/user/project/releases/#create-a-release-in-the-releases-page"><strong>Releases</strong> option in the UI</a> is now disabled for CI/CD component projects.</p>
    <p><a href="https://docs.gitlab.com/ee/ci/components/#publish-a-new-release">View Documentation</a></p>
  </li>
  <li>
    <strong>Always run `after_script` commands for canceled jobs</strong>
    <p><p>The <a href="https://docs.gitlab.com/ee/ci/yaml/#after_script"><code>after_script</code></a> CI/CD keyword is used to run additional commands after the main <code>script</code> section of a job. This is often used for cleaning up environments or other resources that were used by the job. However, <code>after_script</code> commands did not run if a job was canceled.</p>
<p>As of GitLab 17.0, <code>after_script</code> commands will always run when a job is canceled. To opt out, see the <a href="https://docs.gitlab.com/ee/ci/yaml/script/#run-after_script-on-cancel">documentation</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/yaml/script/#run-after_script-on-cancel">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner 17.0</strong>
    <p><p>We’re also releasing GitLab Runner 17.0 today! GitLab Runner is the lightweight, highly-scalable agent that runs your CI/CD jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.</p>
<h4 id="whats-new">What&rsquo;s new:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/-/issues/123">Documentation for installing the Runner Operator in disconnected network environments</a></li>
</ul>
<p>The list of all changes is in the GitLab Runner <a href="https://gitlab.com/gitlab-org/gitlab-runner/blob/17-0-stable/CHANGELOG.md">CHANGELOG</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/runner">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab Patch Release: 16.9.8</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-9-8-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-9-8-released/</id><published>2024-05-09T00:00:00Z</published><updated>2024-05-09T00:00:00Z</updated><author><name>Alessio Caiazza</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<p>On May 9, 2024, we released versions 16.9.8 for GitLab Community Edition and Enterprise Edition.</p>
<p>These versions resolve a number of regressions and bugs. This patch release does not include any security fixes.</p>
<h2 id="gitlab-community-edition-and-enterprise-edition">GitLab Community Edition and Enterprise Edition</h2>
<h3 id="bug-fixes">Bug Fixes</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7593">Pin parser dependency in chef-bin</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>This version does not include any new migrations, and for multi-node deployments, <a href="https://docs.gitlab.com/ee/update/#upgrading-without-downtime">should not require any downtime</a>.</p>
<p>Please be aware that by default the Omnibus packages will stop, run migrations,
and start again, no matter how “big” or “small” the upgrade is. This behavior
can be changed by adding a <a href="https://docs.gitlab.com/ee/update/zero_downtime.html"><code>/etc/gitlab/skip-auto-reconfigure</code></a> file,
which is only used for <a href="https://docs.gitlab.com/omnibus/update/README.html">updates</a>.</p>
<h2 id="updating">Updating</h2>
<p>To update, check out our <a href="https://about.gitlab.com/update/">update page</a>.</p>
<h2 id="gitlab-subscriptions">GitLab subscriptions</h2>
<p>Access to GitLab Premium and Ultimate features is granted by a paid <a href="https://about.gitlab.com/pricing/">subscription</a>.</p>
<p>Alternatively, <a href="https://gitlab.com/users/sign_in">sign up for GitLab.com</a>
to use GitLab&rsquo;s own infrastructure.</p>
<h2 id="were-combining-patch-and-security-releases">We’re combining patch and security releases</h2>
<p>This improvement in our release process matches the industry standard and will help GitLab users get information about security and
bug fixes sooner, <a href="https://about.gitlab.com/blog/were-combining-patch-and-security-releases/">read the blog post here</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 16.11.2, 16.10.5, 16.9.7</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-11-2-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-11-2-released/</id><published>2024-05-08T00:00:00Z</published><updated>2024-05-08T00:00:00Z</updated><author><name>Rohit Shambhuni</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On May 8, 2024, we released versions 16.11.2, 16.10.5, 16.9.7 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version.</p>
<p>GitLab releases fixes for vulnerabilities in dedicated patch releases. There are two types of patch releases:
scheduled releases, and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, you can visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are dedicated to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-11-2-released/#redos-in-branch-search-when-using-wildcards">ReDoS in branch search when using wildcards</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-11-2-released/#redos-in-markdown-render-pipeline">ReDoS in markdown render pipeline</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-11-2-released/#redos-on-discord-integrations">Redos on Discord integrations</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-11-2-released/#redos-on-google-chat-integration">Redos on Google Chat Integration</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-11-2-released/#denial-of-service-attack--via-pin-menu">Denial of Service Attack via Pin Menu</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-11-2-released/#dos-by-filtering-tags-and-branches-via-the-api">DoS by filtering tags and branches via the API</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-11-2-released/#mr-approval-via-csrf-in-saml-sso">MR approval via CSRF in SAML SSO</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-11-2-released/#banned-user-from-groups-can-read-issues-updates-via-the-api">Banned user from groups can read issues updates via the api</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-11-2-released/#require-confirmation-before-linking-jwt-identity">Require confirmation before linking JWT identity</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-11-2-released/#view-confidential-issues-title-and-description-of-any-public-project-via-export">View confidential issues title and description of any public project via export</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-11-2-released/#ssrf-via-github-importer">SSRF via Github importer</a></td>
          <td>Low</td>
      </tr>
  </tbody>
</table>
<h3 id="redos-in-branch-search-when-using-wildcards">ReDoS in branch search when using wildcards</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 15.7 prior to 16.9.7, starting from 16.10 prior to 16.10.5, and starting from 16.11 prior to 16.11.2. It was possible for an attacker to cause a denial of service by crafting unusual search terms for branch names.
This is a high severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code>, 7.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-2878">CVE-2024-2878</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="redos-in-markdown-render-pipeline">ReDoS in markdown render pipeline</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions before 16.9.7, all versions starting from 16.10 before 16.10.5, all versions starting from 16.11 before 16.11.2. It was possible for an attacker to cause a denial of service using maliciously crafted markdown content.
This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code>, 6.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-2651">CVE-2024-2651</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="redos-on-discord-integrations">Redos on Discord integrations</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 16.9 prior to 16.9.7, starting from 16.10 prior to 16.10.5, and starting from 16.11 prior to 16.11.2. A problem with the processing logic for Discord Integrations Chat Messages can lead to a regular expression DoS attack on the server.
This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code>, 6.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-6682">CVE-2023-6682</a>.</p>
<p>Thanks to <code>Anonymizer</code> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="redos-on-google-chat-integration">Redos on Google Chat Integration</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 16.11 prior to 16.11.2. A problem with the processing logic for Google Chat Messages integration may lead to a regular expression DoS attack on the server.
This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code>, 6.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-6688">CVE-2023-6688</a>.</p>
<p>Thanks to <code>Anonymizer</code> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="denial-of-service-attack-via-pin-menu">Denial of Service Attack via Pin Menu</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 15.11 prior to 16.9.7, starting from 16.10 prior to 16.10.5, and starting from 16.11 prior to 16.11.2. The pins endpoint is susceptible to DoS through a crafted request.
This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code>, 6.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-2454">CVE-2024-2454</a>.</p>
<p>Thanks <a href="https://hackerone.com/ac7n0w">ac7n0w</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="dos-by-filtering-tags-and-branches-via-the-api">DoS by filtering tags and branches via the API</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 15.4 prior to 16.9.7, starting from 16.10 prior to 16.10.5, and starting from 16.11 prior to 16.11.2 where abusing the API to filter branch and tags could lead to Denial of Service.
This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L</code>, 4.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-4539">CVE-2024-4539</a>.</p>
<p>This vulnerability was reported internally by a GitLab team member <a href="https://gitlab.com/vyaklushin">Vasilii Iakliushin</a>.</p>
<h3 id="mr-approval-via-csrf-in-saml-sso">MR approval via CSRF in SAML SSO</h3>
<p>An issue has been discovered in GitLab EE affecting all versions from 16.7 before 16.9.7, all versions starting from 16.10 before 16.10.5, all versions starting from 16.11 before 16.11.2. An attacker could force a user with an active SAML session to approve an MR via CSRF.
This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:H/A:N</code>, 5.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-4597">CVE-2024-4597</a>.</p>
<p>This vulnerability was reported internally by a GitLab team member <a href="https://gitlab.com/joernchen">joernchen</a>.</p>
<h3 id="banned-user-from-groups-can-read-issues-updates-via-the-api">Banned user from groups can read issues updates via the api</h3>
<p>An issue has been discovered in GitLab EE affecting all versions starting from 15.2 prior to 16.9.7, starting from 16.10 prior to 16.10.5, and starting from 16.11 prior to 16.11.2. It was possible to disclose updates to issues to a banned group member using the API.
This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code>, 4.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-1539">CVE-2024-1539</a>.</p>
<p>Thanks <a href="https://hackerone.com/ashish_r_padelkar">ashish_r_padelkar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="require-confirmation-before-linking-jwt-identity">Require confirmation before linking JWT identity</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 10.6 prior to 16.9.7, starting from 16.10 prior to 16.10.5, and starting from 16.11 prior to 16.11.2 in which cross-site request forgery may have been possible on GitLab instances configured to use JWT as an OmniAuth provider.
This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:N</code>, 6.4).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-1211">CVE-2024-1211</a>.</p>
<p>Thanks <a href="https://hackerone.com/sim4n6">sim4n6</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="view-confidential-issues-title-and-description-of-any-public-project-via-export">View confidential issues title and description of any public project via export</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 14.0 prior to 16.9.7, starting from 16.10 prior to 16.10.5, and starting from 16.11 prior to 16.11.2. It was possible to disclose via the UI the confidential issues title and description from a public project to unauthorised instance users.
This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N</code>, 6.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-3976">CVE-2024-3976</a>.</p>
<p>Thanks <a href="https://hackerone.com/ahacker1">ahacker1</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="ssrf-via-github-importer">SSRF via Github importer</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 15.5 prior to 16.9.7, starting from 16.10 prior to 16.10.5, and starting from 16.11 prior to 16.11.2. GitLab was vulnerable to Server Side Request Forgery when an attacker uses a malicious URL in the markdown image value when importing a GitHub repository.
This is a low severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:L/I:N/A:N</code>, 2.6).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-6195">CVE-2023-6195</a>.</p>
<p>Thanks <a href="https://hackerone.com/imrerad">imrerad</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="16112">16.11.2</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/6888">ci: Remove license scanning job (16.11)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/150488">Backport &lsquo;Zoekt: Fix exact search mode&rsquo; into 16.11</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/150600">Return or display Gitlab version if GITLAB_KAS_VERSION is a SHA</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/151040">Allow self-managed instances to require licensed seats for Duo Chat</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/151533">Merge branch &lsquo;release-environment-notification&rsquo; into &lsquo;16-11-stable-ee&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/151526">Changed the email validation for only encoded chars</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/151547">Backport &lsquo;hide archived filter in search when project selected&rsquo; 16.11</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/151884">Cherry-pick MR 151750 into &lsquo;16-11-stable-ee&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7571">Fix reconfigure failure if Redis node has Rails Sentinel config</a></li>
</ul>
<h3 id="16105">16.10.5</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/6887">ci: Remove license scanning job (16.10)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/6890">Upgrade gRPC to v1.62.1</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/150602">Return or display Gitlab version if GITLAB_KAS_VERSION is a SHA</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/151535">Merge branch &lsquo;release-environment-notification&rsquo; into &lsquo;16-10-stable-ee&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/151529">Changed the email validation for only encoded chars</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/151904">Cherry-pick MR 151750 into &lsquo;16-10-stable-ee&rsquo;</a></li>
</ul>
<h3 id="1697">16.9.7</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/6886">ci: Remove license scanning job (16.9)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/150605">Return or display Gitlab version if GITLAB_KAS_VERSION is a SHA</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/151539">Merge branch &lsquo;release-environment-notification&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/151530">Changed the email validation for only encoded chars</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/151908">Cherry-pick MR 151750 into &lsquo;16-9-stable-ee&rsquo;</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<h2 id="were-combining-patch-and-security-releases">We’re combining patch and security releases</h2>
<p>This improvement in our release process matches the industry standard and will help GitLab users get information about security and
bug fixes sooner, <a href="https://about.gitlab.com/blog/were-combining-patch-and-security-releases/">read the blog post here</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 16.11.1, 16.10.4, 16.9.6</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-11-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-11-1-released/</id><published>2024-04-24T00:00:00Z</published><updated>2024-04-24T00:00:00Z</updated><author><name>Costel Maxim</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On April 24, 2024, we released versions 16.11.1, 16.10.4, 16.9.6 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version.</p>
<p>GitLab releases fixes for vulnerabilities in dedicated patch releases. There are two types of patch releases:
scheduled releases, and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, you can visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are dedicated to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h4 id="accidental-breaking-changes-in-kas-configuration">Accidental breaking changes in KAS configuration</h4>
<p>The following KAS patch releases contain breaking changes from the %17.0 revision, because they were tagged from the wrong source (master instead of stable branches):</p>
<ul>
<li>v16.11.1</li>
<li>v16.10.4</li>
<li>v16.9.6</li>
</ul>
<p>The next GitLab patch release will fix those changes. <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/458462">Issue 458462</a> provides more information.</p>
<p>As a workaround KAS can be downgraded to the last release. Working KAS versions are:</p>
<ul>
<li>v16.11.0</li>
<li>v16.10.1</li>
<li>v16.9.3</li>
</ul>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-11-1-released/#gitlab-account-takeover-under-certain-conditions-when-using-bitbucket-as-an-oauth-provider">GitLab account takeover, under certain conditions, when using Bitbucket as an OAuth provider</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-11-1-released/#path-traversal-leads-to-dos-and-restricted-file-read">Path Traversal leads to DoS and Restricted File Read</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-11-1-released/#unauthenticated-redos-in-filefinder-when-using-wildcard-filters-in-project-file-search">Unauthenticated ReDoS in FileFinder when using wildcard filters in project file search</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-11-1-released/#personal-access-token-scopes-not-honoured-by-graphql-subscriptions">Personal Access Token scopes not honoured by GraphQL subscriptions</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-11-1-released/#domain-based-restrictions-bypass-using-a-crafted-email-address">Domain based restrictions bypass using a crafted email address</a></td>
          <td>Medium</td>
      </tr>
  </tbody>
</table>
<h3 id="gitlab-account-takeover-under-certain-conditions-when-using-bitbucket-as-an-oauth-provider">GitLab account takeover, under certain conditions, when using Bitbucket as an OAuth provider</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 7.8 before 16.9.6, all versions starting from 16.10 before 16.10.4, all versions starting from 16.11 before 16.11.1. Under certain conditions, an attacker with their Bitbucket account credentials may be able to take over a GitLab account linked to another user&rsquo;s Bitbucket account, if Bitbucket is used as an OAuth 2.0 provider on GitLab.
This is a high severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:N</code>, 7.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-4024">CVE-2024-4024</a>.</p>
<p>This vulnerability has been discovered internally by GitLab team members <a href="https://gitlab.com/SamWord">Sam Word</a> and <a href="https://gitlab.com/rodrigo.tomonari">Rodrigo Tomonari</a>.</p>
<p>On 2024-04-24, GitLab changed the way Bitbucket authentication works with GitLab. To continue using Bitbucket Authentication, please sign in to GitLab with your Bitbucket account credentials, before 2024-05-16.</p>
<p>If you do not sign into GitLab using your Bitbucket account until after 2024-05-16, you will need to <a href="https://docs.gitlab.com/ee/user/profile/#sign-in-services">re-link your Bitbucket account</a> to your GitLab account manually. For some users, signing in to GitLab using their Bitbucket account may not work after this fix is applied. If this happens to you, your Bitbucket and GitLab accounts have different email addresses. To resolve this, you must log in to your GitLab account with your GitLab username and password and <a href="https://docs.gitlab.com/ee/user/profile/#sign-in-services">re-link your Bitbucket account</a>.</p>
<h3 id="path-traversal-leads-to-dos-and-restricted-file-read">Path Traversal leads to DoS and Restricted File Read</h3>
<p>An issue has been discovered in GitLab affecting all versions of GitLab CE/EE  16.9 prior to 16.9.6, 16.10 prior to 16.10.4, and 16.11 prior to 16.11.1 where path traversal could lead to DoS and restricted file read. This is a high severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:N/A:H</code>, 8.5). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-2434">CVE-2024-2434</a>.</p>
<p>Thanks <a href="https://hackerone.com/pwnie">pwnie</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="unauthenticated-redos-in-filefinder-when-using-wildcard-filters-in-project-file-search">Unauthenticated ReDoS in FileFinder when using wildcard filters in project file search</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 12.5 before 16.9.6, all versions starting from 16.10 before 16.10.4, all versions starting from 16.11 before 16.11.1. A crafted wildcard filter in FileFinder may lead to a denial of service.
This is a high severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code>, 7.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-2829">CVE-2024-2829</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="personal-access-token-scopes-not-honoured-by-graphql-subscriptions">Personal Access Token scopes not honoured by GraphQL subscriptions</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 16.7 before 16.9.6, all versions starting from 16.10 before 16.10.4, all versions starting from 16.11 before 16.11.1 where personal access scopes were not honored by GraphQL subscriptions.
This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code>, 4.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-4006">CVE-2024-4006</a>.</p>
<p>This vulnerability was internally discovered and reported by a GitLab team member, <a href="https://gitlab.com/DylanGriffith">Dylan Griffith</a>.</p>
<h3 id="domain-based-restrictions-bypass-using-a-crafted-email-address">Domain based restrictions bypass using a crafted email address</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions before 16.9.6, all versions starting from 16.10 before 16.10.4, all versions starting from 16.11 before 16.11.1. Under certain conditions, an attacker through a crafted email address may be able to bypass domain based restrictions on an instance or a group.
This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N</code>, 4.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-1347">CVE-2024-1347</a>.</p>
<p>Thanks <a href="https://hackerone.com/garethheyes">garethheyes</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="16111">16.11.1</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/150027">Backport fixing release environment pipeline triggering rule to 16.11</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7556">Fix for missing branch_build_package_download_url</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7559">Fix missing arguments when PostgreSQL upgrade times out</a></li>
</ul>
<h3 id="16104">16.10.4</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/6825">go.mod: Update <code>golang.org/x/net</code> dependency</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/149253">Update vulnerability_reads scanner in the ingestion pipeline</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/149810">Fix migration error when updating from GitLab 16.x to 16.10</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/150029">Backport fixing release environment pipeline triggering rule to 16.10</a></li>
</ul>
<h3 id="1696">16.9.6</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/150030">Backport fixing release environment pipeline triggering rule to 16.9</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<h2 id="were-combining-patch-and-security-releases">We’re combining patch and security releases</h2>
<p>This improvement in our release process matches the industry standard and will help GitLab users get information about security and
bug fixes sooner, <a href="https://about.gitlab.com/blog/were-combining-patch-and-security-releases/">read the blog post here</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab 16.11 released</title><link href="https://docs.gitlab.com/releases/16/16-11-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/16/16-11-released/</id><published>2024-04-18T00:00:00Z</published><updated>2024-04-18T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On April 18, 2024, GitLab 16.11 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong></strong>
</p>
<p><a href="https://gitlab.com/bahek2462774">Ivan Shtyrliaiev</a> has made <a href="https://gitlab.com/groups/gitlab-org/-/merge_requests?scope=all&amp;state=merged&amp;author_username=bahek2462774">half a dozen contributions</a> to GitLab so far in 2024.
He was nominated by <a href="https://gitlab.com/hsutor">Hannah Sutor</a>, Principal Product Manager at GitLab, who highlighted his contribution to <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/144907">improve the Users list search and filter experience</a>.</p>
<p>“This is a huge user experience improvement that helps us go from a horizontally scrollable list of tabs to a much more elegant UX with only 2 tabs and a search box,” Hannah said.
“Now users are able to filter down via the search box rather than horizontally scroll tabs!”</p>
<p>Ivan was noted for picking up this challenging request, working with the GitLab UX team to refine the proposal, and being super responsive to reviews.
<a href="https://gitlab.com/adil.farrukh">Adil Farrukh</a>, Engineering Manager at GitLab, supported the nomination, noting that this feature was not trivial and that Ivan was very responsive to feedback.
<a href="https://gitlab.com/eduardosanz">Eduardo Sanz García</a>, Sr. Frontend Engineer at GitLab, also supported the nomination and commended Ivan&rsquo;s resilience.</p>
<p>&ldquo;Really appreciate Eduardo&rsquo;s review and the GitLab team putting in so much effort to make contributions happen,&rdquo; Ivan said.
&ldquo;It was very helpful and I realise how much time it takes.&rdquo;</p>
<p>Ivan is a frontend software engineer at <a href="https://www.politico.com/">Politico</a>.</p>
<p><a href="https://gitlab.com/BaptisteLalanne">Baptiste Lalanne</a> picked up a three-year-old issue with nearly seventy upvotes to contribute a <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/262674">highly requested feature</a> that adds <code>retry:exit codes</code> to the CI/CD configuration.
This contribution empowers our users with enhanced flexibility in managing failed pipeline jobs and jobs with different exit codes.</p>
<p>Baptiste was nominated by <a href="https://gitlab.com/dhershkovitch">Dov Hershkovitch</a>, Product Manager at GitLab.
“Baptiste&rsquo;s diligent work on this project went above and beyond mere implementation,” Dov said.
“This accomplishment serves as a prime example of our community&rsquo;s collaborative strength.
Through Baptiste&rsquo;s efforts, GitLab has not only fulfilled a critical need but also reinforced its commitment to openness and transparency, enriching our open-core mentality.”</p>
<p>&ldquo;This is heart warming and really appreciated,&rdquo; Baptiste said.
&ldquo;I&rsquo;m really looking forward to continuing my contributions in my spare time as I love it so much.&rdquo;</p>
<p>Over the past year, Baptiste has merged six merge requests to GitLab and is looking to <a href="https://docs.gitlab.com/runner/development/">contribute to the GitLab Runner</a> next.
Baptiste is a software engineer for <a href="https://www.datadoghq.com/">DataDog</a>.</p>
<p>A big thanks to our newest MVPs, Ivan and Baptiste, and to the rest of GitLab&rsquo;s community contributors! 🙌</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>GitLab Duo Chat now generally available</strong>
    <p><p>GitLab Duo Chat is now <a href="https://docs.gitlab.com/ee/policy/experiment-beta-support.html#generally-available-ga">generally available</a>. As part of this release, we are also making these capabilities generally available:</p>
<ul>
<li>Code explanation helps developers and less technical users understand unfamiliar code faster</li>
<li>Code refactoring enables developers to simplify and improve existing code</li>
<li>Test generation automates repetitive tasks and helps teams catch bugs sooner</li>
</ul>
<p>Users can access GitLab Duo Chat in the GitLab UI, in the Web IDE, in VS Code, or in JetBrains IDEs.</p>
<p>Learn more about this release of GitLab Duo Chat from this <a href="https://about.gitlab.com/blog/gitlab-duo-chat-now-generally-available/">blog post</a>.</p>
<p>Chat is currently freely accessible by all Ultimate and Premium users. Instance administrators, group owners, and project owners can choose to <a href="https://docs.gitlab.com/ee/user/gitlab_duo/turn_on_off.html">restrict Duo features from accessing and processing their data</a>.</p>
<p>The GitLab Duo Chat is part of <a href="https://about.gitlab.com/gitlab-duo/#pricing">GitLab Duo Pro</a>. To ease the transition for Chat beta users who have yet to purchase GitLab Duo Pro, Duo Chat will remain available to existing Premium and Ultimate customers (without the add-on) for a short period of time. We will announce when access will be restricted to Duo Pro subscribers at a later date.</p>
<p>Feel free to share your thoughts by clicking the feedback button in the chat or by creating an issue and mentioning GitLab Duo Chat. We’d love to hear from you!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/gitlab_duo_chat/index.html">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Duo Chat available in JetBrains IDEs</strong>
    <p><p>We are happy to announce the availability of GitLab Duo Chat in JetBrains IDEs.</p>
<p>As part of GitLab&rsquo;s AI offerings, Duo Chat further streamlines the developer experience by directly bringing an interactive chat window into any supported JetBrains IDE and the ability to explain code, write tests, and refactor existing code.</p>
<p>For a complete list of capabilities, see our <a href="https://docs.gitlab.com/ee/user/gitlab_duo_chat/index.html">Duo Chat documentation</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/editor_extensions/jetbrains_ide/index.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Security policy scopes</strong>
    <p><p>Policy scoping provides granular management and enforcement of policies. Across both merge request approval (scan result) policies and scan execution policies, this new feature enables security and compliance teams to scope policy enforcement to a compliance framework or to a set of included/excluded projects in a group.</p>
<p>While today all policies managed in a security policy project are enforced against all linked groups, subgroups, and projects, policy scoping will allow you to refine that enforcement policy by policy. This allows security and compliance teams to:</p>
<ul>
<li>More easily manage policies centrally across their organization, while still enforcing policies granularly.</li>
<li>Get a better sense of how the controls they are implementing and enforcing in GitLab roll up to the compliance frameworks they&rsquo;ve defined.</li>
<li>View and manage which policies are linked to a compliance framework through the compliance center.</li>
<li>Better organize and understand their security and compliance posture.</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/policies/scan-execution-policies.html#security-policy-scopes">View Documentation</a></p>
  </li>
  <li>
    <strong>Understand your users better with Product Analytics</strong>
    <p><p>It is critical to understand how your users are engaging with your application in order to make data-driven decisions about future innovations and optimizations. Are you seeing an uptick in usage for your top business critical URLs, is there an unusual dip in monthly active users, are you seeing more customers engaging with a mobile Android device? By having the answers to questions like this and making them accessible to your engineering teams from the GitLab platform, your teams can stay in sync with how their development work is affecting user outcomes.</p>
<p>With GitLab&rsquo;s new Product Analytics feature, you can instrument your applications, collect key usage and adoption data about your users, and then display it inside GitLab. You can visualize data in dashboards, report on it, and filter it in a variety of different ways to find insights about your users. Your team can now quickly identify and respond to unexpected dips or spikes in customer usage that signify an issue, as well as celebrate the success of their recent releases.</p>
<p>To use Product Analytics, you will need a Kubernetes cluster to install this <a href="https://gitlab.com/gitlab-org/analytics-section/product-analytics/helm-charts">helm chart</a> and
instrument your application to send traffic to it. GitLab will then connect to the cluster to retrieve the
data for visualization.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/product_analytics/">View Documentation</a></p>
  </li>
  <li>
    <strong>Disable personal access tokens for Enterprise Users</strong>
    <p><p>GitLab.com group Owners can now disable the creation and use of personal access tokens for any enterprise users in their groups. Due to the powerful privileges that can be associated with personal access tokens, some Owners may want to disable these tokens for security reasons.</p>
<p>This granular control gives options when it comes to balancing security and accessibility on GitLab.com.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html#disable-personal-access-tokens-for-enterprise-users">View Documentation</a></p>
  </li>
  <li>
    <strong>Autocomplete support for links to wiki pages</strong>
    <p><p>We&rsquo;re thrilled to introduce autocomplete support for links to wiki pages in GitLab 16.11! With this new feature, linking to wiki pages from your epics and issues
has never been easier - it&rsquo;s just a matter of a few keystrokes.</p>
<p>Gone are the days of having to copy and paste wiki page URLs into epic and issue comments. Now, simply navigate to any group or project with wiki pages, access an epic or
issue, and use the autocomplete shortcut to seamlessly link to your wiki pages from the epic or issue!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/markdown.html#gitlab-specific-references">View Documentation</a></p>
  </li>
  <li>
    <strong>Sidebar for metadata on the project overview page</strong>
    <p>We&rsquo;ve redesigned the project overview page. Now you can find all of the project information and links in one sidebar rather than multiple areas.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/working_with_projects.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Email notifications for changes made using Switchboard</strong>
    <p><p>Configuration changes made to your GitLab Dedicated instance by tenant administrators using Switchboard will now generate email notifications when complete.</p>
<p>All users with access to view or edit your tenant in Switchboard will receive a notification for each change made.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/dedicated/configure_instance/users_notifications.html#manage-notification-preferences">View Documentation</a></p>
  </li>
  <li>
    <strong>Option to cancel a pipeline immediately if any jobs fails</strong>
    <p><p>Sometimes after you notice a job fails, you might manually cancel the rest of the pipeline to save resources while you work on the issue causing the failure. With GitLab 16.11, you can now configure pipelines to be cancelled automatically when any job fails. With large pipelines that take a long time to run, especially with many long-running jobs that run in parallel, this can be an effective way to reduce resource usage and costs.</p>
<p>You can even configure a pipeline to immediately <a href="https://docs.gitlab.com/ee/ci/pipelines/downstream_pipelines.html#auto-cancel-the-parent-pipeline-from-a-downstream-pipeline">cancel if a downstream pipeline fails</a>, which cancels the parent pipeline and all other downstream pipelines.</p>
<p>Special thanks to <a href="https://gitlab.com/zillemarco">Marco</a> for contributing to the feature!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/yaml/#workflowauto_cancelon_job_failure">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Scale and Deployments</h4>
<ul>
  <li>
    <strong>Omnibus improvements</strong>
    <p><ul>
<li>
<p>In GitLab 17.0, the minimum-supported version of PostgreSQL will become 14. In preparation for this change, in GitLab 16.11 we have changed the
<code>attempt_auto_pg_upgrade?</code> setting to <code>true</code>, which will attempt to automatically upgrade the version of PostgreSQL to 14.</p>
<p>This process is the same as for last time we bumped the minimum-supported PostgreSQL version.</p>
</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/omnibus/">View Documentation</a></p>
  </li>
  <li>
    <strong>Updated project archiving functionality</strong>
    <p><p>Now it&rsquo;s easier to identify archived projects in project lists. From 16.11, archived projects display an <strong>Archived</strong> badge in the <strong>Archived</strong> tab of the group overview. This badge is also part of the project title on the project overview page.</p>
<p>An alert message clarifies that archived projects are read-only. This message is visible on all project pages to ensure that this context is not lost even when working on sub-pages of the archived project.</p>
<p>In addition, when deleting a group, the confirmation modal now lists the number of archived projects to prevent accidental deletions.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/working_with_projects.html#archive-a-project">View Documentation</a></p>
  </li>
  <li>
    <strong>Custom webhook headers</strong>
    <p><p>Previously, GitLab webhooks did not support custom headers. This meant you could not use them with systems that accept authentication tokens from headers with specific names.</p>
<p>With this release, you can add up to 20 custom headers when you create or edit a webhook. You can use these custom headers for authentication to external services.</p>
<p>With this feature and the <a href="https://docs.gitlab.com/ee/user/project/integrations/webhooks.html#custom-webhook-template">custom webhook template</a> introduced in GitLab 16.10, you can now fully design custom webhooks. You can configure your webhooks to:</p>
<ul>
<li>Post custom payloads.</li>
<li>Add any required authentication headers.</li>
</ul>
<p>Like secret tokens and URL variables, custom headers are reset when the target URL changes.</p>
<p>Thanks to <a href="https://gitlab.com/Taucher2003">Niklas</a> for <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/146702">this community contribution</a>!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/integrations/webhooks.html#custom-headers">View Documentation</a></p>
  </li>
  <li>
    <strong>Test project hooks with the REST API</strong>
    <p><p>Previously, you could test project hooks in the GitLab UI only. With this release, you can now trigger test hooks for specified projects by using the REST API.</p>
<p>Thanks to <a href="https://gitlab.com/lifez">Phawin</a> for <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/147656">this community contribution</a>!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/api/projects.html#trigger-a-test-project-hook">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab for Slack app configurable for groups and instances</strong>
    <p><p>Previously, you could configure the GitLab for Slack app for one project at a time only. With this release, it&rsquo;s now possible to configure the integration for groups or instances and make changes to many projects at once.</p>
<p>This improvement brings the GitLab for Slack app closer to feature parity with the deprecated <a href="https://docs.gitlab.com/ee/user/project/integrations/slack.html">Slack notifications integration</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/integrations/gitlab_slack_application.html#from-the-project-or-group-settings">View Documentation</a></p>
  </li>
  <li>
    <strong>Configurable import jobs limit</strong>
    <p><p>Until now, the maximum number of import jobs for:</p>
<ul>
<li>GitHub importer was 1000.</li>
<li>Bitbucket Cloud and Bitbucket Server importers was 100.</li>
</ul>
<p>These limits were hard-coded and couldn&rsquo;t be changed. These limits might have slowed down imports, because they might have been insufficient
to allow the import jobs to be processed at the same rate they were enqueued.</p>
<p>In this release, we&rsquo;ve moved the hard-coded limits to application settings. Although we are not increasing these limits on GitLab.com, administrators
of self-managed GitLab instances can now configure the number of import jobs according to their needs.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/settings/import_and_export_settings.html#maximum-number-of-simultaneous-import-jobs">View Documentation</a></p>
  </li>
  <li>
    <strong>Explore your Product Analytics data with GitLab Duo</strong>
    <p><p><a href="/#understand-your-users-better-with-product-analytics">Product Analytics is now generally available</a>, and this release includes a <a href="https://docs.gitlab.com/ee/user/analytics/analytics_dashboards.html#visualization-designer">custom visualization designer</a>. You can use it to explore your application event data, and build dashboards to help you understand your customers&rsquo; usage and adoption patterns.</p>
<p>In the visualization designer, you can now ask GitLab Duo to build visualizations for you by entering plain text requests, for example &ldquo;Show me the count of monthly active users in 2024&rdquo; or &ldquo;List the top urls this week.</p>
<p>GitLab Duo in Product Analytics is available as an <a href="https://docs.gitlab.com/ee/policy/experiment-beta-support.html#experiment">Experimental</a> feature.</p>
<p>You can help us mature this feature by providing feedback about your experience with GitLab Duo in the custom visualization designer in this <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/455363">feedback issue</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/product_analytics/">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>Group comment templates</strong>
    <p><p>Across an organization it can be helpful to have the same templated response in issues, epics, or merge requests. These responses might include standard questions that need to be answered, responses to common problems, or maybe structure for merge request review comments.</p>
<p>Group comment templates enable you to create saved responses that you can apply in comment boxes around GitLab to speed up your workflow. This new addition to comment templates allows organizations to create and manage templates centrally, so all of their users benefit from the same templates.</p>
<p>To create a comment template, go to any comment box on GitLab and select <strong>Insert comment template &gt; Manage group comment templates</strong>. After you create a comment template, it&rsquo;s available for all group members. Select the <strong>Insert comment template</strong> icon while making a comment, and your saved response will be applied.</p>
<p>We&rsquo;re really excited about this next iteration of comment templates and will also be adding <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/440818">project-level comment templates</a> soon too. If you have any feedback, please leave it in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/451520">issue 45120</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/profile/comment_templates.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Build step of Auto DevOps upgraded</strong>
    <p><p>Because the <code>heroku/buildpacks:20</code> image used by the Auto Build component of Auto DevOps was deprecated upstream, we are moving to the <code>heroku/builder:20</code> image.</p>
<p>This breaking change arrives outside a GitLab major release to accommodate a breaking change upstream. The upgrade is unlikely to break your pipelines. As a temporary workaround, you can also manually configure the <code>heroku/builder:20</code> image and <a href="https://docs.gitlab.com/ee/topics/autodevops/troubleshooting.html#skipping-errors">skip the builder sunset errors</a>.</p>
<p>Additionally, we&rsquo;re planning another major upgrade from <code>heroku/builder:20</code> to <code>heroku/builder:22</code> in GitLab 17.0.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/topics/autodevops/troubleshooting.html#builder-sunset-error">View Documentation</a></p>
  </li>
  <li>
    <strong>Users list search and filter improvements</strong>
    <p><p>The Admin Area users page has been improved.</p>
<p>Previously, tabs horizontally spanned across the top of the users list, making it difficult to navigate to the desired filter.</p>
<p>Now, filters have been combined into the search box, making it much easier to search and filter users.</p>
<p>Thank you <a href="https://www.linkedin.com/in/bahek2462774/">Ivan Shtyrliaiev</a> for your contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/admin_area.html#administering-users">View Documentation</a></p>
  </li>
  <li>
    <strong>Webhook notifications for expiring group and project access tokens</strong>
    <p><p>Webhook events for project and group access tokens are now available.</p>
<p>Previously, email was the only way to get notifications about expiring tokens. A webhook event, if triggered, will be triggered seven days before an access token expires.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/integrations/webhook_events.html#project-and-group-access-token-events">View Documentation</a></p>
  </li>
  <li>
    <strong>Display linked Security Policies in Compliance Frameworks</strong>
    <p><p>As the compliance center becomes the battle station for compliance managers, you can now manage compliance frameworks, and also gain insight into controls that have
been created through security policies and linked to a compliance framework.</p>
<p>Enforce security scanners to run in projects that are in-scope for your compliance, enforce two-person approval, or enable vulnerability management workflows
through these extensive controls and then roll them up to a compliance framework, ensuring relevant projects within the framework are properly enforced by the control.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/compliance_frameworks.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Renew application secret with API</strong>
    <p><p>You can now use the Applications API to renew application secrets. Previously, you had to use the UI to do this. Now you can use the API to rotate secrets programatically.</p>
<p>Thank you <a href="https://gitlab.com/lifez">Phawin</a> for your contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/api/applications.html#renew-an-application-secret">View Documentation</a></p>
  </li>
  <li>
    <strong>Extend policy bot comment with violation data</strong>
    <p><p>The security policy bot gives users context to understand when policies are enforced on their project, when evaluation is completed, and if there are any violations blocking an MR, with guidance to resolve them. We have now extended support in the bot comment to supply additional insight into why an MR may be blocked by a policy, with more granular feedback on how to resolve. Details provided by the comment include:</p>
<ul>
<li>Security findings that are specifically blocking the MR</li>
<li>Out-of-policy licenses</li>
<li>Policy errors that may default in a &ldquo;fail closed&rdquo; and blocking behavior</li>
<li>Details regarding the pipelines that are being considered in the evaluation for security findings</li>
</ul>
<p>With these extra details, you can now more quickly understand the state of your MR and self-serve to troubleshoot any issues.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/policies/scan-result-policies.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Authenticate to Google Cloud with workload identity federation</strong>
    <p><p>Workload identity federation allows you to securely connect workloads between GitLab and Google Cloud without the use of service account keys. This improves security, because keys can potentially be long-lived credentials that expose a vector for attack. Keys also come with management overhead for creating, securing, and rotating.</p>
<p>Workload identity federation allows you to map IAM roles between GitLab and Google Cloud.</p>
<p>This feature is in Beta and is currently available only on GitLab.com.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/integration/google_cloud_iam.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Issue with duplicate security policies resolved</strong>
    <p><p>In GitLab 16.9 and earlier, it was possible for a project to both inherit security policies from a parent group or subgroup and link to the same security policies project. The result was that policies were duplicated in the policies list.</p>
<p>This issue has been resolved and it is no longer possible to link to a security policies project from which policies are already inherited.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/policies/">View Documentation</a></p>
  </li>
  <li>
    <strong>More username options</strong>
    <p><p>Usernames can only include non-accented letters, digits, underscores (<code>_</code>), hyphens (<code>-</code>), and periods (<code>.</code>).
Usernames must not start with a hyphen (<code>-</code>), or end in a period (<code>.</code>), <code>.git</code>, or <code>.atom</code>.</p>
<p>Username validation now more accurately states this criteria. This improved validation means that you are clearer on your options when choosing your username.</p>
<p>Thank you <a href="https://www.linkedin.com/in/jzeng88/">Justin Zeng</a> for your contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/profile/#change-your-username">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved GitLab Pages visibility in sidebar</strong>
    <p><p>In previous releases, for projects with a GitLab Pages site, it was difficult to find the site URL.</p>
<p>From GitLab 16.11, the right sidebar has a shortcut link to the site, so you can find the URL without needing to check the docs.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/pages/">View Documentation</a></p>
  </li>
  <li>
    <strong>Connect Google Artifact Registry to your GitLab project</strong>
    <p><p>You use the GitLab container registry to view, push, and pull Docker and OCI images alongside your source code and pipelines. For many GitLab customers, this works great for container images during the <code>test</code> and <code>build</code> phases. But, it&rsquo;s common for organizations to publish their production images to a cloud provider, like Google.</p>
<p>Previously, to push images from GitLab to Google Artifact Registry, you had to create and maintain custom scripts to connect and deploy to Artifact Registry. This was inefficient and error prone. In addition, there was no way easy way to get a holistic view of all of your container images.</p>
<p>Now, you can leverage the new Google Artifact Management feature to easily connect your GitLab project to an Artifact Registry repository. Then you can use GitLab CI/CD pipelines to publish images to the Artifact Registry. You can also view images that have published to the Artifact Registry in GitLab by going to <strong>Deploy &gt; Google Artifact Registry</strong>. To view details about an image, simply select an image.</p>
<p>This feature is in Beta and is currently available only on GitLab.com.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/integrations/google_artifact_management.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Visually distinguish epics using colors</strong>
    <p><p>To further improve the ability to use portfolio management features across the organization, you can now distinguish epics using colors on <a href="https://docs.gitlab.com/ee/user/group/roadmap/">roadmaps</a> and <a href="https://docs.gitlab.com/ee/user/group/epics/epic_boards.html">epic boards</a>.</p>
<p>Quickly distinguish between group ownership, stage in a lifecycle, development towards maturity, or a number of other categorizations with this lightweight but versatile feature.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/epics/manage_epics.html#epic-color">View Documentation</a></p>
  </li>
  <li>
    <strong>Value stream events can now be calculated cumulatively</strong>
    <p><p>We introduced a more robust method for calculating durations between label events. This change accommodates scenarios where events occur multiple times, such as label changes in merge requests back and forth between development to review states. Previously, the duration was calculated as the total time elapsed between the first and last label event.</p>
<p>Now, the duration is calculated as cumulative time, meaning it now correctly represents only the time when an issue or merge request had a given label.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/value_stream_analytics/#cumulative-label-event-duration">View Documentation</a></p>
  </li>
  <li>
    <strong>Dependency graph support for dependency scanning SBOMs</strong>
    <p><p>Users can access dependency graph information in CycloneDX SBOMs generated as a part of their dependency scanning report. Dependency graph information is available for the following package managers:</p>
<ul>
<li>NuGet</li>
<li>Yarn 1.x</li>
<li>sbt</li>
<li>Conan</li>
</ul></p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/dependency_list/">View Documentation</a></p>
  </li>
  <li>
    <strong>Dependency Scanning support for Yarn v4</strong>
    <p>Dependency Scanning supports Yarn v4. This enhancement allows our analyzer to parse Yarn v4 lockfiles.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/dependency_scanning/index.html#supported-languages-and-package-managers">View Documentation</a></p>
  </li>
  <li>
    <strong>DAST analyzer performance updates</strong>
    <p><p>During the 16.11 release milestone we completed the following DAST improvements:</p>
<ul>
<li>Snip navigation paths to improve crawler performance, which reduced scan time by 20% according to our benchmark test. <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/430815">See the issue</a> for more details.</li>
<li>Optimize DAST reporting to reduce memory usage, which reduced runner memory spikes during DAST scans. <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/444180">See the issue</a> for more details.</li>
</ul></p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/dast/browser/">View Documentation</a></p>
  </li>
  <li>
    <strong>Automate the creation of Google Compute Engine Runners from GitLab - Public Beta</strong>
    <p><p>Previously, creating GitLab Runners in Google Compute Engine required multiple context switches from GitLab and Google Cloud.</p>
<p>Now, you can easily provision GitLab Runners in Google Compute Engine with a terraform template from the GitLab Runner Infrastructure Toolkit and GitLab to deploy a GitLab runner and provision the Google Cloud infrastructure - without having to switch between multiple systems.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/runners/provision_runners_google_cloud.html#creating-a-runner-provisioned-in-google-cloud">View Documentation</a></p>
  </li>
  <li>
    <strong>Improve automatic retry for failed CI jobs with specific exit codes</strong>
    <p><p>Previously, you could use <code>retry:when</code> in addition to <code>retry:max</code> to configure how many times a job is retried
when specific failures occur, like when a script fails.</p>
<p>With this release, you can now use <a href="https://docs.gitlab.com/ee/ci/yaml/#retryexit_codes"><code>retry:exit_codes</code></a>
to configure automatic retries of failed jobs based on specific script exit codes.
You can use <code>retry:exit_codes</code> with <code>retry:when</code> and <code>retry:max</code> to fine-tune your pipeline&rsquo;s behavior
according to your specific needs and improve your pipeline execution.</p>
<p>Thanks to <a href="https://gitlab.com/BaptisteLalanne">Baptiste Lalanne</a> for this community contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/yaml/#retry">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner 16.11</strong>
    <p><p>We’re also releasing GitLab Runner 16.11 today! GitLab Runner is the lightweight, highly-scalable agent that runs your CI/CD jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.</p>
<h4 id="bug-fixes">Bug Fixes:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/31077">Crash: fatal error: concurrent map read and map write</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/37243">FF_KUBERNETES_HONOR_ENTRYPOINT feature not working</a></li>
</ul>
<p>The list of all changes is in the GitLab Runner <a href="https://gitlab.com/gitlab-org/gitlab-runner/blob/16-11-stable/CHANGELOG.md">CHANGELOG</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/runner">View Documentation</a></p>
  </li>
  <li>
    <strong>Expanded Hashicorp Vault Secrets support, including Artifactory and AWS</strong>
    <p><p>The GitLab integration with HashiCorp Vault has been expanded to support more types of secrets. You can now select a <code>generic</code> type of secrets engine, introduced in GitLab Runner 16.11. This generic engine supports HashiCorp Vault <a href="https://jfrog.com/help/r/jfrog-integrations-documentation/hashicorp-vault-artifactory-secrets-plugin">Artifactory Secrets Plugin</a> and <a href="https://developer.hashicorp.com/vault/docs/secrets/aws">AWS secrets engine</a>. Use this option to safely retrieve the secrets you need and use them in GitLab CI/CD pipelines!</p>
<p>Thanks so much to <a href="https://gitlab.com/urbanwax">Ivo Ivanov</a> for this great contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/secrets/#vault-secrets-engines">View Documentation</a></p>
  </li>
  <li>
    <strong>Control who can download job artifacts</strong>
    <p><p>By default, all generated artifacts from CI/CD jobs in a public pipeline are available for download by all users with access to the pipeline. However, there are cases where artifacts should never be downloaded, or only be accessible for download by team members with a higher access level.</p>
<p>So in this release, we&rsquo;ve added the <code>artifacts:access</code> keyword. Now, users can control whether artifacts can be downloaded by all users with access to the pipeline, only users with the Developer role or higher, or no user at all.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/yaml/#artifactsaccess">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved pipeline details page</strong>
    <p><p>The pipeline graph offers a comprehensive overview of your pipelines, showing job statuses, runtime updates, multi-project pipelines, and parent-child pipelines.</p>
<p>Today, we&rsquo;re excited to announce the release of the redesigned pipeline graph with enhanced aesthetics, grouped jobs visualization, improved mobile expirence and expanded downstream pipeline visibility within your existing view.</p>
<p>We&rsquo;d greatly appreciate it if you could try it out and share your feedback through this dedicated <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/450676">issue</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/pipelines/#view-pipelines">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab Patch Release: 16.10.3, 16.9.5, 16.8.7</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-10-3-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-10-3-released/</id><published>2024-04-15T00:00:00Z</published><updated>2024-04-15T00:00:00Z</updated><author><name>Jenny Kim</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On April 15, 2024, we released versions 16.10.3, 16.9.5, 16.8.7 for GitLab Community Edition and Enterprise Edition.</p>
<p>These versions resolve a number of regressions and bugs. This patch release does not include any security fixes.</p>
<h2 id="gitlab-community-edition-and-enterprise-edition">GitLab Community Edition and Enterprise Edition</h2>
<h3 id="16103">16.10.3</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7538">Fix patroni no longer working with update to ydiff 1.3</a></li>
</ul>
<h3 id="1695">16.9.5</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/6811">Update Go packages to address vulnerabilities in 16-9-stable</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/6807">Make Gitaly no downtime upgrades work again in 16.9</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7537">Fix patroni no longer working with update to ydiff 1.3</a></li>
</ul>
<h3 id="1687">16.8.7</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7536">Fix patroni no longer working with update to ydiff 1.3</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>This version does not include any new migrations, and for multi-node deployments, <a href="https://docs.gitlab.com/ee/update/#upgrading-without-downtime">should not require any downtime</a>.</p>
<p>Please be aware that by default the Omnibus packages will stop, run migrations,
and start again, no matter how “big” or “small” the upgrade is. This behavior
can be changed by adding a <a href="https://docs.gitlab.com/ee/update/zero_downtime.html"><code>/etc/gitlab/skip-auto-reconfigure</code></a> file,
which is only used for <a href="https://docs.gitlab.com/omnibus/update/README.html">updates</a>.</p>
<h2 id="updating">Updating</h2>
<p>To update, check out our <a href="https://about.gitlab.com/update/">update page</a>.</p>
<h2 id="gitlab-subscriptions">GitLab subscriptions</h2>
<p>Access to GitLab Premium and Ultimate features is granted by a paid <a href="https://about.gitlab.com/pricing/">subscription</a>.</p>
<p>Alternatively, <a href="https://gitlab.com/users/sign_in">sign up for GitLab.com</a>
to use GitLab&rsquo;s own infrastructure.</p>
<h2 id="were-combining-patch-and-security-releases">We’re combining patch and security releases</h2>
<p>This improvement in our release process matches the industry standard and will help GitLab users get information about security and
bug fixes sooner, <a href="https://about.gitlab.com/blog/were-combining-patch-and-security-releases/">read the blog post here</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 16.10.2, 16.9.4, 16.8.6</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-10-2-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-10-2-released/</id><published>2024-04-10T00:00:00Z</published><updated>2024-04-10T00:00:00Z</updated><author><name>Greg Alfaro</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On April 10, 2024, we released versions 16.10.2, 16.9.4, 16.8.6 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important bug and security fixes, and we strongly recommend that all GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version.</p>
<p>GitLab releases fixes for vulnerabilities in dedicated patch releases. There are two types of patch releases:
scheduled releases, and ad-hoc critical patches for high-severity vulnerabilities. Scheduled releases are released twice a month on the second and fourth Wednesdays.
For more information, you can visit our <a href="https://handbook.gitlab.com/handbook/engineering/releases/">releases handbook</a> and <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of GitLab release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.</p>
<p>For security fixes, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are dedicated to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest patch release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="security-fixes">Security fixes</h2>
<h3 id="table-of-security-fixes">Table of security fixes</h3>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-10-2-released/#stored-xss-injected-in-diff-viewer">Stored XSS injected in diff viewer</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-10-2-released/#stored-xss-via-autocomplete-results">Stored XSS via autocomplete results</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-10-2-released/#redos-on-integrations-chat-messages">Redos on Integrations Chat Messages</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-10-2-released/#redos-during-parse-junit-test-report">Redos During Parse Junit Test Report</a></td>
          <td>Medium</td>
      </tr>
  </tbody>
</table>
<h3 id="stored-xss-injected-in-diff-viewer">Stored XSS injected in diff viewer</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 16.9 before 16.9.4, all versions starting from 16.10 before 16.10.2. A payload may lead to a stored XSS while using the diff viewer, allowing attackers to perform arbitrary actions on behalf of victims.
This is a high severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N</code>, 8.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-3092">CVE-2024-3092</a>.</p>
<p>Thanks <a href="https://hackerone.com/yvvdwf">yvvdwf</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="stored-xss-via-autocomplete-results">Stored XSS via autocomplete results</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 16.7 to 16.8.6, all versions starting from 16.9 before 16.9.4, all versions starting from 16.10 before 16.10.2. Using the autocomplete for issues references feature, a crafted payload may lead to a stored XSS, allowing attackers to perform arbitrary actions on behalf of victims.
This is a high severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N</code>, 8.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-2279">CVE-2024-2279</a>.</p>
<p>Thanks <a href="https://hackerone.com/yvvdwf">yvvdwf</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="redos-on-integrations-chat-messages">Redos on Integrations Chat Messages</h3>
<p>A denial of service vulnerability was identified in GitLab CE/EE, versions 16.7.7 prior to 16.8.6, 16.9 prior to 16.9.4 and 16.10 prior to 16.10.2 which allows an attacker to spike the GitLab instance resources usage resulting in service degradation via chat integration feature.
This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L</code>, 4.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-6489">CVE-2023-6489</a>.</p>
<p>Thanks <code>Anonymizer</code> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="redos-during-parse-junit-test-report">Redos During Parse Junit Test Report</h3>
<p>An issue has been discovered in GitLab EE affecting all versions before 16.8.6, all versions starting from 16.9 before 16.9.4, all versions starting from 16.10 before 16.10.2. It was possible for an attacker to cause a  denial of service using malicious crafted content in a junit test report file.
This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L</code>, 4.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-6678">CVE-2023-6678</a>.</p>
<p>Thanks <code>Anonymizer</code> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="bug-fixes">Bug fixes</h2>
<h3 id="16102">16.10.2</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/147975">Quarantine flaky atomic processing ResetSkippedJobsService specs</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/148103">Fix include_optional_metrics_in_service_ping during migration to 16.10</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/148227">Use alpine:latest instead of alpine:edge in CI images [16.10]</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/147937">[16.10] Backport Delete callback should use namespace_id</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/148417">[16.10] Backport handle null owner when indexing projects</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/147942">Backport Zoekt: Retry indexing if too many requests to 16.10</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/148687">Backport https://gitlab.com/gitlab-org/gitlab/-/merge_requests/148596</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/148663">Fix URL validator for mirror services when using localhost</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/148571">Backport !148105 into 16.10</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7503">Cherry-pick &lsquo;fix-omnibus-gitconfig-deprecation&rsquo; into &lsquo;16-10-stable&rsquo;</a></li>
</ul>
<h3 id="1694">16.9.4</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/147985">Quarantine flaky atomic processing ResetSkippedJobsService specs</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/148229">Use alpine:latest instead of alpine:edge in CI images [16.9]</a></li>
</ul>
<h3 id="1686">16.8.6</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/147986">Quarantine flaky atomic processing ResetSkippedJobsService specs</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/148231">Use alpine:latest instead of alpine:edge in CI images [16.8]</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-patch-notifications">Receive Patch Notifications</h2>
<p>To receive patch blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">patch release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<h2 id="were-combining-patch-and-security-releases">We’re combining patch and security releases</h2>
<p>This improvement in our release process matches the industry standard and will help GitLab users get information about security and
bug fixes sooner, <a href="https://about.gitlab.com/blog/were-combining-patch-and-security-releases/">read the blog post here</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Security Release: 16.10.1, 16.9.3, 16.8.5</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-10-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-10-1-released/</id><published>2024-03-27T00:00:00Z</published><updated>2024-03-27T00:00:00Z</updated><author><name>Kevin Morrison</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On March 27, 2024, we released versions 16.10.1, 16.9.3, 16.8.5 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important security fixes, and we strongly recommend that all GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version.</p>
<p>GitLab releases patches for vulnerabilities in dedicated security releases. There are two types of security releases:
a monthly, scheduled security release, released a week after the feature release (which deploys on the 3rd Thursday of each month),
and ad-hoc security releases for critical vulnerabilities. For more information, you can visit our <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of our regular and security release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.
In addition, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are dedicated to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest security release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="table-of-fixes">Table of fixes</h2>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-10-1-released/#stored-xss-injected-in-wiki-page-via-banzai-pipeline">Stored-XSS injected in Wiki page via Banzai pipeline</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-10-1-released/#dos-using-crafted-emojis">DOS using crafted emojis</a></td>
          <td>Medium</td>
      </tr>
  </tbody>
</table>
<h3 id="stored-xss-injected-in-wiki-page-via-banzai-pipeline">Stored-XSS injected in Wiki page via Banzai pipeline</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions before 16.8.5, all versions starting from 16.9 before 16.9.3, all versions starting from 16.10 before 16.10.1. A wiki page with a crafted payload may lead to a Stored XSS, allowing attackers to perform arbitrary actions on behalf of victims.
This is a high severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N</code>, 8.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-6371">CVE-2023-6371</a>.</p>
<p>Thanks <a href="https://hackerone.com/yvvdwf">yvvdwf</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="dos-using-crafted-emojis">DOS using crafted emojis</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions before 16.8.5, all versions starting from 16.9 before 16.9.3, all versions starting from 16.10 before 16.10.1. It was possible for an attacker to cause a denial of service using malicious crafted description parameter for labels.
This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L</code>, 4.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-2818">CVE-2024-2818</a>.</p>
<p>Thanks Quintin Crist of Trend Micro for reporting this vulnerability to us.</p>
<h3 id="bump-postgresql-to-1314-1411">Bump PostgreSQL to 13.14, 14.11</h3>
<p>The PostgreSQL project released an update so we are updating to versions 13.14 and 14.11.</p>
<h2 id="non-security-patches">Non Security Patches</h2>
<h3 id="16101">16.10.1</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/1767">CI: bump CI_TOOLS_VERSIONS to 5.8.0 (Backport 16.10)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/6778">Backport protobuf and pgx upgrades [16.10]</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/147552">Fix new project group templates pagination (16-10-stable-ee)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/147704">Update redis-client to v0.21.1</a></li>
</ul>
<h3 id="1693">16.9.3</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/1768">CI: bump CI_TOOLS_VERSIONS to 5.8.0 (Backport 16.9)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/6780">Backport protobuf and pgx upgrades [16.9]</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/146777">Fix detect-tests CI job</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/146820">Collect the artifacts from the same namespace</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/147554">Fix new project group templates pagination (16-9-stable-ee)</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7471">Backport: RSpec changes for .com handling nightly packages</a></li>
</ul>
<h3 id="1685">16.8.5</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/1769">CI: bump CI_TOOLS_VERSIONS to 5.8.0 (Backport 16.8)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/146774">Fix detect-tests CI job</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7472">Backport: RSpec changes for .com handling nightly packages</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7479">Backport c2a94ae8 for creating stable tag for 16-8-stable</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-security-release-notifications">Receive Security Release Notifications</h2>
<p>To receive security release blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">security release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<h2 id="were-combining-patch-and-security-releases">We’re combining patch and security releases</h2>
<p>This improvement in our release process matches the industry standard and will help GitLab users get information about security and
bug fixes sooner, <a href="https://about.gitlab.com/blog/were-combining-patch-and-security-releases/">read the blog post here</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab 16.10 released</title><link href="https://docs.gitlab.com/releases/16/16-10-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/16/16-10-released/</id><published>2024-03-21T00:00:00Z</published><updated>2024-03-21T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On March 21, 2024, GitLab 16.10 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong></strong>
</p>
<p><a href="https://gitlab.com/X_Sheep">Lennard Sprong</a> previously won the GitLab MVP award in 15.4 and
was also nominated in 16.9.
He continues to provide contributions to GitLab Workflow for VS Code, merging 8 contributions
in the past two months.
Some of his past contributions include the ability to <a href="https://gitlab.com/gitlab-org/gitlab-vscode-extension/-/merge_requests/674">watch the trace of running CI jobs</a>,
<a href="https://gitlab.com/gitlab-org/gitlab-vscode-extension/-/merge_requests/1336">view downstream pipelines</a>,
and <a href="https://gitlab.com/gitlab-org/gitlab-vscode-extension/-/merge_requests/1319">compare images in merge requests</a>.
Lennard is also actively involved in issues inside the <a href="https://gitlab.com/gitlab-org/gitlab-vscode-extension">gitlab-vscode-extension</a>
project.</p>
<p><a href="https://gitlab.com/erran">Erran Carey</a>, Staff Fullstack Engineer at GitLab, nominated Lennard and
noted that &ldquo;Lennard resolved an <a href="https://gitlab.com/gitlab-org/gitlab-vscode-extension/-/issues/1000">issue viewing pipelines</a>
affecting GitLab Community Edition users.
He pointed impacted users to the existing workaround before <a href="https://gitlab.com/gitlab-org/gitlab-vscode-extension/-/merge_requests/1417">creating a merge request</a>
to address the issue.&rdquo;</p>
<p><a href="https://gitlab.com/viktomas">Tomas Vik</a>, Staff Fullstack Engineer at GitLab, additionally supported Lennard and highlighted a contribution
to <a href="https://gitlab.com/gitlab-org/gitlab-vscode-extension/-/merge_requests/1319">add support for image diff</a>
that allows people to view image changes during merge request review.</p>
<p><a href="https://gitlab.com/zillemarco">Marco Zille</a> also wins his second GitLab MVP award, previously winning in 15.3.
Marco was recognized not only for code contributions this release, but also for ongoing efforts supporting GitLab&rsquo;s wider
community of contributors, running community pairing sessions, collaborating with GitLab team members, and
reviewing merge requests.</p>
<p>Marco added the ability to <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/23605">cancel a pipeline immediately after one job fails</a>.
The feature is enabled and available on GitLab.com but still behind a feature flag
for self-hosted instances.
It will be made available for everyone in 16.11.</p>
<p><a href="https://gitlab.com/allison.browne">Allison Browne</a>, Senior Backend Engineer at GitLab, nominated Marco for picking up this long
standing and highly requested feature request in pipeline execution.
<a href="https://gitlab.com/fabiopitino">Fabio Pitino</a>, Principal Engineer at GitLab, added that &ldquo;Marco
not only implemented the fix but also was instrumental to the design of the feature,
bringing use cases and discussing them with customers interested in the feature.&rdquo;</p>
<p><a href="https://gitlab.com/splattael">Peter Leitzen</a> additionally supported Marco&rsquo;s nomination by highlighting how Marco helped to <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/112813#note_1737719869">review
and then finish a fix</a>
for loading the stack trace from Sentry.</p>
<p>We are so grateful for the continued support from Lennard and Marco to improve GitLab and support our
open source community! 🙌</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>Semantic versioning in the CI/CD catalog</strong>
    <p><p>To enforce consistent behavior across published components, in GitLab 16.10 we will enforce Semantic versioning for components that are published to the CI/CD catalog. When publishing a component, the tag must follow the 3-digit semantic versioning standard (for example <code>1.0.0</code>).</p>
<p>When using a component with the <code>include: component</code> syntax, you should use the published semantic version. Using <code>~latest</code> continues to be supported, but it will always return the latest published version, so you must use it with caution as it could include breaking changes. Shorthand syntax is not supported, but it will be in an upcoming milestone.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/components/#component-versions">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Duo access governance control</strong>
    <p><p>Generative AI is revolutionizing work processes, and you can now facilitate the adoption of these technologies without compromising privacy, compliance, or intellectual property (IP) protections.</p>
<p>You can now disable GitLab Duo AI features for a project, a group, or an instance by using the API. You can then enable GitLab Duo for specific projects or groups when you&rsquo;re ready. These changes are part of a suite of expected work to make AI features more granular to control.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/gitlab_duo/turn_on_off.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Wiki templates</strong>
    <p><p>This version of GitLab introduces all-new templates to the Wiki. Now, you can create templates to streamline creating new pages or modifying existing ones. Templates are wiki pages that are stored in the templates directory in the wiki repository.</p>
<p>With this enhancement, you can make your wiki page layouts more consistent, create or restructure pages faster, and ensure that information is presented clearly and coherently in your knowledge base.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/wiki/index.html#wiki-page-templates">View Documentation</a></p>
  </li>
  <li>
    <strong>New ClickHouse integration for high-performance DevOps Analytics</strong>
    <p><p>The <a href="https://docs.gitlab.com/ee/user/group/contribution_analytics/">Contribution Analytics report</a> is now more performant and backed by an advanced analytics database using <a href="https://docs.gitlab.com/ee/architecture/blueprints/clickhouse_usage/#summary">ClickHouse</a> on GitLab.com. This upgrade set the foundation for new extensive analytics and reporting features, allowing us to deliver high-performance analytics aggregations, filtering, and slicing across multiple dimensions. Support for self-managed customers to be able to add to this capability is proposed in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/441626">issue 441626</a>.</p>
<p>Although ClickHouse enhances GitLab&rsquo;s analytics capabilities, it&rsquo;s not meant to replace PostgreSQL or Redis, and the existing capabilities remain unchanged.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/contribution_analytics/">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Pages and Advanced Search available on GitLab Dedicated</strong>
    <p><p><a href="https://docs.gitlab.com/ee/user/project/pages/">GitLab Pages</a> and <a href="https://docs.gitlab.com/ee/user/search/advanced_search.html">Advanced Search</a> have been enabled for all <a href="https://about.gitlab.com/dedicated/">GitLab Dedicated instances</a>. These features are included in your GitLab Dedicated subscription.</p>
<p>Advanced Search enables faster, more efficient search across your entire GitLab Dedicated instance. All capabilities of Advanced Search can be used with GitLab Dedicated instances.</p>
<p>With GitLab Pages, you can publish static websites directly from a repository in GitLab Dedicated. Some capabilities of Pages are <a href="https://docs.gitlab.com/ee/subscriptions/gitlab_dedicated/#gitlab-pages">not yet available</a> for GitLab Dedicated instances.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/subscriptions/gitlab_dedicated/#available-features">View Documentation</a></p>
  </li>
  <li>
    <strong>Offload CI traffic to Geo secondaries</strong>
    <p>You can now offload CI runner traffic to Geo secondary sites. Locate runner fleets where they are more convenient and economical to operate and manage, while reducing cross-region traffic. Distribute the load across multiple secondary Geo sites. Reduce load on the primary site, reserving resources for serving developer traffic. After this setup, the developer experience is transparent and seamless. Developer workflows for the setup and configuration of jobs remain unchanged.</p>
    <p><a href="https://docs.gitlab.com/ee/administration/geo/secondary_proxy/runners.html">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Scale and Deployments</h4>
<ul>
  <li>
    <strong>GitLab chart improvements</strong>
    <p><p>In GitLab 16.10, we&rsquo;ve removed support for installing GitLab on Kubernetes 1.24 and older. Kubernetes maintenance support of Kubernetes 1.24 ended
in July 2023.</p>
<p>GitLab 16.10 includes support for installing GitLab on Kubernetes 1.27. For more information, see our new <a href="https://handbook.gitlab.com/handbook/engineering/careers/matrix/infrastructure/core-platform/distribution/">Kubernetes version support policy</a>. Our goal is to support newer versions of
Kubernetes closer to their official release.</p>
</p>
    <p><a href="https://docs.gitlab.com/charts/">View Documentation</a></p>
  </li>
  <li>
    <strong>Omnibus improvements</strong>
    <p><p>Gitlab 16.10 introduces a new major version of Patroni, version 3.0.1. This version upgrade will require downtime. For more
information and instructions, see the
<a href="https://docs.gitlab.com/ee/update/versions/gitlab_16_changes.html#16100">16.10 section of our GitLab 16 changes page</a>.</p>
<p>GitLab 16.10 also includes a new version of Alertmanager, namely version 0.27. Most notably, this version includes the removal of API v1. For more information on this
release, see the <a href="https://github.com/prometheus/alertmanager/blob/v0.27.0/CHANGELOG.md#0270--2024-02-28">Alertmanager changelog</a>.</p>
<p>GitLab 16.10 also includes <a href="https://docs.mattermost.com/deploy/mattermost-changelog.html#release-v9-5-extended-support-release">Mattermost 9.5</a>.
Mattermost 9.5 includes various security updates and the deprecation of support for MySQL 5.7. Users on this version of MySQL must update.</p>
</p>
    <p><a href="https://docs.gitlab.com/omnibus/">View Documentation</a></p>
  </li>
  <li>
    <strong>Filter members by Enterprise users with GraphQL API</strong>
    <p>With the GraphQL API you can now filter group members by Enterprise users.</p>
    <p><a href="https://docs.gitlab.com/ee/api/graphql/reference/index.html#groupgroupmembers">View Documentation</a></p>
  </li>
  <li>
    <strong>Blocked users are excluded from the followers list</strong>
    <p><p>Previously, when a user who followed you was blocked, they still appeared in the followers list of your User Profile. From GitLab 16.10, blocked users are hidden from the followers list. If the user is unblocked, they will reappear in the followers list.</p>
<p>Thank you @SethFalco for this community contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/profile/#follow-users">View Documentation</a></p>
  </li>
  <li>
    <strong>Filter groups by visibility in the REST API</strong>
    <p><p>You can now filter groups by visibility in the <a href="https://docs.gitlab.com/ee/api/groups.html">Groups API</a>. You can use filtering to focus on groups with a specific visibility level, making it easier to audit GitLab implementations.</p>
<p>Thank you @imskr for this community contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/api/groups.html#list-groups">View Documentation</a></p>
  </li>
  <li>
    <strong>Updated project deletion functionality</strong>
    <p>Now it&rsquo;s easier to identify deleted projects in project lists. From GitLab 16.10, deleted projects display a <code>Pending deletion</code> badge next to the project title on the project overview page. An alert message clarifies that deleted projects are read-only. This message is visible on all project pages to ensure that this context is not lost even when working on sub-pages of the deleted project.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/working_with_projects.html#delayed-project-deletion">View Documentation</a></p>
  </li>
  <li>
    <strong>Threaded notifications supported in Google Chat</strong>
    <p><p>Previously, notifications sent from GitLab to a space in Google Chat could not be created as replies to specified threads.
With this release, threaded notifications are enabled by default in Google Chat for the same GitLab object (for example, an issue or merge request).</p>
<p>Thanks to <a href="https://gitlab.com/robbie-demuth">Robbie Demuth</a> for <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/145187">this community contribution</a>!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/integrations/hangouts_chat.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Custom payload template for webhooks</strong>
    <p><p>Previously, GitLab webhooks could send only specific JSON payloads, which meant the receiving endpoints had to understand the webhook format. To use those webhooks, you had to either use an app to specifically support GitLab or write your own endpoint.</p>
<p>With this release, you can set a custom payload template in the webhook configuration. The request body is rendered from the template with the data for the current event.</p>
<p>Thanks to <a href="https://gitlab.com/Taucher2003">Niklas</a> for <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/142738">this community contribution</a>!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/integrations/webhooks.html#custom-webhook-template">View Documentation</a></p>
  </li>
  <li>
    <strong>Create Service Desk tickets from the UI and API</strong>
    <p><p>Now you can create Service Desk tickets from the UI and the API using the <code>/convert_to_ticket user@example.com</code> quick action on a regular issue.</p>
<p>Create a regular issue and add a comment with the <code>/convert_to_ticket user@example.com</code> quick action. The provided email address becomes the external author of the ticket. GitLab doesn&rsquo;t send the <a href="https://docs.gitlab.com/ee/user/project/service_desk/configure.html#customize-emails-sent-to-the-requester">default thank you email</a>. You can add a public comment on the ticket to let the external participant know that the ticket has been created.</p>
<p>Adding a Service Desk ticket using the API follows the same concept: Create an issue using the <a href="https://docs.gitlab.com/ee/api/issues.html#new-issue">Issues API</a> and use the <code>issue_iid</code> to add a note with the quick action using the <a href="https://docs.gitlab.com/ee/api/notes.html#create-new-issue-note">Notes API</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/service_desk/using_service_desk.html#create-a-service-desk-ticket-in-gitlab-ui">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>Automatically collapse generated files in merge requests</strong>
    <p><p>Merge requests can contain changes from users and automated processes or compilers. Files like <code>package-lock.json</code>, <code>Gopkg.lock</code>, and minified <code>js</code> and <code>css</code> files increase the number of files shown in a merge request review, and distract reviewers from the human-generated changes. Merge requests now display these files collapsed by default, to help:</p>
<ul>
<li>Focus reviewer attention on important changes, but enable a full review if desired.</li>
<li>Reduce the amount of data needed to load the merge request, which might help larger merge requests perform better.</li>
</ul>
<p>For examples of the file types that are collapsed by default, see the <a href="https://docs.gitlab.com/ee/user/project/merge_requests/changes.html#collapse-generated-files">documentation</a>. To collapse more files and file types in the merge request, specify them as <code>gitlab-generated</code> in your project&rsquo;s <code>.gitattributes</code> file.</p>
<p>You can leave feedback on this change in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/438727">issue 438727</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/merge_requests/changes.html#collapse-generated-files">View Documentation</a></p>
  </li>
  <li>
    <strong>Expanded checks in merge widget</strong>
    <p><p>The merge widget explains clearly if your merge request is not mergeable, and why. Previously, only one merge blocker was displayed at a time. This increased review cycles and forced you to resolve problems individually, without knowing if more blockers remained.</p>
<p>When you view a merge request, the merge widget now gives you a comprehensive view of problems, both remaining and resolved. Now you can understand at a glance if multiple blockers exist, fix them all in a single iteration, and increase your confidence that no hidden blockers have been missed.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/merge_requests/auto_merge.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Manually refresh the dashboard for Kubernetes</strong>
    <p>GitLab 16.10 adds a dedicated refresh feature to the dashboard for Kubernetes. Now you can manually fetch Kubernetes resource data, and ensure you have access to the most recent information about your clusters.</p>
    <p><a href="https://docs.gitlab.com/ee/ci/environments/kubernetes_dashboard.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved environment details page</strong>
    <p>The environment details page is improved in GitLab 16.10. When you select an environment from the environment list, you can review up-to-date information about your deployments and connected Kubernetes clusters, all in one convenient layout.</p>
    <p><a href="https://docs.gitlab.com/ee/ci/environments/">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved error message for authentication rate limit</strong>
    <p>When authenticating with GitLab, it is possible to hit the authentication attempt rate limit, such as when using a script. Previously, if you hit the authentication rate limit, a <code>403 Forbidden</code> message was returned, which did not explain why you are getting this error. We now return a more descriptive error message which tells you that you&rsquo;ve hit the authentication rate limit.</p>
    <p><a href="https://docs.gitlab.com/ee/security/rate_limits.html#failed-authentication-ban-for-git-and-container-registry">View Documentation</a></p>
  </li>
  <li>
    <strong>Audit event `scope` attribute</strong>
    <p><p>Audit events now include a <code>scope</code> attribute that indicates if the event is associated with an entire instance, a group, a project, or a user.</p>
<p>This new attribute helps users determine where an event originated in audit event payloads. It also allows our
<a href="https://docs.gitlab.com/ee/administration/audit_event_types.html">audit event type documentation</a> to list all available scopes for an audit event
type.</p>
<p>You can use this new attribute to parse through external streaming destinations or to better understand context around events.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/audit_event_types.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Custom names for service accounts</strong>
    <p>You can now customize a service account&rsquo;s username and display name. Previously, these were auto-generated by GitLab. With a custom name, it is easier to understand the purpose of the service account, and distinguish it from other accounts in the user list.</p>
    <p><a href="https://docs.gitlab.com/ee/user/profile/service_accounts.html#create-a-service-account">View Documentation</a></p>
  </li>
  <li>
    <strong>Audit event for assigning a custom role</strong>
    <p>GitLab now records an audit event when a user is assigned a different role, regardless of whether that role is a default role or a custom role. This event is important to identify if user permissions have been added or changed in case of privilege escalation.</p>
    <p><a href="https://docs.gitlab.com/ee/administration/audit_event_types.html">View Documentation</a></p>
  </li>
  <li>
    <strong>New permissions for custom roles</strong>
    <p><p>To create custom roles, you can now choose two new permissions:</p>
<ul>
<li>Manage CI/CD Variables</li>
<li>Ability to delete a group</li>
</ul>
<p>With the release of these custom permissions, you can reduce the number of Owners needed in a group by creating a custom role with these Owner-equivalent permissions. Custom roles let you define granular roles that give a user only the permissions they need to do their job, and reduce unnecessary privilege escalation.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/custom_roles.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Scan result policies are now &#34;Merge request approval policies&#34;</strong>
    <p><p>As we&rsquo;ve expanded capabilities of the policy type to support overriding project settings and enforce approval requirements, we&rsquo;ve updated the policy name to the more apt &ldquo;merge request approval policy&rdquo;.</p>
<p>Merge request approval policies do not replace or conflict with existing merge request approval rules. Instead they provide Ultimate tier customers the ability to create global enforcement across projects through policies managed by central security and compliance teams - an increasingly challenging task for large-scale organizations.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/policies/scan-result-policies.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Webhooks support mutual TLS</strong>
    <p>You can now configure webhooks to support mutual TLS. This configuration establishes the authenticity of the webhook source and enhances security. You configure the client certificate in PEM format, which is presented to the server during the TLS handshake. You can also protect the certificate with a PEM passphrase.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/integrations/webhooks.html#configure-webhooks-to-support-mutual-tls">View Documentation</a></p>
  </li>
  <li>
    <strong>Sign-in page improvements</strong>
    <p>The GitLab sign-in page has been refreshed with improvements that fix spacing issues, broken elements, and alignment. There is also additional support for dark mode, and a button to manage cookie preferences. The combination of these improvements gives a fresh look and improved functionality on the sign-in page.</p>
    <p><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/412845">View Documentation</a></p>
  </li>
  <li>
    <strong>Smart card support for Active Directory LDAP</strong>
    <p>Smart card authentication against an LDAP server now supports Entra ID (formerly known as Azure Active Directory). This makes it easy to sync user identity data from Entra ID, and authenticate against LDAP with smart cards.</p>
    <p><a href="https://docs.gitlab.com/ee/administration/auth/smartcard.html#authentication-against-an-active-directory-ldap-server">View Documentation</a></p>
  </li>
  <li>
    <strong>Use merge base pipeline for merge request approval policy comparison</strong>
    <p>This enhancement aligns the logic of the merge request approval policy evaluation with the security MR widget, ensuring that findings that violate a merge request approval policy align with the results displayed in the widget. By aligning the logic, security, compliance, and development teams can more consistently identify which findings violate a policy and require approval.
Rather than comparing to the target branch&rsquo;s latest completed <code>HEAD</code> pipeline, scan result policies now compare to a common ancestor&rsquo;s latest completed pipeline, the &ldquo;merge base&rdquo;.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/policies/scan-result-policies.html#understanding-merge-request-approval-policy-approvals">View Documentation</a></p>
  </li>
  <li>
    <strong>Support domain-level redirects for GitLab Pages</strong>
    <p><p>Previously, GitLab focused on supporting simple redirect rules. In GitLab 14.3, we <a href="https://gitlab.com/gitlab-org/gitlab-pages/-/merge_requests/458">introduced</a> support for splat and placeholder redirects.</p>
<p>From GitLab 16.10, GitLab Pages supports domain-level redirects. You can combine domain-level redirects with <a href="https://gitlab.com/gitlab-org/gitlab-pages/-/issues/601">splat rules</a> to dynamically rewrite the URL path. This improvement helps prevent confusion and ensure that you can still find your information after a domain change, even if you use an old domain.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/pages/redirects.html#domain-level-redirects">View Documentation</a></p>
  </li>
  <li>
    <strong>List repository tags with the new container registry API</strong>
    <p><p>Previously, the container registry relied on the Docker/OCI <a href="https://gitlab.com/gitlab-org/container-registry/-/blob/5208a0ce1600b535e529cd857c842fda6d19ad59/docs/spec/docker/v2/api.md#listing-image-tags">listing image tags registry API</a> to display tags in GitLab. This API had significant performance and discoverability limitations.</p>
<p>This API performed slowly because the number of network requests against the registry scaled with the number of tags in the tags list. In addition, because the API didn&rsquo;t track publish time, the published timestamp was often incorrect. There were also limitations when displaying images based on Docker manifest lists or OCI indexes, such as for multi-architecture images.</p>
<p>To address these limitations, we introduced a new registry <a href="https://gitlab.com/gitlab-org/container-registry/-/blob/5208a0ce1600b535e529cd857c842fda6d19ad59/docs/spec/gitlab/api.md#list-repository-tags">list repository tags API</a>. In GitLab 16.10, we&rsquo;ve completed the migration to the new API. Now, whether you use the UI or the REST API, you can expect improved performance, accurate publication timestamps, and robust support for multi-architecture images.</p>
<p>This improvement is available only on GitLab.com. Self-managed support is blocked until the next-generation container registry is generally available. To learn more, see <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/423459">issue 423459</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/api/container_registry.html#list-registry-repository-tags">View Documentation</a></p>
  </li>
  <li>
    <strong>New contributor count metric in the Value Streams Dashboard</strong>
    <p><p>To enable software leaders to gain insights into the relationship between team velocity, software stability, security exposures, and team productivity, we introduced a new <a href="https://docs.gitlab.com/ee/user/analytics/value_streams_dashboard.html#dashboard-metrics-and-drill-down-reports"><strong>Contributor count</strong> metric in the Value Streams Dashboard</a>. The contributor count represents the number of monthly unique users with contributions in the group. This metric is designed to track adoption trends over time, and is based on <a href="https://docs.gitlab.com/ee/user/profile/contributions_calendar.html#user-contribution-events">contributions calendar events</a>.</p>
<p>The <strong>Contributor count</strong> metric is available only on GitLab.com, and requires the <a href="https://docs.gitlab.com/ee/user/group/contribution_analytics/#contribution-analytics-with-clickhouse">contribution analytics report to be configured to run through ClickHouse</a>. <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/441626">Issue 441626</a> tracks efforts to make this feature available to self-managed customers as well.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/analytics/value_streams_dashboard.html#devsecops-metrics-comparison-panel">View Documentation</a></p>
  </li>
  <li>
    <strong>Inherited filters in Value Stream Analytics for seamless and accurate workflow analysis</strong>
    <p><a href="https://docs.gitlab.com/ee/user/group/value_stream_analytics/">Value stream analytics</a> now applies the same filters when drilling down from the <strong>Lead time</strong> tile to the <a href="https://docs.gitlab.com/ee/user/group/issues_analytics/"><strong>Issue Analytics</strong> report</a>. The filter inheritance helps you dive deeper and seamlessly into data as you switch between analytics views.</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/issues_analytics/index.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Add an issue to the current or next iteration with a quick action</strong>
    <p>The <code>/iteration</code> quick action now accepts a cadence reference with <code>--current</code> or <code>--next</code> arguments. If your group has a single iteration cadence, you can quickly assign an issue to the current or next iteration by using <code>/iteration --current|next</code>. If your group contains many iteration cadences, you can specify the desired cadence in the quick action by referencing the cadence name or ID. For example, <code>/iteration [cadence:&quot;&lt;cadence name&gt;&quot;|&lt;cadence ID&gt;] --next|current</code>.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/quick_actions.html#issues-merge-requests-and-epics">View Documentation</a></p>
  </li>
  <li>
    <strong>Continuous Vulnerability Scanning available by default for Container Scanning</strong>
    <p>Continuous Vulnerability Scanning for Container Scanning is now available by default. The default availability removes the need to opt into this functionality through a feature flag. To learn more about the benefits of Continuous Vulnerability Scanning, see the documentation link.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/continuous_vulnerability_scanning/">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved Dependency Scanning support for sbt</strong>
    <p>We have updated the mechanism we use to generate the list of dependencies for projects using sbt. This change is only applicable to projects using sbt version 1.7.2 and later. To fully leverage Dependency Scanning for sbt projects, you should upgrade to sbt version 1.7.2 and later.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/dependency_scanning/index.html#supported-languages-and-package-managers">View Documentation</a></p>
  </li>
  <li>
    <strong>DAST analyzer performance updates</strong>
    <p><p>During the 16.10 release milestone, proxy-based DAST was:</p>
<ul>
<li>Upgraded ZAP to version 2.14.0. For more information, see <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/442056">issue 442056</a>.</li>
</ul>
<p>We also completed the following browser-based DAST crawler performance improvements:</p>
<ul>
<li>Limit the number of goroutines created when crawling. For more information, see <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/440151">issue 440151</a>.</li>
<li>Optimize finding elements to interact with. This reduced scan time by 6%. For more information, see <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/440295">issue 440295</a>.</li>
<li>Optimize JSON unmarshalling of DevTools messages. This reduced scan time by 7%. For more information, see <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/439726">issue 439726</a>.</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/dast/browser/">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner 16.10</strong>
    <p><p>We&rsquo;re also releasing GitLab Runner 16.10 today! GitLab Runner is the lightweight, highly-scalable agent that runs your CI/CD jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.</p>
<p>Bug fixes:</p>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/27857">Memory leak when jobs are cancelled in the Runner Kubernetes executor</a></li>
</ul>
<p>The list of all changes is in the GitLab Runner <a href="https://gitlab.com/gitlab-org/gitlab-runner/blob/16-10-stable/CHANGELOG.md">CHANGELOG</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/runner">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab Security Release: 16.9.2, 16.8.4, 16.7.7</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-9-2-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-9-2-released/</id><published>2024-03-06T00:00:00Z</published><updated>2024-03-06T00:00:00Z</updated><author><name>Greg Myers</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<p>On March 6, 2024, we released versions 16.9.2, 16.8.4, 16.7.7 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important security fixes, and we strongly recommend that all GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version.</p>
<p>GitLab releases patches for vulnerabilities in dedicated security releases. There are two types of security releases:
a monthly, scheduled security release, released a week after the feature release (which deploys on the 3rd Thursday of each month),
and ad-hoc security releases for critical vulnerabilities. For more information, you can visit our <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of our regular and security release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.
In addition, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are dedicated to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest security release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="table-of-fixes">Table of fixes</h2>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-9-2-released/#bypassing-codeowners-approval-allowing-to-steal-protected-variables">Bypassing CODEOWNERS approval allowing to steal protected variables</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-9-2-released/#guest-with-manage-group-access-tokens-can-rotate-and-see-group-access-token-with-owner-permissions">Guest with manage group access tokens can rotate and see group access token with owner permissions</a></td>
          <td>Medium</td>
      </tr>
  </tbody>
</table>
<h3 id="bypassing-codeowners-approval-allowing-to-steal-protected-variables">Bypassing CODEOWNERS approval allowing to steal protected variables</h3>
<p>An authorization bypass vulnerability was discovered in GitLab affecting versions 11.3 prior to 16.7.7, 16.7.6 prior to 16.8.4, and 16.8.3 prior to 16.9.2. An attacker could bypass CODEOWNERS by utilizing a crafted payload in an old feature branch to perform malicious actions.
This is a high severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:H/I:H/A:N</code>, 7.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-0199">CVE-2024-0199</a>.</p>
<p>Thanks <a href="https://hackerone.com/ali_shehab">ali_shehab</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="guest-with-manage-group-access-tokens-can-rotate-and-see-group-access-token-with-owner-permissions">Guest with manage group access tokens can rotate and see group access token with owner permissions</h3>
<p>A privilege escalation vulnerability was discovered in GitLab affecting versions 16.8 prior to 16.8.4 and 16.9 prior to 16.9.2. It was possible for a user with custom role of <code>manage_group_access_tokens</code> to rotate group access tokens with owner privileges.
This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:N</code>, 6.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-1299">CVE-2024-1299</a>.</p>
<p>Thanks <a href="https://hackerone.com/ashish_r_padelkar">ashish_r_padelkar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="upgrade-kubectl-to-the-latest-stable-version">Upgrade Kubectl to the latest stable version</h3>
<p><code>kubectl</code> has been updated to version 1.29.2.</p>
<h3 id="mattermost-security-updates-february-14-2024">Mattermost Security Updates February 14, 2024</h3>
<p>Mattermost has been updated to version 9.5, which contains several patches and security fixes.</p>
<h2 id="non-security-patches">Non Security Patches</h2>
<h3 id="1692">16.9.2</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/146113">Merge branch &lsquo;hm-rescue-stale-element-error-in-base&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/146033">Fix broken master</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/146202">Use fixed date for failing specs [16.9]</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/146031">Backport &lsquo;pb-fix-broken-master-elastic&rsquo; into 16.9</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/145946">Backport Fix Search::Zoekt.index? logic to 16.9</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/146036">Backport &lsquo;Don&rsquo;t escape search term in modal twice&rsquo; into 16.9</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/146315">Backport &lsquo;add-praefect-to-release-environment-template&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/146035">Backport &lsquo;Shows branch name in non-blob&hellip;scopes&rsquo;  into 16.9</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/146181">Backport: Geo - Fix container repositories checksum mismatch errors</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/146074">Backport 145801 (Fix CI linter error when repository is empty) to 16.9</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7444">Merge branch &lsquo;remove-pi-os-12-release&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/145036">Backport to 16.9: Fix Geo: Personal snippets not syncing</a></li>
</ul>
<h3 id="1684">16.8.4</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/145037">Backport to 16.8: Fix Geo: Personal snippets not syncing</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/145451">Backport to 16.8: Fix pg_dump failing with multiple PG read-replicas</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/146233">Update tests for broken 16.8</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/146316">Backport &lsquo;add-praefect-to-release-environment-template&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/146183">Backport: Geo - Fix container repositories checksum mismatch errors</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/146073">Backport 145801 (Fix CI linter error when repository is empty) to 16.8</a></li>
</ul>
<h3 id="1677">16.7.7</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/145569">Backport to 16.7: Fix pg_dump failing with multiple PG read-replicas</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/146318">Merge branch &lsquo;add-praefect-to-release-environment-template&rsquo;</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update GitLab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-security-release-notifications">Receive Security Release Notifications</h2>
<p>To receive security release blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">security release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Security Release: 16.9.1, 16.8.3, 16.7.6</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-9-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-9-1-released/</id><published>2024-02-21T00:00:00Z</published><updated>2024-02-21T00:00:00Z</updated><author><name>Nikhil George</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On February 21, 2024, we released versions 16.9.1, 16.8.3, 16.7.6 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important security fixes, and we strongly recommend that all GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version.</p>
<p>GitLab releases patches for vulnerabilities in dedicated security releases. There are two types of security releases:
a monthly, scheduled security release, released a week after the feature release (which deploys on the 3rd Thursday of each month),
and ad-hoc security releases for critical vulnerabilities. For more information, you can visit our <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of our regular and security release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.
In addition, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are dedicated to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest security release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="table-of-fixes">Table of fixes</h2>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-9-1-released/#stored-xss-in-users-profile-page">Stored-XSS in user&rsquo;s profile page</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-9-1-released/#user-with-admin_group_members-permission-can-invite-other-groups-to-gain-owner-access">User with &ldquo;admin_group_members&rdquo; permission can invite other groups to gain owner access</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-9-1-released/#redos-issue-in-the-codeowners-reference-extractor">ReDoS issue in the Codeowners reference extractor</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-9-1-released/#ldap-user-can-reset-password-using-secondary-email-and-login-using-direct-authentication">LDAP user can reset password using secondary email and login using direct authentication</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-9-1-released/#bypassing-group-ip-restriction-settings-to-access-environment-details-of-projects-through-environmentsoperations-dashboard">Bypassing group ip restriction settings to access environment details of projects through Environments/Operations Dashboard</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-9-1-released/#users-with-the-guest-role-can-change-custom-dashboard-projects-settings-for-projects-in-the-victim-group">Users with the <code>Guest</code> role can change <code>Custom dashboard projects</code> settings for projects in the victim group</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-9-1-released/#group-member-with-sub-maintainer-role-can-change-title-of-shared-private-deploy-keys">Group member with sub-maintainer role can change title of shared private deploy keys</a></td>
          <td>Low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-9-1-released/#bypassing-approvals-of-codeowners">Bypassing approvals of CODEOWNERS</a></td>
          <td>Low</td>
      </tr>
  </tbody>
</table>
<h3 id="stored-xss-in-users-profile-page">Stored-XSS in user&rsquo;s profile page</h3>
<p>An issue has been discovered in GitLab CE/EE affecting version 16.9 only. A crafted payload added to the user profile page could lead to a stored XSS on the client side which allows attackers to perform arbitrary actions on behalf of victims. This is a high severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N</code>, 8.7). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-1451">CVE-2024-1451</a>.</p>
<p>Thanks <a href="https://hackerone.com/yvvdwf">yvvdwf</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="user-with-admin_group_members-permission-can-invite-other-groups-to-gain-owner-access">User with &ldquo;admin_group_members&rdquo; permission can invite other groups to gain owner access</h3>
<p>An issue has been discovered in GitLab EE affecting all versions starting from 16.5 before 16.7.6, all versions starting from 16.8 before 16.8.3, all versions starting from 16.9 before 16.9.1. When a user is assigned a custom role with admin_group_member permission, they may be able to make a group, other members or themselves Owners of that group, which may lead to privilege escalation. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:L</code>, 6.7). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-6477">CVE-2023-6477</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="redos-issue-in-the-codeowners-reference-extractor">ReDoS issue in the Codeowners reference extractor</h3>
<p>An issue has been discovered in GitLab EE affecting all versions starting from 11.3 before 16.7.6, all versions starting from 16.8 before 16.8.3, all versions starting from 16.9 before 16.9.1. It was possible for an attacker to cause a client-side denial of service using malicious crafted content in the CODEOWNERS file.
This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code>, 6.5). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-6736">CVE-2023-6736</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="ldap-user-can-reset-password-using-secondary-email-and-login-using-direct-authentication">LDAP user can reset password using secondary email and login using direct authentication</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 16.1 before 16.7.2, all versions starting from 16.8 before 16.8.2, all versions starting from 16.9 before 16.9.2. Under some specialized conditions, an LDAP user may be able to reset their password using their verified secondary email address and sign-in using direct authentication with the reset password, bypassing LDAP. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:H/A:N</code>, 5.3). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-1525">CVE-2024-1525</a>.</p>
<p>This vulnerability was discovered internally by a GitLab team member, <a href="https://gitlab.com/dblessing">Drew Blessing</a>.</p>
<h3 id="bypassing-group-ip-restriction-settings-to-access-environment-details-of-projects-through-environmentsoperations-dashboard">Bypassing group ip restriction settings to access environment details of projects through Environments/Operations Dashboard</h3>
<p>An issue has been discovered in GitLab EE affecting all versions starting from 12.0 to 16.7.6, all versions starting from 16.8 before 16.8.3, all versions starting from 16.9 before 16.9.1. This vulnerability allows for bypassing the &lsquo;group ip restriction&rsquo; settings to access environment details of projects. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code>, 4.3). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-4895">CVE-2023-4895</a>.</p>
<p>Thanks <a href="https://hackerone.com/albatraoz">albatraoz</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="users-with-the-guest-role-can-change-custom-dashboard-projects-settings-for-projects-in-the-victim-group">Users with the <code>Guest</code> role can change <code>Custom dashboard projects</code> settings for projects in the victim group</h3>
<p>An issue has been discovered in GitLab EE affecting all versions starting from 16.4 before 16.7.6, all versions starting from 16.8 before 16.8.3, all versions starting from 16.9 before 16.9.1. Users with the <code>Guest</code> role can change <code>Custom dashboard projects</code> settings contrary to permissions. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N</code>, 4.3). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-0861">CVE-2024-0861</a>.</p>
<p>Thanks <a href="https://hackerone.com/them4les_l1r">them4les_l1r</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="group-member-with-sub-maintainer-role-can-change-title-of-shared-private-deploy-keys">Group member with sub-maintainer role can change title of shared private deploy keys</h3>
<p>An issue has been discovered in GitLab affecting all versions before 16.7.6, all versions starting from 16.8 before 16.8.3, all versions starting from 16.9 before 16.9.1. It was possible for group members with sub-maintainer role to change the title of privately accessible deploy keys associated with projects in the group.
This is a low severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:L/I:L/A:N</code>, 3.7). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3509">CVE-2023-3509</a>.</p>
<p>Thanks <a href="https://hackerone.com/theluci">theluci</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="bypassing-approvals-of-codeowners">Bypassing approvals of CODEOWNERS</h3>
<p>An authorization bypass vulnerability was discovered in GitLab affecting versions 15.1 prior to 16.7.6, 16.8 prior to 16.8.3, and 16.9 prior to 16.9.1. A developer could bypass CODEOWNERS approvals by creating a merge conflict. This is a low severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:N/I:L/A:N</code>, 3.0). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-0410">CVE-2024-0410</a>.</p>
<p>Thanks <a href="https://hackerone.com/ali_shehab">ali_shehab</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="non-security-patches">Non Security Patches</h2>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/441094">Invalidate markdown cache to clear up stored XSS</a></li>
</ul>
<h3 id="1691">16.9.1</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/144758">Merge branch &lsquo;ac-fix-16-9-0-changelog&rsquo; into &lsquo;master&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/144759">[Backport] Revert &lsquo;437616_fix_changelog_tag_detection&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/144956">Backport Web IDE upgrade into 16.9</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/144995">Fix deny_all_requests_except_allowed of AddressableUrlValidator</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/144952">Introduce back ci_pipeline_variables routing table FF</a></li>
</ul>
<h3 id="1683">16.8.3</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/6674">Backport &lsquo;jc/fix-add-tree-entry&rsquo; into 16-8-stable</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/144119">Allow creation of group-level custom-roles on self-managed instances</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/144217">Backport &lsquo;Fix stable cache for quick actions&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/144355">Fix X.509 commit signing for OpenSSL 3</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/144349">Fix urlblocker validate calls with more options</a></li>
</ul>
<h3 id="1676">16.7.6</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/6675">Backport jc/fix-add-tree-entry into 16-7-stable</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/144357">Fix X.509 commit signing for OpenSSL 3</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-security-release-notifications">Receive Security Release Notifications</h2>
<p>To receive security release blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">security release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab 16.9 released</title><link href="https://docs.gitlab.com/releases/16/16-9-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/16/16-9-released/</id><published>2024-02-15T00:00:00Z</published><updated>2024-02-15T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On February 15, 2024, GitLab 16.9 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong></strong>
</p>
<p>Ravi is actively working with GitLab&rsquo;s Vulnerability Research group
to address high false-positive results in <a href="https://gitlab.com/gitlab-org/security-products/sast-rules">GitLab SAST.</a></p>
<p>Ravi was nominated by <a href="https://gitlab.com/rmsrohan">Rohan Shah</a>, Customer Success Manager at GitLab, who noted
Ravi&rsquo;s significant improvements to the <a href="https://docs.gitlab.com/ee/user/application_security/sast/rules.html">detection rules</a> used in GitLab SAST.
<a href="https://gitlab.com/dbolkensteyn">Dinesh Bolkensteyn</a>, Senior Vulnerability Researcher at GitLab, added
&ldquo;Ravi&rsquo;s feedback is spot on, directly actionable and enabled us to improve many of our SAST rules.&rdquo;</p>
<p>Ravi Dharmawan a.k.a ravidhr works at GoTo Group as an Information Security Architect.
He works mostly on handling secure design review, source code review, and penetration testing.
Ravi is OSCP + eWPTXv2 certified.</p>
<p>Ian is the first GitLab MVP recognized for work <a href="https://forum.gitlab.com/u/iwalker/activity">supporting users on the GitLab Forum.</a>
<a href="https://gitlab.com/dnsmichi">Michael Friedrich</a>, Senior Developer Advocate at GitLab, and
<a href="https://gitlab.com/sugaroverflow">Fatima Sarah Khalid</a>, Developer Advocate at GitLab both nominated Ian
for continued efforts in helping make our forum a better place for the community by answering questions for users who are setting up and using GitLab.</p>
<p>Ian works at UpWare Sp. z o.o. as a System and Security Consultant, working mostly on Red Hat OpenShift and anything Linux-related.
He is Red Hat Certified RHCSA + RHCE and has been managing, maintaining and supporting his own self-hosted Gitlab installation since 2017.
Ian has been regularly active on the GitLab forums for 3+ years with 2,600+ helpful responses, 480 helpful community moderation flags, and 240 solutions.</p>
<p>Thank you Ravi and Ian! 🙌</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>GitLab Duo Chat Beta now available in Premium</strong>
    <p><p>In 16.8, we made GitLab Duo Chat available for self-managed instances. In 16.9, we are making Chat available to Premium customers while it is still in Beta.</p>
<p>GitLab Duo Chat can:</p>
<ul>
<li>Explain or summarize issues, epics, and code.</li>
<li>Answer specific questions about these artifacts like &ldquo;Collect all the arguments raised in comments regarding the solution proposed in this issue.&rdquo;</li>
<li>Generate code or content based on the information in these artifacts. For example, &ldquo;Can you write documentation for this code?&rdquo;</li>
<li>Help you start a process. For example, &ldquo;Create a .gitlab-ci.yml configuration file for testing and building a Ruby on Rails application in a GitLab CI/CD pipeline.&rdquo;</li>
<li>Answer all your DevSecOps related question, whether you are a beginner or an expert. For example, &ldquo;How can I set up Dynamic Application Security Testing for a REST API?&rdquo;</li>
<li>Answer follow-up questions so you can iteratively work through all the previous scenarios.</li>
</ul>
<p>GitLab Duo Chat is available as a <a href="https://docs.gitlab.com/ee/policy/experiment-beta-support.html#beta">Beta</a> feature. It is also integrated into our Web IDE and GitLab Workflow extension for VS Code as <a href="https://docs.gitlab.com/ee/policy/experiment-beta-support.html#experiment">Experimental</a> features. In these IDEs, you can also use <a href="https://docs.gitlab.com/ee/user/gitlab_duo_chat/examples.html#explain-code-in-the-ide">predefined chat commands that help you do standard tasks more quickly</a> like writing tests.</p>
<p>You can help us mature these features by providing feedback about your experiences with GitLab Duo Chat, either within the product or through our <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/430124">feedback issue</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/gitlab_duo_chat/index.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Request changes on merge requests</strong>
    <p><p>The last part of reviewing a merge request is communicating the outcome. While approving was unambiguous, leaving comments was not. They required the author to read your comments, then determine if the comments were purely informational, or described needed changes. Now, when you complete your review, you can select from three options:</p>
<ul>
<li><strong>Comment</strong>: Submit general feedback without explicitly approving.</li>
<li><strong>Approve</strong>: Submit feedback and approve the changes.</li>
<li><strong>Request changes</strong>: Submit feedback that should be addressed before merging.</li>
</ul>
<p>The sidebar now shows the outcome of your review next to your name. Currently, ending your review with <strong>Request changes</strong> doesn&rsquo;t block the merge request from being merged, but it provides extra context to other participants in the merge request.</p>
<p>You can leave feedback about the <strong>Request changes</strong> feature in our <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/438573">feedback issue</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/merge_requests/reviews/#submit-a-review">View Documentation</a></p>
  </li>
  <li>
    <strong>Improvements to the CI/CD variables user interface</strong>
    <p><p>In GitLab 16.9, we have released a series of improvements to the CI/CD variables user experience. We have improved the variables creation flow through changes including:</p>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/365934">Improved validation when variable values do not meet the requirements</a>.</li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/410220">Help text during variable creation</a>.</li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/434667">Allow resizing of the value field in the variables form</a>.</li>
</ul>
<p>Other improvements include a new, <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/378938">optional description field for group and project variables</a> to assist with the management of variables. We have also made it easier to <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/434666">add or edit multiple variables</a>, lowering the friction in the software development workflow and enabling developers to perform their job more efficiently.</p>
<p>Your <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/441177">feedback for these changes</a> is always valued and appreciated.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/variables/">View Documentation</a></p>
  </li>
  <li>
    <strong>Expanded options for auto-canceling pipelines</strong>
    <p><p>Currently, to use the <a href="https://docs.gitlab.com/ee/ci/pipelines/settings.html#auto-cancel-redundant-pipelines">auto-cancel redundant pipeline feature</a>, you must set jobs that can be cancelled as <a href="https://docs.gitlab.com/ee/ci/yaml/index.html#interruptible"><code>interruptible: true</code></a> to determine whether or not a pipeline can be cancelled. But this only applies to jobs that are actively running when GitLab tries to cancel the pipeline. Any jobs that have not yet started (are in &ldquo;pending&rdquo; status) are also considered safe to cancel, regardless of their <code>interruptible</code> configuration.</p>
<p>This lack of flexibility hinders users who want more control over which exact jobs can be cancelled by the auto-cancel pipeline feature. To address this limitation, we are pleased to announce the introduction of the <code>auto_cancel:on_new_commit</code> keywords with more granular control over job cancellation. If the legacy behavior did not work for you, you now have the option to configure the pipeline to only cancel jobs that are explicitly set with <code>interruptible: true</code>, even if they haven&rsquo;t started yet. You can also set jobs to never be automatically cancelled.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/yaml/index.html#workflowauto_cancelon_new_commit">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Scale and Deployments</h4>
<ul>
  <li>
    <strong>Limit concurrent code-indexing jobs for advanced search</strong>
    <p>As a GitLab administrator, you can now set the maximum number of Elasticsearch code-indexing background jobs that can run concurrently. Previously, you could only limit the number of concurrent jobs by creating dedicated Sidekiq processes.</p>
    <p><a href="https://docs.gitlab.com/ee/integration/advanced_search/elasticsearch.html#advanced-search-configuration">View Documentation</a></p>
  </li>
  <li>
    <strong>Custom guidelines for managing group and project members</strong>
    <p><p>Administrators can now add text guidelines that are visible to users with permissions to manage members on the <strong>Members</strong> page of a group or project. Administrators can access these guidelines in the <strong>Appearance</strong> section of the <strong>Admin Area</strong> settings.</p>
<p>Guidelines are helpful for teams that use external tooling to manage members of groups or projects. For instance, the guideline can link to predefined groups that users should use instead of managing membership for individual members.</p>
<p>Thank you @bufferoverflow for this community contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/appearance.html#member-guidelines">View Documentation</a></p>
  </li>
  <li>
    <strong>Show import stats for direct transfer</strong>
    <p><p>Completed migrations of GitLab groups and projects by direct transfer have displayed badges (<strong>Complete</strong>, <strong>Partially completed</strong>, and <strong>Failed</strong>)
to inform users about the general end result of the migration. Users could also access a list of items that were not imported, by clicking on the <strong>See failures</strong> link.</p>
<p>However, for a partially-imported project, there was no quick way to understand how many items of each type were successfully imported and how many were not.</p>
<p>In this release, we added import results statistics for groups and projects. To access the statistics, select the <strong>Details</strong> link on the direct transfer history page.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/import/index.html#review-results-of-the-import">View Documentation</a></p>
  </li>
  <li>
    <strong>Enable Jira issues at the group level</strong>
    <p>With this release, you can enable Jira issues for all projects in a GitLab group. Previously, you could only enable Jira issues for each GitLab project individually.</p>
    <p><a href="https://docs.gitlab.com/ee/integration/jira/configure.html#view-jira-issues">View Documentation</a></p>
  </li>
  <li>
    <strong>REST API support for the GitLab for Slack app</strong>
    <p><p>With this release, we&rsquo;ve added REST API support for the GitLab for Slack app.</p>
<p>You cannot create a GitLab for Slack app from the API. Instead, you must <a href="https://docs.gitlab.com/ee/user/project/integrations/gitlab_slack_application.html#install-the-gitlab-for-slack-app">install the app</a> from the GitLab UI. You can then retrieve the integration settings and update or disable the app for a project.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/api/integrations.html#gitlab-for-slack-app">View Documentation</a></p>
  </li>
  <li>
    <strong>Access GitLab usage data through the REST API</strong>
    <p>Self-managed users can now seamlessly access Service Ping data through a REST API connection, facilitating direct integration with downstream systems. This represents a significant improvement over the previous method of file download. The new approach offers self-managed users a more efficient and real-time means of conducting customized analysis and deriving specific insights from their GitLab usage data.</p>
    <p><a href="https://docs.gitlab.com/ee/api/usage_data.html#export-service-ping-data">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>Authenticate and sign commits with SSH certificates</strong>
    <p>Previously, Git access control options on GitLab.com relied on credentials set up in the user account. Now you can set up a process to make Git access possible using only SSH certificates. You can also use these certificates to sign commits.</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/ssh_certificates.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Limit workspaces per user on the GitLab agent</strong>
    <p><p>In GitLab 16.8, we introduced settings for the GitLab agent for Kubernetes to limit the CPU and memory usage per workspace.</p>
<p>Now in 16.9, you can also limit the number of workspaces per user. With this new setting, you have even more control over your cloud resources and can prevent individual developers from inflating cloud spend.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/workspace/gitlab_agent_configuration.html#workspaces_per_user_quota">View Documentation</a></p>
  </li>
  <li>
    <strong>Allow users to cleanup partial resources from failed deployments</strong>
    <p><p>The Environment <a href="https://docs.gitlab.com/ee/ci/yaml/#environmentauto_stop_in"><code>auto_stop_in</code></a> functionality was updated to run the job from the last finished pipeline, instead of the last successful pipeline. This avoids edge cases where the auto stop job can not run because of not having any successful pipelines.</p>
<p>This behaviour might be considered a breaking change in some situations. The new behaviour is currently behind a feature flag, and will become the default in 17.0, and at the same time, we are going to deprecate the old behaviour to be removed from GitLab in 18.0. We recommend everyone to start transitioning or to configure the feature flag immediately to minimize the risks of the breaking change at the first 17.x upgrade.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/environments/#run-a-pipeline-job-when-environment-is-stopped">View Documentation</a></p>
  </li>
  <li>
    <strong>Kubernetes 1.29 support</strong>
    <p><p>This release adds full support for Kubernetes version 1.29, released in December 2023. If you deploy your apps to Kubernetes, you can now upgrade your connected clusters to the most recent version and take advantage of all its features.</p>
<p>You can read more about our Kubernetes support policy and other supported Kubernetes versions.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/clusters/agent/#supported-cluster-versions">View Documentation</a></p>
  </li>
  <li>
    <strong>Enterprise user email address accessible through UI and API</strong>
    <p>Group Owners that have <a href="https://docs.gitlab.com/ee/user/enterprise_user/">enterprise users</a> can now use both the user management UI and the <a href="https://docs.gitlab.com/ee/api/members.html">group and project members API</a> to see those users&rsquo; email addresses. Previously, only provisioned users&rsquo; email addresses were returned.</p>
    <p><a href="https://docs.gitlab.com/ee/user/enterprise_user/#get-users-email-addresses">View Documentation</a></p>
  </li>
  <li>
    <strong>Add or remove service accounts from groups with LDAP group sync</strong>
    <p>Previously, if a group had LDAP sync enabled, administrators were not able to invite or remove any users from that group. Now, administrators can use the group and project members API to invite service account users to or remove those users from a group with LDAP sync. Administrators still cannot invite human users to or remove those users from a group with LDAP sync. This ensures that LDAP group sync is the single source of truth for human user account membership, while allowing the flexibility to use service accounts to add automations to LDAP-synced groups.</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/access_and_permissions.html#manage-group-memberships-via-ldap">View Documentation</a></p>
  </li>
  <li>
    <strong>Audit event for updating or deleting a custom role</strong>
    <p>GitLab now records an audit event when a custom role is updated or deleted. This event is important to identify if permissions have been added or changed in case of privilege escalation.</p>
    <p><a href="https://docs.gitlab.com/ee/administration/audit_event_types.html#permissions">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved UX for expired SAML SSO sessions</strong>
    <p>If you belong to a group that requires SAML SSO authentication, but you do not have a valid session for that group, a banner is displayed that prompts you to refresh your session. Previously, issues and merge requests were not displayed when a session had expired, but this was not clear to the user. Now, it is clear to users when they must reauthenticate to see all of their work items.</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/saml_sso/">View Documentation</a></p>
  </li>
  <li>
    <strong>Standards Adherence Report Improvements</strong>
    <p><p>The <a href="https://docs.gitlab.com/ee/user/compliance/compliance_center/#view-the-standards-adherence-dashboard">standards adherence report</a>, within the
<a href="https://docs.gitlab.com/ee/user/compliance/compliance_center/">compliance center</a>, is the destination for compliance teams to monitor their compliance posture.</p>
<p>In GitLab 16.5, we introduced the report with the GitLab Standard - a set of common compliance requirements all compliance teams should monitor. The standard helps
you understand which projects meet these requirements, which ones fall short, and how to bring them into compliance. Over time, we&rsquo;ll be introducing more standards
into the reporting.</p>
<p>In this milestone, we&rsquo;ve made some improvements which will make reporting more robust and actionable. These include:</p>
<ul>
<li>Grouping results by check</li>
<li>Filtering by project, check, and standard</li>
<li>Export to CSV (delivered via email)</li>
<li>Improved pagination</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/compliance/compliance_center/#standards-adherence-dashboard">View Documentation</a></p>
  </li>
  <li>
    <strong>Rich text editor broader availability</strong>
    <p><p>In GitLab 16.2, <a href="https://about.gitlab.com/releases/2023/07/22/gitlab-16-2-released/">we released</a> the rich text editor as an alternative to the plain text editor. The rich text editor provides a &ldquo;what you see is what you get&rdquo; editing interface, and an extensible foundation for additional development. Until this release, however, the rich text editor was available only in issues, epics, and merge requests.</p>
<p>With GitLab 16.9, the rich text editor is now available in:</p>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/407493">Requirements descriptions</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/407491">Vulnerability findings</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/407494">Release descriptions</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/407505">Design notes</a></li>
</ul>
<p>With improved access to the rich text editor, you can collaborate more efficiently and without previous Markdown experience.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/rich_text_editor/">View Documentation</a></p>
  </li>
  <li>
    <strong>Allow duplicate Terraform modules</strong>
    <p><p>You can use the GitLab package registry to publish and download Terraform modules. By default, you cannot publish the same module name and version more than once per project.</p>
<p>However, you might want to allow duplicate uploads, especially for releases. In this release, GitLab expands the group setting for the package registry so you can allow or deny duplicate modules.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/packages/terraform_module_registry/#allow-duplicate-terraform-modules">View Documentation</a></p>
  </li>
  <li>
    <strong>Validate Terraform modules from your group or subgroup</strong>
    <p><p>When using the GitLab Terraform registry, it is important to have a cross-project view of all your modules. Until recently, the user interface has been available only at the project level. If your group had a complex structure, you might have had difficulty finding and validating your modules.</p>
<p>From GitLab 16.9, you can view all of your group and subgroup modules in GitLab. The increased visibility provides a better understanding of your registry, and decreases the likelihood of name collisions.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/packages/package_registry/#view-packages">View Documentation</a></p>
  </li>
  <li>
    <strong>Boards work in progress line</strong>
    <p>You can now visualize your work in progress limits in a board list. When a limit has been exceeded, an indicator line will appear in the list to help you understand which items are over the limit and manage the list accordingly.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/issue_board.html#work-in-progress-limits">View Documentation</a></p>
  </li>
  <li>
    <strong>New stage events for custom Value Stream Analytics</strong>
    <p>To improve the <a href="https://about.gitlab.com/blog/value-stream-total-time-chart/">tracking of development workflows in GitLab</a>, the Value Stream Analytics has been extended with a new stage event: <code>Issue first added to iteration</code>. You can use this event to detect problems caused by a lack of agility from teams planning too far ahead or execution challenges in teams that have issues rolling over from iteration to iteration. For example, you can now add a &ldquo;Planned&rdquo; stage that starts when <code>Issue first added to iteration</code> and ends when the <code>Issue first assigned</code>.</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/value_stream_analytics/#value-stream-stage-events">View Documentation</a></p>
  </li>
  <li>
    <strong>Improvements to Operational Container Scanning</strong>
    <p><p>We’ve made reporting and stability improvements to Operational Container Scanning (OCS). Notably, the Trivy report size limit has been increased, which provides a more stable experience for users. Expanding the Trivy report size from 10MB to 100MB allows customers who were constrained by the report size limit to leverage OCS in securing container images in their cluster.</p>
<p>With this change to OCS, users who run <code>gitlab-agent</code> in FIPS mode cannot run Operational Container Scanning. For more details on this, see our documentation and please provide feedback in issue <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/440849">#440849</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/clusters/agent/vulnerabilities.html">View Documentation</a></p>
  </li>
  <li>
    <strong>DAST analyzer updates</strong>
    <p><p>We resolved the following bugs during the 16.9 release milestone:</p>
<ul>
<li>Browser-based DAST errors when attempting to get the response body for cached resources when the browser has transitioned to a new page. <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/435175">See the issue</a> for more details.</li>
<li>Browser-based DAST crawl tasks are not running in parallel, causing performance degradation. <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/435325">See the issue</a> for more details.</li>
</ul></p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/dast/browser/">View Documentation</a></p>
  </li>
  <li>
    <strong>Updated SAST rules for higher-quality results</strong>
    <p><p>We&rsquo;ve updated more than 40 default GitLab SAST rules to:</p>
<ul>
<li>Increase true-positive results (correctly identified vulnerabilities) and reduce false-negative results (incorrectly identified vulnerabilities) by updating the detection logic rules for C#, Go, Java, JavaScript, and Python.</li>
<li>Add <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/438561">OWASP mappings</a> for C#, Go, Java, and Python rules.</li>
</ul>
<p>The rule changes are included in updated versions of the Semgrep-based GitLab SAST <a href="https://docs.gitlab.com/ee/user/application_security/sast/analyzers/">analyzer</a>.
This update is automatically applied on GitLab 16.0 or newer unless you&rsquo;ve <a href="https://docs.gitlab.com/ee/user/application_security/sast/#pinning-to-minor-image-version">pinned SAST analyzers to a specific version</a>.
We&rsquo;re working on more SAST rule improvements in <a href="https://gitlab.com/groups/gitlab-org/-/epics/10907">epic 10907</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/sast/rules.html#important-rule-changes">View Documentation</a></p>
  </li>
  <li>
    <strong>More detailed security findings in VS Code</strong>
    <p><p>We&rsquo;ve improved how security findings are shown in the <a href="https://marketplace.visualstudio.com/items?itemName=GitLab.gitlab-workflow#security-findings">GitLab Workflow extension</a> for Visual Studio Code (VS Code).
You can now see more details of your security findings that weren&rsquo;t previously shown, including:</p>
<ul>
<li>Full descriptions, with rich-text formatting.</li>
<li>The solution to the vulnerability, if one is available.</li>
<li>A link to the location where the problem occurs in your codebase.</li>
<li>Links to more information about the type of vulnerability discovered.</li>
</ul>
<p>We&rsquo;ve also:</p>
<ul>
<li>Improved how the extension shows the status of security scans before results are ready.</li>
<li>Made other usability improvements.</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/ee/editor_extensions/visual_studio_code/">View Documentation</a></p>
  </li>
  <li>
    <strong>Control which roles can cancel pipelines or jobs</strong>
    <p>Organizations might want to control which user roles are able to cancel a pipeline. Previously, anyone who could run a pipeline could also cancel a pipeline. Now, a project Maintainer is able to update a setting which restricts pipeline and job cancellation to specific roles, or even prevents cancellation completely!</p>
    <p><a href="https://docs.gitlab.com/ee/ci/pipelines/settings.html#restrict-roles-that-can-cancel-pipelines-or-jobs">View Documentation</a></p>
  </li>
  <li>
    <strong>Fleet Dashboard: Compute minutes used on instance runners per project metric card</strong>
    <p><p>When managing a GitLab Runner Fleet at scale, you have told us that knowing which projects use the most compute minutes on the runners is critical. For you, this information is essential to help teams optimize CI/CD pipelines and also help you make the right decisions about fleet cost optimization.</p>
<p>Now, the runner compute usage by project metric card, a complement to the previously released CI/CD compute minutes export by CSV feature, is available in the Runner Fleet Dashboard. You can see the top projects that consume instance runner minutes, and the most used instance runners in your GitLab environment.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/runners/runner_fleet_dashboard.html">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner 16.9</strong>
    <p><p>We’re also releasing GitLab Runner 16.9 today! GitLab Runner is the lightweight, highly-scalable agent that runs your CI/CD jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.</p>
<h4 id="whats-new">What&rsquo;s new:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/37349">Make Kubernetes API retries configurable</a></li>
</ul>
<h4 id="bug-fixes">Bug Fixes:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/3185">Random warning: failed to remove ***: Directory not empty</a></li>
</ul>
<p>The list of all changes is in the GitLab Runner <a href="https://gitlab.com/gitlab-org/gitlab-runner/blob/16-9-stable/CHANGELOG.md">CHANGELOG</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/runner">View Documentation</a></p>
  </li>
  <li>
    <strong>Show MR link for branch based pipelines</strong>
    <p>If you use branch pipelines, you can now quickly view and access the related merge requests from the pipeline details page.</p>
    <p><a href="https://docs.gitlab.com/ee/ci/pipelines/#view-pipelines">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab 16.8 released</title><link href="https://docs.gitlab.com/releases/16/16-8-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/16/16-8-released/</id><published>2024-01-18T00:00:00Z</published><updated>2024-01-18T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On January 18, 2024, GitLab 16.8 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong></strong>
</p>
<p>Ted has made significant contributions <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/420057">removing old and unused code</a>
from our helper files and addressing other maintenance tasks.
He was nominated by <a href="https://gitlab.com/kerrizor">Kerri Miller</a>, Staff Engineer at GitLab, who said,
&ldquo;It&rsquo;s not always glamorous work, but it&rsquo;s important work&rdquo;.</p>
<p>Ted is a freelance software engineer, avid climber, and cat enthusiast based in Orange County.</p>
<p>Martin was nominated by <a href="https://gitlab.com/nagyv-gitlab">Viktor Nagy</a>, Product Manager at GitLab, who said,
&ldquo;He added many missing tests to the Auto Deploy jobs template and improved the <a href="https://docs.gitlab.com/ee/user/clusters/agent/install/#customize-the-helm-installation">agentk Helm chart documentation</a>&rdquo;.</p>
<p><a href="https://gitlab.com/leetickett-gitlab">Lee Tickett</a>, Engineer at GitLab, added that he
&ldquo;has been joining community pairing sessions on <a href="https://discord.gg/gitlab">Discord</a> and collaborating
closely with team members to contribute a heavily requested <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/140002">search enhancement</a> for merge requests&rdquo;.</p>
<p>Martin is an IT Architect at Deutsche Telekom MMS GmbH based in Dresden, Germany.</p>
<p>Helio was nominated by <a href="https://gitlab.com/hsutor">Hannah Sutor</a>, Principal Product Manager at GitLab, who said,
&ldquo;he has pushed our entire team forward by proposing the <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/135324">ability to sign in using passkeys</a>.
Helio&rsquo;s MR was closed, but his contribution was deep, thought provoking, and his questions and open discussion will make our Passwordless implementation better&rdquo;.</p>
<p>Helio is a software engineer with passion for Ruby and OSS.</p>
<p>Thank you Ted, Martin, and Helio! 🙌</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>Static Analysis Findings in Merge request changes view</strong>
    <p>Static Analysis now supports displaying the findings in the Merge request changes view.
No need to navigate elsewhere – it&rsquo;s all consolidated in one place. The UI is refined for a more straightforward encounter. For specifics, just open the drawer. Learn more from the linked documentation, demo video and rollout issue.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/sast/#merge-request-changes-view">View Documentation</a></p>
  </li>
  <li>
    <strong>Google Cloud Secret Manager support</strong>
    <p>Secrets stored in Google Cloud Secret Manager can now be easily retrieved and used in CI/CD jobs. Our new integration simplifies the process of interacting with Google Cloud Secret Manager through GitLab CI/CD, helping you streamline your build and deploy processes! This is just one of the many ways <a href="https://about.gitlab.com/blog/gitlab-google-partnership-s3c/">GitLab and Google Cloud are better together</a>!</p>
    <p><a href="https://docs.gitlab.com/ee/ci/secrets/gcp_secret_manager.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Workspaces are now generally available</strong>
    <p><p>We&rsquo;re thrilled to share that Workspaces are now generally available and ready to improve your developer efficiency!</p>
<p>By creating secure, on-demand remote development environments, you can reduce the time you spend managing dependencies and onboarding new developers and focus on delivering value faster. With our platform-agnostic approach, you can use your existing cloud infrastructure to host your workspaces and keep your data private and secure.</p>
<p>Since their introduction in GitLab 16.0, workspaces have received improvements to error handling and reconciliation, support for private projects and SSH connections, additional configuration options, and a new administrator interface. These improvements mean that workspaces are now more flexible, more resilient, and more easily managed at scale.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/workspace/">View Documentation</a></p>
  </li>
  <li>
    <strong>Enforce 2FA for GitLab administrators</strong>
    <p>You can now enforce whether GitLab administrators are required to use two-factor authentication (2FA) in their self-managed instance. It is good security practice to use 2FA for all accounts, especially for privileged accounts like administrators. If this setting is enforced, and an administrator does not already use 2FA, they must set up 2FA on their next sign-in.</p>
    <p><a href="https://docs.gitlab.com/ee/security/two_factor_authentication.html#enforce-2fa-for-administrator-users">View Documentation</a></p>
  </li>
  <li>
    <strong>Speed up your builds with the Maven dependency proxy</strong>
    <p><p>A typical software project relies on a variety of dependencies, which we call packages. Packages can be internally built and maintained, or sourced from a public repository. Based on our user research, we&rsquo;ve learned that most projects use a 50/50 mix of public and private packages. Package installation order is very important, as using an incorrect package version can introduce breaking changes and security vulnerabilities into your pipelines.</p>
<p>Now you can add one external Java repository to your GitLab project. After adding it, when you install a package using the dependency proxy, GitLab first checks for the package in the project. If it&rsquo;s not found, GitLab then attempts to pull the package from the external repository.</p>
<p>When a package is pulled from the external repository, it&rsquo;s imported into the GitLab project. The next time that particular package is pulled, it&rsquo;s pulled from GitLab and not the external repository. Even if the external repository is having connectivity issues and the package is present in the dependency proxy, pulling the package still works, making your pipelines faster and more reliable.</p>
<p>If the package changes in the external repository (for example, a user deletes a version and publishes a new one with different files) the dependency proxy detects it. It invalidates the package, so GitLab pulls the newer one. This ensures the correct packages are downloaded, and helps reduce security vulnerabilities.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/packages/package_registry/dependency_proxy/">View Documentation</a></p>
  </li>
  <li>
    <strong>Deeper insights into velocity in the Issue Analytics report</strong>
    <p>The <strong>Issue Analytics</strong> report now contains information on the number of closed issues in a month to allow for a detailed velocity analysis. With this valuable addition, GitLab users can now gain insights into trends associated with their projects, and improve the overall turn-around time and value delivered to their customers. The <strong>Issue Analytics</strong> visualization contains a bar chart with the number of issues for each month, with a default time span of 13 months. You can access this chart from the drill-down in the <a href="https://docs.gitlab.com/ee/user/analytics/value_streams_dashboard.html#dashboard-metrics-and-drill-down-reports">Value Streams Dashboard</a>.</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/issues_analytics/index.html">View Documentation</a></p>
  </li>
  <li>
    <strong>New organization-level DevOps view with DORA-based industry benchmarks</strong>
    <p><p>We added a new <strong>DORA Performers score</strong> panel to the <a href="https://www.youtube.com/watch?v=EA9Sbks27g4">Value Streams Dashboard</a> to visualize the status of the organization&rsquo;s DevOps performance across different projects. This new visualization displays a breakdown of the DORA score (high, medium, or low) so that executives can understand the organization&rsquo;s DevOps health top to bottom.</p>
<p>The <a href="https://about.gitlab.com/solutions/value-stream-management/dora/#overview">four DORA metrics</a> are available out-of-the-box in GitLab, and now with the new DORA scores organizations can compare their DevOps performance against <a href="https://dora.dev/">industry benchmarks</a> or peers. This benchmarking helps executives understand where they stand in relation to others, and identify best practices or areas where they might be lagging behind.</p>
<p>To help us improve the Value Streams Dashboard, please share feedback about your experience in this <a href="https://gitlab.fra1.qualtrics.com/jfe/form/SV_50guMGNU2HhLeT4">survey</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/analytics/value_streams_dashboard.html#dora-performers-score-panel">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Scale and Deployments</h4>
<ul>
  <li>
    <strong>Omnibus improvements</strong>
    <p><p>From GitLab 16.8, you can specify commands to generate configurations for the following services in the
<code>gitlab.rb</code> file so that plaintext passwords are not exposed:</p>
<ul>
<li>GitLab Kubernetes Agent Server</li>
<li>GitLab Workhorse</li>
<li>GitLab Exporter</li>
</ul>
<p>This means plaintext passwords for Redis no longer need to be stored in <code>gitlab.rb</code>.</p>
</p>
    <p><a href="https://docs.gitlab.com/omnibus/">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>Smarter approval resets with `patch-id` support</strong>
    <p><p>To ensure all changes are reviewed and approved, it&rsquo;s common to remove all approvals when new commits are added to a merge request. However, rebases also unnecessarily invalidated existing approvals, even if the rebase introduced no new changes, requiring authors to seek re-approval.</p>
<p>Merge request approvals now align to a <a href="https://git-scm.com/docs/git-patch-id"><code>git-patch-id</code></a>. It&rsquo;s a reasonably stable and reasonably unique identifier that enables smarter decisions about resetting approvals. By comparing the <code>patch-id</code> before and after the rebase, we can determine if new changes were introduced that should reset approvals and require a review.</p>
<p>If you have feedback about your experiences with resets now, let us know in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/435870">issue #435870</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/merge_requests/approvals/settings.html#remove-all-approvals-when-commits-are-added-to-the-source-branch">View Documentation</a></p>
  </li>
  <li>
    <strong>View blame information directly in the file page</strong>
    <p>In previous versions of GitLab, viewing file blame required you to access a different page. Now you can view the file blame information directly from the file page.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/repository/git_blame.html#view-blame-for-a-file">View Documentation</a></p>
  </li>
  <li>
    <strong>Set CPU and memory usage per workspace</strong>
    <p><p>Improved developer experience, onboarding, and security are driving more development toward cloud IDEs and on-demand development environments. However, these environments might contribute to increased infrastructure costs. You can already configure CPU and memory usage per project in your <a href="https://docs.gitlab.com/ee/user/workspace/#devfile">devfile</a>.</p>
<p>Now you can also set CPU and memory usage per workspace. By configuring requests and limits at the GitLab agent level, you can prevent individual developers from using an excessive amount of cloud resources.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/workspace/gitlab_agent_configuration.html#remote-development-settings">View Documentation</a></p>
  </li>
  <li>
    <strong>Kubernetes 1.28 support</strong>
    <p><p>This release adds full support for Kubernetes version 1.28, released in August 2023. If you deploy your apps to Kubernetes, you can now upgrade your connected clusters to the most recent version and take advantage of all its features.</p>
<p>You can read more about our Kubernetes support policy and other supported Kubernetes versions.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/clusters/agent/#supported-cluster-versions">View Documentation</a></p>
  </li>
  <li>
    <strong>New customizable permissions</strong>
    <p><p>There are five new abilities available you can use to create custom roles:</p>
<ul>
<li>Manage project access tokens.</li>
<li>Manage group access tokens.</li>
<li>Manage group members.</li>
<li>Ability to archive a project.</li>
<li>Ability to delete a project.</li>
</ul>
<p>Add these abilities, along with other pre-existing custom abilities, to any base role to create a custom role. Custom roles allow you to define granular roles that only give a user the abilities they need to do their jobs, and reduce unnecessary privilege escalation.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/custom_roles.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Assign a custom role with SAML SSO</strong>
    <p>Users can be assigned a custom role as the default role they are created with when they are provisioned with SAML SSO. Previously, only static roles could be chosen as the default. This allows automatically provisioned users to be assigned a role that best aligns with the principle of least privilege.</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/saml_sso/#configure-gitlab">View Documentation</a></p>
  </li>
  <li>
    <strong>Filter streaming audit events by sub group/project at group level</strong>
    <p><p>Streaming audit events have been extended to support filtering by sub-group or project at the group level, in addition to the existing support for event type filtering.</p>
<p>This additional filter will allow you to separate out events in your streams to send to different destinations, or to exclude irrelevant sub-groups/projects, ensuring you have the most actionable events for your team to monitor.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/audit_event_streaming/index.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Compliance framework management improvements</strong>
    <p><p>Our compliance center is becoming the central destination for understanding
compliance posture and managing compliance frameworks. We&rsquo;re moving framework
management into a new tab in the compliance center, as well as adding more exciting
capabilities:</p>
<ul>
<li>View frameworks in a list view in the <strong>Frameworks</strong> tab.</li>
<li>Search and filter to find specific frameworks.</li>
<li>Use the new compliance framework sidebar to explore more details for each framework.</li>
<li>Edit your framework to view all settings, including managing name, description, linked projects, and more.</li>
<li>Create a quick report of your frameworks with an export to CSV.</li>
</ul></p>
    <p><a href="https://docs.gitlab.com/ee/user/group/compliance_frameworks.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Instance-level audit event streaming to AWS S3</strong>
    <p><p>Previously, you could configure only top-level group streaming audit events for AWS S3.</p>
<p>With GitLab 16.8, we&rsquo;ve extended support for AWS S3 to instance-level streaming destinations.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/audit_event_streaming/#aws-s3-destinations-1">View Documentation</a></p>
  </li>
  <li>
    <strong>Enforce policy to prevent branches being deleted or unprotected</strong>
    <p><p>One of several new settings added to scan result policies to aide in <a href="https://gitlab.com/groups/gitlab-org/-/epics/9704">compliance enforcement of security policies</a>, branch modification controls will limit the ability to circumvent policies by changing project-level settings.</p>
<p>For each existing or new scan result policy, you can enable <code>Prevent branch modification</code> to take effect for the branches defined within the policy to prevent users from deleting or unprotecting those branches.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/policies/scan-result-policies.html">View Documentation</a></p>
  </li>
  <li>
    <strong>SAML Group Sync for custom roles</strong>
    <p>You can now use SAML Group Sync to map custom roles to groups of users. Previously, you could only map SAML groups to GitLab&rsquo;s static roles. This gives more flexibility to customers who use SAML Group Links to manage group membership and member roles.</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/saml_sso/group_sync.html#configure-saml-group-links">View Documentation</a></p>
  </li>
  <li>
    <strong>SAML SSO authentication for merge request approval</strong>
    <p><p>For those using SAML SSO and SCIM for user account management in GitLab, you can now use SSO to meet the merge request authentication requirement
over password-based authentication for approving merge requests.</p>
<p>This method ensures only authenticated users can approve a merge request for security and compliance, without having to use a separate
password-based solution.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/merge_requests/approvals/settings.html#require-user-re-authentication-to-approve">View Documentation</a></p>
  </li>
  <li>
    <strong>Introduce group-level landing page for Analytics Dashboards</strong>
    <p>We are introducing a new landing page for the group-level analytics dashboard. This enhancement ensures a more consistent and user-friendly navigation experience. In the first phase this page includes the <a href="https://www.youtube.com/watch?v=8pLEucNUlWI">Value Streams Dashboard</a>, but it also sets the groundwork for future features, allowing you to personalize your dashboards. These improvements aim to streamline your experience, and provide more flexibility in managing and interpreting your data.</p>
    <p><a href="https://docs.gitlab.com/ee/user/analytics/value_streams_dashboard.html">View Documentation</a></p>
  </li>
  <li>
    <strong>View all ancestor items of a task or OKR</strong>
    <p><p>With this release, you can now view the entire hierarchy lineage of a work item instead of just the immediate parent.</p>
<p>Work items include:</p>
<ul>
<li>Tasks, in all tiers.</li>
<li><a href="https://docs.gitlab.com/ee/user/okrs.html">Objectives and key results</a>, in the Ultimate tier and behind a feature flag.</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/tasks.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Runner Fleet Dashboard: CSV export of compute minutes used by instance runners</strong>
    <p>You might need to run a report of CI/CD compute minutes used by projects on instance runners for various reasons. However, there wasn&rsquo;t a simple to use mechanism in GitLab for you to generate a CI/CD compute minutes usage report. With this feature, you can export a report of CI/CD compute minutes used by each project on shared runners as a CSV file.</p>
    <p><a href="https://docs.gitlab.com/ee/ci/runners/runner_fleet_dashboard.html#export-compute-minutes-used-by-instance-runners">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner 16.8</strong>
    <p><p>We&rsquo;re also releasing GitLab Runner 16.8 today! GitLab Runner is the lightweight, highly-scalable agent that runs your CI/CD jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.</p>
<h4 id="whats-new">What&rsquo;s new:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/29659">Overwrite generated Kubernetes pod specifications - Beta </a></li>
</ul>
<h4 id="bug-fixes">Bug Fixes:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/37224">GitLab Runner authentication token exposed in the runner log file</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/37197">Registering multiple autoscaling runners results in a partial config.toml file</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/36988">Interrupt of the restore_cache helper task corrupts the cache</a></li>
</ul>
<p>The list of all changes is in the GitLab Runner <a href="https://gitlab.com/gitlab-org/gitlab-runner/blob/16-8-stable/CHANGELOG.md">CHANGELOG</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/runner">View Documentation</a></p>
  </li>
  <li>
    <strong>Predefined variables for merge request description</strong>
    <p>If you use automation to work with merge requests in CI/CD pipelines, you might have wanted an easier way to fetch a merge request&rsquo;s description without an API call. In GitLab 16.7 we introduced the <code>CI_MERGE_REQUEST_DESCRIPTION</code> predefined variable, making the description easily accessible in all jobs. In GitLab 16.8 we tweaked the behavior to truncate <code>CI_MERGE_REQUEST_DESCRIPTION</code> at 2700 characters, because very large descriptions can cause runner errors. You can check if the description was truncated with the newly introduced <code>CI_MERGE_REQUEST_DESCRIPTION_IS_TRUNCATED</code> predefined variable, which is set to <code>true</code> when the description was truncated.</p>
    <p><a href="https://docs.gitlab.com/ee/ci/variables/predefined_variables.html#predefined-variables-for-merge-request-pipelines">View Documentation</a></p>
  </li>
  <li>
    <strong>Windows 2022 support for SaaS runners on Windows</strong>
    <p><p>Teams can now build, test, and deploy applications on Windows Server 2022.</p>
<p>SaaS runners on Windows allow you to increase your development teams&rsquo; velocity in building and deploying applications that require Windows in a secure, on-demand GitLab Runner build environment integrated with GitLab CI/CD.</p>
<p>Try it out today by using <code>saas-windows-medium-amd64</code> as the tag in your .gitlab-ci.yml file.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/runners/saas/windows_saas_runner.html">View Documentation</a></p>
  </li>
  <li>
    <strong>CI/CD Components Catalog section for your internal components</strong>
    <p>As the number of items in the CI/CD catalog continues to expand, it is increasingly challenging for you to locate the CI/CD components released by your teams and available to you. In this release, we are introducing a dedicated <strong>Your groups</strong> tab, empowering you to effortlessly filter and identify the components associated with your organization. This simplified search process enhances efficiency, as you can more quickly find and use released CI/CD components.</p>
    <p><a href="https://docs.gitlab.com/ee/ci/components/#cicd-catalog">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab Patch Release: 16.7.3 16.6.5 16.5.7</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-7-3-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-7-3-released/</id><published>2024-01-12T00:00:00Z</published><updated>2024-01-12T00:00:00Z</updated><author><name>Ahmad Tolba</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On January 12, 2024, we released versions <code>16.7.3</code> <code>16.6.5</code> <code>16.5.7</code> for GitLab Community Edition and Enterprise Edition.</p>
<p>These versions resolve a single issue with a database migration.</p>
<h2 id="gitlab-community-edition-and-enterprise-edition">GitLab Community Edition and Enterprise Edition</h2>
<h3 id="1673">16.7.3</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/141704">Make chat_names table migration idempotent</a></li>
</ul>
<h3 id="1665">16.6.5</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/141705">Make chat_names table migration idempotent</a></li>
</ul>
<h3 id="1657">16.5.7</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/141706">Make chat_names table migration idempotent</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>This version fixes an <a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/issues/8371">issue with an existing migration that prevented upgrades from completing</a>. It does not include any new migrations, and for multi-node deployments, <a href="https://docs.gitlab.com/ee/update/#upgrading-without-downtime">should not require any downtime</a>.</p>
<p>Please be aware that by default the Omnibus packages will stop, run migrations,
and start again, no matter how “big” or “small” the upgrade is. This behavior
can be changed by adding a <a href="https://docs.gitlab.com/ee/update/zero_downtime.html"><code>/etc/gitlab/skip-auto-reconfigure</code></a> file,
which is only used for <a href="https://docs.gitlab.com/omnibus/update/README.html">updates</a>.</p>
<h2 id="updating">Updating</h2>
<p>To update, check out our <a href="https://about.gitlab.com/update/">update page</a>.</p>
<h2 id="gitlab-subscriptions">GitLab subscriptions</h2>
<p>Access to GitLab Premium and Ultimate features is granted by a paid <a href="https://about.gitlab.com/pricing/">subscription</a>.</p>
<p>Alternatively, <a href="https://gitlab.com/users/sign_in">sign up for GitLab.com</a>
to use GitLab&rsquo;s own infrastructure.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Critical Security Release: 16.7.2, 16.6.4, 16.5.6</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-7-2-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-7-2-released/</id><published>2024-01-11T00:00:00Z</published><updated>2024-01-11T00:00:00Z</updated><author><name>Greg Myers</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On January 11, 2024, we released versions 16.7.2, 16.6.4, 16.5.6 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important security fixes, and we strongly recommend that all GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version.</p>
<p>GitLab releases fixes for security vulnerabilities in security releases.
For more information, you can visit our <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of our regular and security release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.
In addition, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are dedicated to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest security release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>. If you have not upgraded yet, be aware that there is <a href="https://about.gitlab.com/releases/2024/01/12/gitlab-16-7-3-released/">a newer patch</a> that includes additional fixes for recently discovered DB migration issue. Please upgrade to 16.7.3, 16.6.5, 16.5.7, or newer to prevent the migration issue.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="table-of-fixes">Table of fixes</h2>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-7-2-released/#account-takeover-via-password-reset-without-user-interactions">Account Takeover via password reset without user interactions</a></td>
          <td>Critical</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-7-2-released/#bypass-codeowners-approval-removal">Bypass CODEOWNERS approval removal</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-7-2-released/#attacker-can-abuse-slackmattermost-integrations-to-execute-slash-commands-as-another-user">Attacker can abuse Slack/Mattermost integrations to execute slash commands as another user</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-7-2-released/#workspaces-able-to-be-created-under-different-root-namespace">Workspaces able to be created under different root namespace</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-7-2-released/#commit-signature-validation-ignores-headers-after-signature">Commit signature validation ignores headers after signature</a></td>
          <td>Low</td>
      </tr>
  </tbody>
</table>
<h3 id="account-takeover-via-password-reset-without-user-interactions">Account Takeover via Password Reset without user interactions</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions from 16.1 prior to 16.1.6, 16.2 prior to 16.2.9, 16.3 prior to 16.3.7, 16.4 prior to 16.4.5, 16.5 prior to 16.5.6, 16.6 prior to 16.6.4, and 16.7 prior to 16.7.2 in which user account password reset emails could be delivered to an unverified email address.
This is a Critical severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H</code>, 10.0).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-7028">CVE-2023-7028</a>.</p>
<p>This security fix has been backported to GitLab versions and 16.1.6, 16.2.9, 16.3.7, and 16.4.5 in addition to 16.5.6, 16.6.4, and 16.7.2.</p>
<p>Thanks <a href="https://hackerone.com/asterion04">asterion04</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="faq">FAQ</h3>
<p><strong>What should I do if I believe my GitLab instance is compromised?</strong></p>
<p><em>In addition to following your incident response plan</em></p>
<ol>
<li>Apply the Critical Security Release to your GitLab instance</li>
<li>Enable <a href="https://docs.gitlab.com/ee/security/two_factor_authentication.html">Two-Factor Authentication</a> (2FA) for all GitLab accounts</li>
<li>Rotate all secrets stored in GitLab:
<ol>
<li>All credentials, including GitLab account passwords</li>
<li>API tokens</li>
<li>Any certificates</li>
<li>Any other secrets</li>
</ol>
</li>
<li>Follow steps in our incident response guide, <a href="https://docs.gitlab.com/ee/security/responding_to_security_incidents.html#suspected-compromised-user-account">here</a></li>
</ol>
<p><strong>Who is impacted by this?</strong></p>
<p>GitLab self-managed instances using the following affected versions:</p>
<ul>
<li>16.1 to 16.1.5</li>
<li>16.2 to 16.2.8</li>
<li>16.3 to 16.3.6</li>
<li>16.4 to 16.4.4</li>
<li>16.5 to 16.5.5</li>
<li>16.6 to 16.6.3</li>
<li>16.7 to 16.7.1</li>
</ul>
<p>Within these versions, all authentication mechanisms are impacted.
Additionally, users who have two-factor authentication enabled are vulnerable to password reset but not account takeover as their second authentication factor is required to login.</p>
<p><strong>What actions should I take?</strong></p>
<ul>
<li>Upgrade self-managed instances to a <a href="https://about.gitlab.com/releases/categories/releases/">patched version</a> following our upgrade path. Do not skip upgrade stops as this could create instability.
<ul>
<li>Note: 16.3.x is a <a href="https://docs.gitlab.com/ee/update/#required-upgrade-stops">required upgrade stop</a> in the <a href="https://docs.gitlab.com/ee/update/#upgrade-paths">GitLab upgrade path</a>.</li>
</ul>
</li>
<li>Enable <a href="https://docs.gitlab.com/ee/security/two_factor_authentication.html">Two-Factor Authentication</a> (2FA) for all GitLab accounts, especially for users with elevated privileges (e.g. administrator accounts).</li>
</ul>
<p><strong>Has the vulnerability been resolved?</strong></p>
<p>This vulnerability was resolved with this security release.</p>
<p><strong>Were any accounts actually compromised due to this vulnerability?</strong></p>
<p>We have not detected any abuse of this vulnerability on platforms managed by GitLab, including GitLab.com and GitLab Dedicated instances. Self-managed customers can review their logs to check for possible attempts to exploit this vulnerability:</p>
<ul>
<li>Check <a href="https://docs.gitlab.com/ee/administration/logs/#production_jsonlog">gitlab-rails/production_json.log</a> for HTTP requests to the <code>/users/password</code> path with params.value.email consisting of a JSON array with <em>multiple</em> email addresses.</li>
<li>Check <a href="https://docs.gitlab.com/ee/administration/logs/#audit_jsonlog">gitlab-rails/audit_json.log</a> for entries with <code>meta.caller_id</code> of <code>PasswordsController#create</code> and <code>target_details</code> consisting of a JSON array with <em>multiple</em> email addresses.</li>
</ul>
<p><strong>When was the vulnerability introduced?</strong></p>
<p>The vulnerability was introduced in 16.1.0 on May 1, 2023.</p>
<p><strong>How was the vulnerability discovered?</strong></p>
<p>The vulnerability was responsibly reported through our Bug Bounty program.</p>
<p><strong>What security measures do you have in place to prevent such vulnerabilities?</strong></p>
<ul>
<li>We have added multiple tests that validate the password reset logic as a whole, in particular handling of email provided, the email generation, and content to prevent similar vulnerabilities.</li>
<li>Security reviews are a required part of the MR checklist that developers must complete.</li>
<li>We have a code review process that requires multiple approvals for changes.</li>
<li>We have started the <a href="https://handbook.gitlab.com/handbook/security/root-cause-analysis/">Root Cause Analysis process</a> in order to determine a comprehensive list of follow-up actions, including ways to prevent vulnerabilities like this one.</li>
<li>We have a <a href="https://docs.gitlab.com/ee/user/profile/account/two_factor_authentication.html">two-factor authentication feature</a> that prevents such a vulnerability if enabled. It is currently enabled for all GitLab Team Members.</li>
<li>We have added additional developer documentation in the code base to ensure implementation and security considerations are available to engineers working in this area in the future.</li>
<li>Revised the implementation logic to not support the submission of multiple email addresses for reset links.</li>
</ul>
<p><strong>How did this happen?</strong></p>
<p>A change was made in 16.1.0 to allow users to reset their password through a secondary email address. The vulnerability is a result of a bug in the email verification process. The bug has been fixed with this patch, and as mentioned above, we have implemented a number of preventive security measures to protect customers.</p>
<p><strong>Does this affect me if I use an Identity Provider, like Okta or Azure AD?</strong></p>
<p>Users without SSO enforcement are vulnerable. If your configuration allows a username and password to be used in addition to SSO options, then you are impacted. Disabling all password authentication options via <a href="https://docs.gitlab.com/ee/administration/settings/sign_in_restrictions.html#password-authentication-enabled">Sign-in restrictions settings</a> will mitigate the vulnerability for Self-Managed customers that have an external identity provider configured, as this will disable the ability to perform password reset.</p>
<p><strong>Am I affected by this vulnerability if I have 2FA enforced?</strong></p>
<p>An attacker will not be able to takeover your account if you have 2FA enabled. They may still be able to reset your password but will not be able to access your second factor authentication method. If you are suddenly redirected to login, or see a reset email triggered, please reset your password.</p>
<p><strong>Does this vulnerability affect GitLab Runner?</strong></p>
<p>No, this vulnerability does not affect GitLab Runner. This vulnerability affected the GitLab Rails codebase for impacted versions of GitLab itself. GitLab Runner has a separate code base that is unaffected.</p>
<h3 id="bypass-codeowners-approval-removal">Bypass CODEOWNERS approval removal</h3>
<p>An issue has been discovered in GitLab affecting all versions starting from 15.3 before 16.5.5, all versions starting from 16.6 before 16.6.4, all versions starting from 16.7 before 16.7.2. The required CODEOWNERS approval could be bypassed by adding changes to a previously approved merge request.
This is a high severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:H/A:N</code>, 7.6).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-4812">CVE-2023-4812</a>.</p>
<p>Thanks <a href="https://hackerone.com/ali_shehab">ali_shehab</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="attacker-can-abuse-slackmattermost-integrations-to-execute-slash-commands-as-another-user">Attacker can abuse Slack/Mattermost integrations to execute slash commands as another user</h3>
<p>Incorrect authorization checks in GitLab CE/EE from all versions starting from 8.13 before 16.5.6, all versions starting from 16.6 before 16.6.4, all versions starting from 16.7 before 16.7.2, allows a user to abuse Slack/Mattermost integrations to execute slash commands as another user.
This is a high severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:H/UI:R/S:C/C:H/I:H/A:N</code>, 7.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-5356">CVE-2023-5356</a>.</p>
<p>Thanks <a href="https://hackerone.com/yvvdwf">yvvdwf</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="workspaces-able-to-be-created-under-different-root-namespace">Workspaces able to be created under different root namespace</h3>
<p>An improper access control vulnerability exists in GitLab Workspaces affecting all versions prior to 16.5.6, 16.6 prior to 16.6.4 and 16.7 prior to 16.7.2. This condition allows an attacker to create a workspace in one group that is associated with an agent from another group.
This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:C/C:H/I:L/A:N</code>, 6.6).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-6955">CVE-2023-6955</a>.</p>
<p>This vulnerability was discovered internally by GitLab team member <a href="https://gitlab.com/j.seto">@j.seto</a>.</p>
<h3 id="commit-signature-validation-ignores-headers-after-signature">Commit signature validation ignores headers after signature</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions from 12.2 prior to 16.5.6, 16.6 prior to 16.6.4, and 16.7 prior to 16.7.2 in which an attacker could potentially modify the metadata of signed commits.
This is a low severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:L/A:N</code>, 3.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-2030">CVE-2023-2030</a>.</p>
<p>Thanks <a href="https://hackerone.com/lotsofloops">lotsofloops</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="non-security-patches">Non Security Patches</h2>
<h3 id="1672">16.7.2</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/1688">Backport 16.7: Clean mocked tags from assets</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/140347">Backport: Solving database cross joins on HookData::ProjectBuilder</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/140621">Fix order-dependent Sidekiq config spec failures</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/140772">Harden Internal Events CLI specs against flakiness</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/140892">Enable Apollo Boards by default</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/140934">Backport &ldquo;Add missing ci_sources_pipelines indexes for self-host&rdquo; 16.7</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7338">Temporarily pin Faraday related gems</a></li>
</ul>
<h3 id="1664">16.6.4</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/1675">Merge branch &lsquo;ci-clean-mocked-tags&rsquo; into &lsquo;16-6-stable&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/1689">Backport 16.6 : Clean mocked tags from assets</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/139540">Backport-Search::IndexRepairService using Repository index for projects</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/141018">Backport !140718 into 16.6 stable branch</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7337">Temporarily pin Faraday related gems</a></li>
</ul>
<h3 id="1656">16.5.6</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/1678">CI: clean mocked tags from assets, don&rsquo;t pollute artifacts (backport to 16.5)</a></li>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/1690">Backport 16.5 : Clean mocked tags from assets</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/6583">Backport 16.5: Fix chatty loopWriter logs when log level config is empty</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/141027">Bump allure-report and backport clickhouse version fix to 16.5</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7336">Temporarily pin Faraday related gems</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-security-release-notifications">Receive Security Release Notifications</h2>
<p>To receive security release blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">security release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab 16.7 released</title><link href="https://docs.gitlab.com/releases/16/16-7-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/16/16-7-released/</id><published>2023-12-21T00:00:00Z</published><updated>2023-12-21T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On December 21, 2023, GitLab 16.7 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong></strong>
</p>
<p>As we continue to focus on growing our wider community, we are incredibly happy to see both MVPs nominated by members of <a href="https://about.gitlab.com/community/core-team/">the Core team</a>.</p>
<p>Muhammed was nominated for adding support for <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/112907">specifying platform when using Docker images with GitLab Runner</a>.
This contribution took 9 months of collaboration and showed Muhammed&rsquo;s commitment and perseverance when a bug required a <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/137100">follow-up</a>.
This solved a popular two-year-old <a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/27919">issue</a>. &ldquo;Great shoutout to the GitLab Runner team&rdquo; Muhammed said, &ldquo;for supporting me on bringing a long awaited feature to fruition&rdquo;.
Muhammed is an Automation Engineer at <a href="https://www.airtimerewards.co.uk/">Airtime Rewards</a>, working mainly with Terraform and promoting CI/CD and automation practices within the engineering teams.</p>
<p>Niklas was nominated for his continued contributions and support in many different forms.
Today marks exactly 1 year since <a href="/releases/2022/12/22/gitlab-15-7-released/#mvp">his last MVP award</a>.
Niklas tackles daunting work which proves challenging even for GitLab team members and plays a huge part in maintaining our wider community contributors.
Read more in the <a href="https://gitlab.com/gitlab-com/www-gitlab-com/-/issues/34762#note_1681021745">nomination issue</a>.</p>
<p>Thank you Muhammed and Niklas! 🙌</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>GitLab Duo Code Suggestions is generally available</strong>
    <p><p><a href="https://about.gitlab.com/solutions/code-suggestions/">GitLab Duo Code Suggestions</a> is now generally available!</p>
<p>GitLab Duo Code Suggestions helps teams create software faster and more efficiently, by completing lines of code and defining and generating logic for functions.</p>
<p>Code Suggestions is built with privacy as a critical foundation. Private, non-public customer code stored in GitLab is not used as training data. Learn about <a href="https://docs.gitlab.com/ee/user/gitlab_duo/data_usage.html">data usage</a> when using Code Suggestions.</p>
<p>In the general release, we&rsquo;ve made <a href="https://docs.gitlab.com/ee/user/project/repository/code_suggestions/#supported-editor-extensions">Code Suggestions available across several IDEs</a>. Code Suggestions is also now more intuitive and responsive.</p>
<p>GitLab Duo Code Suggestions is <a href="https://docs.gitlab.com/ee/user/project/repository/code_suggestions/#start-using-code-suggestions">free to try</a> subject to the <a href="https://handbook.gitlab.com/handbook/legal/testing-agreement/">GitLab Testing Agreement</a> until February 15, 2024. Starting today, you can buy Code Suggestions as an add-on to GitLab subscriptions for an introductory price of $9 USD per user/per month. Please <a href="https://about.gitlab.com/solutions/gitlab-duo-pro/sales/">contact us</a> to get started with Code Suggestions.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/repository/code_suggestions/">View Documentation</a></p>
  </li>
  <li>
    <strong>Use GitLab pages without a wildcard DNS</strong>
    <p><p>Previously, to create a GitLab Pages project, you needed a domain formatted like name.example.io or name.pages.example.io. This requirement meant you had to set up wildcard DNS records and SSL/TLS certificates. In GitLab 16.7, you can set up a GitLab Pages project without a DNS wildcard. This feature is an experiment.</p>
<p>Removing the requirement for wildcard certificates eases administrative overhead associated with GitLab pages. Some customers can&rsquo;t use GitLab Pages because of organizational restrictions on wildcard DNS records or certificates.</p>
<p>We welcome feedback related to this feature in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/434372">issue 434372</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/pages/#pages-domain-without-wildcard-dns">View Documentation</a></p>
  </li>
  <li>
    <strong>New drill-down view from Insights report charts</strong>
    <p><p>With the <a href="https://www.youtube.com/watch?v=OMTfPsLa98I">Insights report</a> you can analyze patterns over time using customizable charts. The new drill-down capability added to the &ldquo;Bugs created by priority&rdquo; and &ldquo;Bugs created by severity&rdquo; Insights reports allows you to drill down on the <a href="https://docs.gitlab.com/ee/user/group/issues_analytics/">Issue analytics</a> report for deeper analysis.</p>
<p>We plan to include this capability in the other Insight reports as a custom option in a later version.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/insights/#drill-down-on-charts">View Documentation</a></p>
  </li>
  <li>
    <strong>SAST results in MR changes view</strong>
    <p><p>SAST findings now appear in the merge request Changes view.
This makes it easier to see, understand, and fix potential weaknesses during the code review process.</p>
<p>Lines containing SAST issues are marked by a symbol beside the gutter.
Select the symbol to see the list of issues, then select an issue to see its details.</p>
<p>We&rsquo;ve enabled this feature on GitLab.com.
We plan to enable the <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/410191">feature flag</a> by default for Self-Managed instances in GitLab 16.8.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/sast/#merge-request-changes-view">View Documentation</a></p>
  </li>
  <li>
    <strong>CI/CD Catalog - Beta release</strong>
    <p><p>GitLab 16.7 sees the Beta release of the CI/CD catalog! The catalog is where you can search for <a href="https://docs.gitlab.com/ee/ci/components/">CI/CD components</a> maintained by you, your organization, or the public community. This is the place where DevOps engineers come together to create, contribute, and share reusable pipeline configurations.</p>
<p>Unlike other methods of reusing CI/CD configuration, CI/CD components published in the catalog have an improved experience, and are easily added to your pipeline. We invite you to start testing this new and exciting feature! You can try out components that others have created and shared in the catalog, or create your own components and share them with everyone.</p>
<p>While this is our initial beta release of the feature, we continue to work on making the experience even better. Our goal is to make the CI/CD catalog a fundamental part of the GitLab CI/CD experience.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/components/#cicd-catalog">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Scale and Deployments</h4>
<ul>
  <li>
    <strong>Add a Mastodon handle to your User Profile</strong>
    <p>You can now list your Mastodon handle on the User Profile. With this enhancement we are now supporting a fediverse social network, which will help in advancing <a href="https://gitlab.com/groups/gitlab-org/-/epics/11247">ActivityPub for GitLab</a>.</p>
    <p><a href="https://docs.gitlab.com/ee/user/profile/#add-external-accounts-to-your-user-profile-page">View Documentation</a></p>
  </li>
  <li>
    <strong>Group descriptions extended to 500 characters</strong>
    <p>Group descriptions can now contain up to 500 characters. If you try to save a group description with more than 500 characters, a warning message appears stating that the description is too long. Thanks to @freznicek for this community contribution!</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/#edit-group-name-and-description">View Documentation</a></p>
  </li>
  <li>
    <strong>Search bar more prominent on the search results page</strong>
    <p>The search bar is now more prominent on the search results page. To increase the search bar visibility, the group and project filters have been moved to the left sidebar.</p>
    <p><a href="https://docs.gitlab.com/ee/user/search/">View Documentation</a></p>
  </li>
  <li>
    <strong>Issues with code more discoverable in advanced search</strong>
    <p>In GitLab 16.7, issues with code have become more discoverable. With advanced search, you can now find issues that contain code snippets and logs in their descriptions.</p>
    <p><a href="https://docs.gitlab.com/ee/user/search/advanced_search.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Customize time format for display</strong>
    <p><p>Until now, GitLab only displayed time in 12 hour format, which could not be changed.</p>
<p>From this release, thanks to the community contribution, you can customize the format used to display time in places like issue lists, overview pages or when setting your status.
You can display times as:</p>
<ul>
<li>12 hour format, for example <code>2:34 PM</code>.</li>
<li>24 hour format, for example <code>14:34</code>.</li>
</ul>
<p>Thanks to <a href="https://gitlab.com/n0rdlicht">Thorben Westerhuys</a> for this <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/130789">community contribution</a>!</p>
<p>In the following milestone we will <a href="https://gitlab.com/groups/gitlab-org/-/epics/12215">audit all timestamps</a> shown across the GitLab product to make them respect the setting.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/profile/preferences.html#customize-time-format">View Documentation</a></p>
  </li>
  <li>
    <strong>Access the Admin Area from the left sidebar</strong>
    <p>Administrators can now access the Admin Area in one step, by using a link at the bottom of the left sidebar. Previously, you had to select <strong>Search or go to</strong> and then select <strong>Admin Area</strong>. This change should save you time when accessing the Admin Area.</p>
    <p><a href="https://docs.gitlab.com/ee/administration/admin_area.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Remove hardcoded time limit for migrations to complete</strong>
    <p><p>GitLab groups and project migrations done by direct transfer can become stuck for various reasons. In the past, to avoid leaving these migrations in an incomplete state
indefinitely, GitLab periodically executed a worker to identify migrations that hadn&rsquo;t completed within 8 hours. GitLab marked these migrations as timed out.</p>
<p>For large organizations, the migration process can take longer than 8 hours, so this amount of time was not always sufficient to properly determine if a migration was stuck.
As a result, this worker might have incorrectly marked a migration as stuck.</p>
<p>In this milestone, instead of using an 8 hour time limit, GitLab now only marks the migration as stuck if the child workers stop working for 24 hours.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/import/#limits">View Documentation</a></p>
  </li>
  <li>
    <strong>Comprehensive results of imports by direct transfer</strong>
    <p><p>Knowing how crucial for our users is to understand the results of the import process, in this milestone we further improved on information presented for imports by
direct transfer. We now display import status badges next to GitLab groups and projects on:</p>
<ul>
<li>The <a href="https://docs.gitlab.com/ee/user/group/import/index.html#select-the-groups-and-projects-to-import">page where you can select groups and projects to import</a>.</li>
<li>The <a href="https://docs.gitlab.com/ee/user/group/import/index.html#group-import-history">page listing imported groups and projects</a>.</li>
</ul>
<p>The import status badges are:</p>
<ul>
<li><strong>Not started</strong></li>
<li><strong>Pending</strong></li>
<li><strong>Importing</strong></li>
<li><strong>Failed</strong></li>
<li><strong>Timeout</strong></li>
<li><strong>Cancelled</strong></li>
<li><strong>Complete</strong></li>
<li><strong>Partially completed</strong></li>
</ul>
<p>The <strong>Partially completed badge</strong> was added in this release and identifies a completed import process that has some items (such as merge requests or issues) not imported.</p>
<p>Groups that an import process was started for have a <strong>View details</strong> link that shows imported subgroups and projects for that particular group. From there, you can see
the list of items that couldn&rsquo;t be imported (if any) by clicking a <strong>See failures</strong> link. <strong>See failures</strong> was
<a href="https://about.gitlab.com/releases/2023/11/16/gitlab-16-6-released/#comprehensive-list-of-items-that-failed-to-be-imported">released in the last release</a>.</p>
<p>In this milestone we also improved navigation with the breadcrumbs between those pages.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/import/#review-results-of-the-import">View Documentation</a></p>
  </li>
  <li>
    <strong>Reopen Service Desk issues when an external participant comments</strong>
    <p><p>You can now configure GitLab to reopen closed issues when an external participant adds
a new comment on an issue by email. This gives you full visibility into ongoing conversations,
even after an issue has been resolved.</p>
<p>It also adds an internal comment that mentions the assignees of the issue and creates to-do
items for them. This way you can make sure you never miss a follow-up email again.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/service_desk/configure.html#reopen-issues-when-an-external-participant-comments">View Documentation</a></p>
  </li>
  <li>
    <strong>Backups supports alternate compression libraries</strong>
    <p>You can now override the default single-threaded gzip compression library with an alternate compression library of your choice for backups using the <code>COMPRESS_CMD</code> and <code>DECOMPRESS_CMD</code> commands. This allows you to leverage parallel compression libraries to speed up the compression stage of the backup by using the power of modern multi-core processors. The commands include support for passing options to the compression library allowing you to adjust parameters such as compression levels and speed.</p>
    <p><a href="https://docs.gitlab.com/ee/administration/backup_restore/backup_gitlab.html#backup-compression">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>Define a network policy with egress rules</strong>
    <p>In GitLab 16.7, you can now define a network policy with egress rules when you configure the GitLab agent for Kubernetes to support Workspaces. Use this feature for your self-hosted installation where the GitLab instance resolves to a private IP or when a workspace must access a cloud resource on a private IP range.</p>
    <p><a href="https://docs.gitlab.com/ee/user/workspace/gitlab_agent_configuration.html#network_policyegress">View Documentation</a></p>
  </li>
  <li>
    <strong>Add custom emoji to groups</strong>
    <p>Who doesn&rsquo;t love a good emoji to really express yourself? When commenting on items across GitLab, you&rsquo;ve used our default set of emoji to add reactions, but sometimes those emoji just weren&rsquo;t enough to express your emotions.
Groups can now add custom emoji to use across their projects. Custom emoji allow you to express your true feelings and communicate more clearly with the rest of your team. We can&rsquo;t wait to see how you&rsquo;ll react next.</p>
    <p><a href="https://docs.gitlab.com/ee/user/emoji_reactions.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Complex merge request dependency chains now supported</strong>
    <p><p>GitLab merge request dependencies are a great way to ensure that code changes that rely on other changes aren&rsquo;t merged in a way that could break the codebase. Previously, GitLab didn&rsquo;t allow complex dependency chains, which could result in circular references or deep nesting.</p>
<p>The limitations around dependency hierarchy, and items in the chain, have been removed. Merge request dependencies can now be more complex: a single merge request can be blocked by up to 10 merge requests, and in turn, block to 10 other merge requests. Deeper dependency chains make it possible to represent more complex workflows via dependencies. We&rsquo;re excited to see how you continue to expand your usage of this feature.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/merge_requests/dependencies.html#nested-dependencies">View Documentation</a></p>
  </li>
  <li>
    <strong>Notify me when any merge request needs approval</strong>
    <p><p>When your approval is required for a merge request, you need to be notified to take action. Some users only want notifications when their approval is required, which is typically done by adding a user by name to review the changes. However, some users want a notification for any merge request they are eligible to approve, <em>even if they aren&rsquo;t added by name as reviewers.</em></p>
<p>Enable the <strong>Added as approver</strong> custom notification level to trigger an email and to-do for each merge request you are eligible to approve. This helps you be aware of merge requests sooner in the process, and take action to get the proposal merged.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/profile/notifications.html#edit-notification-settings">View Documentation</a></p>
  </li>
  <li>
    <strong>Beta support for OpenTofu</strong>
    <p><p>If you&rsquo;re switching from Terraform to OpenTofu, this release of GitLab adds preliminary support for OpenTofu. Because OpenTofu is a fork of Terraform, the MR widget integration, module registry, and GitLab-managed Terraform state work by default. We added support for OpenTofu in the <code>gitlab-terraform</code> helper image to simplify the usage of the GitLab IaC offering.</p>
<p>GitLab continues to support Terraform for the MR widget, module registry, and GitLab-managed Terraform state.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/infrastructure/iac/">View Documentation</a></p>
  </li>
  <li>
    <strong>Custom time period for access tokens rotation</strong>
    <p>You can now optionally input a new parameter, <code>expires_at</code>, when rotating an access token. This allows you to create a custom expiry date for the token. Previously, each rotation extended the expiration one week from the previous expiry date. This new option provides flexibility in rotation interval.</p>
    <p><a href="https://docs.gitlab.com/ee/api/personal_access_tokens.html#rotate-a-personal-access-token">View Documentation</a></p>
  </li>
  <li>
    <strong>Use the UI to assign users to custom roles</strong>
    <p>You can now use the UI to assign a custom role to a new user, or change an existing user&rsquo;s role to a custom role. You can do this in any part of the UI where you can currently assign or change a user&rsquo;s role. Previously, you could only do this through the API.</p>
    <p><a href="https://docs.gitlab.com/ee/user/custom_roles.html#add-a-user-to-your-group-with-a-custom-role">View Documentation</a></p>
  </li>
  <li>
    <strong>Enforce variables in Scan Execution Policies with the highest precedence</strong>
    <p><p>CI/CD variable precedence has been improved to first prioritize variables defined in scan execution policies.</p>
<p>As organizations work to meet compliance requirements, a common need is to ensure that security scanners are enabled in business critical applications.</p>
<p>Scan execution policies allow teams to enforce scanners and to define default and custom CI/CD variables. With this enhancement to CI/CD variable precedence, teams can be confident that regardless of how pipelines are triggered, the variables defined with compliance in mind remain intact.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/variables/#cicd-variable-precedence">View Documentation</a></p>
  </li>
  <li>
    <strong>SAML attribute statements support Microsoft SAML attribute format</strong>
    <p>SAML attribute statements now support the Microsoft SAML attribute format, which is in URL form. Previously, self-managed instance administrators had to manually configure attribute statements, and GitLab.com group owners had to add custom attributes to their SAML responses. This change allows both self-managed GitLab and GitLab.com to work with Microsoft without any manual configuration.</p>
    <p><a href="https://docs.gitlab.com/ee/integration/saml.html#configure-assertions">View Documentation</a></p>
  </li>
  <li>
    <strong>Improvements to rich text editor</strong>
    <p><p>In GitLab 16.2 we released the rich text editor as an alternative to the existing Markdown editing experience. The rich text editor provides a “what you see is what you get” editing experience and an extensible foundation on which we can build custom editing interfaces for things like diagrams, content embeds, media management, and more.</p>
<p>With GitLab 16.7, we&rsquo;ve changed the rich text editor to match the behavior with our Markdown editing experience and fix reported bugs. We&rsquo;ve <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/419097">changed the sorting order in the labels autocomplete modal to be consistent between the Markdown and rich-text editor</a>, <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/420344">addressed a bug in the options returned in the unassign quick action in the rich-text editor</a>, <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/422958">added support for custom emojis</a>, and <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/406714">updated the look and feel of the quick action selection dropdown to be consistent in the two editing experiences</a>, among other improvements.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/rich_text_editor/">View Documentation</a></p>
  </li>
  <li>
    <strong>List repository tags with new Container Registry API</strong>
    <p><p>Previously, the Container Registry relied on the Docker/OCI <a href="https://gitlab.com/gitlab-org/container-registry/-/blob/5208a0ce1600b535e529cd857c842fda6d19ad59/docs/spec/docker/v2/api.md#listing-image-tags">listing image tags registry API</a> to list and display tags in GitLab. This API had significant performance and discoverability limitations.</p>
<p>This API performed slowly because the number of network requests against the registry scaled with the number of tags in the tags list. In addition, because the API didn&rsquo;t track publish time, the published timestamp was often incorrect. There were also limitations when displaying images based on Docker manifest lists or OCI indexes, such as for multi-architecture images.</p>
<p>To address these limitations, we introduced a new registry <a href="https://gitlab.com/gitlab-org/container-registry/-/blob/5208a0ce1600b535e529cd857c842fda6d19ad59/docs/spec/gitlab/api.md#list-repository-tags">list repository tags API</a>. By updating the user interface to use the new API, the number of requests to the Container Registry is reduced to just one. Publish timestamps are also accurate, and there is more robust support for multi-architecture images.</p>
<p>This feature is available only on GitLab.com. Self-managed support is blocked until the next-generation Container Registry is generally available. To learn more, see <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/423459">issue 423459</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/api/container_registry.html#list-registry-repository-tags">View Documentation</a></p>
  </li>
  <li>
    <strong>Rename projects with container images in the container registry on GitLab.com</strong>
    <p><p>Before this release, you could not rename a project that had a container repository with at least one tag without having first deleted all container images associated with that project.</p>
<p>This was a real problem that forced users to rely on custom scripts to manually delete/move all tags before a different project name could be used, but now you can rename projects on GitLab.com, even if they have container images in the registry!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/working_with_projects.html#edit-project-name-and-description">View Documentation</a></p>
  </li>
  <li>
    <strong>Filter by predefined date ranges in Value Stream Analytics</strong>
    <p>The value stream analytics report now has a set of filter options for data in the last 30, 60, 90, or 180 days. These new filter options simplify the date selection process, making it more efficient and user-friendly to understand <a href="https://about.gitlab.com/blog/value-stream-total-time-chart/">where time is spent during the development lifecycle</a>.</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/value_stream_analytics/#data-filters">View Documentation</a></p>
  </li>
  <li>
    <strong>Support for Continuous Vulnerability Scanning for Dependency Scanning</strong>
    <p>Continuous Vulnerability Scanning is now Generally Available. With CVS enabled, your projects are automatically scanned when advisories are added to the GitLab Advisory Database. If new dependency-related vulnerabilities are identified, vulnerabilities are created automatically.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/continuous_vulnerability_scanning/index.html">View Documentation</a></p>
  </li>
  <li>
    <strong>DAST vulnerability check updates</strong>
    <p><p>During the 16.7 release milestone, we enabled the following active checks for browser-based DAST by default:</p>
<ul>
<li>Check 89.1 replaces ZAP checks 40018, 40019, 40020, 40021, 40022, 40024, 40027, 40033, and 90018 and identifies SQL Injection.</li>
<li>Check 918.1 replaces ZAP check 40046 and identifies Server Side Request Forgery.</li>
<li>Check 98.1 replaces ZAP check 7 and identifies PHP Remote File Inclusion.</li>
<li>Check 917.1 replaces ZAP check 90025 and identifies Expression Language Injection.</li>
<li>Check 1336.1 replaces ZAP check 90035 and Server-Side Template Injection.</li>
</ul></p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/dast/checks/">View Documentation</a></p>
  </li>
  <li>
    <strong>DAST authentication now supports multi-step login forms</strong>
    <p>The new <code>DAST_AFTER_LOGIN_ACTIONS</code> variable enables you to provide a list of actions to be executed after login. This allows for multi step login interactions, for example Azure AD&rsquo;s &ldquo;Keep Me Signed In&rdquo; workflow.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/dast/authentication.html#perform-additional-actions-after-submitting-the-username-and-password">View Documentation</a></p>
  </li>
  <li>
    <strong>Updated SAST rules to reduce false-positive results</strong>
    <p><p>We&rsquo;ve updated the default ruleset used in GitLab SAST to provide higher-quality results.
We analyzed each rule that was previously included by default, then removed rules that did not provide enough value in most codebases.</p>
<p>The rule changes are included in updated versions of the Semgrep-based GitLab SAST <a href="https://docs.gitlab.com/ee/user/application_security/sast/analyzers.html">analyzer</a>.
This update is automatically applied on GitLab 16.0 or newer unless you&rsquo;ve <a href="https://docs.gitlab.com/ee/user/application_security/sast/#pinning-to-minor-image-version">pinned SAST analyzers to a specific version</a>.</p>
<p>Existing scan results from the removed rules are <a href="https://docs.gitlab.com/ee/user/application_security/sast/#automatic-vulnerability-resolution">automatically resolved</a> after your pipeline runs a scan with the updated analyzer.</p>
<p>We&rsquo;re working on more SAST rule improvements in <a href="https://gitlab.com/groups/gitlab-org/-/epics/10907">epic 10907</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/sast/rules.html#important-rule-changes">View Documentation</a></p>
  </li>
  <li>
    <strong>`artifacts:public` CI/CD keyword now generally available</strong>
    <p>Previously, the <code>artifacts:public</code> keyword was only available as a default disabled feature for self-managed instances. Now in GitLab 16.7 we&rsquo;ve made the <code>artifacts:public</code> keyword generally available for all users. You can now use the <code>artifacts:public</code> keyword in CI/CD configuration files to control whether job artifacts should be publicly accessible.</p>
    <p><a href="https://docs.gitlab.com/ee/ci/yaml/#artifactspublic">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved ability to keep the latest job artifacts</strong>
    <p><p>In GitLab 13.0 we introduced the ability to keep the job artifacts from the most recent successful pipeline. Unfortunately, the feature also marked all <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/266958">failed</a> and <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/387087">blocked</a> pipelines as the latest pipeline regardless of whether they were the most recent or not. This led to a buildup of artifacts in storage which had to be deleted manually.</p>
<p>In GitLab 16.7 the bugs causing this unintended behavior are resolved. Job artifacts from failed and blocked pipelines are only kept if they are from the most recent pipeline, otherwise they will follow the <code>expire_in</code> configuration. Affected GitLab.com customers should see artifacts which were inadvertently kept now unlocked and removed after a new pipeline run.</p>
<p>The <strong>Keep artifacts from most recent successful jobs</strong> setting overrides the job&rsquo;s <code>artifacts: expire_in</code> configuration and can result in a large number of artifacts stored without expiry. If your pipelines create many large artifacts, they can fill up your project storage quota quickly. We recommend disabling this setting if this feature is not required.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/jobs/job_artifacts.html#keep-artifacts-from-most-recent-successful-jobs">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner 16.7</strong>
    <p><p>We’re also releasing GitLab Runner 16.7 today! GitLab Runner is the lightweight, highly-scalable agent that runs your CI/CD jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.</p>
<h4 id="whats-new">What&rsquo;s new:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/6359">Implement graceful shutdown for Docker executor</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/27835">Dynamically create PVC volumes with storage classes for Kubernetes</a></li>
</ul>
<h4 id="bug-fixes">Bug Fixes:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/28658">allow_failure:exit codes unusable with custom executor because exit code is always 1</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/36996">Add better handling of signals in the runner helper and build container for the Kubernetes executor</a></li>
</ul>
<p>The list of all changes is in the GitLab Runner <a href="https://gitlab.com/gitlab-org/gitlab-runner/blob/16-7-stable/CHANGELOG.md">CHANGELOG</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/runner">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner supports SLSA v1.0 statement</strong>
    <p>Runners can now generate provenance metadata with a statement that adheres to <a href="https://slsa.dev/spec/v1.0/">SLSA 1.0</a>. To enable SLSA 1.0, set the <code>SLSA_PROVENANCE_SCHEMA_VERSION=v1</code> variable in the <code>.gitlab-ci.yml</code> file. The SLSA version 1.0 statement is planned to become the default version in GitLab 17.0.</p>
    <p><a href="https://docs.gitlab.com/ee/ci/runners/configure_runners.html#artifact-provenance-metadata">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab Security Release: 16.6.2, 16.5.4, 16.4.4</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-6-2-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-6-2-released/</id><published>2023-12-13T00:00:00Z</published><updated>2023-12-13T00:00:00Z</updated><author><name>Dominic Couture</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On December 13, 2023, we released versions 16.6.2, 16.5.4, and 16.4.4 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important security fixes, and we strongly recommend that all GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version.</p>
<p>GitLab releases patches for vulnerabilities in dedicated security releases. There are two types of security releases:
a monthly, scheduled security release, released a week after the feature release (which deploys on the 3rd Thursday of each month),
and ad-hoc security releases for critical vulnerabilities. For more information, you can visit our <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of our regular and security release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.
In addition, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are dedicated to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest security release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="table-of-fixes">Table of fixes</h2>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-6-2-released/#smartcard-authentication-allows-impersonation-of-arbitrary-user-using-user%27s-public-certificate">Smartcard authentication allows impersonation of arbitrary user using user&rsquo;s public certificate</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-6-2-released/#when-subgroup-is-allowed-to-merge-or-push-to-protected-branches,-subgroup-members-with-the-developer-role-may-gain-the-ability-to-push-or-merge">When subgroup is allowed to merge or push to protected branches, subgroup members with the Developer role may gain the ability to push or merge</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-6-2-released/#the-gitlab-web-interface-does-not-ensure-the-integrity-of-information-when-downloading-the-source-code-from-installation-packages-or-tags">The GitLab web interface does not ensure the integrity of information when downloading the source code from installation packages or tags.</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-6-2-released/#project-maintainer-can-escalate-to-project-owner-using-project-access-token-rotate-api">Project maintainer can escalate to Project owner using project access token rotate API</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-6-2-released/#omission-of-double-encoding-in-file-names-facilitates-the-creation-of-repositories-with-malicious-content">Omission of Double Encoding in File Names Facilitates the Creation of Repositories with Malicious Content.</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-6-2-released/#unvalidated-timespent-value-leads-to-unable-to-load-issues-on-issue-board">Unvalidated timeSpent value leads to unable to load issues on Issue board</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-6-2-released/#developer-can-bypass-predefined-variables-via-rest-api">Developer can bypass predefined variables via REST API</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-6-2-released/#auditor-users-can-create-merge-requests-on-projects-they-dont-have-access-to">Auditor users can create merge requests on projects they don&rsquo;t have access to</a></td>
          <td>Low</td>
      </tr>
  </tbody>
</table>
<h3 id="smartcard-authentication-allows-impersonation-of-arbitrary-user-using-users-public-certificate">Smartcard authentication allows impersonation of arbitrary user using user&rsquo;s public certificate</h3>
<p>An improper certificate validation issue in Smartcard authentication in GitLab EE affecting all versions from 11.6 prior to 16.4.4, 16.5 prior to 16.5.4, and 16.6 prior to 16.6.2 allows an attacker to authenticate as another user given their public key if they use Smartcard authentication. Smartcard authentication is an experimental feature and has to be manually enabled by an administrator. This is a high severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N</code>, 7.4). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-6680">CVE-2023-6680</a>.</p>
<p>Thanks Lucas Serrano from PEReN (<a href="https://gitlab.com/LSerranoPEReN">@LSerranoPEReN</a>) for reporting this vulnerability.</p>
<h2 id="when-subgroup-is-allowed-to-merge-or-push-to-protected-branches-subgroup-members-with-the-developer-role-may-gain-the-ability-to-push-or-merge">When subgroup is allowed to merge or push to protected branches, subgroup members with the Developer role may gain the ability to push or merge</h2>
<p>An issue has been discovered in GitLab EE Premium and Ultimate affecting versions 16.4.3, 16.5.3, and 16.6.1. In projects using subgroups to define who can push and/or merge to protected branches, there may have been instances in which subgroup members with the Developer role were able to push or merge to protected branches. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N</code>, 6.5). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-6564">CVE-2023-6564</a>.</p>
<p>This vulnerability has been discovered internally by a GitLab team member.</p>
<p>The following script can help you identify projects that may be subject to a vulnerable configuration. This script can be used to create a CSV file listing projects that have a group set as &ldquo;Allowed to merge&rdquo; or &ldquo;Allowed to push and merge&rdquo; along with the web_url and project_id for the project and the group_name/group_id for the group. Note that this is not an indication that unauthorized changes were made to protected branches, but rather an indication that these projects were subject to this vulnerable configuration. For impacted projects, customers will need to check merge requests that were merged on their self-managed GitLab instances running 16.4.3, 16.5.3, or 16.6.1 prior to updating to 16.4.4, 16.5.4, or 16.6.2 or on GitLab.com prior to 2023-12-04 18:10 UTC.</p>
<details><summary>Click to expand the script</summary>

<div class="codeblock-wrapper" data-elastic-exclude>
  <div data-vue-app="codeblock-toolbar" data-code-language="sh" class="codeblock-toolbar"></div><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-sh" data-lang="sh"><span class="line"><span class="cl"><span class="c1">## install `glab` (if not already installed)</span>
</span></span><span class="line"><span class="cl"><span class="c1"># https://gitlab.com/gitlab-org/cli#installation</span>
</span></span><span class="line"><span class="cl"><span class="c1">## install `jq` (if not already installed)</span>
</span></span><span class="line"><span class="cl"><span class="c1"># https://jqlang.github.io/jq/download/</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># authenticate with `glab` as Admin (self-managed) or group owner (SaaS)</span>
</span></span><span class="line"><span class="cl">glab auth login
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1">## get `project_id` and `web_url` for all projects at the instance level (self-managed) or group level (SaaS), save it as `project-list.csv`</span>
</span></span><span class="line"><span class="cl"><span class="c1"># self-managed - instance level (use Admin PAT for authentication)</span>
</span></span><span class="line"><span class="cl">glab api --hostname <span class="s2">&#34;self-managed-gitlab.example.com&#34;</span> --paginate projects 2&gt;&gt; error.log <span class="p">|</span> jq -c <span class="s1">&#39;.[]&#39;</span> <span class="p">|</span> jq -rc <span class="s1">&#39;[.id, .web_url] | @csv&#39;</span> <span class="p">|</span> tee -a project-list.csv
</span></span><span class="line"><span class="cl"><span class="c1"># SaaS - group level (use group owner PAT for authentication)</span>
</span></span><span class="line"><span class="cl">glab api --paginate <span class="s2">&#34;groups/</span><span class="nv">$GROUP_ID</span><span class="s2">/projects&#34;</span> 2&gt;&gt; error.log <span class="p">|</span> jq -c <span class="s1">&#39;.[]&#39;</span> <span class="p">|</span> jq -rc <span class="s1">&#39;[.id, .web_url] | @csv&#39;</span> <span class="p">|</span> tee -a project-list.csv 
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1">## add headers to protected_branch_report.csv file</span>
</span></span><span class="line"><span class="cl"><span class="nb">echo</span> <span class="s2">&#34;project_id, web_url, group_name_push_access, group_id_push_access, group_name_merge_access, group_id_merge_access&#34;</span> &gt; protected_branch_report.csv
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1">## loop through each project to check for protected branches that have a group with push or merge access</span>
</span></span><span class="line"><span class="cl"><span class="k">while</span> <span class="nv">IFS</span><span class="o">=</span><span class="s1">&#39;,&#39;</span> <span class="nb">read</span> -r PROJECT_ID WEB_URL<span class="p">;</span> <span class="k">do</span>
</span></span><span class="line"><span class="cl">  glab api <span class="s2">&#34;projects/</span><span class="nv">$PROJECT_ID</span><span class="s2">/protected_branches&#34;</span> 2&gt;&gt; error.log <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span>  <span class="p">|</span> jq -c <span class="s1">&#39;.[]&#39;</span> <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span>  <span class="p">|</span> jq <span class="s1">&#39;select((any(.push_access_levels[]; .group_id != null and .access_level == 40)) or (any(.merge_access_levels[]; .group_id != null and .access_level == 40)))&#39;</span> 2&gt;&gt; error.log <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span>  <span class="p">|</span> jq -c <span class="s2">&#34;{project_id: </span><span class="nv">$PROJECT_ID</span><span class="s2">, web_url: </span><span class="nv">$WEB_URL</span><span class="s2">, group_id_push_access: .push_access_levels.[].group_id, group_name_push_access: .push_access_levels.[].access_level_description, group_id_merge_access: .merge_access_levels.[].group_id, group_name_merge_access: .merge_access_levels.[].access_level_description}&#34;</span> 2&gt;&gt; error.log <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span>  <span class="p">|</span> jq <span class="s1">&#39;select((.group_id_push_access != null or .group_id_merge_access != null) and (.group_name_push_access != &#34;Maintainers&#34; or .group_name_merge_access != &#34;Maintainers&#34;))&#39;</span> 2&gt;&gt; error.log <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span>  <span class="p">|</span> jq -rc <span class="s1">&#39;[.project_id, .web_url, .group_name_push_access, .group_id_push_access, .group_name_merge_access, .group_id_merge_access] | @csv&#39;</span> <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span>  <span class="p">|</span> tee -a protected_branch_report.csv  
</span></span><span class="line"><span class="cl"><span class="k">done</span> &lt; project-list.csv</span></span></code></pre></div></div>
<p>GitLab has conducted limited testing to validate this script. As such this script is provided AS-IS and GitLab makes no warranties of any kind. GITLAB HEREBY DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, WITHOUT LIMITATION, ALL IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE, AND NON-INFRINGEMENT.</p>
</details>
<h3 id="the-gitlab-web-interface-does-not-ensure-the-integrity-of-information-when-downloading-the-source-code-from-installation-packages-or-tags">The GitLab web interface does not ensure the integrity of information when downloading the source code from installation packages or tags.</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions before 16.4.4, all versions starting from 16.5 before 16.5.4, all versions starting from 16.6 before 16.6.2. File integrity may be compromised when source code or installation packages are pulled from a specific tag.
This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:H/A:N</code>, 5.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-6051">CVE-2023-6051</a>.</p>
<p>Thanks <a href="https://hackerone.com/st4nly0n">st4nly0n</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="project-maintainer-can-escalate-to-project-owner-using-project-access-token-rotate-api">Project maintainer can escalate to Project owner using project access token rotate API</h3>
<p>A privilege escalation vulnerability in GitLab EE affecting all versions from 16.0 prior to 16.4.4, 16.5 prior to 16.5.4, and 16.6 prior to 16.6.2 allows a project Maintainer to use a Project Access Token to escalate their role to Owner.
This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:N/I:H/A:N</code>, 4.9).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3907">CVE-2023-3907</a>.</p>
<p>Thanks <a href="https://hackerone.com/ashish_r_padelkar">ashish_r_padelkar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="omission-of-double-encoding-in-file-names-facilitates-the-creation-of-repositories-with-malicious-content">Omission of Double Encoding in File Names Facilitates the Creation of Repositories with Malicious Content.</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions from 16.3 before 16.4.4, all versions starting from 16.5 before 16.5.4, all versions starting from 16.6 before 16.6.2. File integrity may be compromised when specific HTML encoding is used for file names leading for incorrect representation in the UI.
This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:N/I:H/A:N</code>, 4.8).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-5512">CVE-2023-5512</a>.</p>
<p>Thanks <a href="https://hackerone.com/st4nly0n">st4nly0n</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="unvalidated-timespent-value-leads-to-unable-to-load-issues-on-issue-board">Unvalidated timeSpent value leads to unable to load issues on Issue board</h3>
<p>An issue has been discovered in GitLab EE affecting all versions starting before 16.4.4, all versions starting from 16.5 before 16.5.4, all versions starting from 16.6 before 16.6.2. It was possible to overflow the time spent on an issue that altered the details shown in the issue boards.
This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L</code>, 4.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3904">CVE-2023-3904</a>.</p>
<p>Thanks <a href="https://hackerone.com/toukakirishima">toukakirishima</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="developer-can-bypass-predefined-variables-via-rest-api">Developer can bypass predefined variables via REST API</h3>
<p>An issue has been discovered in GitLab affecting all versions starting from 9.3 before 16.4.4, all versions starting from 16.5 before 16.5.4, all versions starting from 16.6 before 16.6.2. In certain situations, it may have been possible for developers to override predefined CI variables via the REST API. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N</code>, 4.3). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-5061">CVE-2023-5061</a>.</p>
<p>Thanks <a href="https://hackerone.com/ali_shehab">ali_shehab</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="auditor-users-can-create-merge-requests-on-projects-they-dont-have-access-to">Auditor users can create merge requests on projects they don&rsquo;t have access to</h3>
<p>An issue has been discovered in GitLab EE affecting all versions starting from 8.17 before 16.4.4, all versions starting from 16.5 before 16.5.4, all versions starting from 16.6 before 16.6.2. It was possible for auditor users to fork and submit merge requests to private projects they&rsquo;re not a member of. This is a low severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:H/UI:R/S:U/C:N/I:L/A:N</code>, 2.0). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3511">CVE-2023-3511</a>.</p>
<p>Thanks <a href="https://hackerone.com/js_noob">js_noob</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="non-security-patches">Non Security Patches</h2>
<h3 id="1662">16.6.2</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/1649">[Backport 16.6] Fix redis-namspace dependency version for UBI mailroom</a></li>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/1658">Fix backup id parsing from backup URLs (16.6 Backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/138449">Package Registry: Truncate Pypi metadata description field</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/138535">Fix adding confidential child tasks</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/138797">Backport Hide obsolete migration warning into 16.6</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/138911">[16.6 Backport] Fix Admin Mode bug in DeactivateDormantUsersWorker</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/138929">Backport Fix cluster reindexing service preflight check to 16.6</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/138804">Backport Sanitize string provided to to_tsvector</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/138602">Backport &ldquo;Update migration to work for any fk name&rdquo; to 16.6</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/139051">Fix Environment destroy job is retried endlessly (16.6 backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/138431">Allow users to authenticate via OAuth with password-based providers</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7275">Do not scan entire /var/opt/gitlab for stale pids (16.6 backport)</a></li>
</ul>
<h3 id="1654">16.5.4</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/1641">gitlab-rails: support skipping post-migrations in db checks</a></li>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/1650">[Backport 16.5] Fix redis-namspace dependency version for UBI mailroom</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/137712">Backport - Truncate verification failure message to 255</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/138912">[16.5 Backport] Fix Admin Mode bug in DeactivateDormantUsersWorker</a></li>
</ul>
<h3 id="1644">16.4.4</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/1651">[Backport 16.4] Fix redis-namspace dependency version for UBI mailroom</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/138913">[16.4 Backport] Fix Admin Mode bug in DeactivateDormantUsersWorker</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-security-release-notifications">Receive Security Release Notifications</h2>
<p>To receive security release blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">security release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Security Release: 16.6.1, 16.5.3, 16.4.3</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-6-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-6-1-released/</id><published>2023-11-30T00:00:00Z</published><updated>2023-11-30T00:00:00Z</updated><author><name>Greg Myers</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<p>On November 30, 2023, we released versions 16.6.1, 16.5.3, 16.4.3 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important security fixes, and we strongly recommend that all GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version.</p>
<p>GitLab releases patches for vulnerabilities in dedicated security releases. There are two types of security releases:
a monthly, scheduled security release, released a week after the feature release (which deploys on the 3rd Thursday of each month),
and ad-hoc security releases for critical vulnerabilities. For more information, you can visit our <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of our regular and security release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.
In addition, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are dedicated to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest security release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="table-of-fixes">Table of fixes</h2>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-6-1-released/#xss-and-redos-in-markdown-via-banzai-pipeline-of-jira">XSS and ReDoS in Markdown via Banzai pipeline of Jira</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-6-1-released/#members-with-admin_group_member-custom-permission-can-add-members-with-higher-role">Members with admin_group_member custom permission can add members with higher role</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-6-1-released/#release-description-visible-in-public-projects-despite-release-set-as-project-members-only-through-atom-response">Release Description visible in public projects despite release set as project members only through atom response</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-6-1-released/#manipulate-the-repository-content-in-the-ui-cve-2023-3401-bypass">Manipulate the repository content in the UI (CVE-2023-3401 bypass)</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-6-1-released/#external-user-can-abuse-policy-bot-to-gain-access-to-internal-projects">External user can abuse policy bot to gain access to internal projects</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-6-1-released/#developers-can-update-pipeline-schedules-to-use-protected-branches-even-if-they-dont-have-permission-to-merge">Developers can update pipeline schedules to use protected branches even if they don&rsquo;t have permission to merge</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-6-1-released/#users-can-install-composer-packages-from-public-projects-even-when-package-registry-is-turned-off">Users can install Composer packages from public projects even when <code>Package registry</code> is turned off</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-6-1-released/#client-side-dos-via-mermaid-flowchart">Client-side DOS via Mermaid Flowchart</a></td>
          <td>Low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-6-1-released/#unauthorized-member-can-gain-allowed-to-push-and-merge-access-and-affect-integrity-of-protected-branches">Unauthorized member can gain <code>Allowed to push and merge</code> access and affect integrity of protected branches</a></td>
          <td>Low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-6-1-released/#guest-users-can-react-emojis-on-confidential-work-items-which-they-cant-see-in-a-project">Guest users can react (emojis) on confidential work items which they cant see in a project</a></td>
          <td>Low</td>
      </tr>
  </tbody>
</table>
<h3 id="xss-and-redos-in-markdown-via-banzai-pipeline-of-jira">XSS and ReDoS in Markdown via Banzai pipeline of Jira</h3>
<p>Improper neutralization of input in Jira integration configuration in GitLab CE/EE, affecting all versions from 15.10 prior to 16.6.1, 16.5 prior to 16.5.3, and 16.4 prior to 16.4.3 allowed attacker to execute javascript in victim&rsquo;s browser.</p>
<p>This is a high severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N</code>, 8.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-6033">CVE-2023-6033</a>.</p>
<p>Thanks <a href="https://hackerone.com/yvvdwf">yvvdwf</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="members-with-admin_group_member-custom-permission-can-add-members-with-higher-role">Members with admin_group_member custom permission can add members with higher role</h3>
<p>An issue has been discovered in GitLab EE affecting all versions starting from 16.5 before 16.5.3,
all versions starting from 16.6 before 16.6.1. When a user is assigned a custom role with `admin_group_member`` enabled, they may be able to add a member with a higher static role than themselves to the group which may lead to privilege escalation.</p>
<p>This is a high severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N</code>, 8.1).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-6396">CVE-2023-6396</a>.</p>
<p>This vulnerability was discovered internally by GitLab team member <a href="https://gitlab.com/jarka">jarka</a>.</p>
<h3 id="release-description-visible-in-public-projects-despite-release-set-as-project-members-only-through-atom-response">Release Description visible in public projects despite release set as project members only through atom response</h3>
<p>An issue has been discovered in GitLab affecting all versions starting from 11.3 before 16.4.3, all versions starting from 16.5 before 16.5.3, all versions starting from 16.6 before 16.6.1.
It was possible for unauthorized users to view a public projects&rsquo; release descriptions via an atom endpoint when release access on the public was set to only project members</p>
<p>This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N</code>, 5.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3949">CVE-2023-3949</a>.</p>
<p>Thanks <a href="https://hackerone.com/ashish_r_padelkar">ashish_r_padelkar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="manipulate-the-repository-content-in-the-ui-cve-2023-3401-bypass">Manipulate the repository content in the UI (CVE-2023-3401 bypass)</h3>
<p>An issue has been discovered in GitLab affecting all versions before 16.4.3, all versions starting from 16.5 before 16.5.3, all versions starting from 16.6 before 16.6.1. Under certain circumstances, a malicious actor bypass prohibited branch checks using a specially crafted branch name to manipulate repository content in the UI.</p>
<p>This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:N/I:H/A:N</code>, 4.8).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-5226">CVE-2023-5226</a>.</p>
<p>Thanks <a href="https://hackerone.com/shells3c">shells3c</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="external-user-can-abuse-policy-bot-to-gain-access-to-internal-projects">External user can abuse policy bot to gain access to internal projects</h3>
<p>An issue has been discovered in GitLab EE affecting all versions starting from 16.2 before 16.4.3, all versions starting from 16.5 before 16.5.3, all versions starting from 16.6 before 16.6.1. It was possible for an attacker to abuse the policy bot to gain access to internal projects.</p>
<p>This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:H/I:N/A:N</code>, 4.4). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-5995">CVE-2023-5995</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="client-side-dos-via-mermaid-flowchart">Client-side DOS via Mermaid Flowchart</h3>
<p>An issue has been discovered in GitLab EE affecting all versions starting from 10.5 before 16.4.3, all versions starting from 16.5 before 16.5.3, all versions starting from 16.6 before 16.6.1. It was possible for an attacker to cause a client-side denial of service using malicious crafted mermaid diagram input.</p>
<p>This is a low severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:N/I:N/A:L</code>, 2.6).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-4912">CVE-2023-4912</a>.</p>
<p>Thanks <a href="https://hackerone.com/toukakirishima">toukakirishima</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="developers-can-update-pipeline-schedules-to-use-protected-branches-even-if-they-dont-have-permission-to-merge">Developers can update pipeline schedules to use protected branches even if they don&rsquo;t have permission to merge</h3>
<p>An issue has been discovered in GitLab affecting all versions starting from 9.2 before 16.4.3, all versions starting from 16.5 before 16.5.3, all versions starting from 16.6 before 16.6.1. It was possible for a user with the Developer role to update a pipeline schedule from an unprotected branch to a protected branch.</p>
<p>This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N</code>, 4.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-4317">CVE-2023-4317</a>.</p>
<p>Thanks <a href="https://hackerone.com/js_noob">js_noob</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="users-can-install-composer-packages-from-public-projects-even-when-package-registry-is-turned-off">Users can install Composer packages from public projects even when <code>Package registry</code> is turned off</h3>
<p>An issue has been discovered in GitLab affecting all versions starting from 13.2 before 16.4.3, all versions starting from 16.5 before 16.5.3, all versions starting from 16.6 before 16.6.1. It was possible for users to access composer packages on public projects that have package registry disabled in the project settings.</p>
<p>This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code>, 4.3).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3964">CVE-2023-3964</a>.</p>
<p>Thanks <a href="https://hackerone.com/js_noob">js_noob</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="unauthorized-member-can-gain-allowed-to-push-and-merge-access-and-affect-integrity-of-protected-branches">Unauthorized member can gain <code>Allowed to push and merge</code> access and affect integrity of protected branches</h3>
<p>An issue has been discovered in GitLab EE affecting all versions starting from 8.13 before 16.4.3, all versions starting from 16.5 before 16.5.3, all versions starting from 16.6 before 16.6.1. It was possible for an attacker to abuse the <code>Allowed to merge</code> permission as a guest user, when granted the permission through a group.</p>
<p>This is a low severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:N</code>, 3.1).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-4658">CVE-2023-4658</a>.</p>
<p>Thanks <a href="https://hackerone.com/theluci">theluci</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="guest-users-can-react-emojis-on-confidential-work-items-which-they-cant-see-in-a-project">Guest users can react (emojis) on confidential work items which they cant see in a project</h3>
<p>An issue has been discovered in GitLab affecting all versions starting from 12.1 before 16.4.3, all versions starting from 16.5 before 16.5.3, all versions starting from 16.6 before 16.6.1. It was possible for a Guest user to add an emoji on confidential work items.</p>
<p>This is a low severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:N</code>, 3.1).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3443">CVE-2023-3443</a>.</p>
<p>Thanks <a href="https://hackerone.com/ashish_r_padelkar">ashish_r_padelkar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="mattermost-security-update">Mattermost Security Update</h3>
<p>Mattermost has been updated to the latest patch release to mitigate several security issues.</p>
<h3 id="update-to-pg-149-and-1312">Update to PG 14.9 and 13.12</h3>
<p>PostgreSQL has been updated to 14.9 and 13.12 to mitigate CVE-2023-39417.</p>
<h3 id="update-pcre2-to-1042">Update pcre2 to 10.42</h3>
<p><code>pcre2</code> has been updated to version 10.42 to mitigate CVE-2022-41409.</p>
<h2 id="non-security-patches">Non Security Patches</h2>
<h3 id="1661">16.6.1</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/1639">Install Gitaly dependencies for project archiving (16.6 backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/137167">Fix intermittent 404 errors loading GitLab Pages</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/136888">Prefer custom sort order with search in users API</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/136902">Backport &ldquo;Fix group page erroring because of nil user&rdquo; to 16-6-stable-ee</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/137296">Skip encrypted settings logic for Redis when used by Mailroom</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/137687">Allow <code>+</code> char in abuse detection for global search</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/137800">Backport &ldquo;Move unlock pipeline cron scheduler out of ee&rdquo; to 16.6</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/137899">Fix bug with pages_deployments files not being deleted on disk</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/137711">Backport - Truncate verification failure message to 255</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/138131">Backport &ldquo;Revert &ldquo;Merge branch &lsquo;sc1-release-goredis&rsquo; into &lsquo;master&rsquo;&rdquo;&rdquo;</a></li>
</ul>
<h3 id="1653">16.5.3</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/1636">Backport  10871d71b171db38701bfefe15883b05c234ca6d to <code>16-5-stable</code></a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/136934">Geo: Reduce batch size of verification state backfill</a></li>
</ul>
<h3 id="1643">16.4.3</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/1622">Backport  10871d71b171db38701bfefe15883b05c234ca6d to <code>16-4-stable</code></a></li>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/6554">Backport to 16.4 the fix for test failure due to &ldquo;not-existing.com&rdquo; being registered</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/135647">Bump <code>asdf-bootstrapped-verify</code> version on 16.4</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/133886">Fix bulk batch export of badges and uploads</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/136764">[16.4] ci: Fix broken master by not reading GITLAB_ENV</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/136433">Fix assign security check permission checks</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/136774">For 16.4: Fix Geo verification state backfill job can exceed batch size</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/136937">Geo: Reduce batch size of verification state backfill</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-security-release-notifications">Receive Security Release Notifications</h2>
<p>To receive security release blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">security release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab 16.6 released</title><link href="https://docs.gitlab.com/releases/16/16-6-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/16/16-6-released/</id><published>2023-11-16T00:00:00Z</published><updated>2023-11-16T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On November 16, 2023, GitLab 16.6 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong>Joe Snyder</strong>
</p>
<p>Joe Snyder was awarded GitLab&rsquo;s 16.6 MVP for consistent contributions across GitLab, including
recent merge requests to <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/135025">allow admins to filter runners by version</a>.</p>
<p>Joe was nominated by <a href="https://gitlab.com/mrincon">Miguel Rincon</a>, Staff Frontend Engineer at GitLab.
Miguel recognized Joe&rsquo;s efforts through several required rewrites due to GitLab&rsquo;s evolving architecture
and commented on Joe&rsquo;s &ldquo;thoughtful consideration of performance and usability.&rdquo;</p>
<p><a href="https://gitlab.com/pedropombeiro">Pedro Pombeiro</a>, Sr. Backend Engineer at GitLab, added that &ldquo;Joe Snyder drove this change over the
finish line after taking over from a former colleague, requiring learning all the context around the problem.
He also proved very responsive and patient with our feedback in successive reviews.&rdquo;</p>
<p>&ldquo;Joe has been a pleasure to work with,&rdquo; said <a href="https://gitlab.com/terrichu">Terri Chu</a>, Staff Backend Engineer at GitLab.
Terri highlighted Joe&rsquo;s ongoing work on <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/127899"><code>emails_enabled</code> changes</a>
over the last (and previous) milestone.</p>
<p>Joe Snyder is a Senior R&amp;D Engineer at <a href="https://www.kitware.com/">Kitware</a> and has been contributing to GitLab since 2021.
Our many thanks to Joe for continuing to improve GitLab!</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>GitLab Duo Chat available in Beta</strong>
    <p><p>Everyone involved in the software development process can spend a significant amount of time familiarizing themselves with code, epics, issues, and lengthy discussion threads. You can often find yourself slowed down by routine tasks like writing summaries, documentation, tests, or even code. Having an expert at your side that can answer DevSecOps questions without judgment and address follow-ups could help you accelerate the software development process.</p>
<p>GitLab Duo Chat aims to actively address these pain points and accelerate your workflows. Its capabilities include:</p>
<ul>
<li>Explain or summarize issues, epics, and code.</li>
<li>Answer specific questions about these artifacts like &ldquo;Collect all the arguments raised in comments regarding the solution proposed in this issue.&rdquo;</li>
<li>Generate code or content based the information in these artifacts. For instance, &ldquo;Can you write documentation for this code?&rdquo;</li>
<li>Or simply get you started from scratch like &ldquo;Create a .gitlab-ci.yml configuration file for testing and building a Ruby on Rails application in a GitLab CI/CD pipeline.&rdquo;</li>
<li>Answer all your DevSecOps related question, whether you are beginner or an expert. For example, &ldquo;How can I set up Dynamic Application Security Testing for a REST API?&rdquo;</li>
<li>Answer follow-up questions so you can iteratively work through all the above scenarios.</li>
</ul>
<p>GitLab Duo Chat is available on GitLab.com as a <a href="https://docs.gitlab.com/ee/policy/experiment-beta-support.html#beta">Beta</a> feature. It is also integrated into our Web IDE and GitLab Workflow extension for VS Code as <a href="https://docs.gitlab.com/ee/policy/experiment-beta-support.html#experiment">Experimental</a> features.</p>
<p>You can also help us mature these features by providing feedback about your experiences with Duo Chat, either within the product or via our <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/430124">feedback issue</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/gitlab_duo_chat/index.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Automatic claims of enterprise users</strong>
    <p>When a GitLab.com user&rsquo;s primary email address matches an existing verified domain, the user is automatically claimed as an enterprise user. This gives the group Owner more user management controls and visibility into the user&rsquo;s account. After a user becomes an enterprise user, they can only change their primary email to an email their organization owns as per its verified domains.</p>
    <p><a href="https://docs.gitlab.com/ee/user/enterprise_user/">View Documentation</a></p>
  </li>
  <li>
    <strong>Minimal forking - only include the default branch</strong>
    <p><p>In previous versions of GitLab, when forking a repository, the fork always included all branches within the repository.
Now you can create a fork with only the default branch, reducing complexity and storage space.
Create minimal forks if you don&rsquo;t need the changes that are currently being worked on in other branches.</p>
<p>The default method of forking will not change and continue to include all branches within the repository.
The new option shows which branch is the default, so that you are aware of exactly which branch will be included in the new fork.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/repository/forking_workflow.html#create-a-fork">View Documentation</a></p>
  </li>
  <li>
    <strong>Allow users to enforce MR approvals as a compliance policy</strong>
    <p><p>There is an increasing scrutiny on code changes that can potentially land in production applications and open businesses up to compliance risk and security vulnerability. With scan result policies, you can ensure unilateral changes cannot be made by enforcing two person approval on all merge requests.</p>
<p>Scan results policies have a new option to target <code>Any merge request</code> which can be paired with defining <a href="https://docs.gitlab.com/ee/user/application_security/policies/scan-result-policies.html#require_approval-action-type">role-based approvers</a> to ensure each MR for the defined branches require approval by two (or more) users with a given role (Owner, Maintainer, or Developer).</p>
<p>Available in SaaS in 16.6. Available for Self-managed behind the feature flag <code>scan_result_any_merge_request</code> and will be enabled by default in 16.7.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/policies/scan-result-policies.html#any_merge_request-rule-type">View Documentation</a></p>
  </li>
  <li>
    <strong>Switchboard portal for GitLab Dedicated is now generally available</strong>
    <p><p>Switchboard, a new self-service portal, is now available for customers and team members to onboard, configure and maintain their <a href="https://about.gitlab.com/dedicated/">GitLab Dedicated</a> instances.</p>
<p>Using Switchboard, you can now make some <a href="https://docs.gitlab.com/ee/administration/dedicated/#configuration-changes">configuration changes</a> to your GitLab Dedicated instance. This functionality will expand in future releases.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/dedicated/#onboarding-to-gitlab-dedicated-using-switchboard">View Documentation</a></p>
  </li>
  <li>
    <strong>CI/CD components Beta release</strong>
    <p><p>In GitLab 16.1, we <a href="https://about.gitlab.com/blog/introducing-ci-components/">announced</a> the release of an exciting experimental feature called CI/CD components. The component is a pipeline building block that can be listed in the upcoming CI/CD catalog.</p>
<p>Today we are excited to announce the Beta availability of CI/CD components. With this release, we have also improved the components folder structure from the initial experimental version. If you are already testing the experimental version of CI/CD components, it&rsquo;s essential to migrate to the <a href="https://docs.gitlab.com/ee/ci/components/#directory-structure">new folder structure</a>. You can see some examples <a href="https://gitlab.com/gitlab-components/">here</a>. The old folder structure is deprecated and we plan to remove it within the next couple of releases.</p>
<p>If you try out CI/CD components, you are also welcome to try the new CI/CD catalog, currently available as an experimental feature. You can search the <a href="https://docs.gitlab.com/ee/ci/components/catalog.html">Global CI/CD catalog</a> for components that others have created and published for public use. Additionally, if you create your own components, you can choose to publish them in the catalog too!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/components/">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved UI for CI/CD variable management</strong>
    <p><p>CI/CD variables are a fundamental part of GitLab CI/CD, and we felt that we could offer a better experience for working with variables from the settings UI. So in this release we&rsquo;ve updated the UI to use a new drawer that improves the flow of adding and editing CI/CD variables.</p>
<p>For example, the masking validation used to only happen when you tried to save the CI/CD variable, and if it failed you&rsquo;d have to restart from scratch. But now with the new drawer, you get real time validation so you can adjust on the fly without needed to redo anything!</p>
<p>Your <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/428807">feedback for this change</a> is always valued and appreciated.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/variables/#define-a-cicd-variable-in-the-ui">View Documentation</a></p>
  </li>
  <li>
    <strong>Runner Fleet Dashboard - Starter metrics (Beta)</strong>
    <p>Operators of self-managed runner fleets need observability and the ability to quickly answer critical questions about their runner fleet infrastructure at a glance. Now, with the Runner Fleet Dashboard - Admin View (Beta), you have actionable insights to help you quickly answer critical fleet management and developer experience questions, starting with instance runners. These include answers to questions like which runners have errors, the performance of the runner queues for CI job execution, and which runners are most actively used. Ultimate customers can enable this feature independently, but are encouraged to participate in the <a href="https://gitlab.com/groups/gitlab-org/-/epics/11180">early adopter&rsquo;s program</a>.</p>
    <p><a href="https://docs.gitlab.com/ee/development/runner_fleet_dashboard.html">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Scale and Deployments</h4>
<ul>
  <li>
    <strong>Hide archived projects in search results by default</strong>
    <p>Previously, users saw many archived projects in their project search results. This was problematic, especially when archived projects took up many of the top results. We now filter out archived projects by default, and users can select <strong>Include archived</strong> to see all projects.</p>
    <p><a href="https://docs.gitlab.com/ee/user/search/#include-archived-projects-in-search-results">View Documentation</a></p>
  </li>
  <li>
    <strong>Private group names are hidden from unauthorized users</strong>
    <p>Previously, the names of private groups were visible to all users when accessing the <strong>Groups</strong> tab of a project&rsquo;s or group&rsquo;s members page. To enhance security, we are now masking private groups&rsquo; name and source from users who are not members of the shared group, shared project, or invited group. Instead, this information will be displayed as <strong>Private</strong>.</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/manage.html#share-a-group-with-another-group">View Documentation</a></p>
  </li>
  <li>
    <strong>Comprehensive list of items that failed to be imported</strong>
    <p><p>Previously, when migrating GitLab projects and groups by direct transfer had completed and some items (such as a merge requests or issues) were not
successfully imported, you could select a <strong>Details</strong> button on the
<a href="https://docs.gitlab.com/ee/user/group/import/index.html#group-import-history">page listing imported groups and projects</a> and see related errors there.</p>
<p>However, a list of errors is not helpful to understand how many items in total, and which items in particular, were not imported. Having this
information is crucial to understanding the results of the import process.</p>
<p>In this release, we replaced the <strong>Details</strong> button with a <strong>See failures</strong> link. Selecting the <strong>See failures</strong> link takes you to a new page listing all items that failed
to import for a given group or project. For each item that wasn&rsquo;t imported, you can see:</p>
<ul>
<li>The type of the item. For example, merge request or issue.</li>
<li>What kind of error occurred.</li>
<li>The correlation ID, which is useful for debugging purposes.</li>
<li>The URL of the item on the source instance, if available (items with <code>iid</code>).</li>
<li>The title of the item on the source instance, if available. For example, the merge request title or the issue title.</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/import/index.html#review-results-of-the-import">View Documentation</a></p>
  </li>
  <li>
    <strong>Consistent navigation experience for all users</strong>
    <p><p>The 16.0 release introduced a new navigation experience, which became the default for all users on June 2, 2023. In subsequent milestones, many improvements were made based on a wealth of user feedback. The ability to fall back to the old navigation has now been removed. More exciting changes are planned for the navigation, but for now, all users have a consistent navigation experience.</p>
<p>As a recap, with the new GitLab navigation, you can:</p>
<ul>
<li>Pin menu items to save your most-used project or group items at the top</li>
<li>Hide and &ldquo;peek&rdquo; the navigation to expose a wider screen</li>
<li>Easily search for menu items by using keyboard shortcuts</li>
<li>Continue to use all the themes you had with the previous navigation</li>
<li>Use better-organized sections that align with a DevOps workflow</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/ee/tutorials/left_sidebar/">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Silent Mode</strong>
    <p>When GitLab Silent Mode is enabled, it blocks all major outbound traffic such as notification emails, integrations, webhooks, and mirroring from a GitLab instance. This allows you to perform testing against a GitLab site without generating traffic towards users and other integrations. You can use Silent Mode to test a restored backup or a promoted Geo DR site without impacting your primary GitLab site or your end users.</p>
    <p><a href="https://docs.gitlab.com/ee/administration/silent_mode/">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>Real-time Kubernetes status updates in the GitLab UI</strong>
    <p>In GitLab 16.6, you can use the cluster UI integration on your environment page to determine the status of currently running applications without leaving GitLab. Previously, the status was updated by a one-time request when the UI loaded, which made tracking deployment progress unwieldy. The current version of GitLab upgrades the underlying connection to use the Kubernetes watch API for the Flux reconciliation and Pod statuses, and provides near real-time updates of the cluster state in the GitLab UI.</p>
    <p><a href="https://docs.gitlab.com/ee/ci/environments/kubernetes_dashboard.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Connect to Kubernetes clusters with the GitLab CLI</strong>
    <p><p>From GitLab version 16.4, you can connect to a Kubernetes cluster from a local terminal using the agent for Kubernetes and a personal access token. In the initial version, setting up the local cluster configuration required several commands and a long lived access token. In the past month, we worked to streamline and improve the security of the set up process by extending the GitLab CLI.</p>
<p>The GitLab CLI can now list the agent connections available from a GitLab project checkout directory or the specified project. You can set up the connection through a selected agent with a dedicated command. When <code>kubectl</code> or any other tool needs to authenticate with the cluster, the GitLab CLI generates a temporary, restricted token for the signed-in user.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/clusters/agent/user_access.html#access-a-cluster-with-the-kubernetes-api">View Documentation</a></p>
  </li>
  <li>
    <strong>Allow compliance teams to prevent pushing and force pushing into protected branches</strong>
    <p><p>One of several new settings being added to scan result policies to aide in <a href="https://gitlab.com/groups/gitlab-org/-/epics/9704">compliance enforcement of security policies</a>, this control will limit the ability to leverage project-level settings to circumvent policies.</p>
<p>For each existing or new scan result policy, you can enable <code>Prevent pushing and force pushing</code> to take effect for the branches defined within the policy to prevent users from circumventing the merge request flow to push changes directly to a branch.</p>
<p>Available in SaaS in 16.6. Available for Self-managed behind the feature flag <code>scan_result_policies_block_force_push</code> and will be enabled by default in 16.7.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/policies/scan-result-policies.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Group-level audit event streaming to AWS S3</strong>
    <p><p>Building on our integrations with external logging or data aggregation tools, you can now select AWS S3 as a destination for audit event streams
for top-level groups. This feature provides relevant information for an easier and more trouble-free integration.</p>
<p>Previously, you had to use custom HTTP headers to try to build a request that AWS S3 would accept. This method was prone to errors and could be difficult to troubleshoot.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/audit_event_streaming/#aws-s3-destinations">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved handling of unresponsive external status checks</strong>
    <p><p>Previously, external status checks on MRs continued to poll the external URL until they received either a successful or failed response.
This could result in some status checks seeming to hang in an unresponsive state.</p>
<p>Now, a 2 minute timeout has been incorporated so that you can manually retry the status check after 2 minutes if you are not getting any
response from the external system.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/merge_requests/status_checks.html#status-checks-widget">View Documentation</a></p>
  </li>
  <li>
    <strong>Changes to the vulnerability report&#39;s Tool filter</strong>
    <p>Previously, the vulnerability report allowed you to filter by a static list of GitLab-supported tool types, followed by a dynamic list of custom scanners. With this release, you can now select tool type grouped by analyzer.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/vulnerability_report/#tool-filter">View Documentation</a></p>
  </li>
  <li>
    <strong>Service accounts have optional expiry dates</strong>
    <p>GitLab administrators and group Owners can choose if they want to enforce an expiry date for service accounts. Previously, service account tokens had to expire within a year, in line with personal, project, and group access token expiration limits. This allows administrators and group Owners to choose the balance between security and ease of use that best aligns with their goals.</p>
    <p><a href="https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html#service-accounts">View Documentation</a></p>
  </li>
  <li>
    <strong>Prevent duplicate NuGet packages</strong>
    <p><p>You can use the GitLab Package Registry to publish and download your project&rsquo;s NuGet packages. By default, you can publish the same package name and version multiple times.</p>
<p>However, you might want to prevent duplicate uploads, especially for releases. In this release, GitLab has expanded the group setting for the Package Registry so you can allow or deny duplicate package uploads.</p>
<p>You can adjust this setting with the <a href="https://docs.gitlab.com/ee/api/graphql/reference/index.html#packagesettings">GitLab API</a>, or from the UI.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/packages/nuget_repository/#do-not-allow-duplicate-nuget-packages">View Documentation</a></p>
  </li>
  <li>
    <strong>Upload packages to the Maven repository with basic HTTP authentication</strong>
    <p><p>The GitLab Package Registry now supports uploading Maven packages with basic HTTP authentication. Previously, you could use basic HTTP authentication only to download Maven packages. This inconsistency made it difficult for developers to configure and maintain authentication for their project.</p>
<p>Publishing artifacts with <code>sbt</code> is not supported, but <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/408479">issue 408479</a> proposes to add this feature.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/packages/maven_repository/#basic-http-authentication">View Documentation</a></p>
  </li>
  <li>
    <strong>Container Scanning: Exclude findings which won&#39;t be fixed</strong>
    <p>Container scanning results may include findings which the vendor has evaluated and decided to not fix. To allow
you to focus on actionable findings, you can now exclude such findings. For configuration options please refer to the GitLab documentation.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/container_scanning/#available-cicd-variables">View Documentation</a></p>
  </li>
  <li>
    <strong>Include CVSS Vectors in the vulnerability report export</strong>
    <p>When you export information from the vulnerability report, the CVSS Vector information is now included.
This additional data helps you analyze and triage vulnerabilities outside GitLab.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/vulnerability_report/#export-vulnerability-details">View Documentation</a></p>
  </li>
  <li>
    <strong>Added support for SBT projects using Java 21</strong>
    <p>Dependency Scanning and License Scanning now support SBT projects using Java 21.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/dependency_scanning/#supported-languages-and-package-managers">View Documentation</a></p>
  </li>
  <li>
    <strong>DAST analyzer updates</strong>
    <p><p>During the 16.6 release milestone, we enabled the following active checks for browser-based DAST by default:</p>
<ul>
<li>Check 94.1 replaces ZAP check 90019 and identifies server-side code injection (PHP).</li>
<li>Check 94.2 replaces ZAP check 90019 and identifies server-side code injection (Ruby).</li>
<li>Check 94.3 replaces ZAP check 90019 and identifies server-side code injection (Python).</li>
<li>Check 943.1 replaces ZAP check 40033 and identifies improper neutralization of special elements in data query logic.</li>
<li>Check 74.1 replaces ZAP check 90017 and identifies XSLT injection.</li>
</ul></p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/dast/checks/">View Documentation</a></p>
  </li>
  <li>
    <strong>macOS 14 (Sonoma) and Xcode 15 image support</strong>
    <p><p>Teams can now seamlessly create, test, and deploy applications for the Apple ecosystem on macOS 14 and Xcode 15.</p>
<p>SaaS runners on macOS allow you to increase your development teams’ velocity in building and deploying applications that require macOS in a secure, on-demand GitLab Runner build environment integrated with GitLab CI/CD.</p>
<p>Try it out today by using <code>macos-14-xcode-15</code> as the image in your .gitlab-ci.yml file.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/runners/saas/macos_saas_runner.html#supported-macos-images">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner 16.6</strong>
    <p><p>We’re also releasing GitLab Runner 16.6 today! GitLab Runner is the lightweight, highly-scalable agent that runs your CI/CD jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.</p>
<h4 id="whats-new">What&rsquo;s new:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/29409">GitLab Runner Fleeting plugin for GCP Compute Engine - Beta</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/6359">Implement graceful shutdown for Docker executor</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/27835">Dynamically create PVC volumes with storage classes for Kubernetes</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/30713">Override the container entrypoint through <code>image.entrypoint</code> in the Kubernetes executor</a></li>
</ul>
<h4 id="bug-fixes">Bug Fixes:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/36959">Pods keep restarting with a Liveness probe failed error after upgrade to GitLab Runner 16.5.0</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/399770">Debug terminal - variable contains content of file instead of file path</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/28162">Job execution pods in Kubernetes does not handle signals</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/29480">Services in GitLab Runner Docker executor using Podman do not start</a></li>
</ul>
<p>The list of all changes is in the GitLab Runner <a href="https://gitlab.com/gitlab-org/gitlab-runner/blob/16-6-stable/CHANGELOG.md">CHANGELOG</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/runner">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab Patch Release: 16.5.2</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-5-2-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-5-2-released/</id><published>2023-11-14T00:00:00Z</published><updated>2023-11-14T00:00:00Z</updated><author><name>Steve Abrams</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On November 14, 2023, we released versions 16.5.2 for GitLab Community Edition and Enterprise Edition.</p>
<p>These versions resolve a number of regressions and bugs.</p>
<h2 id="gitlab-community-edition-and-enterprise-edition">GitLab Community Edition and Enterprise Edition</h2>
<h3 id="1652">16.5.2</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/135645">Backport to 16.5: Geo: Bring back legacy project Prometheus metrics</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/135195">Backport artifacts page breadcrumb fixes</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/136065">Fix broken issue rendering when initial ID is null</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/136243">Backport - Create group wiki repo if absent when verifying on primary</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/136399">backport to 16.5: Fix Geo verification state backfill job can exceed batch size</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/136434">Fix assign security check permission checks</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7228">Update postgres_exporter from 0.14.0 to 0.15.0 (16.5 backport)</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>This version does not include any new migrations, and for multi-node deployments, <a href="https://docs.gitlab.com/ee/update/#upgrading-without-downtime">should not require any downtime</a>.</p>
<p>Please be aware that by default the Omnibus packages will stop, run migrations,
and start again, no matter how “big” or “small” the upgrade is. This behavior
can be changed by adding a <a href="https://docs.gitlab.com/ee/update/zero_downtime.html"><code>/etc/gitlab/skip-auto-reconfigure</code></a> file,
which is only used for <a href="https://docs.gitlab.com/omnibus/update/README.html">updates</a>.</p>
<h2 id="updating">Updating</h2>
<p>To update, check out our <a href="https://about.gitlab.com/update/">update page</a>.</p>
<h2 id="gitlab-subscriptions">GitLab subscriptions</h2>
<p>Access to GitLab Premium and Ultimate features is granted by a paid <a href="https://about.gitlab.com/pricing/">subscription</a>.</p>
<p>Alternatively, <a href="https://gitlab.com/users/sign_in">sign up for GitLab.com</a>
to use GitLab&rsquo;s own infrastructure.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Security Release: 16.5.1, 16.4.2, 16.3.6</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-5-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-5-1-released/</id><published>2023-10-31T00:00:00Z</published><updated>2023-10-31T00:00:00Z</updated><author><name>Greg Alfaro</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On October 31, 2023, we released versions 16.5.1, 16.4.2, 16.3.6 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important security fixes, and we strongly recommend that all GitLab installations be upgraded to
one of these versions immediately. GitLab.com is already running the patched version.</p>
<p>GitLab releases patches for vulnerabilities in dedicated security releases. There are two types of security releases:
a monthly, scheduled security release, released a week after the feature release (which deploys on the 3rd Thursday of each month),
and ad-hoc security releases for critical vulnerabilities. For more information, you can visit our <a href="https://about.gitlab.com/security/faq/">security FAQ</a>.
You can see all of our regular and security release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>.
In addition, the issues detailing each vulnerability are made public on our
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a>
30 days after the release in which they were patched.</p>
<p>We are dedicated to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to
the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers
upgrade to the latest security release for their supported version. You can read more
<a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<p>On 2023-10-20 11:03 UTC, GitLab internally discovered (CVE-2023-5831) that a change in the GitLab sidebar feature resulted in self-managed GitLab instances sending version-checks to version.gitlab.com each time they opened a page on their GitLab instance. This means that the hostnames and current versions of self-managed GitLab instances were being sent to version.gitlab.com any time a user of that GitLab instance opened any page, regardless of whether or not the sending of version-check was enabled. This information was only accessible to some GitLab team members and was not exposed externally, and GitLab is working to purge the erroneously collected data from our database.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="table-of-fixes">Table of fixes</h2>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-5-1-released/#disclosure-of-cicd-variables-using-custom-project-templates">Disclosure of CI/CD variables using Custom project templates</a></td>
          <td>High</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-5-1-released/#gitlab-omnibus-dos-crash-via-oom-with-ci-catalogs">GitLab omnibus DoS crash via OOM with CI Catalogs</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-5-1-released/#parsing--gitlab-ciyml-with-large-string-via-timeout-input-leads-to-denial-of-service">Parsing  gitlab-ci.yml with large string via <code>timeout</code> input leads to Denial of Service</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-5-1-released/#dos---blocking-fifo-files-in-tar-archives">DoS - Blocking FIFO files in Tar archives</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-5-1-released/#titles-exposed-by-service-desk-template">Titles exposed by service-desk template</a></td>
          <td>Medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-5-1-released/#approval-on-protected-environments-can-be-bypassed">Approval on protected environments can be bypassed</a></td>
          <td>Low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-5-1-released/#version-information-disclosure-when-super_sidebar_logged_out-feature-flag-is-enabled">Version information disclosure when <code>super_sidebar_logged_out</code> feature flag is enabled</a></td>
          <td>Low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-5-1-released/#add-abuse-detection-for-search-syntax-filter-pipes">Add abuse detection for search syntax filter pipes</a></td>
          <td>Low</td>
      </tr>
  </tbody>
</table>
<h3 id="disclosure-of-cicd-variables-using-custom-project-templates">Disclosure of CI/CD variables using Custom project templates</h3>
<p>An issue has been discovered in GitLab affecting all versions starting from 11.6 before 12.9.8, all versions starting from 12.10 before 12.10.7, all versions starting from 13.0 before 13.0.1. It was possible for an unauthorised project or group member to read the CI/CD variables using the custom project templates.
This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:L/A:N</code>, 8.5).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3399">CVE-2023-3399</a>.</p>
<p>Thanks <a href="https://hackerone.com/theluci">theluci</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="gitlab-omnibus-dos-crash-via-oom-with-ci-catalogs">GitLab omnibus DoS crash via OOM with CI Catalogs</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 16.2 before 16.3.6, all versions starting from 16.4 before 16.4.2, all versions starting from 16.5 before 16.5.1. A low-privileged attacker can point a CI/CD Component to an incorrect path and cause the server to exhaust all available memory through an infinite loop and cause Denial of Service. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code>, 6.5). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-5825">CVE-2023-5825</a>.</p>
<p>Thanks <a href="https://hackerone.com/blakbat">blakbat</a> for reporting this vulnerability through our HackerOne bug bounty program&quot;</p>
<h3 id="parsing--gitlab-ciyml-with-large-string-via-timeout-input-leads-to-denial-of-service">Parsing  gitlab-ci.yml with large string via <code>timeout</code> input leads to Denial of Service</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 12.3 before 16.3.6, all versions starting from 16.4 before 16.4.2, all versions starting from 16.5 before 16.5.1. A Regular Expression Denial of Service was possible  by adding a large string in timeout input in gitlab-ci.yml file.&quot; This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L</code>, 4.3). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3909">CVE-2023-3909</a>.</p>
<p>Thanks <a href="https://hackerone.com/akadrian">akadrian</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="dos---blocking-fifo-files-in-tar-archives">DoS - Blocking FIFO files in Tar archives</h3>
<p>An issue has been discovered in GitLab EE/CE affecting all versions starting before 16.3.6, all versions starting from 16.4 before 16.4.2, all versions starting from 16.5 before 16.5.1 which allows an attackers to block Sidekiq job processor. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L</code>, 4.3). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3246">CVE-2023-3246</a>.</p>
<p>Thanks <a href="https://hackerone.com/zhutyra">zhutyra</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="titles-exposed-by-service-desk-template">Titles exposed by service-desk template</h3>
<p>An issue has been discovered in GitLab EE affecting all versions starting from 16.0 before 16.3.6, all versions starting from 16.4 before 16.4.2, all versions starting from 16.5 before 16.5.1. Arbitrary access to the titles of an private specific references could be leaked through the service-desk custom email template. This is a low severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:N/A:N</code>, 3.1). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-5600">CVE-2023-5600</a>.</p>
<p>Thanks <a href="https://hackerone.com/yvvdwf">yvvdwf</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="approval-on-protected-environments-can-be-bypassed">Approval on protected environments can be bypassed</h3>
<p>An authorization issue affecting GitLab EE affecting all versions from 14.7 prior to 16.3.6, 16.4 prior to 16.4.2, and 16.5 prior to 16.5.1, allowed a user to run jobs in protected environments, bypassing any required approvals. This is a low severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:L/I:N/A:N</code>, 3.5). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-4700">CVE-2023-4700</a>.</p>
<p>Thanks <a href="https://hackerone.com/gregodfather">Gregor Pirolt</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="version-information-disclosure-when-super_sidebar_logged_out-feature-flag-is-enabled">Version information disclosure when <code>super_sidebar_logged_out</code> feature flag is enabled</h3>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 16.0 before 16.3.6, all versions starting from 16.4 before 16.4.2, and all versions starting from 16.5.0 before 16.5.1 which have the <code>super_sidebar_logged_out</code> feature flag enabled. Affected versions with this default-disabled feature flag enabled may unintentionally disclose GitLab version metadata to unauthorized actors. This is a low severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N</code>, 3.7).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-5831">CVE-2023-5831</a>.</p>
<p>This vulnerability was discovered internally by the GitLab team.</p>
<h3 id="add-abuse-detection-for-search-syntax-filter-pipes">Add abuse detection for search syntax filter pipes</h3>
<p>An issue has been discovered in GitLab EE with Advanced Search affecting all versions from 13.9 to 16.3.6, 16.4 prior to 16.4.2 and 16.5 prior to 16.5.1 that could allow a denial of service in the Advanced Search function by chaining too many syntax operators. This is a low severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:L</code>, 3.1). It is now mitigated in the latest release. We have requested a CVE ID and will update this blog post when it is assigned.</p>
<p>This vulnerability was found internally by GitLab.</p>
<h3 id="update-curl-to-v840">Update curl to v8.4.0</h3>
<p>curl has been updated to v8.4.0 to mitigate <a href="https://curl.se/docs/CVE-2023-38545.html">CVE-2023-38545</a>.</p>
<h3 id="update-mermaid-to-1050">Update mermaid to 10.5.0</h3>
<p>mermaid has been updated to 10.5.0 to mitigate a security issue.</p>
<h3 id="patch-nginx-for-cve-2023-44487">Patch NGINX for CVE-2023-44487</h3>
<p>NGINX has been patched to mitigate CVE-2023-44487.</p>
<h2 id="non-security-patches">Non Security Patches</h2>
<h3 id="1651">16.5.1</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/134835">Revert better-error-messages-for-pull-mirroring</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/134867">Update post migration to drop column only if it exists</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/135226">Downgrade vue-apollo to prevent auto-restarting subscriptions on error</a></li>
</ul>
<h3 id="1642">16.4.2</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/1554">UBI: Explicitly add webrick gem to mailroom build</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/133882">Update VERSION files</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/133877">Update dependency prometheus-client-mmap to &lsquo;&gt;= 0.28.1&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/133833">Backport: fix migration when commit_message_negative_regex is missing</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/134197">Backport to 16.4: Geo: Avoid getting resources stuck in Queued</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/134481">Fix pipeline schedules view when owner is nil</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/134565">Quarantine flaky delete_job_spec:46</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/134264">Create Geo event when project is created</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/134328">Fix bug with batched gitaly ref deletion duplicates</a></li>
</ul>
<h3 id="1636">16.3.6</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/1555">UBI: Explicitly add webrick gem to mailroom build</a></li>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/1499">Backport 16.3: Upgrade exiftool to 12.65</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/135401">Fixes the 16-3-stable branch</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/134196">Backport to 16.3: Geo: Avoid getting resources stuck in Queued</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-security-release-notifications">Receive Security Release Notifications</h2>
<p>To receive security release blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">security release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab 16.5 released</title><link href="https://docs.gitlab.com/releases/16/16-5-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/16/16-5-released/</id><published>2023-10-22T00:00:00Z</published><updated>2023-10-22T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On October 22, 2023, GitLab 16.5 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong>Thorben Westerhuys</strong>
</p>
<p>Thorben was recognized for ongoing work on his merge request to <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/130789">add a user preference to show
times in 24-hour format</a>.
This feature is planned for 16.6 and will give users the choice between 12-hour and 24-hour time formats.</p>
<p>Magdalena Frankiewicz, Product Manager at GitLab, nominated Thorben and noted the issue
for this feature has been open for 7 years with over 190 upvotes. Peter Leitzen, Staff Backend
Engineer at GitLab, also highlighted Thorben&rsquo;s work to <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/130794">refactor backend code related to time
format</a>.</p>
<p>Thorben is CTO of LUUCY, a 3D web platform bringing together high resolution geo data.
He is a former CTO of cividi, a geo spatial data consultancy for urban planning related topics.</p>
<p>Thank you to Thorben and the rest of the GitLab Community for contributing 🙌</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>Compliance standards adherence report</strong>
    <p><p>The Compliance Center now includes a new tab for the standards adherence report.
This report initially includes a GitLab best practices standard, showing when the
projects in your group are not meeting the requirements for the checks included in the standard. The
three checks shown initially are:</p>
<ul>
<li>Approval rule exists to require at least 2 approvers on MRs</li>
<li>Approval rule exists to disallow the MR author to merge</li>
<li>Approval rule exists to disallow committers to the MR to merge</li>
</ul>
<p>The report contains details on the status of each check on a per project basis. It will
also show you when the check was last run, which standard the check applies to,
and how to fix any failures or problems that might be shown on the report. Future iterations
will add more checks and expand the scope to include more regulations and standards.
Additionally, we will be adding improvements to group and filter the report, so you
can focus on the projects or standards that matter most to your organization.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/compliance/compliance_center/#standards-adherence-dashboard">View Documentation</a></p>
  </li>
  <li>
    <strong>Create rules to set target branches for merge requests</strong>
    <p><p>Some projects use multiple long-term branches for development, like <code>develop</code> and <code>qa</code>. In these projects, you might want to keep <code>main</code> as the default branch since it represents the production state of the project. However, development work expects merge requests to target <code>develop</code> or <code>qa</code>. Target branch rules help ensure merge requests target the appropriate branch for your project and development workflow.</p>
<p>When you create a merge request, the rule checks the name of the branch. If the branch name matches the rule, the merge request pre-selects the branch you specified in the rule as the target. If the branch name does not match, the merge request targets the default branch of the project.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/repository/branches/#configure-workflows-for-target-branches">View Documentation</a></p>
  </li>
  <li>
    <strong>Resolve an issue thread</strong>
    <p>Long-running issues with many threads can be challenging to read and track. You can now resolve a thread on an issue when the topic of discussion has concluded.</p>
    <p><a href="https://docs.gitlab.com/ee/user/discussions/#resolve-a-thread">View Documentation</a></p>
  </li>
  <li>
    <strong>Fast-forward merge trains with semi-linear history</strong>
    <p>In 16.4, we released <a href="https://about.gitlab.com/releases/2023/09/22/gitlab-16-4-released/#fast-forward-merge-support-for-merge-trains">Fast-forward merge trains</a>, and as a continuation, we want to ensure we support all <a href="https://docs.gitlab.com/ee/user/project/merge_requests/methods/">merge methods</a>. Now, if you want to ensure your semi-linear commit history is maintained you can use semi-linear fast-forward merge trains.</p>
    <p><a href="https://docs.gitlab.com/ee/ci/pipelines/merge_trains.html">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Scale and Deployments</h4>
<ul>
  <li>
    <strong>Find epics with advanced search</strong>
    <p>The popularity of epics in GitLab continues to grow. Previously, finding epics was a little more difficult than other content types. With this release, you can now search and view results for epics when you use advanced search.</p>
    <p><a href="https://docs.gitlab.com/ee/user/search/#global-search-scopes">View Documentation</a></p>
  </li>
  <li>
    <strong>Omnibus improvements</strong>
    <p><ul>
<li>GitLab 16.5 <code>.deb</code> Linux packages have <a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/issues/8197">switched from gzip to xz compression</a>,
resulting in smaller package sizes. This change might result in slower unpacking times during installation.</li>
<li>GitLab 16.5 includes <a href="https://docs.mattermost.com/install/self-managed-changelog.html#release-v9-0-major-release">Mattermost 9.0</a>.
This version removes the deprecated Insights feature, and
<a href="https://forum.mattermost.com/t/upcoming-product-changes-to-boards-and-various-plugins/16669">Mattermost Boards and various plugins have transitioned to community support</a>.</li>
<li>GitLab 16.5 <a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7165">moves the GitLab SELinux policy module</a>
from <code>/opt/gitlab/embedded/selinux/rhel/7/</code> to <code>/opt/gitlab/embedded/selinux</code> to reflect that the module isn&rsquo;t only for RHEL 7.</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/omnibus/">View Documentation</a></p>
  </li>
  <li>
    <strong>Reviewer information for merge requests in the Jira development panel</strong>
    <p>With the <a href="https://docs.gitlab.com/ee/integration/jira/connect-app.html">GitLab for Jira Cloud app</a>, you can connect GitLab and Jira Cloud to sync development information in real time. You can view this information in the Jira development panel.
Previously, when a reviewer was assigned to a merge request, the reviewer information was not displayed in the Jira development panel. With this release, the reviewer name, email, and approval status are displayed in the Jira development panel when you use the GitLab for Jira Cloud app.</p>
    <p><a href="https://docs.gitlab.com/ee/integration/jira/development_panel.html#information-displayed-in-the-development-panel">View Documentation</a></p>
  </li>
  <li>
    <strong>Changing context just got easier</strong>
    <p><p>We&rsquo;ve heard your feedback that on the left sidebar, it can be hard to find the search button and to change between things like projects and preferences. In this release, we&rsquo;ve made the button more prominent. This aids discoverability as well as streamlining workflows into a single touch point.</p>
<p>You can try it out by selecting the <strong>Search or go to&hellip;</strong> button or with a keyboard shortcut by typing <kbd>/</kbd> or <kbd>s</kbd>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/tutorials/left_sidebar/">View Documentation</a></p>
  </li>
  <li>
    <strong>Webhook now triggered when a release is deleted</strong>
    <p>You can use release events to monitor release objects and react to changes. Previously, a webhook was only triggered when a release was created or updated. In heavily regulated industries, deleting releases is a crucial event that must be monitored and followed up.
With GitLab 16.5, a webhook is now also triggered when a release is deleted.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/integrations/webhook_events.html#release-events">View Documentation</a></p>
  </li>
  <li>
    <strong>Redesigned Service Desk issues list</strong>
    <p><p>We&rsquo;ve redesigned Service Desk issues list to load faster and more smoothly.
It now matches more closely the regular issues list. Available features include:</p>
<ul>
<li>The same sorting and ordering options as on the issue list.</li>
<li>The same filters, including the OR operator and filtering by issue ID.</li>
</ul></p>
    <p><a href="https://docs.gitlab.com/ee/user/project/service_desk/using_service_desk.html#redesigned-issue-list">View Documentation</a></p>
  </li>
  <li>
    <strong>Geo adds bulk resync and reverify buttons for all components</strong>
    <p>You can now trigger bulk resync or reverify for any data component managed by Geo, through buttons in the Geo admin UI. Selecting the button will apply the operation to all data items related to the respective component. Before, this was only possible by logging into the Rails console. These actions are now more accessible, and the experience of troubleshooting and applying large scale changes that require a full resync or reverify of specific components, such as moving storage locations, is improved.</p>
    <p><a href="https://docs.gitlab.com/ee/administration/geo/">View Documentation</a></p>
  </li>
  <li>
    <strong>Back up and restore repository data in the cloud</strong>
    <p><p>The GitLab backup and restore feature now supports storing repository data in object storage. This update improves performance by eliminating the intermediate steps used to create a large tarball, which needs to be manually stored in an appropriate location.</p>
<p>With this update, repository backups get stored in an object storage location of your choice (Amazon S3, Google Cloud Storage, Azure Cloud Data Storage, MinIO, etc.). This change eliminates the need to manually move data off of your Gitaly instance.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/backup_restore/backup_gitlab.html#create-server-side-repository-backups">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>Integrate deployment approval and approval rule changes into audit events</strong>
    <p><p>Deployments in regulated industries are a central topic of compliance. In previous releases, deployment approvals were not part of audited events, which made it difficult to tell when and how approval rules changed.</p>
<p>GitLab now ships with a new set of audit events for deployment approval and approval rule changes. These events fire when deployment approval rules change, or when approval rules for protected environments change.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/audit_event_streaming/audit_event_types.html#environment-management">View Documentation</a></p>
  </li>
  <li>
    <strong>Use the API to delete a user&#39;s SAML and SCIM identities</strong>
    <p><p>Previously, group Owners had no way to programmatically delete SAML or SCIM identities. This made it difficult to troubleshoot issues with the user provisioning and sign-in processes. Now, group Owners can use new endpoints to delete these identities.</p>
<p>Thank you <a href="https://gitlab.com/jgao1025">jgao1025</a> for your contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/api/scim.html#delete-a-single-scim-identity">View Documentation</a></p>
  </li>
  <li>
    <strong>Export the compliance violations report</strong>
    <p><p>The compliance violations report can contain a lot of information. Previously, you could only view the information in the GitLab UI. This was fine for individual issues, but
could be tricky if you needed to, for example:</p>
<ul>
<li>Create an artifact of the current compliance status for a release. For example, prove to an auditor that there were 0 violations.</li>
<li>Aggregate the data with another data set or process it in another tool.</li>
</ul>
<p>In GitLab 16.5, you can now export a list of the items included in the compliance violations report in CSV format.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/compliance/compliance_center/index.html#export-a-report-of-merge-request-compliance-violations-on-projects-in-a-group">View Documentation</a></p>
  </li>
  <li>
    <strong>New customizable permissions</strong>
    <p>The permissions to manage group members and project access tokens have been added to the custom roles framework. You can add these permissions to any base role to create a custom role. By creating custom roles with only the permissions needed to accomplish a particular set of tasks, you do not have to unnecessarily assign highly privileged roles such as Maintainer and Owner to users.</p>
    <p><a href="https://docs.gitlab.com/ee/user/custom_roles.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Instance-level audit event streaming to Google Cloud Logging</strong>
    <p><p>Previously, you could configure only top-level group streaming audit events for Google Cloud Logging.</p>
<p>With GitLab 16.5, we&rsquo;ve extended support for Google Cloud Logging to instance-level streaming destinations.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/audit_event_streaming/#google-cloud-logging-destinations-1">View Documentation</a></p>
  </li>
  <li>
    <strong>Configurable locked user policy</strong>
    <p>Administrators can now configure a locked user policy for their instance by choosing the number of unsuccessful sign-in attempts, and how long the user is locked for. For example, five unsuccessful sign-in attempts would lock a user for 60 minutes. This allows administrators to define a locked user policy that meets their security and compliance needs. Previously, the number of sign-in attempts and locked user time period were not configurable.</p>
    <p><a href="https://docs.gitlab.com/ee/security/unlock_user.html#self-managed-users">View Documentation</a></p>
  </li>
  <li>
    <strong>Activate and deactivate headers for streaming audit events</strong>
    <p><p>Previously, you had to delete HTTP headers added to audit event streaming destinations, even if you only wanted to deactivate
them temporarily.</p>
<p>With GitLab 16.5, you can use the <strong>Active</strong> checkbox in the GitLab UI to toggle each header on and off individually. You can use this to:</p>
<ul>
<li>Test different headers.</li>
<li>Temporarily deactivate a header.</li>
<li>Switch between two versions of the same header.</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/audit_event_streaming/">View Documentation</a></p>
  </li>
  <li>
    <strong>API to create PAT for currently authenticated user</strong>
    <p>You can now use a new REST API endpoint at <code>user/personal_access_tokens</code> to create a new personal access token for the currently authenticated user. This token&rsquo;s scope is limited to <code>k8s_proxy</code> for security reasons, so you can use it to only perform Kubernetes API calls using the agent for Kubernetes. Previously, only instance administrators could <a href="https://docs.gitlab.com/ee/api/users.html#create-a-personal-access-token">create personal access tokens through the API</a>.</p>
    <p><a href="https://docs.gitlab.com/ee/api/users.html#create-a-personal-access-token-with-limited-scopes-for-the-currently-authenticated-user">View Documentation</a></p>
  </li>
  <li>
    <strong>Vulnerability report grouping by status and severity</strong>
    <p>As a user, you require the ability to group vulnerabilities so that you can more efficiently triage vulnerabilities. With this release, you are able to group by severity or status. This will help you better answer questions like how many confirmed vulnerabilities are in a group or project, or how many vulnerabilities still need to be triaged.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/vulnerability_report/#group-vulnerabilities">View Documentation</a></p>
  </li>
  <li>
    <strong>Export individual wiki pages as PDF</strong>
    <p>From GitLab 16.5, you can export individual wiki pages as PDF files. Now, sharing team knowledge is even more seamless. Exporting a wiki to PDF can be used for a variety of use cases. For example, to provide a copy of technical documentation that is kept in a wiki or share information in a wiki with project status. Gone is the need to leverage alternative tools to convert Markdown files to PDF, since in some organizations, using these tools is prohibited, creating another challenge. Thank you to JiHu for contributing this feature!</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/wiki/index.html#export-a-wiki-page">View Documentation</a></p>
  </li>
  <li>
    <strong>Add a child task, objective, or key result with a quick action</strong>
    <p>You can now add a child item for a task, objective, or key result by using the <code>/add_child</code> quick action.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/quick_actions.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Linked items widget in tasks, objectives, and key results</strong>
    <p><p>With this release, you can link <a href="https://docs.gitlab.com/ee/user/tasks.html#linked-items-in-tasks">tasks</a> and <a href="https://docs.gitlab.com/ee/user/okrs.html#linked-items-in-okrs">OKRs</a> as &ldquo;related,&rdquo; &ldquo;blocked by,&rdquo; or &ldquo;blocking&rdquo; to provide traceability between dependent and related work items.</p>
<p>When we migrate <a href="https://gitlab.com/groups/gitlab-org/-/epics/9290">epics</a> and <a href="https://gitlab.com/groups/gitlab-org/-/epics/9584">issues</a> to the work item framework, you will be able to link across all these types.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/okrs.html#linked-items-in-okrs">View Documentation</a></p>
  </li>
  <li>
    <strong>Set a parent for a task, objective, or key result with a quick action</strong>
    <p>You can now set a parent item for a task, objective, or key result by using the <code>/set_parent</code> quick action.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/quick_actions.html">View Documentation</a></p>
  </li>
  <li>
    <strong>DAST analyzer updates</strong>
    <p><p>During the 16.5 release milestone, we enabled the following active checks for browser-based DAST by default:</p>
<ul>
<li>Check 78.1 replaces ZAP check 90020 and identifies command injection, which can be exploited by executing arbitrary OS commands on the target application server.  This is a critical vulnerability that can lead to a full system compromise.</li>
<li>Check 611.1 replaces ZAP check 90023 and identifies External XML Entity Injection (XXE), which can be exploited by causing an application&rsquo;s XML parser to include external resources.</li>
<li>Check 94.4 replaces ZAP check 90019 and identifies &ldquo;Server-side code injection (NodeJS)&rdquo;, which can be exploited by injecting arbitrary JavaScript code to be executed on the server.</li>
<li>Check 113.1 replaces ZAP check 40003 and identifies &ldquo;Improper Neutralization of CRLF Sequences in HTTP Headers (&lsquo;HTTP Response Splitting&rsquo;)&rdquo;, which can be exploited by inserting Carriage Return / Line Feed (CRLF) characters to inject arbitrary data into HTTP responses.</li>
</ul></p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/dast/checks/">View Documentation</a></p>
  </li>
  <li>
    <strong>Make jobs API endpoint rate limit configurable</strong>
    <p>A rate limit for the <code>project/:id/jobs</code> API endpoint was added recently,
defaulting to 600 requests per minute per user. As a follow up iteration, we are making this limit
configurable, enabling instance administrators to set the limit that best matches their requirements.</p>
    <p><a href="https://docs.gitlab.com/ee/administration/settings/user_and_ip_rate_limits.html#maximum-authenticated-requests-to-projectidjobs-per-minute">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner 16.5</strong>
    <p><p>We’re also releasing GitLab Runner 16.5 today! GitLab Runner is the lightweight, highly-scalable agent that runs your CI/CD jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.</p>
<h4 id="whats-new">What&rsquo;s new:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/29404">GitLab Runner fleeting plugin for AWS EC2 instances - Beta</a></li>
</ul>
<h4 id="bug-fixes">Bug Fixes:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/390645">Terminating a runner manager k8s pod results in orphaned worker pods</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/29606">GitLab Runner 15.8.0 cannot checkout branches with special characters</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/27768">GitLab Runner pulls an x86-64 helper image, not the arm64 helper image, on an arm64 compute host</a></li>
</ul>
<p>The list of all changes is in the GitLab Runner <a href="https://gitlab.com/gitlab-org/gitlab-runner/blob/16-5-stable/CHANGELOG.md">CHANGELOG</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/runner">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab Security Release: 16.4.1, 16.3.5, and 16.2.8</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-4-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-4-1-released/</id><published>2023-09-28T00:00:00Z</published><updated>2023-09-28T00:00:00Z</updated><author><name>Félix Veillette-Potvin</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<p>On September 28, 2023, we released versions 16.4.1, 16.3.5, and 16.2.8 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important security fixes, and we strongly recommend that all GitLab installations be upgraded to one of these versions immediately. GitLab.com is already running the patched version.</p>
<p>GitLab releases patches for vulnerabilities in dedicated security releases. There are two types of security releases: a monthly, scheduled security release, released a week after the feature release (which deploys on the 22nd of each month), and ad-hoc security releases for critical vulnerabilities. For more information, you can visit our <a href="https://about.gitlab.com/security/faq/">security FAQ</a>. You can see all of our regular and security release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>. In addition, the issues detailing each vulnerability are made public on our <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a> 30 days after the release in which they were patched.</p>
<p>We are dedicated to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers upgrade to the latest security release for their supported version. You can read more <a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="table-of-fixes">Table of Fixes</h2>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-4-1-released/#attacker-can-add-other-projects-policy-bot-as-member-to-their-own-project-and-use-that-bot-to-trigger-pipelines-in-victims-project">Attacker can add other projects policy bot as member to their own project and use that bot to trigger pipelines in victims project</a></td>
          <td>high</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-4-1-released/#group-import-allows-impersonation-of-users-in-ci-pipelines">Group import allows impersonation of users in CI pipelines</a></td>
          <td>high</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-4-1-released/#developers-can-bypass-code-owners-approval-by-changing-a-mrs-base-branch">Developers can bypass code owners approval by changing a MR&rsquo;s base branch</a></td>
          <td>high</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-4-1-released/#leaking-source-code-of-restricted-project-through-a-fork">Leaking source code of restricted project through a fork</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-4-1-released/#third-party-library-consul-requires-enable-script-checks-to-be-false-to-enable-patch">Third party library Consul requires enable-script-checks to be False to enable patch</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-4-1-released/#service-account-not-deleted-when-namespace-is-deleted-allowing-access-to-internal-projects">Service account not deleted when namespace is deleted allowing access to internal projects</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-4-1-released/#enforce-sso-settings-bypassed-for-public-projects-for-members-without-identity">Enforce SSO settings bypassed for public projects for Members without identity</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-4-1-released/#removed-project-member-can-write-to-protected-branches">Removed project member can write to protected branches</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-4-1-released/#unauthorised-association-of-ci-jobs-for-machine-learning-experiments">Unauthorised association of CI jobs for Machine Learning experiments</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-4-1-released/#force-pipelines-to-not-have-access-to-protected-variables-and-will-likely-fail-using-tags">Force pipelines to not have access to protected variables and will likely fail using tags</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-4-1-released/#maintainer-can-create-a-fork-relationship-between-existing-projects">Maintainer can create a fork relationship between existing projects</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-4-1-released/#disclosure-of-masked-ci-variables-via-processing-cicd-configuration-of-forks">Disclosure of masked CI variables via processing CI/CD configuration of forks</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-4-1-released/#asset-proxy-bypass-using-non-ascii-character-in-asset-uri">Asset Proxy Bypass using non-ASCII character in asset URI</a></td>
          <td>low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-4-1-released/#unauthorized-member-can-gain-allowed-to-push-and-merge-access-and-affect-integrity-of-protected-branches">Unauthorized member can gain <code>Allowed to push and merge</code> access and affect integrity of protected branches</a></td>
          <td>low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-4-1-released/#removed-developer-can-continue-editing-the-source-code-of-a-public-project">Removed Developer can continue editing the source code of a public project</a></td>
          <td>low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-4-1-released/#a-project-reporter-can-leak-owners-sentry-instance-projects">A project reporter can leak owner&rsquo;s Sentry instance projects</a></td>
          <td>low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-4-1-released/#math-rendering-in-markdown-can-escape-container-and-hijack-clicks">Math rendering in markdown can escape container and hijack clicks</a></td>
          <td>low</td>
      </tr>
  </tbody>
</table>
<h2 id="attacker-can-add-other-projects-policy-bot-as-member-to-their-own-project-and-use-that-bot-to-trigger-pipelines-in-victims-project">Attacker can add other projects policy bot as member to their own project and use that bot to trigger pipelines in victims project</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/982 -->
<p>A vulnerability was discovered in GitLab CE and EE affecting all versions starting 16.0 prior to 16.2.8, 16.3 prior to 16.3.5, and 16.4 prior to 16.4.1. An authenticated attacker could perform arbitrary pipeline execution under the context of another user. This is a high severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:N</code>, 8.2). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-5207">CVE-2023-5207</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="group-import-allows-impersonation-of-users-in-ci-pipelines">Group import allows impersonation of users in CI pipelines</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/980 -->
<p>Two issues have been discovered in Ultimate-licensed GitLab EE affecting all versions starting 13.12 prior to 16.2.8, 16.3.0 prior to 16.3.5, and 16.4.0 prior to 16.4.1 that could allow an attacker to impersonate users in CI pipelines through direct transfer group imports. These are a high severity issues (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:N</code>, 8.2). They are now mitigated in the latest release and are assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-5106">CVE-2023-5106</a>.</p>
<p>These issues have been discovered internally by GitLab team member <a href="https://gitlab.com/joernchen">Joern Schneeweisz</a>.</p>
<h2 id="developers-can-bypass-code-owners-approval-by-changing-a-mrs-base-branch">Developers can bypass code owners approval by changing a MR&rsquo;s base branch</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/976 -->
<p>An issue has been discovered in GitLab EE affecting all versions starting 15.3 prior to prior to 16.2.8, 16.3 prior to 16.3.5, and 16.4 prior to 16.4.1. Code owner approval was not removed from merge requests when the target branch was updated. This is a high severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:C/C:H/I:H/A:N</code>, 8.1). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-4379">CVE-2023-4379</a>.</p>
<p>This issue was reported by a customer.</p>
<h2 id="leaking-source-code-of-restricted-project-through-a-fork">Leaking source code of restricted project through a fork</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/939 -->
<p>An issue has been discovered in GitLab affecting all versions starting from 16.2 before 16.2.8, all versions starting from 16.3 before 16.3.5, all versions starting from 16.4 before 16.4.1. It was possible that an unauthorised user to fork a public project. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N</code>, 6.5). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3413">CVE-2023-3413</a>.</p>
<p>Thanks <a href="https://hackerone.com/shells3c">shells3c</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="third-party-library-consul-requires-enable-script-checks-to-be-false-to-enable-patch">Third party library Consul requires enable-script-checks to be False to enable patch</h2>
<!-- https://gitlab.com/gitlab-org/security/omnibus-gitlab/-/issues/99 -->
<p>Patch in third party library Consul requires &rsquo;enable-script-checks&rsquo; to be set to False. This only affects GitLab-EE. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:N</code>, 5.9). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-5332">CVE-2023-5332</a>.</p>
<p>This issue was reported by a customer.</p>
<h2 id="service-account-not-deleted-when-namespace-is-deleted-allowing-access-to-internal-projects">Service account not deleted when namespace is deleted allowing access to internal projects</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/962 -->
<p>A business logic error in GitLab EE affecting all versions prior to 16.2.8, 16.3 prior to 16.3.5, and 16.4 prior to 16.4.1 allows access to internal projects. A service account is not deleted when a namespace is deleted, allowing access to internal projects. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N</code>, 5.4). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3914">CVE-2023-3914</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="enforce-sso-settings-bypassed-for-public-projects-for-members-without-identity">Enforce SSO settings bypassed for public projects for Members without identity</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/930 -->
<p>An issue has been discovered in GitLab EE affecting all versions affecting all versions from 11.11 prior to 16.2.8, 16.3 prior to 16.3.5, and 16.4 prior to 16.4.1. Single Sign On restrictions were not correctly enforced for indirect project members accessing public members-only project repositories. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N</code>, 5.4). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3115">CVE-2023-3115</a>.</p>
<p>Thanks <a href="https://hackerone.com/theluci">theluci</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="removed-project-member-can-write-to-protected-branches">Removed project member can write to protected branches</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/972 -->
<p>An issue has been discovered in GitLab affecting all versions prior to 16.2.7, all versions starting from 16.3 before 16.3.5, and all versions starting from 16.4 before 16.4.1. It was possible for a removed project member to write to protected branches using deploy keys. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N</code>, 4.3). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-5198">CVE-2023-5198</a>.</p>
<p>Thanks <a href="https://hackerone.com/theluci">theluci</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="unauthorised-association-of-ci-jobs-for-machine-learning-experiments">Unauthorised association of CI jobs for Machine Learning experiments</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/960 -->
<p>An issue has been discovered in GitLab affecting all versions starting from 16.2 before 16.2.8, all versions starting from 16.3 before 16.3.5, all versions starting from 16.4 before 16.4.1. Users were capable of linking CI/CD jobs of private projects which they are not a member of. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code>, 4.3). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-4532">CVE-2023-4532</a>.</p>
<p>Thanks <a href="https://hackerone.com/ricardobrito">ricardobrito</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="force-pipelines-to-not-have-access-to-protected-variables-and-will-likely-fail-using-tags">Force pipelines to not have access to protected variables and will likely fail using tags</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/955 -->
<p>Denial of Service in pipelines affecting all versions of Gitlab EE and CE prior to 16.2.8, 16.3 prior to 16.3.5, and 16.4 prior to 16.4.1 allows attacker to cause pipelines to fail. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L</code>, 4.3). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3917">CVE-2023-3917</a>.</p>
<p>Thanks <a href="https://hackerone.com/js_noob">js_noob</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="maintainer-can-create-a-fork-relationship-between-existing-projects">Maintainer can create a fork relationship between existing projects</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/963 -->
<p>An issue has been discovered in GitLab affecting all versions starting from 11.2 before 16.2.8, all versions starting from 16.3 before 16.3.5, all versions starting from 16.4 before 16.4.1. It was possible that a maintainer to create a fork relationship between existing projects contrary to the documentation. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N</code>, 4.3). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3920">CVE-2023-3920</a>.</p>
<p>Thanks <a href="https://hackerone.com/theluci">theluci</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="disclosure-of-masked-ci-variables-via-processing-cicd-configuration-of-forks">Disclosure of masked CI variables via processing CI/CD configuration of forks</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/964 -->
<p>An information disclosure issue in GitLab CE/EE affecting all versions from 13.11 prior to 16.2.8, 16.3 prior to 16.3.5, and 16.4 prior to 16.4.1 allows an attacker to extract non-protected CI/CD variables by tricking a user to visit a fork with a malicious CI/CD configuration. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N</code>, 4.3). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-0989">CVE-2023-0989</a>.</p>
<p>Thanks <a href="https://hackerone.com/shells3c">shells3c</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="asset-proxy-bypass-using-non-ascii-character-in-asset-uri">Asset Proxy Bypass using non-ASCII character in asset URI</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/973 -->
<p>An input validation issue in the asset proxy in GitLab EE, affecting all versions from 12.3 prior to 16.2.8, 16.3 prior to 16.3.5, and 16.4 prior to 16.4.1, allowed an authenticated attacker to craft image urls which bypass the asset proxy. This is a low severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:N/A:N</code>, 3.5). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3906">CVE-2023-3906</a>.</p>
<p>Thanks <a href="https://hackerone.com/afewgoats">afewgoats</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="unauthorized-member-can-gain-allowed-to-push-and-merge-access-and-affect-integrity-of-protected-branches">Unauthorized member can gain <code>Allowed to push and merge</code> access and affect integrity of protected branches</h2>
<p>An issue has been discovered in GitLab EE affecting all versions starting from X.Y before 16.X, all versions starting from 16.X before 16.X. It was possible for an attacker to abuse the <code>Allowed to merge</code> permission as a guest user, when granted the permission through a group. This is a low severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:N</code>, 3.1). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-4658">CVE-2023-4658</a>.</p>
<p>Thanks <a href="https://hackerone.com/theluci">theluci</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="removed-developer-can-continue-editing-the-source-code-of-a-public-project">Removed Developer can continue editing the source code of a public project</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/953 -->
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 10.6 before 16.2.8, all versions starting from 16.3 before 16.3.5, all versions starting from 16.4 before 16.4.1. It was possible that upstream members to collaborate with you on your branch get permission to write to the merge request’s source branch. . This is a low severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:N</code>, 3.1). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3979">CVE-2023-3979</a>.</p>
<p>Thanks <a href="https://hackerone.com/theluci">theluci</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="a-project-reporter-can-leak-owners-sentry-instance-projects">A project reporter can leak owner&rsquo;s Sentry instance projects</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/968 -->
<p>An improper authorization issue has been discovered in GitLab CE/EE affecting all versions starting from 11.8 before 16.2.x8, all versions starting from 16.3 before 16.3.5 and all versions starting from 16.4.0 before 16.4.1. It allows a project reporter to leak the owner&rsquo;s Sentry instance projects. This is a low severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:N/A:N</code>, 3.1). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-2233">CVE-2023-2233</a>.</p>
<p>Thanks <a href="https://hackerone.com/js_noob">js_noob</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="math-rendering-in-markdown-can-escape-container-and-hijack-clicks">Math rendering in markdown can escape container and hijack clicks</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/974 -->
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 8.15 before 16.2.8, all versions starting from 16.3 before 16.3.5, all versions starting from 16.4 before 16.4.1. It was possible to hijack some links and buttons on the GitLab UI to a malicious page. This is a low severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:N/I:N/A:L</code>, 3.0). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3922">CVE-2023-3922</a>.</p>
<p>Thanks <a href="https://hackerone.com/ammar2">ammar2</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h1 id="update-exiftool">Update Exiftool</h1>
<p>Exiftool has been updated to version 1.12 in order to mitigate security issues.</p>
<h1 id="update-mattermost">Update Mattermost</h1>
<p>Mattermost has been updated to version 8.1.2 in order to mitigate security issues.</p>
<h1 id="update-auto-deploy-image">Update Auto deploy image</h1>
<p>Auto deploy image has been updated to version 2.55.0 in order to mitigate security issues.</p>
<h2 id="non-security-patches">Non Security Patches</h2>
<h3 id="1635">16.3.5</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/132398">Backport disable v1 package metadata sync</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-security-release-notifications">Receive Security Release Notifications</h2>
<p>To receive security release blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">security release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab 16.4 released</title><link href="https://docs.gitlab.com/releases/16/16-4-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/16/16-4-released/</id><published>2023-09-22T00:00:00Z</published><updated>2023-09-22T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On September 22, 2023, GitLab 16.4 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong>Kik</strong>
</p>
<p>Kik has been instrumental in designing and beginning the implementation of ActivityPub support
in GitLab. His original deeply detailed architecture plan has been embraced by our product team
and now lives <a href="https://gitlab.com/groups/gitlab-org/-/epics/11247">as an epic</a> in the GitLab project.
The <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/127023">first MR</a> implementing this code was
recently merged, followed by a <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/130960">documentation addition</a>.</p>
<p>As support for this large feature grows, Kik has shown himself to be a personification of the
<a href="https://handbook.gitlab.com/handbook/values/">GitLab Values</a> of Collaboration, Iteration and Transparency!</p>
<p>Kik has been a part of the GitLab community for many years, logging his <a href="https://gitlab.com/gitlab-org/gitlab-foss/-/issues/4037#note_4651432">first issue</a>
over 7 years ago. He&rsquo;s chosen to become a bit more active over the last few months. When asked about
his contributions, he stated:</p>

<blockquote><p>If there is anything to highlight, it&rsquo;s probably how enabling GitLab is, allowing to see its source code and tinker with it, while being welcoming to contributions, no matter how ambitious they are. :)</p></blockquote><p>He has also chosen to help pioneer our sustainability efforts by choosing to have
<a href="https://tree-nation.com/trees/view/5119567">trees planted</a> in his name instead of opting for swag. 🌳</p>
<p>Thank you, Kik, for choosing to help build GitLab and being a part of our amazing community! 🙌</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>Customizable roles</strong>
    <p>Group Owners or administrators can now create and remove custom roles using the UI under the Roles and Permissions menu. To create a custom role, you add <a href="https://docs.gitlab.com/ee/user/permissions.html#custom-role-requirements">permissions</a> on top of an existing <a href="https://docs.gitlab.com/ee/user/permissions.html#roles">base role</a>. Currently, there are a limited number of permissions that can be added to a base role, including <a href="/#granular-security-permissions">granular security permissions</a>, the ability to approve merge requests, and view code. Each milestone, new permissions will be released that can then be added to existing permissions to create custom roles.</p>
    <p><a href="https://docs.gitlab.com/ee/user/permissions.html#create-a-custom-role">View Documentation</a></p>
  </li>
  <li>
    <strong>Create workspaces for private projects</strong>
    <p><p>Previously, it was not possible to <a href="https://docs.gitlab.com/ee/user/workspace/configuration.html#set-up-a-workspace">create a workspace</a> for a private project. To clone a private project, you could only authenticate yourself after you created the workspace.</p>
<p>With GitLab 16.4, you can create a workspace for any public or private project. When you create a workspace, you get a personal access token to use with the workspace. With this token, you can clone private projects and perform Git operations without any additional configuration or authentication.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/workspace/#personal-access-token">View Documentation</a></p>
  </li>
  <li>
    <strong>Access clusters locally using your GitLab user identity</strong>
    <p><p>Allowing developers access to Kubernetes clusters requires either developer cloud accounts or third-party authentication tools. This increases the complexity of cloud identity and access management. Now, you can grant developers access to Kubernetes clusters using only their GitLab identities and the agent for Kubernetes. Use traditional Kubernetes RBAC to manage authorizations within your cluster.</p>
<p>Together with the <a href="https://docs.gitlab.com/ee/ci/cloud_services/">OIDC cloud authentication</a> offering in GitLab pipelines, these features allow GitLab users to access cloud resources without dedicated cloud accounts without jeopardizing security and compliance.</p>
<p>In this first iteration of cluster access, you must <a href="https://docs.gitlab.com/ee/user/clusters/agent/user_access.html">manage your Kubernetes configuration manually</a>. <a href="https://gitlab.com/groups/gitlab-org/-/epics/11455">Epic 11455</a> proposes to simplify setup by extending the GitLab CLI with related commands.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/clusters/agent/user_access.html#access-a-cluster-with-the-kubernetes-api">View Documentation</a></p>
  </li>
  <li>
    <strong>Group/sub-group level dependency list</strong>
    <p>When reviewing a list of dependencies, it is important to have an overall view. Managing dependencies at the project level is problematic for large organizations that want to audit their dependencies across all their projects. With this release, you can see all dependencies at the project or group level, including subgroups. This feature is now available by default.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/dependency_list/">View Documentation</a></p>
  </li>
  <li>
    <strong>Vulnerability bulk status updates</strong>
    <p>Some vulnerabilities need to be addressed in bulk.  Whether they are false positives or no longer detected, it&rsquo;s important to minimize the noise and triage vulnerabilities with ease.
With this release you can bulk change the status and make a comment for multiple vulnerabilities from a group or project Vulnerability Report.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/vulnerability_report/">View Documentation</a></p>
  </li>
  <li>
    <strong>Granular security permissions</strong>
    <p><p>Some organizations want to give their security teams the least amount of access necessary so they can adhere to the <a href="https://en.wikipedia.org/wiki/Principle_of_least_privilege">Principle of Least Privilege</a>.
Security teams should not have access to write code updates, but they must be able to approve merge requests, view vulnerabilities, and update a vulnerability&rsquo;s status.</p>
<p>GitLab now allows users to <a href="https://docs.gitlab.com/ee/user/permissions.html#custom-roles">create a custom role</a> based on the access of the <a href="https://docs.gitlab.com/ee/user/permissions.html">Reporter</a> role, but with the added permissions of:</p>
<ul>
<li>Viewing the dependency list (<code>read_dependency</code>).</li>
<li>Viewing the security dashboard and vulnerability report (<code>read_vulnerability</code>).</li>
<li>Approving a merge request (<code>admin_merge_request</code>).</li>
<li>Changing status of a vulnerability (<code>admin_vulnerability</code>).</li>
</ul>
<p>We plan to remove the ability to change the status of a vulnerability from the Developer role for all tiers in 17.0, as noted in this <a href="https://docs.gitlab.com/ee/update/deprecations.html#deprecate-change-vulnerability-status-from-the-developer-role">deprecation entry</a>. Feedback on this proposed change can be shared in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/424668">issue 424688</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/permissions.html#custom-roles">View Documentation</a></p>
  </li>
  <li>
    <strong>Fast-forward merge support for merge trains</strong>
    <p><p><a href="https://docs.gitlab.com/ee/user/project/merge_requests/methods/#fast-forward-merge">Fast-forward merge</a> is a common and popular merge method which avoids merge commits, but requires more rebasing. Separately, Merge Trains are a powerful tool to help with some of the greater challenges related to frequently merging into the main branch. Unfortunately, before this release you could not use merge trains and fast-forward merge together.</p>
<p>In this release, self-managed admins can now enable both Fast-forward merge and merge trains in the same project. You can get all the benefits of merge trains, which ensure all your commits work together before merging, with the cleaner commit history of fast forward merges!</p>
<p>To enable the Fast-forward merge trains, locate the feature flag <code>fast_forward_merge_trains_support</code>, which has been disabled by default, and enable it.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/pipelines/merge_trains.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Set `id_token` globally and eliminate configuration for individual jobs</strong>
    <p><p>In GitLab 15.9 we announced the <a href="https://docs.gitlab.com/ee/update/deprecations.html?removal_milestone=17.0#old-versions-of-json-web-tokens-are-deprecated">deprecation of older versions of JSON web tokens</a> in favor of <code>id_token</code>. Unfortunately, jobs had to be modified individually to accommodate this change. To enable a smooth transition to <code>id_token</code>, beginning from GitLab 16.4, you can set <code>id_tokens</code> as a global default value in <code>.gitlab-ci.yml</code>. This feature automatically sets the <code>id_token</code> configuration for every job. Jobs that use OpenID Connect (OIDC) authentication no longer require you to set up a separate <code>id_token</code>.</p>
<p><a href="https://docs.gitlab.com/ee/ci/secrets/id_token_authentication.html">Use <code>id_token</code> and OIDC to authenticate with third party services</a>. The required <code>aud</code> sub-keyword is used to configure the <code>aud</code> claim for the JWT.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/yaml/index.html#id_tokens">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Scale and Deployments</h4>
<ul>
  <li>
    <strong>Elasticsearch index integrity now generally available</strong>
    <p>With GitLab 16.4, Elasticsearch index integrity is generally available for all GitLab users. Index integrity helps detect and fix missing repository data. This feature is automatically used when code searches scoped to a group or project return no results.</p>
    <p><a href="https://docs.gitlab.com/ee/integration/advanced_search/elasticsearch.html#index-integrity">View Documentation</a></p>
  </li>
  <li>
    <strong>Omnibus improvements</strong>
    <p><ul>
<li>GitLab 16.4 includes packages for <a href="https://en.opensuse.org/Release_announcement_15.5">OpenSUSE 15.5</a>.</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/omnibus/">View Documentation</a></p>
  </li>
  <li>
    <strong>Add webhooks for added or revoked emoji reactions</strong>
    <p><p>To provide as many opportunities for automation and integration with third-party systems as possible, we have added support for creating webhooks that trigger when a user adds or revokes an emoji reaction.</p>
<p>You could use the new webhook, for example, to send an email when users react to issues or merge requests with emoji.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/integrations/webhook_events.html#emoji-events">View Documentation</a></p>
  </li>
  <li>
    <strong>Create custom role name and description using API</strong>
    <p>When creating a custom role, you can now use the member roles API to add a name (required) and description (optional). Any existing custom roles have been given the name <code>Custom</code>, and you can use the API to change a custom role&rsquo;s name to a name of your choosing.</p>
    <p><a href="https://docs.gitlab.com/ee/api/member_roles.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Trigger Slack notifications for group mentions</strong>
    <p><p>GitLab can send messages to Slack workspace channels for certain GitLab events. With this release, you can now trigger <a href="https://docs.gitlab.com/ee/user/project/integrations/gitlab_slack_application.html#notification-events">Slack notifications</a> for group mentions in public and private contexts in:</p>
<ul>
<li>Issue and merge request descriptions</li>
<li>Comments on issues, merge requests, and commits</li>
</ul></p>
    <p><a href="https://docs.gitlab.com/ee/user/project/integrations/gitlab_slack_application.html#trigger-notifications-for-group-mentions">View Documentation</a></p>
  </li>
  <li>
    <strong>Expand configurable import limits available in application settings</strong>
    <p><p>We recently turned a few hardcoded import limits into configurable application settings to allow self-managed
GitLab administrators to adjust these limits according to their needs.</p>
<p>In this release, we&rsquo;ve added the timeout for decompressing archived files as a configurable application setting.</p>
<p>This limit was hardcoded at 210 seconds. On GitLab.com, and for self-managed installations by default, we&rsquo;ve set this limit to 210 seconds. Both self-managed GitLab and
GitLab.com administrators can adjust this limit as needed.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/settings/import_and_export_settings.html#timeout-for-decompressing-archived-files">View Documentation</a></p>
  </li>
  <li>
    <strong>Custom email address for Service Desk</strong>
    <p><p>Service Desk is one of the most meaningful connections between your business and your customers. Now you can use your own custom email address to send and receive emails for Service Desk.
With this change, it is much easier to maintain brand identity and instill customer confidence that they are communicating with the correct entity.</p>
<p>This feature is in <a href="https://docs.gitlab.com/ee/policy/experiment-beta-support.html#beta">Beta</a>. We encourage users to try Beta features and
provide feedback in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/416637">the feedback issue</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/service_desk/configure.html#custom-email-address">View Documentation</a></p>
  </li>
  <li>
    <strong>Geo supports unified URLs on Cloud Native Hybrid sites</strong>
    <p>Geo now supports unified URLs on <a href="https://docs.gitlab.com/ee/administration/reference_architectures/#cloud-native-hybrid">Cloud Native Hybrid</a> sites, which means that Cloud Native Hybrid sites can share a single external URL with the primary site. This delivers a seamless GitLab UI and Git developer experience for your remote teams who can be automatically directed to the optimal Geo secondary site based on their location using a single common URL. With this update, unified URLs are now supported across all GitLab reference architectures.</p>
    <p><a href="https://docs.gitlab.com/ee/administration/geo/secondary_proxy/#set-up-a-unified-url-for-geo-sites">View Documentation</a></p>
  </li>
  <li>
    <strong>Geo verifies object storage</strong>
    <p>Geo adds the ability to verify object storage when <a href="https://docs.gitlab.com/ee/administration/geo/replication/object_storage.html#enabling-gitlab-managed-object-storage-replication">object storage replication is managed by GitLab</a>. To protect your object storage data against corruption, Geo compares the file size between the primary and secondary sites. If Geo is part of your disaster recovery strategy, and you enable GitLab-managed object storage replication, this protects you against data loss. Additionally, it also reduces the need to copy data that may already be present on a secondary site. For example, when adding an old primary back as a secondary site.</p>
    <p><a href="https://docs.gitlab.com/ee/administration/geo/replication/object_storage.html">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>Support for `environment` keyword in downstream pipelines</strong>
    <p><p>If you need to trigger a downstream pipeline from a CI/CD pipeline job, you can use the <code>trigger</code> keyword. To enhance your deployment management, you can now specify an environment with the <code>environment</code> keyword when you use <code>trigger</code>. For example, you might trigger a downstream pipeline for the <code>main</code> branch on your <code>/web-app</code> project with environment name <code>dev</code> and a specified environment URL.</p>
<p>Previously, when you ran separate pipelines for CI and CD and used the <code>trigger</code> keyword to start the CD pipeline, specifying environment details was not possible. This made it hard to track deployments from your CI project. Adding support for environments simplifies deployment tracking across projects.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/pipelines/downstream_pipelines.html#downstream-pipelines-for-deployments">View Documentation</a></p>
  </li>
  <li>
    <strong>Allow users to define branch exceptions to enforced security policies</strong>
    <p><p>Security policies enforce scanners to run in GitLab projects, as well as enforce MR checks/approvals to ensure security and compliance. With branch exceptions, you can more granularly enforce policies and exclude enforcement for any given branch that is out of scope. Should a developer create a development or test branch that is unintentionally affected by heavy-handed enforcement, they can work with security teams to exempt the branch within the security policy.</p>
<p>For scan execution policies, you can configure exceptions for the <a href="https://docs.gitlab.com/ee/user/application_security/policies/scan-execution-policies.html#pipeline-rule-type">pipeline</a> or <a href="https://docs.gitlab.com/ee/user/application_security/policies/scan-execution-policies.html#schedule-rule-type">schedule</a> rule type. For scan result policies, you can specify branch exceptions for the <a href="https://docs.gitlab.com/ee/user/application_security/policies/scan-result-policies.html#scan_finding-rule-type">scan_finding</a> or <a href="https://docs.gitlab.com/ee/user/application_security/policies/scan-result-policies.html#license_finding-rule-type">license_finding</a> rule type.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/policies/">View Documentation</a></p>
  </li>
  <li>
    <strong>Notifications for expiring access tokens</strong>
    <p>Group and project access tokens are frequently used for automation. It is important that administrators and group Owners are notified when one of these tokens is close to expiry, so interruptions are avoided. Administrators and group Owners now receive a notification email when a token is seven days or less away from expiry.</p>
    <p><a href="https://docs.gitlab.com/ee/security/token_overview.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Email notification when access expires</strong>
    <p>A user will get an email notification seven days before their group or project access expires. This only applies if there is an access expiration date set. Previously, there were no notifications when access expired. Advance notice means you can contact your GitLab administrator to ensure continuous access.</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/#add-users-to-a-group">View Documentation</a></p>
  </li>
  <li>
    <strong>Browser-based DAST active check 22.1 is enabled by default</strong>
    <p>Browser-based DAST active check 22.1 has been enabled by default. It replaces ZAP check 6, which has been disabled. Check 22.1 identifies &ldquo;Improper limitation of a pathname to a restricted directory (Path traversal)&rdquo;, which can be exploited by inserting a payload into a parameter on the URL endpoint, allowing for arbitrary files to be read.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/dast/checks/#active-checks">View Documentation</a></p>
  </li>
  <li>
    <strong>Private registry support for Operational Container Scanning</strong>
    <p><a href="https://docs.gitlab.com/ee/user/clusters/agent/vulnerabilities.html">Operational Container Scanning</a> can now access and scan images from private container registries. OCS uses the image pull secrets to access private registry containers.</p>
    <p><a href="https://docs.gitlab.com/ee/user/clusters/agent/vulnerabilities.html#scanning-private-images">View Documentation</a></p>
  </li>
  <li>
    <strong>Dependency and License Scanning support for pnpm lockfile v6.1</strong>
    <p>Thanks to a community contribution from <a href="https://gitlab.com/weyert-tapico">Weyert de Boer</a>, GitLab Dependency and License Scanning now support analyzing pnpm projects using v6.1 lockfile format.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/dependency_scanning/#obtaining-dependency-information-by-parsing-lockfiles">View Documentation</a></p>
  </li>
  <li>
    <strong>SAST analyzer updates</strong>
    <p><p>GitLab SAST includes <a href="https://docs.gitlab.com/ee/user/application_security/sast/#supported-languages-and-frameworks">many security analyzers</a> that the GitLab Static Analysis team actively maintains, updates, and supports. We published the following updates during the 16.4 release milestone:</p>
<ul>
<li>Updated the KICS-based analyzer to version 1.7.7 of the KICS scanner. See the <a href="https://gitlab.com/gitlab-org/security-products/analyzers/kics/-/blob/main/CHANGELOG.md?ref_type=heads#v415">CHANGELOG</a> for further details.</li>
<li>Updated the Sobelow-based analyzer to version 0.13.0 of the Sobelow scanner. We also updated the base image for the analyzer to Elixir 1.13 to improve compatibility with more recent Elixir releases. See the <a href="https://gitlab.com/gitlab-org/security-products/analyzers/sobelow/-/blob/master/CHANGELOG.md?ref_type=heads#v421">CHANGELOG</a></li>
<li>Updated the PMD Apex-based analyzer to version 6.55.0 of the PMD scanner. See the <a href="https://gitlab.com/gitlab-org/security-products/analyzers/pmd-apex/-/blob/master/CHANGELOG.md?ref_type=heads#v413">CHANGELOG</a> for further details.</li>
<li>Changed the PHPCS Security Audit-based analyzer to remove the <code>Security.Misc.IncludeMismatch</code> rule. See the <a href="https://gitlab.com/gitlab-org/security-products/analyzers/phpcs-security-audit/-/blob/master/CHANGELOG.md?ref_type=heads#v411">CHANGELOG</a> for further details.</li>
<li>Updated the rules used in the Semgrep-based analyzer to fix rule errors, fix broken links in rule descriptions, and resolve conflicts between Java and Scala rules that had the same rule IDs. We also increased the maximum size of custom rule files to 10 MB. See the <a href="https://gitlab.com/gitlab-org/security-products/analyzers/semgrep/-/blob/main/CHANGELOG.md?ref_type=heads#v4412">CHANGELOG</a> for further details.</li>
</ul>
<p>If you <a href="https://docs.gitlab.com/ee/user/application_security/sast/#configure-sast-in-your-cicd-yaml">include the GitLab-managed SAST template</a> (<a href="https://gitlab.com/gitlab-org/gitlab/blob/master/lib/gitlab/ci/templates/Security/SAST.gitlab-ci.yml"><code>SAST.gitlab-ci.yml</code></a>) and run GitLab 16.0 or higher, you automatically receive these updates.
To remain on a specific version of any analyzer and prevent automatic updates, you can <a href="https://docs.gitlab.com/ee/user/application_security/sast/#pinning-to-minor-image-version">pin its version</a>.</p>
<p>For previous changes, see <a href="https://about.gitlab.com/releases/2023/08/22/gitlab-16-3-released/#sast-analyzer-updates">last month&rsquo;s updates</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/sast/analyzers">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved SAST vulnerability tracking</strong>
    <p><p>GitLab SAST <a href="https://docs.gitlab.com/ee/user/application_security/sast/#advanced-vulnerability-tracking">Advanced Vulnerability Tracking</a> makes triage more efficient by keeping track of findings as code moves.</p>
<p>In GitLab 16.4, we&rsquo;ve enabled Advanced Vulnerability Tracking for new languages and analyzers.
In addition to its <a href="https://docs.gitlab.com/ee/user/application_security/sast/#advanced-vulnerability-tracking">existing coverage</a>, advanced tracking is now available for:</p>
<ul>
<li>Java, in the SpotBugs-based SAST analyzer.</li>
<li>PHP, in the PHPCS Security Audit-based SAST analyzer.</li>
</ul>
<p>This builds on previous expansions and improvements <a href="https://about.gitlab.com/releases/2023/08/22/gitlab-16-3-released/#improved-sast-vulnerability-tracking">released in GitLab 16.3</a>.
We&rsquo;re tracking further improvements in <a href="https://gitlab.com/groups/gitlab-org/-/epics/5144">epic 5144</a>.</p>
<p>These changes are included in <a href="/#sast-analyzer-updates">updated versions</a> of GitLab SAST <a href="https://docs.gitlab.com/ee/user/application_security/sast/analyzers.html">analyzers</a>.
Your project&rsquo;s vulnerability findings are updated with new tracking signatures after the project is scanned with the updated analyzers.
You don&rsquo;t have to take action to receive this update unless you&rsquo;ve <a href="https://docs.gitlab.com/ee/user/application_security/sast/#pinning-to-minor-image-version">pinned SAST analyzers to a specific version</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/sast/#advanced-vulnerability-tracking">View Documentation</a></p>
  </li>
  <li>
    <strong>Pipeline-specific CycloneDX SBOM exports</strong>
    <p>We&rsquo;ve added an API that allows you to download a CycloneDX SBOM, which lists all the components detected in a CI pipeline. This includes both application-level dependencies and system-level dependencies.</p>
    <p><a href="https://docs.gitlab.com/ee/api/dependency_list_export.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Users with the Maintainer role can view runner details</strong>
    <p>Users with the Maintainer role for a group can now view details for group runners. Users with this role can view group runners to quickly determine which runners are available, or validate that automatically created runners were registered successfully to the group namespace.</p>
    <p><a href="https://docs.gitlab.com/ee/user/permissions.html#group-members-permissions">View Documentation</a></p>
  </li>
  <li>
    <strong>macOS 13 (Ventura) image for SaaS runners on macOS</strong>
    <p><p>Teams can now seamlessly create, test, and deploy applications for the
Apple ecosystem on macOS 13.</p>
<p>SaaS runners on macOS allow you to increase your development teams&rsquo; velocity in building and deploying applications
that require macOS in a secure, on-demand GitLab Runner build environment integrated with GitLab CI/CD.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/runners/saas/macos_saas_runner.html#supported-macos-images">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner 16.4</strong>
    <p><p>We&rsquo;re also releasing GitLab Runner 16.4 today! GitLab Runner is the lightweight, highly-scalable agent that runs your CI/CD jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.</p>
<h4 id="whats-new">What&rsquo;s new:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/36627">Add queue duration histogram metric to the runner Prometheus metric endpoint </a></li>
</ul>
<h4 id="bug-fixes">Bug Fixes:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/36803">Kubernetes runner pods not cleaned up in GitLab Runner 16.3.0</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/27984"><code>gitlab-runner-helper</code> terminated during cache downloading</a></li>
</ul>
<p>The list of all changes is in the GitLab Runner <a href="https://gitlab.com/gitlab-org/gitlab-runner/blob/16-4-stable/CHANGELOG.md">CHANGELOG</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/runner">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab Critical Security Release: 16.3.4 and 16.2.7</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-3-4-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-3-4-released/</id><published>2023-09-18T00:00:00Z</published><updated>2023-09-18T00:00:00Z</updated><author><name>Nick Malcolm</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<p>On September 18, 2023, we released versions 16.3.4 and 16.2.7 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important security fixes, and we strongly recommend that all GitLab installations be upgraded to one of these versions immediately. GitLab.com is already running the patched version.</p>
<p>GitLab releases patches for vulnerabilities in dedicated security releases. There are two types of security releases: a monthly, scheduled security release, released a week after the feature release (which deploys on the 22nd of each month), and ad-hoc security releases for critical vulnerabilities. For more information, you can visit our <a href="https://about.gitlab.com/security/faq/">security FAQ</a>. You can see all of our regular and security release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>. In addition, the issues detailing each vulnerability are made public on our <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a> 30 days after the release in which they were patched.</p>
<p>We are dedicated to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers upgrade to the latest security release for their supported version. You can read more <a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>. For versions starting from 13.12 before 16.2.7, all versions starting from 16.3 before 16.3.4, see the <a href="/releases/patches/patch-release-gitlab-16-3-4-released/#mitigations-for-impacted-versions">mitigations</a> offered below.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="table-of-fixes">Table of Fixes</h2>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-3-4-released/#attacker-can-abuse-scan-execution-policies-to-run-pipelines-as-another-user">Attacker can abuse scan execution policies to run pipeline as another user</a></td>
          <td>high</td>
      </tr>
  </tbody>
</table>
<h2 id="attacker-can-abuse-scan-execution-policies-to-run-pipelines-as-another-user">Attacker can abuse scan execution policies to run pipelines as another user</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/975 -->
<p>An issue has been discovered in GitLab EE affecting all versions starting
from 13.12 before 16.2.7 and all
versions starting from 16.3 before 16.3.4. It was possible for an attacker to run
pipelines as an arbitrary user via scheduled security scan policies.
This was a bypass of <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3932">CVE-2023-3932</a> showing additional impact.
This is a high severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:N</code>, 8.2).
It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-5009">CVE-2023-5009</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h3 id="mitigations-for-impacted-versions">Mitigations for impacted versions</h3>
<p>Instances running versions starting from 13.12 before 16.2.7, all versions starting from 16.3 before 16.3.4 are vulnerable if both of the features below are enabled at the same time. In order to mitigate this vulnerability in situations where it&rsquo;s not possible to upgrade, it is required to disable one or both features.</p>
<ul>
<li><a href="https://docs.gitlab.com/ee/administration/settings/import_and_export_settings.html#enable-migration-of-groups-and-projects-by-direct-transfer">Direct transfers</a></li>
<li><a href="https://docs.gitlab.com/ee/user/application_security/policies/scan-execution-policies.html">Security policies</a></li>
</ul>
<p><strong>If both features are turned on, the instance is in a vulnerable state.</strong></p>
<h2 id="non-security-patches">Non Security Patches</h2>
<p>This security release also includes the following non-security patches.</p>
<h3 id="1634">16.3.4</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/131073">Use new indexer, fix removing blobs from index</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/131920">Backport &ldquo;Fix Geo secondary proxying Git pulls unnecessarily&rdquo; to 16.3</a></li>
</ul>
<h3 id="1627">16.2.7</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/131193">Revert &ldquo;Merge branch &lsquo;md-play-all-skipped-button&rsquo; into &lsquo;master&rsquo;&rdquo;</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-security-release-notifications">Receive Security Release Notifications</h2>
<p>To receive security release blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">security release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 16.2.6</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-2-6-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-2-6-released/</id><published>2023-09-12T00:00:00Z</published><updated>2023-09-12T00:00:00Z</updated><author><name>Vladimir Glafirov</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On September 12, 2023, we released versions 16.2.6 for GitLab Community Edition and Enterprise Edition.</p>
<p>These versions resolve a number of regressions and bugs.</p>
<h2 id="gitlab-community-edition-and-enterprise-edition">GitLab Community Edition and Enterprise Edition</h2>
<h3 id="1626">16.2.6</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/1526">Pin redis-client to v0.14.1</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/6338">praefect: Handle replica paths in &rsquo;track-repository&rsquo; and &rsquo;track-repositories&rsquo; subcommands</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/130836">Backport create ci_pipelines iid sequence on new projects to 16.2</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/130834">Backport &ldquo;Drop bridge jobs on unknown failures&rdquo; to 16.2</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/131155">Backport &ldquo;Prevent pipeline creation while import is running&rdquo; to 16.2</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>This version does not include any new migrations, and for multi-node deployments, <a href="https://docs.gitlab.com/ee/update/#upgrading-without-downtime">should not require any downtime</a>.</p>
<p>Please be aware that by default the Omnibus packages will stop, run migrations,
and start again, no matter how “big” or “small” the upgrade is. This behavior
can be changed by adding a <a href="https://docs.gitlab.com/ee/update/zero_downtime.html"><code>/etc/gitlab/skip-auto-reconfigure</code></a> file,
which is only used for <a href="https://docs.gitlab.com/omnibus/update/README.html">updates</a>.</p>
<h2 id="updating">Updating</h2>
<p>To update, check out our <a href="https://about.gitlab.com/update/">update page</a>.</p>
<h2 id="gitlab-subscriptions">GitLab subscriptions</h2>
<p>Access to GitLab Premium and Ultimate features is granted by a paid <a href="https://about.gitlab.com/pricing/">subscription</a>.</p>
<p>Alternatively, <a href="https://gitlab.com/users/sign_in">sign up for GitLab.com</a>
to use GitLab&rsquo;s own infrastructure.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 16.3.3</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-3-3-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-3-3-released/</id><published>2023-09-12T00:00:00Z</published><updated>2023-09-12T00:00:00Z</updated><author><name>Vladimir Glafirov</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On September 12, 2023, we released versions 16.3.3 for GitLab Community Edition and Enterprise Edition.</p>
<p>These versions resolve a number of regressions and bugs.</p>
<h2 id="gitlab-community-edition-and-enterprise-edition">GitLab Community Edition and Enterprise Edition</h2>
<h3 id="1633">16.3.3</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/1529">Pin redis-client to v0.17.0</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/6339">Backport !6251 to 16-3-stable</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/130835">Backport create ci_pipelines iid sequence on new projects to 16.3</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/130576">Backport 16.3  Fix cluster service reindexing params</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/130823">Patch UpdateCiMaxTotalYamlSizeBytesDefaultValue - stable branch</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/131121">Remove gdk base image and pin gdk sha</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/131070">Backport Enable sync with package metadata db by default</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/131156">Backport &ldquo;Prevent pipeline creation while import is running&rdquo; to 16.3</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>This version does not include any new migrations, and for multi-node deployments, <a href="https://docs.gitlab.com/ee/update/#upgrading-without-downtime">should not require any downtime</a>.</p>
<p>Please be aware that by default the Omnibus packages will stop, run migrations,
and start again, no matter how “big” or “small” the upgrade is. This behavior
can be changed by adding a <a href="https://docs.gitlab.com/ee/update/zero_downtime.html"><code>/etc/gitlab/skip-auto-reconfigure</code></a> file,
which is only used for <a href="https://docs.gitlab.com/omnibus/update/README.html">updates</a>.</p>
<h2 id="updating">Updating</h2>
<p>To update, check out our <a href="https://about.gitlab.com/update/">update page</a>.</p>
<h2 id="gitlab-subscriptions">GitLab subscriptions</h2>
<p>Access to GitLab Premium and Ultimate features is granted by a paid <a href="https://about.gitlab.com/pricing/">subscription</a>.</p>
<p>Alternatively, <a href="https://gitlab.com/users/sign_in">sign up for GitLab.com</a>
to use GitLab&rsquo;s own infrastructure.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 16.3.2</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-3-2-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-3-2-released/</id><published>2023-09-05T00:00:00Z</published><updated>2023-09-05T00:00:00Z</updated><author><name>Vladimir Glafirov</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On September 5, 2023, we released versions 16.3.2 for GitLab Community Edition and Enterprise Edition.</p>
<p>These versions resolve a number of regressions and bugs.</p>
<h2 id="gitlab-community-edition-and-enterprise-edition">GitLab Community Edition and Enterprise Edition</h2>
<h3 id="1632">16.3.2</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/130755">Fix Code Suggestions in Web IDE on GitLab 16.3</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/130833">Backport &ldquo;Drop bridge jobs on unknown failures&rdquo; to 16.3</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>This version does not include any new migrations, and for multi-node deployments, <a href="https://docs.gitlab.com/ee/update/#upgrading-without-downtime">should not require any downtime</a>.</p>
<p>Please be aware that by default the Omnibus packages will stop, run migrations,
and start again, no matter how “big” or “small” the upgrade is. This behavior
can be changed by adding a <a href="https://docs.gitlab.com/ee/update/zero_downtime.html"><code>/etc/gitlab/skip-auto-reconfigure</code></a> file,
which is only used for <a href="https://docs.gitlab.com/omnibus/update/README.html">updates</a>.</p>
<h2 id="updating">Updating</h2>
<p>To update, check out our <a href="https://about.gitlab.com/update/">update page</a>.</p>
<h2 id="gitlab-subscriptions">GitLab subscriptions</h2>
<p>Access to GitLab Premium and Ultimate features is granted by a paid <a href="https://about.gitlab.com/pricing/">subscription</a>.</p>
<p>Alternatively, <a href="https://gitlab.com/users/sign_in">sign up for GitLab.com</a>
to use GitLab&rsquo;s own infrastructure.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Security Release: 16.3.1, 16.2.5, and 16.1.5</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-3-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-3-1-released/</id><published>2023-08-31T00:00:00Z</published><updated>2023-08-31T00:00:00Z</updated><author><name>Félix Veillette-Potvin</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<p>On August 31, 2023, we released versions 16.3.1, 16.2.5 and 16.1.5 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important security fixes, and we strongly recommend that all GitLab installations be upgraded to one of these versions immediately. GitLab.com is already running the patched version.</p>
<p>GitLab releases patches for vulnerabilities in dedicated security releases. There are two types of security releases: a monthly, scheduled security release, released a week after the feature release (which deploys on the 22nd of each month), and ad-hoc security releases for critical vulnerabilities. For more information, you can visit our <a href="https://about.gitlab.com/security/faq/">security FAQ</a>. You can see all of our regular and security release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>. In addition, the issues detailing each vulnerability are made public on our <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a> 30 days after the release in which they were patched.</p>
<p>We are dedicated to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers upgrade to the latest security release for their supported version. You can read more <a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="table-of-fixes">Table of Fixes</h2>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-3-1-released/#privilege-escalation-of-external-user-to-internal-access-through-group-service-account">Privilege escalation of &ldquo;external user&rdquo; to internal access through group service account</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-3-1-released/#maintainer-can-leak-sentry-token-by-changing-the-configured-url-fix-bypass">Maintainer can leak sentry token by changing the configured URL (fix bypass)</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-3-1-released/#google-cloud-logging-private-key-showed-in-plain-text-in-gitlab-ui-leaking-to-other-group-owners">Google Cloud Logging private key showed in plain text in GitLab UI leaking to other group owners</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-3-1-released/#information-disclosure-via-project-import-endpoint">Information disclosure via project import endpoint</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-3-1-released/#developer-can-leak-dast-scanners-site-profile-request-headers-and-auth-password">Developer can leak DAST scanners &ldquo;Site Profile&rdquo; request headers and auth password</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-3-1-released/#project-forking-outside-current-group">Project forking outside current group</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-3-1-released/#user-is-capable-of-creating-model-experiment-and-updating-existing-run%27s-status-in-public-project">User is capable of creating Model experiment and updating existing run&rsquo;s status in public project</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-3-1-released/#redos-in-bulk-import-api">ReDoS in bulk import API</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-3-1-released/#pagination-for-branches-and-tags-can-be-skipped-leading-to-dos">Pagination for Branches and Tags can be skipped leading to DoS</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-3-1-released/#internal-open-redirection-due-to-improper-handling-of-characters">Internal Open Redirection Due to Improper handling of  &ldquo;../&rdquo; characters</a></td>
          <td>low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-3-1-released/#subgroup-member-with-reporter-role-can-edit-group-labels">Subgroup Member With Reporter Role Can Edit Group Labels</a></td>
          <td>low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-3-1-released/#banned-user-can-delete-package-registries">Banned user can delete package registries</a></td>
          <td>low</td>
      </tr>
  </tbody>
</table>
<h2 id="privilege-escalation-of-external-user-to-internal-access-through-group-service-account">Privilege escalation of &ldquo;external user&rdquo; to internal access through group service account</h2>
<p>An issue has been discovered in GitLab EE affecting all versions starting from 16.1 before 16.1.5, all versions starting from 16.2 before 16.2.5, all versions starting from 16.3 before 16.3.1. If an external user is given an owner role on any group, that external user may escalate their privileges on the instance by creating a service account in that group. This service account is not classified as external and may be used to access internal projects. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:N</code>, 6.5). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3915">CVE-2023-3915</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="maintainer-can-leak-sentry-token-by-changing-the-configured-url-fix-bypass">Maintainer can leak sentry token by changing the configured URL (fix bypass)</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/950 -->
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 11.8 before 16.1.5, all versions starting from 16.2 before 16.2.5, all versions starting from 16.3 before 16.3.1. A malicious Maintainer can, under specific circumstances, leak the sentry token by changing the configured URL in the Sentry error tracking settings page. This was as a result of an incomplete fix for CVE-2022-4365. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:L/I:L/A:N</code>, 5.5). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-4378">CVE-2023-4378</a>.</p>
<p>Thanks <a href="https://hackerone.com/70rpedo">70rpedo</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="google-cloud-logging-private-key-showed-in-plain-text-in-gitlab-ui-leaking-to-other-group-owners">Google Cloud Logging private key showed in plain text in GitLab UI leaking to other group owners</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/940 -->
<p>An information disclosure issue in GitLab EE affecting all versions from 16.2 prior to 16.2.5, and 16.3 prior to 16.3.1 allowed other Group Owners to see the Public Key for a Google Cloud Logging audit event streaming destination, if configured. Owners can now only write the key, not read it. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:L/I:L/A:N</code>, 5.5), and affects only GitLab EE. It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3950">CVE-2023-3950</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="information-disclosure-via-project-import-endpoint">Information disclosure via project import endpoint</h2>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 10.6 before 16.1.5, all versions starting from 16.2 before 16.2.5, all versions starting from 16.3 before 16.3.1 in which any user can read limited information about any project&rsquo;s imports. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:N/A:N</code>, 5.0). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-4630">CVE-2023-4630</a>.</p>
<p>This vulnerability was found internally by a GitLab team member <a href="https://gitlab.com/rodrigo.tomonari">Rodrigo Tomonari</a>.</p>
<h2 id="developer-can-leak-dast-scanners-site-profile-request-headers-and-auth-password">Developer can leak DAST scanners &ldquo;Site Profile&rdquo; request headers and auth password</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/954 -->
<p>An issue has been discovered in GitLab EE affecting all versions starting from 13.12 before 16.1.5, all versions starting from 16.2 before 16.2.5, all versions starting from 16.3 before 16.3.1 in which a project member can leak credentials stored in site profile. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:N/A:N</code>, 5.0), and only affects GitLab EE. It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-4343">CVE-2022-4343</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="project-forking-outside-current-group">Project forking outside current group</h2>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 13.3 before 16.1.5, all versions starting from 16.2 before 16.2.5, all versions starting from 16.3 before 16.3.1. Due to improper permission validation it was possible to fork a project outside of current group by an unauthorised user. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N</code>, 4.3). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-4638">CVE-2023-4638</a>.</p>
<p>Thanks <a href="https://hackerone.com/theluci">theluci</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="user-is-capable-of-creating-model-experiment-and-updating-existing-runs-status-in-public-project">User is capable of creating Model experiment and updating existing run&rsquo;s status in public project</h2>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 16.2 before 16.2.5, all versions starting from 16.3 before 16.3.1. Due to improper permission validation it was possible to create model experiments in public projects. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N</code>, 4.3). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-4018">CVE-2023-4018</a>.</p>
<p>Thanks <a href="https://hackerone.com/ricardobrito">ricardobrito</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h2 id="redos-in-bulk-import-api">ReDoS in bulk import API</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/935 -->
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 15.11 before 16.1.5, all versions starting from 16.2 before 16.2.5, all versions starting from 16.3 before 16.3.1. An authenticated user could trigger a denial of service when importing or cloning malicious content. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code>,6.5). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3205">CVE-2023-3205</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h2 id="pagination-for-branches-and-tags-can-be-skipped-leading-to-dos">Pagination for Branches and Tags can be skipped leading to DoS</h2>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 15.3 before 16.1.5, all versions starting from 16.2 before 16.2.5, all versions starting from 16.3 before 16.3.1 in which the projects API pagination can be skipped, potentially leading to DoS on certain instances. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H</code>, 5.3). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-4647">CVE-2023-4647</a>.</p>
<p>This vulnerability has been discovered internally by GitLab team member <a href="https://gitlab.com/vyaklushin">Vasilii Iakliushin</a></p>
<h2 id="internal-open-redirection-due-to-improper-handling-of---characters">Internal Open Redirection Due to Improper handling of  &ldquo;../&rdquo; characters</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/934 -->
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 4.1 before 16.1.5, all versions starting from 16.2 before 16.2.5, all versions starting from 16.3 before 16.3.1 where it was possible to create a URL that would redirect to a different project. This is a low severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:L/A:N</code>, 3.5). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-1279">CVE-2023-1279</a>.</p>
<p>Thanks <a href="https://hackerone.com/akadrian">akadrian</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="subgroup-member-with-reporter-role-can-edit-group-labels">Subgroup Member With Reporter Role Can Edit Group Labels</h2>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 10.0 before 16.1.5, all versions starting from 16.2 before 16.2.5, all versions starting from 16.3 before 16.3.1. Due to improper permission validation it was possible to edit labels description by an unauthorised user. This is a low severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:L/A:N</code>, 3.5). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-0120">CVE-2023-0120</a>.</p>
<p>Thanks <a href="https://hackerone.com/drjgouveia">drjgouveia</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="banned-user-can-delete-package-registries">Banned user can delete package registries</h2>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 15.2 before 16.1.5, all versions starting from 16.2 before 16.2.5, all versions starting from 16.3 before 16.3.1. A namespace-level banned user can access the API. This is a low severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:N/I:L/A:N</code>, 2.7). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-1555">CVE-2023-1555</a>.</p>
<p>Thanks <a href="https://hackerone.com/ali_shehab">ali_shehab</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="update-commonmarker">Update commonmarker</h2>
<p>Commonmarker has been updated to version 0.23.10 in order to mitigate security issues.</p>
<h2 id="update-openssl">Update openssl</h2>
<p>Openssl has been updated to version to 1.1.1u in order to mitigate security issues.</p>
<h2 id="non-security-patches">Non Security Patches</h2>
<p>This security release also includes the following non-security patches.</p>
<h3 id="1631">16.3.1</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/129854">Remove unified URL limitation for GitLab chart (16.3 backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/129910">Revert migration to backfill archived in wikis</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/129922">Add .net to context selector to skip live envs</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/129882">Backport &ldquo;Geo: Resync direct upload object stored artifacts&rdquo; to 16.3</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/130200">CSP: disable LFS url when not using object storage</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/129971">Backport LicenseScanning fix for AutoDevOps</a></li>
</ul>
<h3 id="1625">16.2.5</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/6172">Backport &ldquo;cgroup: using a noop manager on linux without cgroup&rdquo; fix to 16.2</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/128763">Adjust Danger logic for stable branches</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/129883">Backport &ldquo;Geo: Resync direct upload object stored artifacts&rdquo; to 16.2</a></li>
</ul>
<h3 id="1615">16.1.5</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/128779">Revert &ldquo;Log rails response length&rdquo; - 16.1 Backport</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/128764">Adjust Danger logic for stable branches</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/129884">Backport &ldquo;Geo: Resync direct upload object stored artifacts&rdquo; to 16.1</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-security-release-notifications">Receive Security Release Notifications</h2>
<p>To receive security release blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">security release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab 16.3 released</title><link href="https://docs.gitlab.com/releases/16/16-3-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/16/16-3-released/</id><published>2023-08-22T00:00:00Z</published><updated>2023-08-22T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On August 22, 2023, GitLab 16.3 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong>Thomas Spear</strong>
</p>
<p>Thomas has contributed <a href="https://gitlab.com/gitlab-org/charts/gitlab-agent/-/merge_requests?scope=all&amp;state=merged&amp;author_username=tspearconquest">15 merge requests</a>
to the <a href="https://gitlab.com/gitlab-org/charts/gitlab-agent">GitLab agent for Kubernetes Helm chart</a>
in the last month!</p>
<p>Thomas made the chart more mature in terms of security and observability,
made it simpler to troubleshoot issues with agentk, and improved the CI/CD pipeline to check for breaking changes.</p>
<p>As a security engineer, Thomas enjoys collaborating with the team to provide
a more secure default deployment of the Gitlab agent.
Thomas expressed thanks for all the timely reviews and feedback, which team members were
more than happy to provide.</p>
<p>Thank you Thomas, your contributions are hugely appreciated! 🙌</p>
<p>We would also like to take the opportunity to thank <a href="https://gitlab.com/ShaneMaglangit">Shane Maglangit</a>
and <a href="https://gitlab.com/batuhan.apaydin">Batuhan Apaydın</a> for their great contributions.</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>New velocity metrics in the Value Streams Dashboard</strong>
    <p><p>The <a href="https://about.gitlab.com/blog/getting-started-with-value-streams-dashboard/">Value Streams Dashboard</a> has been enhanced with new metrics: <strong>Merge request (MR) throughput</strong> and <strong>Total closed issues</strong> (Velocity). In GitLab, <strong>MR throughput</strong> is a count of the number of merge requests merged per month, and <strong>Total closed issues</strong> is the number of flow items closed at a point in time.</p>
<p>With these metrics, you can identify low or high productivity months and the efficiency of <a href="https://docs.gitlab.com/ee/user/analytics/merge_request_analytics.html">merge request and code review processes</a>. You can then gauge whether the <a href="https://docs.gitlab.com/ee/user/group/value_stream_analytics/">Value Stream delivery</a> is accelerating or not.</p>
<p>Over time, the metrics accumulate historical data from MRs and issues. Teams can use the data to determine if delivery rates are accelerating or need improvement, and provide more accurate estimates or forecasts for how much work they can deliver.</p>
<p>To help us improve the Value Streams Dashboard, please share feedback about your experience in this <a href="https://gitlab.fra1.qualtrics.com/jfe/form/SV_50guMGNU2HhLeT4">survey</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/analytics/value_streams_dashboard.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Connect to Workspaces with SSH</strong>
    <p><p>With Workspaces, you can create reproducible, ephemeral, cloud-based runtime environments. Since the feature was introduced in GitLab 16.0, the only way to use a workspace was through the browser-based Web IDE running directly in the environment. The Web IDE, however, might not always be the right tool for you.</p>
<p>With GitLab 16.3, you can now securely connect to a workspace from your desktop with SSH and use your local tools and extensions. The first iteration supports SSH connections directly in VS Code or from the command line with editors like Vim or Emacs. Support for other editors such as JetBrains IDEs and JupyterLab is proposed in future iterations.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/workspace/configuration.html#connect-to-a-workspace-with-ssh">View Documentation</a></p>
  </li>
  <li>
    <strong>Flux sync status visualization</strong>
    <p><p>In previous releases, you probably used <code>kubectl</code> or another third-party tool to check the status of your Flux deployments. From GitLab 16.3, you can check your deployments with the environments UI.</p>
<p>Deployments rely on Flux <code>Kustomization</code> and <code>HelmRelease</code> resources to gather the status of a given environment, which requires a namespace to be configured for the environment. By default, GitLab searches the <code>Kustomization</code> and <code>HelmRelease</code> resources for the name of the project slug. You can customize the name GitLab looks for in the environment settings.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/environments/kubernetes_dashboard.html#flux-sync-status">View Documentation</a></p>
  </li>
  <li>
    <strong>Additional filtering for scan result policies</strong>
    <p><p>Determining which results from a security or compliance scan are actionable is a significant challenge for security and compliance teams. Granular filters for scan result policies will help you cut through the noise to identify which vulnerabilities or violations require your attention the most. These new filters and filter updates will streamline your workflows:</p>
<ul>
<li>Status: Status rule changes introduce more intuitive enforcement of &ldquo;new&rdquo; versus &ldquo;previously existing&rdquo; vulnerabilities. A new status field <code>new_needs_triage</code> allows you to filter only new vulnerabilities that need to be triaged.</li>
<li>Age: Create policies to enforce approvals when a vulnerability is outside of SLA (days, months, or years) based on the detected date.</li>
<li>Fix Available: Narrow the focus of your policy to address dependencies that have a fix available.</li>
<li>False Positive: Filter out false positives that have been detected by our Vulnerability Extraction Tool, for SAST results, and via Rezilion for our Container Scanning and Dependency Scanning results.</li>
</ul></p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/policies/scan-result-policies.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Security findings in VS Code</strong>
    <p><p>You can now see security findings directly in Visual Studio Code (VS Code), just as you would in a merge request.</p>
<p>You could already monitor the status of your CI/CD pipeline, watch CI/CD job logs, and move through your development workflow in the GitLab Workflow panel.
Now, after you create a merge request for your branch, you can also see a list of new security findings that weren&rsquo;t previously found on the default branch.</p>
<p>This new feature is part of <a href="https://marketplace.visualstudio.com/items?itemName=GitLab.gitlab-workflow">GitLab Workflow</a> for VS Code.
Security scan results are pulled from an API, so this feature is available to developers using GitLab.com or self-managed instances running GitLab 16.1 or higher.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/editor_extensions/visual_studio_code/">View Documentation</a></p>
  </li>
  <li>
    <strong>Use the `needs` keyword with parallel jobs</strong>
    <p><p>The <code>needs</code> keyword is used to define dependency relationships between jobs. You can use the keyword to configure jobs to be dependent on specific earlier jobs instead of following stage ordering. When the dependent jobs complete, the job can start immediately, speeding up your pipeline.</p>
<p>Previously, it was impossible to use the <code>needs</code> keyword to set <a href="https://docs.gitlab.com/ee/ci/yaml/#parallelmatrix">parallel matrix</a> jobs as dependent, but in this release, we have enabled the ability to use <code>needs</code> with parallel matrix jobs too. You can now define a flexible dependency relationship to parallel matrix jobs, which can help speed up your pipeline even more! The earlier your jobs can start, the earlier your pipeline can finish!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/yaml/#needsparallelmatrix">View Documentation</a></p>
  </li>
  <li>
    <strong>More powerful GitLab SaaS runners on Linux</strong>
    <p><p>Having recently upgraded all of our Linux SaaS runners, we are now introducing <code>xlarge</code> and <code>2xlarge</code> <a href="https://docs.gitlab.com/ee/ci/runners/saas/linux_saas_runner.html">SaaS runners on Linux</a>. Equipped with 16 and 32 vCPUs respectively and fully integrated with GitLab CI/CD, these runners will allow you to build and test your application faster than ever before.</p>
<p>We are determined to provide the industry&rsquo;s fastest CI/CD build speed and look forward to seeing teams achieve even shorter feedback cycles and ultimately deliver software faster.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/runners/saas/linux_saas_runner.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Azure Key Vault secrets manager support</strong>
    <p>Secrets stored in Azure Key Vault can now easily be retrieved and used in CI/CD jobs. Our new integration simplifies the process of interacting with Azure Key Vault through GitLab CI/CD, helping you streamline your build and deploy processes!</p>
    <p><a href="https://docs.gitlab.com/ee/ci/secrets/azure_key_vault.html">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Scale and Deployments</h4>
<ul>
  <li>
    <strong>Include or exclude archived projects from project search results</strong>
    <p>You can now opt to include or exclude archived projects from search results. By default, archived projects are excluded. This feature is available for project search in GitLab. Support for other <a href="https://docs.gitlab.com/ee/user/search/#global-search-scopes">global search scopes</a> is proposed in future releases.</p>
    <p><a href="https://docs.gitlab.com/ee/user/search/#include-archived-projects-in-search-results">View Documentation</a></p>
  </li>
  <li>
    <strong>Omnibus improvements</strong>
    <p><ul>
<li>GitLab 16.3 includes <a href="https://mattermost.com/blog/mattermost-v8-0-is-now-available/">Mattermost 8.0</a>. This version includes
<a href="https://mattermost.com/security-updates/">security updates</a> and upgrading from earlier versions is recommended.</li>
<li>Our Amazon Linux builds are now <a href="https://aws.amazon.com/linux/amazon-linux-2023/">Amazon Linux 2023</a>. Amazon Linux 2022 was never officially
generally available and was replaced with Amazon Linux 2023, so we have adjusted our offering to the updated release.</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/omnibus/">View Documentation</a></p>
  </li>
  <li>
    <strong>Audit event recorded for applications settings change</strong>
    <p>Application setting changes at an instance, project, and group level are now recorded in the audit log, along with which user made the change. This improves auditing of application settings for both self-managed and SaaS.</p>
    <p><a href="https://docs.gitlab.com/ee/administration/audit_events.html#application-settings">View Documentation</a></p>
  </li>
  <li>
    <strong>Preserve pull request reviewers when importing from BitBucket Server</strong>
    <p><p>Until now, the BitBucket Server importer did not import pull request (PR) reviewers and instead categorized them as participants. Information on PR reviewers is
important from an audit and compliance perspective.</p>
<p>In GitLab 16.3, we added support for correctly importing PR reviewers from BitBucket. In GitLab, they become merge request reviewers.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/import/bitbucket_server.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Configurable import limits available in application settings</strong>
    <p><p>Hardcoded limits exist for both migration by direct transfer and by importing export files.</p>
<p>In this release, we&rsquo;ve made some of these limits configurable in application settings to allow self-managed GitLab administrators to adjust them according to their needs:</p>
<ul>
<li><a href="https://docs.gitlab.com/ee/administration/settings/account_and_limit_settings.html#maximum-download-file-size-for-imports-by-direct-transfer">Maximum relation size that can be downloaded from the source instance in direct transfer</a>.
Previously hardcoded at 5 GB. On GitLab.com, we&rsquo;ve set this limit to 5 GB.</li>
<li><a href="https://docs.gitlab.com/ee/administration/settings/account_and_limit_settings.html#maximum-remote-file-size-for-imports">Maximum size of a remote import file that can be downloaded from remote Object Storages (such as AWS S3)</a>.
Previously hardcoded at 10 GB. On GitLab.com, we&rsquo;ve set this limit to 10 GB.</li>
</ul>
<p>We&rsquo;ve also added a new
<a href="https://docs.gitlab.com/ee/administration/settings/account_and_limit_settings.html#maximum-decompressed-file-size-for-imported-archives">maximum decompressed file size for imported archives</a>
application setting, which replaces the <code>validate_import_decompressed_archive_size</code> feature flag. This limit was hardcoded to 10 GB. On GitLab.com, we&rsquo;ve set this limit to 25
GB.</p>
<p>With these new application settings, both self-managed GitLab and GitLab.com administrators can adjust these limits as needed.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/import/index.html#limits">View Documentation</a></p>
  </li>
  <li>
    <strong>New navigation has color themes available</strong>
    <p>With the new navigation enabled, you can now select one of five different color themes, and choose the light or dark variety for each. Use themes to identify different environments or choose your favorite color.</p>
    <p><a href="https://docs.gitlab.com/ee/user/profile/preferences.html#change-the-color-theme">View Documentation</a></p>
  </li>
  <li>
    <strong>No entity export timeout for migrations by direct transfer</strong>
    <p><p>Until now, migrating groups and projects by direct transfer had a 90 minute export timeout. This limit effectively excluded large projects from being migrated, because only projects that could be migrated in under 90 minutes were allowed.</p>
<p>The upper limit for the overall migration timeout is 4 hours, and so the 90 minutes export timeout was not necessary. In this milestone, the limit was removed, allowing larger projects to be migrated.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/import/#limits">View Documentation</a></p>
  </li>
  <li>
    <strong>Support for Azure AD overage claim</strong>
    <p>GitLab SAML Group Sync now supports the Azure AD (now known as Entra ID) overage claim, which allows a user to have over 150 groups associated with them. The previous maximum was 150 groups. For more information, see <a href="https://learn.microsoft.com/en-us/security/zero-trust/develop/configure-tokens-group-claims-app-roles#group-overages">Microsoft group overages</a>.</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/saml_sso/group_sync.html#microsoft-azure-active-directory-integration">View Documentation</a></p>
  </li>
  <li>
    <strong>Geo verifies group wikis</strong>
    <p>Geo is now able to detect and correct data corruption of <a href="https://docs.gitlab.com/ee/user/project/wiki/group.html">group wikis</a> at rest and in transit. If you use Geo as part of your disaster recovery strategy, this helps to protect you against data loss in the event of a failover.</p>
    <p><a href="https://docs.gitlab.com/ee/administration/geo/">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>CODEOWNERS file syntax and format validation</strong>
    <p><p>You can now see in the UI if your <code>CODEOWNERS</code> file has syntax or formatting errors. Being able to specify code owners offers great flexibility, allowing multiple file locations, sections, and rules to be configured by users. With this new syntax validation, errors in your <code>CODEOWNERS</code> file will be surfaced in the GitLab UI, making it easy to spot and fix issues. The following errors will be surfaced:</p>
<ul>
<li>Entries with spaces.</li>
<li>Unparsable sections.</li>
<li>Malformed owners.</li>
<li>Inaccessible owners.</li>
<li>Zero owners.</li>
<li>Fewer than 1 required approvals.</li>
</ul>
<p>Previously, the <code>CODEOWNERS</code> file didn&rsquo;t validate the information being entered into the file. This could lead to creating:</p>
<ul>
<li>Rules for files/paths that don&rsquo;t exist.</li>
<li>Rules that create conflict with other existing rules.</li>
<li>Rules that don&rsquo;t apply because of incorrect syntax.</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/codeowners/reference.html#error-handling-in-code-owners">View Documentation</a></p>
  </li>
  <li>
    <strong>Kubernetes 1.27 support</strong>
    <p><p>This release adds full support for Kubernetes version 1.27, released in April 2023. If you use Kubernetes, you can now upgrade your clusters to the most recent version and take advantage of all its features.</p>
<p>You can read more about <a href="https://docs.gitlab.com/ee/user/clusters/agent/#supported-cluster-versions">our Kubernetes support policy</a> and other supported Kubernetes versions.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/clusters/agent/#supported-cluster-versions">View Documentation</a></p>
  </li>
  <li>
    <strong>Wrap feature flag names instead of truncating</strong>
    <p><p>If you used feature flags in previous versions of GitLab, you might have noticed that long feature flag names were truncated. This made it difficult to quickly differentiate similar feature flag names.</p>
<p>In GitLab 16.3, the entire feature flag name is shown. Long names wrap across multiple lines, if needed.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/operations/feature_flags.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Names for audit event streams</strong>
    <p><p>Previously, audit event streaming destinations were assigned by the destination URL. This could lead to confusion when you set up multiple streams for one group or
instance, because you had to expand the destination in the UI to see what filters and custom headers had been applied.</p>
<p>With GitLab 16.3, you can now name audit event streaming destinations to help identify and differentiate them when you have multiple streaming destinations defined.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/audit_event_streaming/#add-a-new-http-destination">View Documentation</a></p>
  </li>
  <li>
    <strong>Explain this vulnerability</strong>
    <p>GitLab surfaces vulnerabilities that contain relevant information, however, sometimes it is unclear where to start. It takes time to research and synthesize information that is surfaced within the vulnerability record. Moreover it can be difficult to figure out how to fix a given vulnerability. With this Beta release, you can click a button to get an explanation and recommendation on how to mitigate the vulnerability, generated by AI.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/vulnerabilities/#explaining-a-vulnerability-beta">View Documentation</a></p>
  </li>
  <li>
    <strong>Compliance reports renamed to Compliance center</strong>
    <p><p>To facilitate the growth of compliance-related features beyond reporting and into management, the Compliance reports section of GitLab was renamed to reflect the expanding scope
of the area.</p>
<p>From GitLab 16.3, Compliance reports are known as Compliance center.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/compliance/compliance_center/">View Documentation</a></p>
  </li>
  <li>
    <strong>Improve accuracy of scan result policies</strong>
    <p><p>A scan result policy is a type of security policy you use to evaluate and block merge requests if particular rules are violated. Approvers may review and approve the change, or work with their development teams to address any issues (such as addressing critical security vulnerabilities).</p>
<p>Previously, we compared vulnerabilities in the latest source and target branches to detect any new violations of policy rules. But, this might not capture vulnerabilities detected from scans running as a result of various pipeline sources. To increase accuracy, we are now comparing the latest completed pipelines for each pipeline source (with the exception of parent/child pipelines). This will ensure a more comprehensive evaluation and reduce the cases where approvals are required when it may be unexpected.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/policies/scan-result-policies.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Instance-level streaming audit event filters</strong>
    <p><p>In GitLab 16.2, we introduced instance-level audit event streaming. However, no filters were available to apply to these streams.</p>
<p>In GitLab 16.3, you can now apply filters by audit event type to instance-level audit event streams. With the addition of these filters in the UI, you can capture a subset
of audit events to send to each streaming location, focusing only on the events that are relevant for you.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/audit_event_streaming/#update-event-filters-1">View Documentation</a></p>
  </li>
  <li>
    <strong>Security bot to trigger scan execution policies pipelines</strong>
    <p><p>Security bot users will be created to support managing background tasks, and to enforce security policies for all newly created or updated security policy project links. This will ease the process for security and compliance team members to configure and enforce policies, specifically removing the need for security policy project maintainers to also maintain <code>Developer</code> access in development projects. Security policy bot users will also make it much clearer for users within an enforced project when pipelines are executed on behalf of a security policy, as this bot user will be the pipeline author.</p>
<p>When a security policy project is linked to a group or subgroup, a security policy bot will be created in each project in the group or subgroup. When a link is made to a group, subgroup, or an individual project, a security bot user will be created for the given project or for any projects in the group or subgroup. Any groups, subgroups, or projects that already have a link to a security policy project will be unaffected at this time, but users may re-establish any existing links to take advantage of this feature. In GitLab 16.4, we plan to <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/414376">enable security bots</a> on all projects hosted on GitLab.com that have existing security policy project links.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/policies/scan-execution-policies.html">View Documentation</a></p>
  </li>
  <li>
    <strong>SAST analyzer updates</strong>
    <p><p>GitLab SAST includes <a href="https://docs.gitlab.com/ee/user/application_security/sast/#supported-languages-and-frameworks">many security analyzers</a> that the GitLab Static Analysis team actively maintains, updates, and supports. We published the following updates during the 16.3 release milestone:</p>
<ul>
<li>The Kics-based analyzer has been updated to use version 1.7.5 of the Kics engine. This update includes various bug fixes, and also adds improvements to error handling for self references in JSON and YAML. See the <a href="https://gitlab.com/gitlab-org/security-products/analyzers/kics/-/blob/main/CHANGELOG.md?ref_type=heads#v414">CHANGELOG</a> for further details.</li>
<li>The Semgrep-based analyzer has been updated to add support for specifying ambiguous refs during passthrough custom configurations. We&rsquo;ve also updated the SARIF parser to use Name over Title, and no longer fail scans upon SARIF <code>toolExecutionNotifications</code> of level error. See the <a href="https://gitlab.com/gitlab-org/security-products/analyzers/semgrep/-/blob/main/CHANGELOG.md?ref_type=heads#v446">CHANGELOG</a> for further details.</li>
</ul>
<p>If you <a href="https://docs.gitlab.com/ee/user/application_security/sast/#configure-sast-in-your-cicd-yaml">include the GitLab-managed SAST template</a> (<a href="https://gitlab.com/gitlab-org/gitlab/blob/master/lib/gitlab/ci/templates/Security/SAST.gitlab-ci.yml"><code>SAST.gitlab-ci.yml</code></a>) and run GitLab 16.0 or higher, you automatically receive these updates.
To remain on a specific version of any analyzer and prevent automatic updates, you can <a href="https://docs.gitlab.com/ee/user/application_security/sast/#pinning-to-minor-image-version">pin its version</a>.</p>
<p>For previous changes, see <a href="https://about.gitlab.com/releases/2023/07/22/gitlab-16-2-released/#sast-analyzer-updates">last month&rsquo;s updates</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/sast/analyzers">View Documentation</a></p>
  </li>
  <li>
    <strong>Dependency and License Scanning support for Java v21</strong>
    <p>GitLab Dependency and License Scanning now support analyzing Java v21 Maven lock files.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/dependency_scanning/#obtaining-dependency-information-by-parsing-lockfiles">View Documentation</a></p>
  </li>
  <li>
    <strong>Runner tags enable UI-based configuration of on-demand DAST scans</strong>
    <p>You can now use tags to specify which runners you wish to use for on-demand DAST scans. Prior to 16.3, you could configure DAST scans using private runners via CI configuration files. This UI-based configuration enables efficient UI-configuration for managing DAST scans.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/dast/proxy-based.html#on-demand-scans">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved SAST vulnerability tracking</strong>
    <p><p>GitLab SAST <a href="https://docs.gitlab.com/ee/user/application_security/sast/#advanced-vulnerability-tracking">Advanced Vulnerability Tracking</a> makes triage more efficient by keeping track of findings as code moves.
We&rsquo;ve released two improvements in GitLab 16.3:</p>
<ol>
<li>Expanded language support: In addition to its <a href="https://docs.gitlab.com/ee/user/application_security/sast/#advanced-vulnerability-tracking">existing coverage</a>, we&rsquo;ve enabled Advanced Vulnerability Tracking for:
<ul>
<li>C and C++, in the Flawfinder-based analyzer.</li>
<li>Java, in the MobSF-based analyzer.</li>
<li>JavaScript, in the NodeJS-Scan-based analyzer.</li>
</ul>
</li>
<li>Better tracking: We&rsquo;ve improved the tracking algorithm to handle anonymous functions in JavaScript.</li>
</ol>
<p>This builds on previous expansions and improvements <a href="https://about.gitlab.com/releases/2023/07/22/gitlab-16-2-released/#improved-sast-vulnerability-tracking">released in GitLab 16.2</a>.
We&rsquo;re tracking further improvements, including expansion to more languages, better handling of more language constructs, and improved tracking for Python and Ruby, in <a href="https://gitlab.com/groups/gitlab-org/-/epics/5144">epic 5144</a>.</p>
<p>These changes are included in <a href="/#sast-analyzer-updates">updated versions</a> of GitLab SAST <a href="https://docs.gitlab.com/ee/user/application_security/sast/analyzers.html">analyzers</a>.
Your project&rsquo;s vulnerability findings are updated with new tracking signatures after the project is scanned with the updated analyzers.
You don&rsquo;t have to take action to receive this update unless you&rsquo;ve <a href="https://docs.gitlab.com/ee/user/application_security/sast/#pinning-to-minor-image-version">pinned SAST analyzers to a specific version</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/sast/#advanced-vulnerability-tracking">View Documentation</a></p>
  </li>
  <li>
    <strong>Automatic response to leaked Postman API keys</strong>
    <p><p>We&rsquo;ve integrated Secret Detection with Postman to better protect customers who use Postman in their GitLab projects.</p>
<p>Secret Detection searches for <a href="https://learning.postman.com/docs/developer/postman-api/authentication/">Postman API keys</a>.
If a key is exposed in a public project on GitLab.com, GitLab sends the leaked key to Postman.
Postman verifies the key, then <a href="https://learning.postman.com/docs/administration/token-scanner/#protecting-postman-api-keys-in-gitlab">notifies the owner of the Postman API key</a>.</p>
<p>This integration is on by default for projects that have <a href="https://docs.gitlab.com/ee/user/application_security/secret_detection/#enable-secret-detection">enabled Secret Detection</a> on GitLab.com.
Secret Detection scanning is available in all GitLab tiers, but an automatic response to leaked secrets is currently only available in Ultimate projects.</p>
<p>See <a href="https://blog.postman.com/protecting-your-postman-api-keys-in-gitlab/">the Postman blog post about this integration</a> for further details.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/secret_detection/automatic_response.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Expose pipeline name as a predefined CI/CD variable</strong>
    <p>Pipeline names defined with the <a href="https://docs.gitlab.com/ee/ci/yaml/#workflowname"><code>workflow:name</code></a> keyword are now accessible via the predefined variable <code>$CI_PIPELINE_NAME</code>.</p>
    <p><a href="https://docs.gitlab.com/ee/ci/variables/predefined_variables.html">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner 16.3</strong>
    <p><p>We’re also releasing GitLab Runner 16.3 today! GitLab Runner is the lightweight, highly-scalable agent that runs your CI/CD jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.</p>
<h4 id="whats-new">What&rsquo;s new:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/29022">Configure project clone directory as safe by default</a></li>
</ul>
<h4 id="bug-fixes">Bug Fixes:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/36048">Runner v16.2.0 not available in Debian/RHEL repository</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/26993">Gitlab-runner with the shell executor sometimes fails to fetch submodules</a></li>
</ul>
<p>The list of all changes is in the GitLab Runner <a href="https://gitlab.com/gitlab-org/gitlab-runner/blob/16-3-stable/CHANGELOG.md">CHANGELOG</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/runner">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab Patch Release: 16.2.4</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-2-4-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-2-4-released/</id><published>2023-08-11T00:00:00Z</published><updated>2023-08-11T00:00:00Z</updated><author><name>Reuben Pereira</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On August 11, 2023, we released versions 16.2.4 for GitLab Community Edition and Enterprise Edition.</p>
<p>These versions resolve a number of regressions and bugs.</p>
<h2 id="gitlab-community-edition-and-enterprise-edition">GitLab Community Edition and Enterprise Edition</h2>
<h3 id="1624">16.2.4</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/128253">Backport &lsquo;420347-fix-new-index-settings&rsquo; to 16.2</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/128720">Backport Fix max number of slices to 16.2</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/128708">Put back broadcast messages to sign-in page for self-hosted</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/128778">Revert &ldquo;Remove log_response_length feature flag&rdquo; - 16.2 Backport</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/128942">Fix broken dependency list for invalid Container Scanning pkg mgr type</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/128950">Replace vscode-cdn.net with web-ide.gitlab-static.net (Backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7075">Set proxy_http_version v1.0 for health monitoring endpoints</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>This version does not include any new migrations, and for multi-node deployments, <a href="https://docs.gitlab.com/ee/update/#upgrading-without-downtime">should not require any downtime</a>.</p>
<p>Please be aware that by default the Omnibus packages will stop, run migrations,
and start again, no matter how “big” or “small” the upgrade is. This behavior
can be changed by adding a <a href="https://docs.gitlab.com/ee/update/zero_downtime.html"><code>/etc/gitlab/skip-auto-reconfigure</code></a> file,
which is only used for <a href="https://docs.gitlab.com/omnibus/update/README.html">updates</a>.</p>
<h2 id="updating">Updating</h2>
<p>To update, check out our <a href="https://about.gitlab.com/update/">update page</a>.</p>
<h2 id="gitlab-subscriptions">GitLab subscriptions</h2>
<p>Access to GitLab Premium and Ultimate features is granted by a paid <a href="https://about.gitlab.com/pricing/">subscription</a>.</p>
<p>Alternatively, <a href="https://gitlab.com/users/sign_in">sign up for GitLab.com</a>
to use GitLab&rsquo;s own infrastructure.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 16.1.4</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-1-4-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-1-4-released/</id><published>2023-08-03T00:00:00Z</published><updated>2023-08-03T00:00:00Z</updated><author><name>Steve Abrams</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On August 3, 2023, we released version 16.1.4 for GitLab Community Edition and Enterprise Edition.</p>
<p>This version resolves a number of regressions and bugs.</p>
<h2 id="gitlab-community-edition-and-enterprise-edition">GitLab Community Edition and Enterprise Edition</h2>
<h3 id="1614">16.1.4</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/128291">Backport &ldquo;Fix artifacts object storage geo replication&rdquo; to 16.1</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>This version does not include any new migrations, and for multi-node deployments, <a href="https://docs.gitlab.com/ee/update/#upgrading-without-downtime">should not require any downtime</a>.</p>
<p>Please be aware that by default the Omnibus packages will stop, run migrations,
and start again, no matter how “big” or “small” the upgrade is. This behavior
can be changed by adding a <a href="https://docs.gitlab.com/ee/update/zero_downtime.html"><code>/etc/gitlab/skip-auto-reconfigure</code></a> file,
which is only used for <a href="https://docs.gitlab.com/omnibus/update/README.html">updates</a>.</p>
<h2 id="updating">Updating</h2>
<p>To update, check out our <a href="https://about.gitlab.com/update/">update page</a>.</p>
<h2 id="gitlab-subscriptions">GitLab subscriptions</h2>
<p>Access to GitLab Premium and Ultimate features is granted by a paid <a href="https://about.gitlab.com/pricing/">subscription</a>.</p>
<p>Alternatively, <a href="https://gitlab.com/users/sign_in">sign up for GitLab.com</a>
to use GitLab&rsquo;s own infrastructure.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 16.2.3</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-2-3-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-2-3-released/</id><published>2023-08-03T00:00:00Z</published><updated>2023-08-03T00:00:00Z</updated><author><name>Reuben Pereira</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On August 3, 2023, we released versions 16.2.3 for GitLab Community Edition and Enterprise Edition.</p>
<p>This version resolves a bug.</p>
<h2 id="gitlab-community-edition-and-enterprise-edition">GitLab Community Edition and Enterprise Edition</h2>
<h3 id="1623">16.2.3</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/128290">Backport &ldquo;Fix artifacts object storage geo replication&rdquo; to 16.2</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>This version does not include any new migrations, and for multi-node deployments, <a href="https://docs.gitlab.com/ee/update/#upgrading-without-downtime">should not require any downtime</a>.</p>
<p>Please be aware that by default the Omnibus packages will stop, run migrations,
and start again, no matter how “big” or “small” the upgrade is. This behavior
can be changed by adding a <a href="https://docs.gitlab.com/ee/update/zero_downtime.html"><code>/etc/gitlab/skip-auto-reconfigure</code></a> file,
which is only used for <a href="https://docs.gitlab.com/omnibus/update/README.html">updates</a>.</p>
<h2 id="updating">Updating</h2>
<p>To update, check out our <a href="https://about.gitlab.com/update/">update page</a>.</p>
<h2 id="gitlab-subscriptions">GitLab subscriptions</h2>
<p>Access to GitLab Premium and Ultimate features is granted by a paid <a href="https://about.gitlab.com/pricing/">subscription</a>.</p>
<p>Alternatively, <a href="https://gitlab.com/users/sign_in">sign up for GitLab.com</a>
to use GitLab&rsquo;s own infrastructure.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Security Release: 16.2.2, 16.1.3, and 16.0.8</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-2-2-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-2-2-released/</id><published>2023-08-01T00:00:00Z</published><updated>2023-08-01T00:00:00Z</updated><author><name>Greg Myers</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<p>On August 1, 2023, we released versions 16.2.2, 16.1.3, and 16.0.8 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important security fixes, and we strongly recommend that all GitLab installations be upgraded to one of these versions immediately. GitLab.com is already running the patched version.</p>
<p>GitLab releases patches for vulnerabilities in dedicated security releases. There are two types of security releases: a monthly, scheduled security release, released a week after the feature release (which deploys on the 22nd of each month), and ad-hoc security releases for critical vulnerabilities. For more information, you can visit our <a href="https://about.gitlab.com/security/faq/">security FAQ</a>. You can see all of our regular and security release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>. In addition, the issues detailing each vulnerability are made public on our <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a> 30 days after the release in which they were patched.</p>
<p>We are dedicated to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers upgrade to the latest security release for their supported version. You can read more <a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="table-of-fixes">Table of Fixes</h2>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-2-2-released/#redos-via-projectreferencefilter-in-any-markdown-fields">ReDoS via ProjectReferenceFilter in any Markdown fields</a></td>
          <td>high</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-2-2-released/#redos-via-autolinkfilter-in-any-markdown-fields">ReDoS via AutolinkFilter in any Markdown fields</a></td>
          <td>high</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-2-2-released/#an-attacker-can-run-pipeline-jobs-as-arbitrary-user">An attacker can run pipeline jobs as arbitrary user</a></td>
          <td>high</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-2-2-released/#regex-dos-in-harbor-registry-search">Regex DoS in Harbor Registry search</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-2-2-released/#arbitrary-read-of-files-owned-by-the-git-user-via-malicious-targz-file-upload-using-gitlab-export-functionality">Arbitrary read of files owned by the &ldquo;git&rdquo; user via malicious tar.gz file upload using GitLab export functionality</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-2-2-released/#stored-xss-in-web-ide-beta-via-crafted-url">Stored XSS in Web IDE Beta via crafted URL</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-2-2-released/#securitypolicyprojectassign-mutation-does-not-authorize-security-policy-project-id"><code>securityPolicyProjectAssign</code> mutation does not authorize security policy project ID</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-2-2-released/#possible-pages-unique-domain-overwrite">Possible Pages Unique Domain Overwrite</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-2-2-released/#access-tokens-may-have-been-logged-when-a-query-was-made-to-an-endpoint">Access tokens may have been logged when a query was made to an endpoint</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-2-2-released/#reflected-xss-via-plantuml-diagram">Reflected XSS via PlantUML diagram</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-2-2-released/#the-main-branch-of-a-repository-with-a-specially-designed-name-may-allow-an-attacker-to-create-repositories-with-malicious-code">The main branch of a repository with a specially designed name may allow an attacker to create repositories with malicious code</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-2-2-released/#invalid-start_sha-value-on-merge-requests-page-may-lead-to-denial-of-service">Invalid &lsquo;start_sha&rsquo; value on merge requests page may lead to Denial of Service</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-2-2-released/#developers-can-create-pipeline-schedules-on-protected-branches-even-if-they-dont-have-access-to-merge">Developers can create pipeline schedules on protected branches even if they don&rsquo;t have access to merge</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-2-2-released/#potential-dos-due-to-lack-of-pagination-while-loading-license-data">Potential DOS due to lack of pagination while loading license data</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-2-2-released/#leaking-emails-of-newly-created-users">Leaking emails of newly created users</a></td>
          <td>low</td>
      </tr>
  </tbody>
</table>
<h2 id="redos-via-projectreferencefilter-in-any-markdown-fields">ReDoS via ProjectReferenceFilter in any Markdown fields</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/910 -->
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 9.3 before 16.0.8, all versions starting from 16.1 before 16.1.3, all versions starting from 16.2 before 16.2.2. A Regular Expression Denial of Service was possible via sending crafted payloads which use ProjectReferenceFilter to the preview_markdown endpoint. This is a high severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code>, 7.5). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3994">CVE-2023-3994</a>.</p>
<p>Thanks <a href="https://hackerone.com/ryhmnlfj">ryhmnlfj</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="redos-via-autolinkfilter-in-any-markdown-fields">ReDoS via AutolinkFilter in any Markdown fields</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/925 -->
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 8.14 before 16.0.8, all versions starting from 16.1 before 16.1.3, all versions starting from 16.2 before 16.2.2. A Regular Expression Denial of Service was possible via sending crafted payloads which use AutolinkFilter to the preview_markdown endpoint. This is a high severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code>, 7.5). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3364">CVE-2023-3364</a>.</p>
<p>Thanks <a href="https://hackerone.com/ryhmnlfj">ryhmnlfj</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="an-attacker-can-run-pipeline-jobs-as-arbitrary-user">An attacker can run pipeline jobs as arbitrary user</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/917 -->
<p>An issue has been discovered in GitLab EE affecting all versions starting from 13.12 before 16.0.8, all versions starting from 16.1 before 16.1.3, all versions starting from 16.2 before 16.2.2. It was possible for an attacker to run pipeline jobs as an arbitrary user via scheduled security scan policies. This is a high severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:N</code>, 8.2). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3932">CVE-2023-3932</a>.</p>
<p>Thanks <a href="https://hackerone.com/vaib25vicky">vaib25vicky</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="regex-dos-in-harbor-registry-search">Regex DoS in Harbor Registry search</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/913 -->
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 15.2 before 16.0.8, all versions starting from 16.1 before 16.1.3, all versions starting from 16.2 before 16.2.2. A Regular Expression Denial of Service was possible by using crafted payloads to search Harbor Registry. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code>, 6.5). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-0632">CVE-2023-0632</a>.</p>
<p>Thanks <a href="https://hackerone.com/joaxcar">joaxcar</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="arbitrary-read-of-files-owned-by-the-git-user-via-malicious-targz-file-upload-using-gitlab-export-functionality">Arbitrary read of files owned by the &ldquo;git&rdquo; user via malicious tar.gz file upload using GitLab export functionality</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/926 -->
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 8.10 before 16.0.8, all versions starting from 16.1 before 16.1.3, all versions starting from 16.2 before 16.2.2. Under specific circumstances, a user importing a project &lsquo;from export&rsquo; could access and read unrelated files via uploading a specially crafted file. This was due to a bug in <code>tar</code>, fixed in <a href="https://lists.gnu.org/archive/html/info-gnu/2023-07/msg00005.html"><code>tar-1.35</code></a>. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:N/A:N</code>, 6.3). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3385">CVE-2023-3385</a>.</p>
<p>Thanks <a href="https://hackerone.com/ubercomp">ubercomp</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="stored-xss-in-web-ide-beta-via-crafted-url">Stored XSS in Web IDE Beta via crafted URL</h2>
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 15.9 before 16.0.8, all versions starting from 16.1 before 16.1.3, all versions starting from 16.2 before 16.2.2. It was possible for an attacker to trigger a stored XSS vulnerability via user interaction with a crafted URL in the WebIDE beta. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N</code>, 5.4). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-2164">CVE-2023-2164</a>.</p>
<p>Thanks <a href="https://hackerone.com/viridian_40826d">viridian_40826d</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="securitypolicyprojectassign-mutation-does-not-authorize-security-policy-project-id"><code>securityPolicyProjectAssign</code> mutation does not authorize security policy project ID</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/929 -->
<p>An issue has been discovered in GitLab EE affecting all versions starting from 14.1 before 16.0.8, all versions starting from 16.1 before 16.1.3, all versions starting from 16.2 before 16.2.2. It was possible for EE-licensed users to link any security policy project by its ID to projects or groups the user has access to, potentially revealing the security projects&rsquo;s configured security policies. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:N/A:N</code>, 5.3). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-4002">CVE-2023-4002</a>.</p>
<p>This vulnerability has been discovered internally by GitLab team member <a href="https://gitlab.com/bauerdominic">bauerdominic</a>.</p>
<h2 id="possible-pages-unique-domain-overwrite">Possible Pages Unique Domain Overwrite</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/920 -->
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 15.9 before 16.0.8, all versions starting from 16.1 before 16.1.3, all versions starting from 16.2 before 16.2.2. It was possible to takeover GitLab Pages with unique domain URLs if the random string added was known. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:N/A:N</code>, 5.0). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-4008">CVE-2023-4008</a>.</p>
<p>This vulnerability was discovered internally by GitLab team member <a href="https://gitlab.com/kassio">kassio</a>.</p>
<h2 id="access-tokens-may-have-been-logged-when-a-query-was-made-to-an-endpoint">Access tokens may have been logged when a query was made to an endpoint</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/906 -->
<p>An issue has been discovered in GitLab EE affecting all versions starting from 14.3 before 16.0.8, all versions starting from 16.1 before 16.1.3, all versions starting from 16.2 before 16.2.2. Access tokens may have been logged when a query was made to a specific endpoint. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:N/A:N</code>, 4.9). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3993">CVE-2023-3993</a>.</p>
<p>This vulnerability was discovered internally by GitLab team member <a href="https://gitlab.com/mjozenazemian">mjozenazemian</a>.</p>
<h2 id="reflected-xss-via-plantuml-diagram">Reflected XSS via PlantUML diagram</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/932 -->
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 10.0 before 16.0.8, all versions starting from 16.1 before 16.1.3, all versions starting from 16.2 before 16.2.2. A reflected XSS was possible when creating specific PlantUML diagrams that allowed the attacker to perform arbitrary actions on behalf of victims. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N</code>, 4.8). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3500">CVE-2023-3500</a>.</p>
<p>Thanks <a href="https://hackerone.com/ankitsingh">ankitsingh</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="the-main-branch-of-a-repository-with-a-specially-designed-name-may-allow-an-attacker-to-create-repositories-with-malicious-code">The main branch of a repository with a specially designed name may allow an attacker to create repositories with malicious code</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/915 -->
<p>An issue has been discovered in GitLab affecting all versions before 16.0.8, all versions starting from 16.1 before 16.1.3, all versions starting from 16.2 before 16.2.2. The main branch of a repository with a specially designed name allows an attacker to create repositories with malicious code. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:N/I:H/A:N</code>, 4.8). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3401">CVE-2023-3401</a>.</p>
<p>Thanks <a href="https://hackerone.com/st4nly0n">st4nly0n</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h2 id="invalid-start_sha-value-on-merge-requests-page-may-lead-to-denial-of-service">Invalid &lsquo;start_sha&rsquo; value on merge requests page may lead to Denial of Service</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/928 -->
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 16.1 before 16.1.3, all versions starting from 16.2 before 16.2.2. An invalid &lsquo;start_sha&rsquo; value on merge requests page may lead to Denial of Service as Changes tab would not load. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L</code>, 4.3). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3900">CVE-2023-3900</a>.</p>
<p>Thanks <a href="https://hackerone.com/toukakirishima">toukakirishima</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="developers-can-create-pipeline-schedules-on-protected-branches-even-if-they-dont-have-access-to-merge">Developers can create pipeline schedules on protected branches even if they don&rsquo;t have access to merge</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/901 -->
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting before 16.0.8, all versions starting from 16.1 before 16.1.3, all versions starting from 16.2 before 16.2.2, which leads to developers being able to create pipeline schedules on protected branches even if they don&rsquo;t have access to merge. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N</code>, 4.3). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-2022">CVE-2023-2022</a>.</p>
<p>Thanks <a href="https://hackerone.com/js_noob">js_noob</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="potential-dos-due-to-lack-of-pagination-while-loading-license-data">Potential DOS due to lack of pagination while loading license data</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/931 -->
<p>An issue has been discovered in GitLab EE affecting all versions from 15.11 prior to 16.2.2 which allows an attacker to spike the resource consumption by loading Dependency List page, resulting in a possible DoS. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L</code>, 4.3). It is mitigated in the latest 16.2.2 release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-4011">CVE-2023-4011</a>.</p>
<p>This vulnerability was discovered internally by GitLab team member <a href="https://gitlab.com/gonzoyumo">gonzoyumo</a>.</p>
<h2 id="leaking-emails-of-newly-created-users">Leaking emails of newly created users</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/927 -->
<p>An issue has been discovered in GitLab affecting all versions starting from 12.9 before 16.0.8, all versions starting from 16.1 before 16.1.3, all versions starting from 16.2 before 16.2.2. It was possible to leak a user&rsquo;s email via an error message for groups that restrict membership by email domain. This is a low severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:N/A:N</code>, 3.1). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-1210">CVE-2023-1210</a>.</p>
<p>Thanks <a href="https://hackerone.com/shells3c">shells3c</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="update-mattermost">Update Mattermost</h2>
<p>Mattermost has been updated to version 7.10.4  in order to mitigate security issues.</p>
<h2 id="update-redis">Update Redis</h2>
<p>Redis has been updated to version 6.2.13 in order to mitigate security issues.</p>
<h2 id="non-security-patches">Non Security Patches</h2>
<p>This security release also includes the following non-security patches.</p>
<h3 id="1622">16.2.2</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/127238" title="Merge branch &#39;418983-fix-issue-type-update&#39; into &#39;master&#39;">Issue type change to incident results in 404</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/127045" title="Enable descendant_security_scans by default">Enable <code>descendant_security_scans</code> by default</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/127516" title="Disable IAT verification by default">Disable IAT verification by default</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/127777" title="BitBucket Server Importer - Preserve PR (MR) reviewers">BitBucket Server Importer - Preserve PR (MR) reviewers</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7060" title="Toggle recommend_pg_upgrade to false for now">Toggle <code>recommend_pg_upgrade</code> to false for now</a></li>
</ul>
<h3 id="1613">16.1.3</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/125261" title="Geo: Backport design repos verification bug fix">Geo: Backport design repos verification bug fix</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/125316" title="Geo - Backport wiki repository verification fix">Geo - Backport wiki repository verification fix</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/126783" title="Fix FOUC when new sidebar enabled">Fix FOUC when new sidebar enabled</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/127515" title="[16.1] Repair the trigger for Release Environments">Repair the trigger for Release Environments</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/127517" title="Disable IAT verification by default">Disable IAT verification by default</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/127402" title="Backport fix for pending direct uploads completion to 16.1">Backport fix for pending direct uploads completion to 16.1</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/127778" title="BitBucket Server Importer - Preserve PR (MR) reviewers">BitBucket Server Importer - Preserve PR (MR) reviewers</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7050" title="Fix pg-upgrade failure on Geo secondary nodes [16.1]">Fix pg-upgrade failure on Geo secondary nodes [16.1]</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7034" title="Don&#39;t 500 when pages tries to serve a chunked file">Don&rsquo;t 500 when pages tries to serve a chunked file</a></li>
</ul>
<h3 id="1608">16.0.8</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/127518" title="Disable IAT verification by default">Disable IAT verification by default</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7051" title="Fix pg-upgrade failure on Geo secondary nodes [16.0]">Fix pg-upgrade failure on Geo secondary nodes [16.0]</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-security-release-notifications">Receive Security Release Notifications</h2>
<p>To receive security release blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">security release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 16.2.1</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-2-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-2-1-released/</id><published>2023-07-25T00:00:00Z</published><updated>2023-07-25T00:00:00Z</updated><author><name>Reuben Pereira</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On July 25, 2023, we released versions 16.2.1 for GitLab Community Edition and Enterprise Edition.</p>
<p>These versions resolve a number of regressions and bugs.</p>
<h2 id="gitlab-community-edition-and-enterprise-edition">GitLab Community Edition and Enterprise Edition</h2>
<h3 id="1621">16.2.1</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/127401">Backport fix for pending direct uploads completion to 16.2</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/127313">Fix crash when LDAP CA file set outside tls_options</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>This version does not include any new migrations, and for multi-node deployments, <a href="https://docs.gitlab.com/ee/update/#upgrading-without-downtime">should not require any downtime</a>.</p>
<p>Please be aware that by default the Omnibus packages will stop, run migrations,
and start again, no matter how “big” or “small” the upgrade is. This behavior
can be changed by adding a <a href="http://docs.gitlab.com/omnibus/update/README.html"><code>/etc/gitlab/skip-auto-reconfigure</code></a> file,
which is only used for <a href="https://docs.gitlab.com/omnibus/update/README.html">updates</a>.</p>
<h2 id="updating">Updating</h2>
<p>To update, check out our <a href="https://about.gitlab.com/update/">update page</a>.</p>
<h2 id="gitlab-subscriptions">GitLab subscriptions</h2>
<p>Access to GitLab Premium and Ultimate features is granted by a paid <a href="https://about.gitlab.com/pricing/">subscription</a>.</p>
<p>Alternatively, <a href="https://gitlab.com/users/sign_in">sign up for GitLab.com</a>
to use GitLab&rsquo;s own infrastructure.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab 16.2 released</title><link href="https://docs.gitlab.com/releases/16/16-2-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/16/16-2-released/</id><published>2023-07-22T00:00:00Z</published><updated>2023-07-22T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On July 22, 2023, GitLab 16.2 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong></strong>
</p>
<p>Xing Xin was recognized for a recent merge request to <a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/6008">use quarantined repo for conflict detection</a>. Karthik Nayak, a Sr. Backend Engineer at GitLab, noted: &ldquo;Using quarantined repositories allows for avoiding stale objects in git repositories if an operation fails midway. Xing was able to recognize an RPC where we could introduce a quarantine repository and also responded to feedback with good pointers and was able to convince us around some questions with good knowledge about the codebase.&rdquo;</p>
<p>Xing has been contributing to GitLab and the Gitaly project since 2020. A bytedancer from ByteDance, Xing also spends time in Alibaba Cloud and AntGroup, focusing on code hosting and engineer efficiency. Xing added that the &ldquo;GitLab community inspired me a lot for both the best practices of managing code and the comments from all the kind reviewers. Hope to grow together with the community.&rdquo;</p>
<p>Missy Davies is one of the newest members of the <a href="https://contributors.gitlab.com/docs/previous-heroes">GitLab Heroes</a> program. She was recognized for <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests?scope=all&amp;state=merged&amp;assignee_username=missy-davies">many recent contributions</a> across GitLab projects, including several merge requests for the <a href="https://handbook.gitlab.com/handbook/engineering/development/ops/verify/pipeline-execution/">Pipeline Execution</a> and <a href="https://handbook.gitlab.com/handbook/engineering/development/ops/deploy/environments/">Environments</a> groups.</p>
<p>Missy has also been an active member of the GitLab Contributor Community and regularly engages in community events, office hours, and on the Discord server. Both Lee Tickett and Marco Zille, members of the GitLab Community Core Team, highlighted Missy&rsquo;s engagement with the wider community. Lee added that Missy has been &ldquo;living our values&rdquo;.</p>
<p>Missy shared that she has found great enjoyment in her growing involvement in the world of open source at GitLab. She values the strong sense of community, the continuous learning opportunities, and shared passion for open source principles. As a backend developer with experience working with Ruby on Rails and Python, Missy has been an impactful GitLab contributor since 2022.</p>
<p>A big thanks to all of our community contributors this past release 🙌</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>All new rich text editor experience</strong>
    <p><p>GitLab 16.2 features an all-new rich text editing experience! This new capability is available for everyone, as an alternative to the existing Markdown editing experience.</p>
<p>For many, using the plain text editor for comments or descriptions is a barrier to collaboration. Remembering the syntax for image references or working with long tables can be tedious even for those who are relatively experienced with the syntax. The rich text editor aims to break down these barriers by providing a &ldquo;what you see is what you get&rdquo; editing experience and an extensible foundation on which we can build custom editing interfaces for things like diagrams, content embeds, media management, and more.</p>
<p>The rich text editor is now available in all issues, epics and merge requests. We plan to make it available in more places across GitLab soon. You can follow our progress <a href="https://gitlab.com/groups/gitlab-org/-/epics/10378">here</a>.</p>
<p>We are proud of the new editing experience and can&rsquo;t wait to see what you think. Please try the new rich text editor and let us know about your experience in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/416293">this issue</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/rich_text_editor.html">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab triggers a Flux synchronization without any configuration</strong>
    <p>By default, Flux synchronizes Kubernetes manifests at regular intervals. Triggering a reconciliation immediately when a manifest changes by default requires additional configuration. With the GitLab agent for Kubernetes, you can push a change to your manifest and trigger a Flux sync automatically.</p>
    <p><a href="https://docs.gitlab.com/ee/user/clusters/agent/gitops.html#immediate-git-repository-reconciliation">View Documentation</a></p>
  </li>
  <li>
    <strong>Support for Keyless Signing with Cosign</strong>
    <p><p>Properly storing, rotating, and managing signing keys can be difficult and typically requires the overhead of managing a separate Key Management System (KMS). GitLab now supports keyless signing through a native integration with the Sigstore Cosign tool which allows for easy, convenient, and secure signing within the GitLab CI/CD pipeline.  Signing is done using a very short-lived signing key. The key is generated through a token obtained from the GitLab server using the OIDC identity of the user who ran the pipeline. This token includes unique claims that certify the token was generated by a CI/CD pipeline.</p>
<p>To begin using keyless signing for your build artifacts, container images, and packages, users only need to add a few lines to their CI/CD file as <a href="https://docs.gitlab.com/ee/ci/yaml/signing_examples.html">shown in our documentation</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/yaml/signing_examples.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Command palette</strong>
    <p><p>If you&rsquo;re a power user, using the keyboard to navigate and take action can be frustrating. Now, a new command palette helps you use the keyboard to get more done.</p>
<p>To enable the command palette, open the left sidebar and click  <strong>Search GitLab</strong> (🔍) or use the <kbd>/</kbd> key.</p>
<p>Type one of the special characters:</p>
<ul>
<li><kbd>&gt;</kbd> - Create a new object or find a menu item</li>
<li><kbd>@</kbd> - Search for a user</li>
<li><kbd>:</kbd> - Search for a project</li>
<li><kbd>/</kbd> - Search for project files in the default repository branch</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/search/command_palette.html">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Duo Code Suggestions improvements powered by Google AI</strong>
    <p><p>Code Suggestions now use Google Cloud&rsquo;s customizable foundation models and open generative AI infrastructure, with generative AI support in Vertex AI.</p>
<p>GitLab Code Suggestions are routed through Google Vertex AI Codey API&rsquo;s <a href="https://cloud.google.com/vertex-ai/docs/generative-ai/data-governance">Data Governance</a> and <a href="https://cloud.google.com/vertex-ai/docs/generative-ai/learn/responsible-ai">Responsible AI</a>. As of July 22, Code Suggestions inferences against the currently opened file and has a context window of 2,048 tokens and 8,192 character limits. This limit includes content before and after the cursor, the file name, and the extension type. Learn more about Google Vertex AI <a href="https://cloud.google.com/vertex-ai/docs/generative-ai/learn/models"><code>code-gecko</code></a>.</p>
<p><a href="https://cloud.google.com/vertex-ai/docs/generative-ai/code/code-models-overview#supported_coding_languages">The Google Vertex AI Codey APIs</a> directly support: C++, C#, Go, Google SQL, Java, JavaScript, Kotlin, PHP, Python, Ruby, Rust, Scala, Swift, TypeScript. And for infrastructure files, support: Google Cloud CLI, Kubernetes Resource Model (KRM), and Terraform.</p>
<p>We are continuously iterating to improve Code Suggestions. Give it a try and <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/405152">share your feedback with us</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/repository/code_suggestions.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Track your machine learning model experiments</strong>
    <p><p>When data scientists create machine learning (ML) models, they often experiment with different parameters, configurations, and feature engineering, so they can improve the performance of the model. The data scientists need to keep track of all of this metadata and the associated artifacts, so they can later replicate the experiment. This work is not trivial, and existing solutions require complex setup.</p>
<p>With machine learning model experiments, data scientists can log parameters, metrics, and artifacts directly into GitLab, giving easy access to their most performant models. This feature is an <a href="https://docs.gitlab.com/ee/policy/experiment-beta-support.html#experiment">experiment</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/ml/experiment_tracking/">View Documentation</a></p>
  </li>
  <li>
    <strong>New customization layer for the Value Streams Dashboard</strong>
    <p><p>We added a new configuration file to the <a href="https://youtu.be/EA9Sbks27g4">Value Streams Dashboard</a> for easier customization of the dashboard&rsquo;s data and appearance. In this file you can define various settings and parameters, such as title, description, and number of panels and filters. The file is schema-driven and managed with version control systems like Git. This enables tracking and maintaining a history of configuration changes, reverting to previous versions if necessary, and collaborating effectively with team members.</p>
<p>The new configuration also includes the option to filter the metrics by labels. You can adjust the <a href="https://about.gitlab.com/blog/getting-started-with-value-streams-dashboard/">metrics comparison panel</a> based on your areas of interest, filter out irrelevant information, and focus on the data that is most relevant to your analysis or decision-making process.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/analytics/value_streams_dashboard.html">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Scale and Deployments</h4>
<ul>
  <li>
    <strong>Group-level wiki now available in Advanced Search</strong>
    <p>With this release, we&rsquo;ve extended Advanced Search to include <a href="https://docs.gitlab.com/ee/user/project/wiki/group.html">group-level wikis</a>. Users will now be able to find content in these wikis more easily and quickly than before.</p>
    <p><a href="https://docs.gitlab.com/ee/user/search/advanced_search.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Omnibus improvements</strong>
    <p><ul>
<li>Our version of Redis is updated to the latest stable version, <a href="https://raw.githubusercontent.com/redis/redis/7.0/00-RELEASENOTES"><code>7.0.12</code></a>.</li>
<li>For fresh installations of GitLab, you can now opt-in to using <a href="https://www.postgresql.org/docs/14/release-14.html#id-1.11.6.12.4">PostgreSQL 14</a>.</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/omnibus/">View Documentation</a></p>
  </li>
  <li>
    <strong>View deployments from Jira issues mentioned in GitLab commits</strong>
    <p><p>Previously, GitLab deployments were linked from the Jira development panel only when a Jira issue
was mentioned in either the branch or merge request associated with the deployment.
This was often inconvenient for users because it required them to deploy
from merge requests, which is not the typical workflow.</p>
<p>With this release, GitLab deployments also scan for Jira issue mentions in the messages of the
last 5,000 commits made to the branch after the last successful deployment. The GitLab deployment is associated with all of the mentioned Jira issues.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/integration/jira/development_panel.html#information-displayed-in-the-development-panel">View Documentation</a></p>
  </li>
  <li>
    <strong>Automatic deletion of unconfirmed users</strong>
    <p>When invitations are sent to an incorrect email address, they can never be confirmed. Previously, administrators had to manually delete these accounts. Now, administrators can turn on automatic deletion of unconfirmed users after a specified number of days. Similarly, on GitLab.com, unconfirmed accounts will be deleted automatically after <a href="https://docs.gitlab.com/ee/user/gitlab_com/#unconfirmed-user-deletion">the specified number of days</a>.</p>
    <p><a href="https://docs.gitlab.com/ee/administration/moderate_users.html#automatically-delete-unconfirmed-users">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved security for feed tokens</strong>
    <p>Feed tokens have been made more secure by only working for the URL they were generated for. This narrows the scope of feeds that can be read if the token was leaked.</p>
    <p><a href="https://docs.gitlab.com/ee/security/token_overview.html#feed-token">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab for Slack app available on self-managed GitLab</strong>
    <p><p>With this release, the GitLab for Slack app is available on self-managed instances. On self-managed GitLab, you can create
a copy of the GitLab for Slack app from a <a href="https://api.slack.com/reference/manifests#creating_apps">manifest file</a> and
install that copy in your Slack workspace. Each copy is private and not publicly distributable.</p>
<p>To create and configure the app, see <a href="https://docs.gitlab.com/ee/administration/settings/slack_app.html">GitLab for Slack app administration</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/settings/slack_app.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Speed up imports from GitHub using multiple access tokens</strong>
    <p><p>By default, the GitHub importer uses a single access token when importing projects from GitHub to GitLab. An access token for a user account is typically rate limited to
5000 requests per hour. This can significantly reduce the speed of the importer when:</p>
<ul>
<li>Importing multiple small to medium sized projects.</li>
<li>Importing a single massive project with a lot of data.</li>
</ul>
<p>With this release, you can pass a list of access tokens to the GitHub importer API so that the API can rotate through them when rate limited.
When using multiple access tokens:</p>
<ul>
<li>The tokens cannot be from the same account because they would all share one rate limit.</li>
<li>Tokens must have the same permissions and sufficient privileges to the repositories to import.</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/ee/api/import.html#import-repository-from-github">View Documentation</a></p>
  </li>
  <li>
    <strong>Sync auditor role with OIDC provider</strong>
    <p><p>You can now sync OIDC groups to the <code>auditor</code> role in GitLab. This allows automated user lifecycle management facilitated by OIDC to use the <code>auditor</code> role, which was previously unsupported in the role mapping.</p>
<p>Thank you <a href="https://gitlab.com/mareo">Marin Hannache</a> for your contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/auth/oidc.html#auditor-groups">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved sign-in and sign-up pages</strong>
    <p><p>The GitLab sign-in and sign-up pages have been improved:</p>
<ul>
<li>Two column layout when custom text is present.</li>
<li>Fixed issue with <code>Remember me</code> checkbox with multiple LDAPs.</li>
<li>Improved dark mode experience.</li>
<li>Larger single sign-on buttons.</li>
<li>Moved footer to bottom of page to avoid hiding page elements.</li>
<li>Language switcher added to the SAML sign-on page.</li>
<li>Password checks enabled in the registration trial page.</li>
</ul></p>
    <p><a href="https://docs.gitlab.com/ee/topics/authentication/index.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Backup adds the ability to skip projects</strong>
    <p>The built-in <a href="https://docs.gitlab.com/ee/raketasks/backup_restore.html">backup and restore</a> tool adds the ability to skip specific repositories. The Rake task now accepts a list of comma-separated group or project paths to be skipped during the backup or restore by using the new <code>SKIP_REPOSITORIES_PATHS</code> environment variable. This will allow you to skip, for example, stale or archived projects which do not change over time, saving you a) time by speeding up the backup run, and b) space by not including this data in the backup file.
Thanks to <a href="https://gitlab.com/nE0sIghT">Yuri Konotopov</a> for this <a href="https://gitlab.com/gitlab-org/security-products/analyzers/semgrep/-/merge_requests/196">community contribution</a>!</p>
    <p><a href="https://docs.gitlab.com/ee/raketasks/backup_gitlab.html#back-up-specific-repositories">View Documentation</a></p>
  </li>
  <li>
    <strong>Geo add individual resync and reverification for all components</strong>
    <p>Geo adds the ability to resync and reverify individual items for all component types managed by the <a href="https://docs.gitlab.com/ee/development/geo/framework.html">self-service framework</a>. Now you can force a resync or reverification operation on any individual item managed by Geo by using the UI. This can help expedite a resync or reverification operation for failed items, or after changes have been applied to fix sync or verification errors.</p>
    <p><a href="https://docs.gitlab.com/ee/administration/geo/">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>Improve Git LFS download performance</strong>
    <p><p>For instances which store LFS objects in object storage without <a href="https://docs.gitlab.com/ee/administration/object_storage.html#proxy-download">proxy download enabled</a>, GitLab now processes LFS requests in bulk. This dramatically improves the performance of downloading a large number of LFS objects.</p>
<p>Previously, due to how LFS objects were fetched, GitLab created many very small requests which checked user permissions and redirected to the object stored externally. This had the potential to cause significant load and a reduction in performance. With this fix, we have reduced load on the primary GitLab instance and provided a faster download experience for our users.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/topics/git/lfs/index.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Install the agent for Kubernetes using extra volumes in the Helm chart</strong>
    <p>The <code>agentk</code> component of the agent for Kubernetes requires a token to authenticate with GitLab. Previously, you could provide the token as-is, or as a reference to the Kubernetes secret that contains the token. However, you might operate in an environment where the secret is already available in a volume, and prefer to mount that volume instead of creating a separate secret. From GitLab 16.2, the GitLab agent Helm chart ships with this added feature thanks to a community contribution from <a href="https://gitlab.com/tspearconquest">Thomas Spear</a>.</p>
    <p><a href="https://docs.gitlab.com/ee/user/clusters/agent/install/#customize-the-helm-installation">View Documentation</a></p>
  </li>
  <li>
    <strong>Support for custom CI variables in the Scan Execution Policies editor</strong>
    <p>You can now define custom CI variables, including their values, in the Scan Execution Policies editor. CI variables defined in a policy override the matching variables defined in the projects enforced by the policy. For example, a policy may define a CI Variable <code>SAST_EXCLUDED_ANALYZERS</code> to <code>brakeman</code>. When the scanner is enforced in a project, the scanner will run with the variable set to <code>brakeman</code> regardless of any variables defined in the project&rsquo;s CI configuration. For each scan type, you can define values for default variables, also create custom key-value pairs for custom CI variables. This makes customizing a scan execution policy quicker and easier.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/policies/scan-execution-policies.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Allow scan execution policies to enable CI/CD pipelines in development projects</strong>
    <p>In previous GitLab versions, security policies were not enforced on projects without a <code>.gitlab-ci.yml</code> file, or where AutoDevOps was disabled. In GitLab 16.2, security policies implicity enable CI/CD pipelines on projects that do not contain a <code>.gitlab-ci.yml</code> file. This is another step in ensuring compliance of security policies and allow you to enforce secret detection, static analysis, or any other jobs where builds are not required.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/policies/scan-execution-policies.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Target &#34;Default&#34; or &#34;Protected&#34; branches in security policies</strong>
    <p><p>Scan execution and scan result policies will allow you to scope enforcement to branches that are &ldquo;Default&rdquo; branches or &ldquo;Protected branches&rdquo; across the many projects a policy is enforcing. Rather than requiring policies to specify branch names explicitly, policies can be enforced more broadly and ensure branches with atypical names are not excluded from compliance.</p>
<p>Branch rules can be configured across our various security policy rule types by using the <code>branch_type</code> field:</p>
<ul>
<li><a href="https://docs.gitlab.com/ee/user/application_security/policies/scan-result-policies.html#scan_finding-rule-type">Scan_finding rule types for scan result policies</a></li>
<li><a href="https://docs.gitlab.com/ee/user/application_security/policies/scan-result-policies.html#license_finding-rule-type">License_finding rule types for scan result policies</a></li>
<li><a href="https://docs.gitlab.com/ee/user/application_security/policies/scan-execution-policies.html#pipeline-rule-type">Pipeline rule types for scan execution policies</a></li>
<li><a href="https://docs.gitlab.com/ee/user/application_security/policies/scan-execution-policies.html#schedule-rule-type">Schedule rule types for scan execution policies</a></li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/policies/scan-result-policies.html#scan_finding-rule-type">View Documentation</a></p>
  </li>
  <li>
    <strong>Audit event streaming to Google Cloud Logging</strong>
    <p><p>You can now select Google Cloud Logging as a destination for audit event streams.</p>
<p>Previously, you had to use the headers to try to build a request that Google Cloud Logging would accept. This method was prone to errors and
could be difficult to troubleshoot.</p>
<p>Now, you can select Google Cloud Logging as the destination for the stream and provide your project ID, client email, log ID, and private
key to allow for a more seamless integration.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/audit_event_streaming/#google-cloud-logging-streaming">View Documentation</a></p>
  </li>
  <li>
    <strong>Compliance frameworks report export</strong>
    <p><p>You can now export a report of compliance frameworks and their associated projects to a CSV file.</p>
<p>With the addition of the compliance frameworks report at the group level, you were able to see and
manage which projects your compliance frameworks applied to.</p>
<p>With the new export, you can keep a copy of that file for reference. You might keep the file as a
single source of truth for the ideal state of your project and compliance framework relationships. Or you
might send the file people in your organization who may not work in GitLab, but have an interest in seeing
which projects are tagged with which frameworks.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/compliance/compliance_report/#export-a-report-of-compliance-frameworks-on-projects-in-a-group">View Documentation</a></p>
  </li>
  <li>
    <strong>Group/Sub-Group Level Dependency List</strong>
    <p>When reviewing a list of dependencies, it is important to have an overall view.
Managing dependencies at the project level is problematic for large organizations that want to audit their dependencies across all their projects.
With this release, you can see all dependencies at the project or group level, including subgroups. This feature is off by default behind feature flag <code>group_level_dependencies</code>.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/dependency_list/">View Documentation</a></p>
  </li>
  <li>
    <strong>Allow initial push to protected branches</strong>
    <p><p>In previous versions of GitLab, when a default branch was fully protected, only project maintainers and owners could push an initial commit to a default branch.</p>
<p>This caused problems for developers who created a new project, but couldn&rsquo;t push an initial commit to it because only the default branch existed.</p>
<p>With the <strong>Fully protected after initial push</strong> setting, developers can push the initial commit to the default branch of a repository, but cannot push
any commits to the default branch afterward. Similar to when a branch is fully protected, project maintainers can always push to the default branch but no one
can force push.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/repository/branches/default.html#protect-initial-default-branches">View Documentation</a></p>
  </li>
  <li>
    <strong>Instance-level streaming audit events</strong>
    <p><p>Before GitLab 16.1, only audit events from top-level groups could be streamed to an external destination.</p>
<p>Now, instance administrators can add a streaming destination for audit events produced at the instance level.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/audit_event_streaming/index.html#instance-streaming-destinations">View Documentation</a></p>
  </li>
  <li>
    <strong>Streaming audit event filtering UI</strong>
    <p><p>In previous version of GitLab, you had to use the GraphQL API to add audit event type filters to your audit event streams.</p>
<p>Now, you can use the filter dropdown in the GitLab UI to see all the available audit event types, grouped by the
area of GitLab to which they are relevant, and search for the exact types you want to send in a stream.</p>
<p>This significantly reduces the time needed to add filtering to audit event streams because you no longer have to pull the entire list using the API and
search through the list manually.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/audit_event_streaming/#event-type-filters">View Documentation</a></p>
  </li>
  <li>
    <strong>Interactive diff suggestions in merge requests</strong>
    <p><p>When you suggest changes in a merge request, you can now edit your suggestions more quickly. In a comment, switch to the rich text editor and use the UI to move up and down the lines of text. With this change, you can view your suggestions exactly as they will appear when the comment is posted.</p>
<p>The rich text editor is a new way of editing in GitLab. It&rsquo;s available in merge requests, but also available alongside the plain text editor in issues and epics.</p>
<p>We plan to have the rich text editor available in more areas of GitLab soon and we are actively working on that. You can follow our progress <a href="https://gitlab.com/groups/gitlab-org/-/epics/10378">here</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/merge_requests/reviews/suggestions.html#using-the-rich-text-editor">View Documentation</a></p>
  </li>
  <li>
    <strong>Import PyPI packages with CI/CD pipelines</strong>
    <p><p>Have you been thinking about moving your PyPI repository to GitLab, but haven&rsquo;t been able to invest the time to migrate? In this release, GitLab is launching the first version of a PyPI package importer.</p>
<p>You can now use the Packages Importer tool to import packages from any PyPI-compliant registry, like Artifactory.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/packages/package_registry/#to-import-packages">View Documentation</a></p>
  </li>
  <li>
    <strong>Add emoji reactions to comments on uploaded designs</strong>
    <p>You can now express your thoughts more creatively by adding emoji
reactions to comments in <a href="https://docs.gitlab.com/ee/user/project/issues/design_management.html">Design Management</a>.
This feature adds a touch of fun and ease to collaboration, fostering better
communication and enabling teams to provide quick feedback in a more expressive
way.</p>
    <p><a href="https://docs.gitlab.com/ee/user/award_emojis.html">View Documentation</a></p>
  </li>
  <li>
    <strong>SAST analyzer updates</strong>
    <p><p>GitLab SAST includes <a href="https://docs.gitlab.com/ee/user/application_security/sast/#supported-languages-and-frameworks">many security analyzers</a> that the GitLab Static Analysis team actively maintains, updates, and supports.</p>
<p>During the 16.2 release milestone, our changes focused on the Semgrep-based analyzer and the GitLab-maintained rules it uses for scanning. We released the following changes:</p>
<ul>
<li>Clarified the explanation and guidance for JavaScript rules, building on <a href="https://about.gitlab.com/releases/2023/06/22/gitlab-16-1-released/#clearer-guidance-and-better-coverage-for-sast-rules">improvements for other languages released in GitLab 16.1</a></li>
<li>Updated rules to find additional vulnerabilities in Java and JavaScript.</li>
<li>Changed the default configuration for which files are ignored in scans by:
<ul>
<li>Removing <code>.gitignore</code> exclusion. Thanks to <a href="https://gitlab.com/SimonGurney"><code>@SimonGurney</code></a> for this community contribution.</li>
<li>Respecting locally-defined <code>.semgrepignore</code> files. Thanks to <a href="https://gitlab.com/hmrc.colinameigh"><code>@hmrc.colinameigh</code></a> for this community contribution.</li>
</ul>
</li>
<li>Improved a rule related to Go memory aliasing. Thanks to <a href="https://gitlab.com/tyage"><code>@tyage</code></a> for this community contribution.</li>
<li>Removed a <code>-1</code> suffix added to the Semgrep rule IDs for JavaScript rules. This was added in GitLab 16.0 as a side-effect of an unrelated change, but interfered with customers&rsquo; existing <code>semgrepignore</code> comments.</li>
</ul>
<p>See the <a href="https://gitlab.com/gitlab-org/security-products/analyzers/semgrep/-/blob/main/CHANGELOG.md#v440"><code>semgrep</code> CHANGELOG</a> and <a href="https://gitlab.com/gitlab-org/security-products/sast-rules/-/blame/main/CHANGELOG.md"><code>sast-rules</code> CHANGELOG</a> for further details.
We&rsquo;re tracking further improvements to GitLab-managed rulesets in <a href="https://gitlab.com/groups/gitlab-org/-/epics/10907">epic 10907</a>.</p>
<p>If you <a href="https://docs.gitlab.com/ee/user/application_security/sast/#configure-sast-in-your-cicd-yaml">include the GitLab-managed SAST template</a> (<a href="https://gitlab.com/gitlab-org/gitlab/blob/master/lib/gitlab/ci/templates/Security/SAST.gitlab-ci.yml"><code>SAST.gitlab-ci.yml</code></a>) and run GitLab 16.0 or higher, you automatically receive these updates.
To remain on a specific version of any analyzer and prevent automatic updates, you can <a href="https://docs.gitlab.com/ee/user/application_security/sast/#pinning-to-minor-image-version">pin its version</a>.</p>
<p>For previous changes, see <a href="https://about.gitlab.com/releases/2023/06/22/gitlab-16-1-released/#sast-analyzer-updates">last month&rsquo;s updates</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/sast/analyzers">View Documentation</a></p>
  </li>
  <li>
    <strong>Secret Detection updates</strong>
    <p><p>We regularly release updates to the GitLab Secret Detection analyzer. During the GitLab 16.2 milestone, we:</p>
<ul>
<li>Added <a href="https://docs.gitlab.com/ee/user/application_security/secret_detection/#detected-secrets">GitLab-managed detection rules</a> for:
<ul>
<li>OpenAI API keys.</li>
<li>CircleCI Personal and Project access tokens. Thanks to <a href="https://gitlab.com/nathanwfish"><code>@nathanwfish</code></a> for this community contribution.</li>
</ul>
</li>
<li>Improved performance of rules that use the <code>keywords</code> optimization.</li>
<li>Fixed <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/358073">an issue</a> where Secret Detection results created permalinks to the wrong location in the repository.</li>
</ul>
<p>See the <a href="https://gitlab.com/gitlab-org/security-products/analyzers/secrets/-/blob/master/CHANGELOG.md#v514">CHANGELOG</a> for further details.</p>
<p>If you <a href="https://docs.gitlab.com/ee/user/application_security/secret_detection/#enable-secret-detection">use the GitLab-managed Secret Detection template</a> (<a href="https://gitlab.com/gitlab-org/gitlab/blob/master/lib/gitlab/ci/templates/Jobs/Secret-Detection.gitlab-ci.yml"><code>Secret-Detection.gitlab-ci.yml</code></a>) and run GitLab 16.0 or higher, you automatically receive these updates.
To remain on a specific version of any analyzer and prevent automatic updates, you can <a href="https://docs.gitlab.com/ee/user/application_security/secret_detection/#pinning-to-specific-analyzer-version">pin its version</a>.</p>
<p>For previous changes, see <a href="https://about.gitlab.com/releases/2023/05/22/gitlab-16-0-released/#secret-detection-updates">the most recent Secret Detection update</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/secret_detection/">View Documentation</a></p>
  </li>
  <li>
    <strong>Support for NuGet v2 in Dependency and License Scanning</strong>
    <p>In addition to NuGet <code>v1</code> lock files, GitLab Dependency and License Scanning both now support analyzing dependencies defined in NuGet <code>v2</code> lock files.</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/dependency_scanning/#obtaining-dependency-information-by-parsing-lockfiles">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved SAST vulnerability tracking</strong>
    <p><p>GitLab SAST <a href="https://docs.gitlab.com/ee/user/application_security/sast/#advanced-vulnerability-tracking">Advanced Vulnerability Tracking</a> makes triage more efficient by keeping track of findings as code moves.
We&rsquo;ve released two improvements in GitLab 16.2:</p>
<ol>
<li>Expanded language support: Advanced Vulnerability Tracking is now enabled for C#.</li>
<li>Better tracking: We&rsquo;ve improved the tracking algorithm to handle whitespace and comments better in C, C#, Go, Java, JavaScript, and Python. We&rsquo;ve also fixed issues with tracking certain Go functions.</li>
</ol>
<p>We&rsquo;re tracking further improvements, including expansion to more languages, better handling of more language constructs, and improved tracking for Python and Ruby, in <a href="https://gitlab.com/groups/gitlab-org/-/epics/5144">epic 5144</a>.</p>
<p>These changes are included in <a href="/#sast-analyzer-updates">updated versions</a> of GitLab SAST <a href="https://docs.gitlab.com/ee/user/application_security/sast/analyzers.html">analyzers</a>.
Your project&rsquo;s vulnerability findings are updated with new tracking signatures after the project is scanned with the updated analyzers.
You don&rsquo;t have to take action to receive this update unless you&rsquo;ve <a href="https://docs.gitlab.com/ee/user/application_security/sast/#pinning-to-minor-image-version">pinned SAST analyzers to a specific version</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/sast/#advanced-vulnerability-tracking">View Documentation</a></p>
  </li>
  <li>
    <strong>CI/CD: Support for `when: never` on conditional includes</strong>
    <p><p><a href="https://docs.gitlab.com/ee/ci/yaml/index.html#include"><code>include</code></a> is one of the most popular keywords to use when writing a full CI/CD pipeline. If you are building larger pipelines, you are probably using the <code>include</code> keyword to bring external YAML configuration into your pipeline.</p>
<p>In this release, we are expanding the power of the keyword so you can use <code>when: never</code> when using <a href="https://docs.gitlab.com/ee/ci/yaml/includes.html#use-rules-with-include"><code>rules</code> with <code>include</code></a>. Now, you can decide when external CI/CD configuration will be excluded when a specific rule is satisfied. This will help you write a standardized pipeline with better ability to dynamically modify itself based on the conditions you choose.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/yaml/includes.html#include-with-rulesif">View Documentation</a></p>
  </li>
  <li>
    <strong>Medium SaaS runners on Linux available to all tiers</strong>
    <p><p>We have now made our medium <a href="https://docs.gitlab.com/ee/ci/runners/saas/linux_saas_runner.html">GitLab SaaS runner on Linux</a> with 4 vCPUs and 16 GB RAM available to all tiers.</p>
<p>Previously users on the Free tier were only able to use our small Linux runner, sometimes causing longer CI/CD execution times.
We are excited to see our Free users accelerate their pipeline speeds.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/runners/saas/linux_saas_runner.html">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner 16.2</strong>
    <p><p>We’re also releasing GitLab Runner 16.2 today! GitLab Runner is the lightweight, highly-scalable agent that runs your CI/CD jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.</p>
<h4 id="whats-new">What&rsquo;s new:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/merge_requests/4143">Retry all k8s API calls in the runner Kubernetes executor</a></li>
</ul>
<h4 id="bug-fixes">Bug Fixes:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/2880">CI job scripts do not complete when  dockerd or any process runs in the background</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/33918">gitlab-runner-helper servercore image missing for v16.1.0</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/3802">Error:could not create cache adapter</a></li>
</ul>
<p>The list of all changes is in the GitLab Runner <a href="https://gitlab.com/gitlab-org/gitlab-runner/blob/16-2-stable/CHANGELOG.md">CHANGELOG</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/runner">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab Security Release: 16.1.2, 16.0.7, and 15.11.11</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-1-2-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-1-2-released/</id><published>2023-07-05T00:00:00Z</published><updated>2023-07-05T00:00:00Z</updated><author><name>Greg Myers</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<p>On July 5, 2023, we released versions 16.1.2, 16.0.7, and 15.11.11 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important security fixes, and we strongly recommend that all GitLab Enterprise Edition installations be upgraded to one of these versions immediately. GitLab.com is already running the patched version.</p>
<p>GitLab releases patches for vulnerabilities in dedicated security releases. There are two types of security releases: a monthly, scheduled security release, released a week after the feature release (which deploys on the 22nd of each month), and ad-hoc security releases for critical vulnerabilities. For more information, you can visit our <a href="https://about.gitlab.com/security/faq/">security FAQ</a>. You can see all of our regular and security release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>. In addition, the issues detailing each vulnerability are made public on our <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a> 30 days after the release in which they were patched.</p>
<p>We are dedicated to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers upgrade to the latest security release for their supported version. You can read more <a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all GitLab EE installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="table-of-fixes">Table of Fixes</h2>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-1-2-released/#a-user-can-change-the-name-and-path-of-some-public-gitlab-groups">A user can change the name and path of some public GitLab groups</a></td>
          <td>high</td>
      </tr>
  </tbody>
</table>
<h2 id="a-user-can-change-the-name-and-path-of-some-public-gitlab-groups">A user can change the name and path of some public GitLab groups</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/912 -->
<p>An issue has been discovered in GitLab EE affecting all versions starting from 12.8 before 15.11.11, all versions starting from 16.0 before 16.0.7, all versions starting from 16.1 before 16.1.2. An attacker could change the name or path of a public top-level group in certain situations. This is a high severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:H/I:H/A:H</code>, 8.0). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3484">CVE-2023-3484</a>.</p>
<p>Thanks <a href="https://hackerone.com/zeb0x01">zeb0x01</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="non-security-patches">Non Security Patches</h2>
<p>This security release also includes the following non-security patches.</p>
<h3 id="1612">16.1.2</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/124818" title="Fix environments tab is empty after upgrading to 16.1">Fix environments tab is empty after upgrading to 16.1</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/125074" title="Fix Bitbucket Cloud Importer: 16.1 backport">Fix Bitbucket Cloud Importer: 16.1 backport</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/125111" title="Fix GitHub Importer: 16.1 Backport">Fix GitHub Importer: 16.1 Backport</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/125116" title="Fix overlapping titles in wiki sidebar navigation">Fix overlapping titles in wiki sidebar navigation</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/124613" title="Reset webpack path for Mermaid iFrames">Reset webpack path for Mermaid iFrames</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-security-release-notifications">Receive Security Release Notifications</h2>
<p>To receive security release blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">security release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Security Release: 16.1.1, 16.0.6, and 15.11.10</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-1-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-1-1-released/</id><published>2023-06-29T00:00:00Z</published><updated>2023-06-29T00:00:00Z</updated><author><name>Nikhil George</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<p>On June 29, 2023, we released versions 16.1.1, 16.0.6, and 15.11.10 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important security fixes, and we strongly recommend that all GitLab installations be upgraded to one of these versions immediately. GitLab.com is already running the patched version.</p>
<p>GitLab releases patches for vulnerabilities in dedicated security releases. There are two types of security releases: a monthly, scheduled security release, released a week after the feature release (which deploys on the 22nd of each month), and ad-hoc security releases for critical vulnerabilities. For more information, you can visit our <a href="https://about.gitlab.com/security/faq/">security FAQ</a>. You can see all of our regular and security release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>. In addition, the issues detailing each vulnerability are made public on our <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a> 30 days after the release in which they were patched.</p>
<p>We are dedicated to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers upgrade to the latest security release for their supported version. You can read more <a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="table-of-fixes">Table of Fixes</h2>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-1-1-released/#redos-via-epicreferencefilter-in-any-markdown-fields">ReDoS via EpicReferenceFilter in any Markdown fields</a></td>
          <td>high</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-1-1-released/#new-commits-to-private-projects-visible-in-forks-created-while-project-was-public">New commits to private projects visible in forks created while project was public</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-1-1-released/#code-owners-approvals-are-not-removed-allowing-merge-into-protected-branches">Code Owners approvals are not removed allowing merge into protected branches</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-1-1-released/#maintainer-can-leak-masked-webhook-secrets-by-manipulating-url-masking">Maintainer can leak masked webhook secrets by manipulating URL masking</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-1-1-released/#information-disclosure-of-project-import-errors">Information disclosure of project import errors</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-1-1-released/#sensitive-information-disclosure-via-value-stream-analytics-controller">Sensitive information disclosure via value stream analytics controller</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-1-1-released/#bypassing-code-owners-branch-protection-rule-in-gitlab">Bypassing Code Owners branch protection rule in GitLab</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-1-1-released/#html-injection-in-email-address">HTML injection in email address</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-1-1-released/#webhook-token-leaked-in-sidekiq-logs-if-log-format-is-default">Webhook token leaked in Sidekiq logs if log format is &lsquo;default&rsquo;</a></td>
          <td>low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-1-1-released/#private-email-address-of-service-desk-issue-creator-disclosed-via-issues-api">Private email address of service desk issue creator disclosed via issues API</a></td>
          <td>low</td>
      </tr>
  </tbody>
</table>
<h2 id="redos-via-epicreferencefilter-in-any-markdown-fields">ReDoS via EpicReferenceFilter in any Markdown fields</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/902 -->
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 10.3 before 15.11.10, all versions starting from 16.0 before 16.0.6, all versions starting from 16.1 before 16.1.1. A Regular Expression Denial of Service was possible via sending crafted payloads to the preview_markdown endpoint. This is a high severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code>, 7.5). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3424">CVE-2023-3424</a>.</p>
<p>Thanks <a href="https://hackerone.com/ryhmnlfj">ryhmnlfj</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="new-commits-to-private-projects-visible-in-forks-created-while-project-was-public">New commits to private projects visible in forks created while project was public</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/905 -->
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 13.10 before 15.11.10, all versions starting from 16.0 before 16.0.6, all versions starting from 16.1 before 16.1.1. It may be possible for users to view new commits to private projects in a fork created while the project was public. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N</code>, 6.5). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-2190">CVE-2023-2190</a>.</p>
<p>Thanks <a href="https://hackerone.com/pwnie">pwnie</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="code-owners-approvals-are-not-removed-allowing-merge-into-protected-branches">Code Owners approvals are not removed allowing merge into protected branches</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/907 -->
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 15.3 before 15.11.10, all versions starting from 16.0 before 16.0.6, all versions starting from 16.1 before 16.1.1, which allows an attacker to merge arbitrary code into protected branches due to a CODEOWNERS approval bug. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:H/A:N</code>, 5.7). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3444">CVE-2023-3444</a>.</p>
<p>Thanks <a href="https://hackerone.com/glan1k">glan1k</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="maintainer-can-leak-masked-webhook-secrets-by-manipulating-url-masking">Maintainer can leak masked webhook secrets by manipulating URL masking</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/908 -->
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 15.1 prior to 15.11.10, all versions from 16.0 prior to 16.0.6, all versions from 16.1 prior to 16.1.1. A maintainer could modify a webhook URL to leak masked webhook secrets by manipulating other masked portions. This addresses an incomplete fix for CVE-2023-0838. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:L/I:L/A:N</code>, 5.5). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-2620">CVE-2023-2620</a>.</p>
<p>Thanks <a href="https://hackerone.com/theluci">theluci</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="information-disclosure-of-project-import-errors">Information disclosure of project import errors</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/903 -->
<p>An information disclosure issue in GitLab CE/EE affecting all versions from 16.0 prior to 16.0.6, and version 16.1.0 allows unauthenticated actors to access the import error information if a project was imported from GitHub. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N</code>, 5.3). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3362">CVE-2023-3362</a>.</p>
<p>This vulnerability has been discovered internally by GitLab team member <a href="https://gitlab.com/rodrigo.tomonari">Rodrigo Tomonari</a>.</p>
<h2 id="sensitive-information-disclosure-via-value-stream-analytics-controller">Sensitive information disclosure via value stream analytics controller</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/898 -->
<p>A sensitive information leak issue has been discovered in GitLab EE affecting all versions starting from 16.0 before 16.0.6, all versions starting from 16.1 before 16.1.1, which allows access to titles of private issues and merge requests. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N</code>, 5.3). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3102">CVE-2023-3102</a>.</p>
<p>Thanks <a href="https://hackerone.com/pwnie">pwnie</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="bypassing-code-owners-branch-protection-rule-in-gitlab">Bypassing Code Owners branch protection rule in GitLab</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/894 -->
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 13.7 before 15.11.10, all versions starting from 16.0 before 16.0.6, all versions starting from 16.1 before 16.1.1. This allowed a developer to remove the CODEOWNERS rules and merge to a protected branch. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N</code>, 4.3). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-2576">CVE-2023-2576</a>.</p>
<p>Thanks <a href="https://hackerone.com/inspector-ambitious">inspector-ambitious</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="html-injection-in-email-address">HTML injection in email address</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/900 -->
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 7.14 before 15.11.10, all versions starting from 16.0 before 16.0.6, all versions starting from 16.1 before 16.1.1, which allows an attacker to inject HTML in an email address field. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:N/I:L/A:N</code>, 4.1). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-2200">CVE-2023-2200</a>.</p>
<p>Thanks <a href="https://hackerone.com/cryptopone">cryptopone</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="webhook-token-leaked-in-sidekiq-logs-if-log-format-is-default">Webhook token leaked in Sidekiq logs if log format is &lsquo;default&rsquo;</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/904 -->
<p>An information disclosure issue in Gitlab CE/EE affecting all versions from 13.6 prior to 15.11.10, all versions from 16.0 prior to 16.0.6, all versions from 16.1 prior to 16.1.1, resulted in the Sidekiq log including webhook tokens when the log format was set to <code>default</code>. This is a low severity issue (<code>CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:C/C:L/I:L/A:N</code>, 3.9). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3363">CVE-2023-3363</a>.</p>
<p>This vulnerability was reported by Martin Vaisset from MyMoneyBank.</p>
<h2 id="private-email-address-of-service-desk-issue-creator-disclosed-via-issues-api">Private email address of service desk issue creator disclosed via issues API</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/897 -->
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 13.7 before 15.11.10, all versions starting from 16.0 before 16.0.6, all versions starting from 16.1 before 16.1.1, which allows an attacker to leak the email address of a user who created a service desk issue. This is a low severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:N/A:N</code>, 3.5). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-1936">CVE-2023-1936</a>.</p>
<p>Thanks <a href="https://hackerone.com/ricardobrito">ricardobrito</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="update-mattermost">Update Mattermost</h2>
<p>Mattermost has been updated to version 7.10.2 in GitLab 16.0.6 and version 7.9.4 in GitLab 15.11.10 in order to mitigate security issues.</p>
<h2 id="update-xmlsoftlibxml2-to-version-2104">Update xmlsoft/libxml2 to version 2.10.4</h2>
<p>xmlsoft/libxml2 has been updated to version 2.10.4 in order to mitigate security issues.</p>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-security-release-notifications">Receive Security Release Notifications</h2>
<p>To receive security release blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">security release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab 16.1 released</title><link href="https://docs.gitlab.com/releases/16/16-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/16/16-1-released/</id><published>2023-06-22T00:00:00Z</published><updated>2023-06-22T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On June 22, 2023, GitLab 16.1 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong></strong>
</p>
<p>Gerardo has been consistently iterating over multiple releases to deliver
the <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/351740">REST API endpoints for job token scope</a>.
Iteration is one of our <a href="https://handbook.gitlab.com/handbook/values/#iteration">core values</a>
at GitLab, and Gerardo has exemplified that with his multiple contributions to deliver the feature.</p>
<p>Due to the change in <a href="https://docs.gitlab.com/ee/update/deprecations.html#default-cicd-job-token-ci_job_token-scope-changed">default <code>CI_JOB_TOKEN</code> behavior</a>,
users who automate creation of projects cannot also automate adding the projects allowed to use
a <code>CI_JOB_TOKEN</code> with the project. This REST API endpoint enables our customers to automate this
process again and drive increased adoption of a more secure <code>CI_JOB_TOKEN</code> workflow.</p>
<p>Thanks to Gerardo and the rest of the crew from Siemens!</p>
<p>Yuri picked up an <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/18287">issue</a> that
was logged 6 years ago, took a <a href="https://handbook.gitlab.com/handbook/values/#bias-for-action">bias for action</a>
(one of our GitLab values) and contributed a fix.</p>
<p>This was a popular feature that a number of customers were interested in. This enhancement
allows the system admin to skip specific projects during backup and restore, based on a comma-separated list of group
or project paths. With this feature, system admins can skip over stale
or archived projects during their backup run, save storage space and speed up the backup.
They can also exclude specific projects when restoring from backup using the same option.</p>
<p>Thanks to Yuri for his valuable contribution!</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>All new navigation experience</strong>
    <p><p>GitLab 16.1 features an all-new navigation experience! We&rsquo;ve defaulted this experience to on for all users. To get started, go to your avatar in the top right of the UI and turn on the <strong>New navigation</strong> toggle.</p>
<p>The new navigation was designed to solve three key areas of feedback: navigating GitLab can be overwhelming, it can be hard to pick up where you left off, and you can&rsquo;t customize the navigation.</p>
<p>The new navigation includes a streamlined and improved left sidebar, where you can:</p>
<ul>
<li>Pin 📌 frequently accessed items.</li>
<li>Completely hide the sidebar and &ldquo;peek&rdquo; it back into view.</li>
<li>Easily switch contexts, search, and view subsets of data with the new <strong>Your Work</strong> and <strong>Explore</strong> options.</li>
<li>Scan more quickly because of fewer top-level menu items.</li>
</ul>
<p>We are proud of the new navigation and can&rsquo;t wait to see what you think. Review a <a href="https://gitlab.com/groups/gitlab-org/-/epics/9044#whats-different">list of what&rsquo;s changed</a> and read our blog posts about the navigation <a href="https://about.gitlab.com/blog/gitlab-product-navigation/">vision</a> and <a href="https://about.gitlab.com/blog/overhauling-the-navigation-is-like-building-a-dream-home/">design</a>.</p>
<p>Please try the new navigation and let us know about your experience in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/409005">this issue</a>. We are already <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/409005#actions-we-are-taking-from-the-feedback">addressing</a> the feedback and will eventually remove the toggle.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/tutorials/left_sidebar/index.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Visualize Kubernetes resources in GitLab</strong>
    <p><p>How do you check the status of the applications running in your clusters? The pipeline status and environment pages provide insights about the latest deployment runs. However, previous versions of GitLab lacked insights about the state of your deployments. In GitLab 16.1, you can see an overview of the primary resources in your Kubernetes deployments.</p>
<p>This feature works with every connected Kubernetes cluster. It doesn&rsquo;t matter if you deploy your workloads with the CI/CD integration or GitOps. To further improve the feature for Flux users, support for showing the synchronization status of an environment is proposed in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/391581">issue 391581</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/environments/kubernetes_dashboard.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Authenticate with service accounts</strong>
    <p><p>There are many use cases for which a non-human user might need to authenticate. Previously, depending on the desired scope, users could use personal, project, or group access tokens to meet this need. These tokens were not ideal, due to still being either tied to a human (for personal access tokens), or an unnecessarily privileged role (for group and project access tokens).</p>
<p>Service accounts are not tied to a human user, and are more granular in scope. Service account creation and management is API-only. Support for a UI option is proposed in <a href="https://gitlab.com/groups/gitlab-org/-/epics/9965">issue 9965</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/api/groups.html#service-accounts">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Dedicated is now generally available</strong>
    <p><p>GitLab Dedicated is a fully managed, single-tenant SaaS deployment of our comprehensive DevSecOps platform designed to address the needs of customers with stringent compliance requirements.</p>
<p>Customers in highly-regulated industries are unable to adopt multi-tenant SaaS offerings due to strict compliance requirements like data isolation. With GitLab Dedicated, organizations can access all of the benefits of the DevSecOps platform – including faster releases, better security, and more productive developers – while satisfying compliance requirements such as data residency, isolation, and private networking.</p>
<p><a href="https://about.gitlab.com/dedicated/">Learn more</a> about GitLab Dedicated today.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/subscriptions/gitlab_dedicated/">View Documentation</a></p>
  </li>
  <li>
    <strong>Manage job artifacts through the Artifacts page</strong>
    <p><p>Previously, if you wanted to view or manage job artifacts, you had to go to each job&rsquo;s detail page, or use the API. Now, you can view and manage job artifacts through the <strong>Artifacts</strong> page accessed at <strong>Build &gt; Artifacts</strong>.</p>
<p>Users with at least the Maintainer role can use this new interface to delete artifacts too. You can delete individual artifacts, or bulk delete up to 100 artifacts at a time through either manual selection or checking the <strong>Select all</strong> option at the top of the page.</p>
<p>Please use the survey at the top of the Artifacts page to share any feedback you have about this new functionality. To view additional UI features under consideration, you can check out the <a href="https://gitlab.com/groups/gitlab-org/-/epics/8311">Build Artifacts page enhancements epic</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/jobs/job_artifacts.html#view-all-job-artifacts-in-a-project">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved CI/CD variables list view</strong>
    <p><p>CI/CD variables are a key part of all pipelines and can be defined in multiple places, including in the project and group settings. To prepare for making bigger improvements that will help users intuitively navigate between variables at different hierarchy, we are starting out with improving the usability and layout of the variable list.</p>
<p>In GitLab 16.1, you will see the first iteration of these improvements. We have merged the &ldquo;Type&rdquo; and &ldquo;Options&rdquo; columns into a new <strong>Attributes</strong> column, which better represents these related attributes. We appreciate your feedback on how we can continue to improve the CI/CD variable experience, you are welcome to comment in our <a href="https://gitlab.com/groups/gitlab-org/-/epics/10506">variables improvement epic</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/variables/#define-a-cicd-variable-in-the-ui">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Scale and Deployments</h4>
<ul>
  <li>
    <strong>GitLab chart improvements</strong>
    <p><ul>
<li>GitLab 16.1 replaces <code>busybox</code> Docker image with <code>gitlab-base</code> Docker image to share layers with other GitLab
Docker images. This implementation treats <code>gitlab-base</code> as a helper image (like <code>kubectl</code> and <code>certificates</code>),
with optional local overrides.</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/charts/">View Documentation</a></p>
  </li>
  <li>
    <strong>Omnibus improvements</strong>
    <p><ul>
<li>GitLab 16.1 adds support for building and releasing packages on
<a href="https://www.debian.org/releases/bookworm/">Debian 12 <code>Bookworm</code></a> that released on June 10, 2023.</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/omnibus/">View Documentation</a></p>
  </li>
  <li>
    <strong>Improved domain verification</strong>
    <p><p>Domain verification serves multiple purposes across GitLab. Previously, in order to verify a domain, you had to complete the <a href="https://docs.gitlab.com/ee/user/project/pages/">GitLab Pages</a> wizard, even if you were verifying a domain for a purpose outside of GitLab Pages.</p>
<p>Now, domain verification lives at the group level, and has been streamlined. This makes it easier to verify your domains.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/enterprise_user/#set-up-a-verified-domain">View Documentation</a></p>
  </li>
  <li>
    <strong>View Vulnerability Report as Customizable Permission</strong>
    <p>The ability to view the vulnerability report is now split into a separate permission, enabling GitLab administrators and group owners to create a custom role with this permission. Previously, viewing the vulnerability report was limited to the Developer role and above. Now, any user can view the vulnerability report, as long as they are assigned a custom role that has the permission.</p>
    <p><a href="https://docs.gitlab.com/ee/user/permissions.html#custom-roles">View Documentation</a></p>
  </li>
  <li>
    <strong>Password reset email sent to any verified email address</strong>
    <p>If you forget your GitLab password, you can now reset it by email with any verified email address. Previously, only the primary email address was used for reset requests. This made it difficult to complete the password reset process if the primary email inbox was inaccessible.</p>
    <p><a href="https://docs.gitlab.com/ee/user/profile/user_passwords.html#change-your-password">View Documentation</a></p>
  </li>
  <li>
    <strong>SCIM identities included in users API response</strong>
    <p>The users API now returns the SCIM identities for a user. Previously, this information was included in the UI but not the API.</p>
    <p><a href="https://docs.gitlab.com/ee/api/users.html#for-administrators-free-self-1">View Documentation</a></p>
  </li>
  <li>
    <strong>Reintroduction of OmniAuth Shibboleth support</strong>
    <p>Shibboleth OmniAuth support has been re-introduced to GitLab. It was previously <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/388959">removed</a> in GitLab 15.9 due to lack of upstream support. Thanks to a generous community contribution by <a href="https://gitlab.com/lukaskoenen">lukaskoenen</a>, who took on upstream support, <code>omniauth-shibboleth-redux</code> is now supported in self-managed GitLab.</p>
    <p><a href="https://docs.gitlab.com/ee/integration/shibboleth.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Select administrator access for personal access tokens in Admin Mode</strong>
    <p><p>GitLab administrators can use Admin Mode to work as a non-administrator user, and turn on administrator access when needed. Previously, an administrator&rsquo;s personal access token (PAT) always had permissions to perform API actions as an administrator. Now, when adding a PAT, an administrator can decide if that PAT has administrator access to perform API actions or not, by selecting the Admin Mode scope. An administrator must enable Admin Mode for the instance to use this feature.</p>
<p>Thank you <a href="https://gitlab.com/wwwjon">Jonas Wälter</a>, <a href="https://gitlab.com/dlouzan">Diego Louzán</a>, and <a href="https://gitlab.com/TrueKalix">Andreas Deicha</a> for contributing!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html#personal-access-token-scopes">View Documentation</a></p>
  </li>
  <li>
    <strong>Prevent user from deleting account</strong>
    <p>Administrators can prevent users from deleting their account with a new user restrictions configuration setting. If this setting is enabled, users will no longer be able to delete their accounts, preserving auditable account information.</p>
    <p><a href="https://docs.gitlab.com/ee/administration/settings/account_and_limit_settings.html#prevent-users-from-deleting-their-accounts">View Documentation</a></p>
  </li>
  <li>
    <strong>Personal access token `last_used` value updated more frequently</strong>
    <p><p>The <code>last_used</code> value for personal access tokens (PAT) was previously updated every 24 hours. It is now updated every 10 minutes. This increases visibility of PAT usage and, in the case of PAT compromise, reduces risk because it takes less time before malicious activity is noticed.</p>
<p>Thank you <a href="https://thinkst.com/">Jacob Torrey</a> for your contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html#view-the-last-time-a-token-was-used">View Documentation</a></p>
  </li>
  <li>
    <strong>More detail in completed GitHub project import summary</strong>
    <p><p>When a GitHub project finished importing, GitLab showed a simple summary of imported entities. However, GitLab didn&rsquo;t show exactly which GitHub
entities failed to import nor the errors that caused the import failures. This made it difficult to decide if import results were satisfactory or not.</p>
<p>In this release, we have extended the import summary to include a list of GitHub entities that weren&rsquo;t imported and, if possible, provide
a direct link to these entities on GitHub. GitLab now also shows an error for each failure. This helps you understand how well the import worked
and helps you troubleshoot problems.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/import/github.html#check-status-of-imports">View Documentation</a></p>
  </li>
  <li>
    <strong>Show external user as a comment author in Service Desk issues</strong>
    <p>When a requester replies to a Service Desk email, it is useful to the Service Desk agent to know who made the comment. But because the requester can be an external user with no GitLab account or access to the GitLab project, these comments were previously attributed to the GitLab Support Bot. From now on, email replies from requesters will be attributed to the external users, making it more clear who made the comments in the GitLab issue.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/service_desk/">View Documentation</a></p>
  </li>
  <li>
    <strong>Issue URL placeholder in Service Desk emails</strong>
    <p>For Service Desk requesters, it can be helpful to access the Service Desk issue directly rather than interact with the Service Desk request only via email. We are introducing a new placeholder <code>%{ISSUE_URL}</code>, that you can use in your email templates (for example, the &ldquo;thank you&rdquo; email) to link requesters directly to the Service Desk issue.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/service_desk/#thank-you-email">View Documentation</a></p>
  </li>
  <li>
    <strong>Backup adds the ability to skip projects</strong>
    <p>The built-in <a href="https://docs.gitlab.com/ee/raketasks/backup_restore.html">backup and restore</a> tool adds the ability to skip specific repositories. The Rake task now accepts a list of comma-separated group or project paths to be skipped during the backup or restore by using the new <code>SKIP_REPOSITORIES_PATHS</code> environment variable. This will allow you to skip, for example, stale or archived projects which do not change over time, saving you a) time by speeding up the backup run, and b) space by not including this data in the backup file.
Thanks to <a href="https://gitlab.com/nE0sIghT">Yuri Konotopov</a> for this <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/121865">community contribution</a>!</p>
    <p><a href="https://docs.gitlab.com/ee/raketasks/backup_gitlab.html#back-up-specific-repositories">View Documentation</a></p>
  </li>
  <li>
    <strong>Geo adds filtering by replication status to all components</strong>
    <p>Geo adds filtering by replication status to all components managed by the <a href="https://docs.gitlab.com/ee/development/geo/framework.html">self-service framework</a>. Now you can filter items in the replication details views by &ldquo;In progress&rdquo;, &ldquo;Failed&rdquo;, and &ldquo;Synced&rdquo; status making it easier and faster to locate data that is failing to synchronize.</p>
    <p><a href="https://docs.gitlab.com/ee/administration/geo/">View Documentation</a></p>
  </li>
  <li>
    <strong>Geo verifies Design repositories</strong>
    <p>When you add a design to an issue, a design Git repository is created or updated, and an LFS object and an upload (for the thumbnails) are created. Geo already verifies LFS objects and uploads, and now it also verifies the design repositories as well. Now that all underlying data of <a href="https://docs.gitlab.com/ee/user/project/issues/design_management.html">Design Management</a> is verified, your design data is ensured to not be corrupted in transfer or at rest. If Geo is used as part of a disaster recovery strategy, this protects you against data loss.</p>
    <p><a href="https://docs.gitlab.com/ee/administration/geo/">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>Comment on whole file in merge requests</strong>
    <p>Merge requests now support commenting on an entire file, because not all merge request feedback is line-specific. If a file is deleted, you might want more information about why. You might also want to provide feedback about a filename, or general comments about structure.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/merge_requests/changes.html#add-a-comment-to-a-merge-request-file">View Documentation</a></p>
  </li>
  <li>
    <strong>Create a changelog from the GitLab CLI</strong>
    <p><p>Changelogs generate comprehensive lists of changes based on commits to a project. They can be challenging to automate or view, and require interacting with the GitLab API.</p>
<p>With the release of <a href="https://gitlab.com/gitlab-org/cli/-/releases/v1.30.0">GitLab CLI v1.30.0</a> you can now generate changelogs for projects directly from your shell. The <code>glab changelog generate</code> command makes it easier to review, automate, and publish changelogs.</p>
<p>Thanks <a href="https://gitlab.com/michael-mead">Michael Mead</a> for your contribution!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/changelogs.html#from-the-gitlab-cli">View Documentation</a></p>
  </li>
  <li>
    <strong>Fail closed for invalid Security Policy approval checks</strong>
    <p>Security and compliance policies allow organizations to enforce checks and balances across multiple projects to align with their security and governance programs. It&rsquo;s critical for our customers to ensure changes that impact policies do not result in the guardrails coming down. With this update, invalid rules will &ldquo;fail closed&rdquo;, blocking MRs until invalid rules in any scan result policies are addressed.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/merge_requests/approvals/#invalid-rules">View Documentation</a></p>
  </li>
  <li>
    <strong>Install npm packages from your group or subgroup</strong>
    <p><p>You can use your project&rsquo;s Package Registry to publish and install npm packages. You simply authenticate using an access token (personal, job, deploy, or project) and start publishing packages to your GitLab project.</p>
<p>This works great if you have a small number of projects. Unfortunately, if you have multiple projects, you might quickly find yourself adding dozens or even hundreds of different sources. It is common for teams in large organizations to publish packages to their project&rsquo;s Package Registry alongside the source code and pipelines. Simultaneously, they need to be able to easily install dependencies from other projects within the groups and subgroups in their organization.</p>
<p>To make sharing packages easier between projects, you can now install packages from your group so you don&rsquo;t have to remember which package lives in which project. Using an authentication token of your choice, you can install any of the group npm packages after you add your group as a source for npm packages.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/packages/npm_registry/#install-from-the-group-level%27">View Documentation</a></p>
  </li>
  <li>
    <strong>Add a description to design uploads</strong>
    <p>Currently the <a href="https://docs.gitlab.com/ee/user/project/issues/design_management.html#add-a-design-to-an-issue">Design uploads</a> have no metadata to explain their purpose, or why they are being uploaded. We&rsquo;ve added a text box as a description so you can help users understand the image better.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/issues/design_management.html#add-a-design-to-an-issue">View Documentation</a></p>
  </li>
  <li>
    <strong>Configure the static file directory in GitLab Pages</strong>
    <p>You can now configure the static file directory for GitLab Pages to any name (by default <code>public</code>).
This makes it easier to use Pages with popular static site frameworks such as Next.js, Astro, or Eleventy,
without needing to change the output folder in their configuration.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/pages/introduction.html#customize-the-default-folder">View Documentation</a></p>
  </li>
  <li>
    <strong>Code Quality analyzer updates</strong>
    <p><p>GitLab Code Quality supports <a href="https://docs.gitlab.com/ee/ci/testing/code_quality.html#integrate-multiple-tools">integrating tools you already run</a> and also offers <a href="https://docs.gitlab.com/ee/ci/testing/code_quality.html#enable-code-quality">a CI/CD template</a> that runs the CodeClimate scanning system. We published the following updates to the CodeClimate-based analyzer during the 16.1 release milestone:</p>
<ul>
<li>Updated CodeClimate to version 0.96.0. This version includes:
<ul>
<li>A new plugin for <code>golangci-lint</code>.</li>
<li>A new available version for the <code>bundler-audit</code> plugin.</li>
</ul>
</li>
<li>Added support for a configurable path to the Docker API Socket.
<ul>
<li>Thanks to <a href="https://gitlab.com/tsjnsn"><code>@tsjnsn</code></a> for this <a href="https://gitlab.com/gitlab-org/ci-cd/codequality/-/merge_requests/73">community contribution</a>. Updates to include this variable in the CI/CD template are tracked in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/409738">an issue</a>.</li>
</ul>
</li>
</ul>
<p>See the <a href="https://gitlab.com/gitlab-org/ci-cd/codequality/-/blob/master/CHANGELOG.md?ref_type=heads#anchor-0960">CHANGELOG</a> for further details.</p>
<p>If you <a href="https://docs.gitlab.com/ee/ci/testing/code_quality.html#enable-code-quality">include the GitLab-managed Code Quality template</a> (<a href="https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Jobs/Code-Quality.gitlab-ci.yml"><code>Code-Quality.gitlab-ci.yml</code></a>), you automatically receive these updates.</p>
<p>For Code Quality changes in previous releases, see <a href="https://about.gitlab.com/releases/2023/04/22/gitlab-15-11-released/#static-analysis-analyzer-updates">the most recent update</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/testing/code_quality.html">View Documentation</a></p>
  </li>
  <li>
    <strong>SAST analyzer updates</strong>
    <p><p>GitLab SAST includes <a href="https://docs.gitlab.com/ee/user/application_security/sast/#supported-languages-and-frameworks">many security analyzers</a> that the GitLab Static Analysis team actively maintains, updates, and supports. We published the following updates during the 16.1 release milestone:</p>
<ul>
<li>The Semgrep-based analyzer is updated to use version 1.23.0 of the Semgrep engine. We&rsquo;ve also <a href="/#clearer-guidance-and-better-coverage-for-sast-rules">clarified guidance and improved efficacy</a> of the GitLab-managed rules that are used to scan C, C#, Go, and Java. See the <a href="https://gitlab.com/gitlab-org/security-products/analyzers/semgrep/-/blob/main/CHANGELOG.md#v434">CHANGELOG</a> for further details.</li>
<li>The SpotBugs-based analyzer now supports changing the &ldquo;effort level&rdquo; by <a href="https://docs.gitlab.com/ee/user/application_security/sast/#security-scanner-configuration">setting the <code>SAST_SCANNER_ALLOWED_CLI_OPTS</code> CI/CD variable</a>. This allows you to improve performance by reducing the scan&rsquo;s precision and its ability to detect vulnerabilities. See the <a href="https://gitlab.com/gitlab-org/security-products/analyzers/spotbugs/-/blob/master/CHANGELOG.md#v420">CHANGELOG</a> for further details.</li>
</ul>
<p>If you <a href="https://docs.gitlab.com/ee/user/application_security/sast/#configure-sast-in-your-cicd-yaml">include the GitLab-managed SAST template</a> (<a href="https://gitlab.com/gitlab-org/gitlab/blob/master/lib/gitlab/ci/templates/Security/SAST.gitlab-ci.yml"><code>SAST.gitlab-ci.yml</code></a>) and run GitLab 16.0 or higher, you automatically receive these updates.
To remain on a specific version of any analyzer and prevent automatic updates, you can <a href="https://docs.gitlab.com/ee/user/application_security/sast/#pinning-to-minor-image-version">pin its version</a>.</p>
<p>For previous changes, see <a href="https://about.gitlab.com/releases/2023/05/22/gitlab-16-0-released/#sast-analyzer-updates">last month&rsquo;s updates</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/sast/analyzers">View Documentation</a></p>
  </li>
  <li>
    <strong>Automatic response to leaked Google Cloud secrets</strong>
    <p><p>We&rsquo;ve integrated Secret Detection with Google Cloud to better protect customers who use GitLab to develop applications on Google Cloud. Now, if an organization leaks a Google Cloud credential to a public project on GitLab.com, GitLab can automatically protect the organization by working with Google Cloud to protect the account.</p>
<p>Secret Detection searches for three types of secrets issued by Google Cloud:</p>
<ul>
<li><a href="https://cloud.google.com/iam/docs/best-practices-for-managing-service-account-keys">Service account keys</a></li>
<li><a href="https://cloud.google.com/docs/authentication/api-keys">API keys</a></li>
<li><a href="https://support.google.com/cloud/answer/6158849#rotate-client-secret">OAuth client secrets</a></li>
</ul>
<p>Publicly leaked secrets are sent to Google Cloud after they&rsquo;re discovered. Google Cloud verifies the leaks, then works to protect customer accounts against abuse.</p>
<p>This integration is on by default for projects that have <a href="https://docs.gitlab.com/ee/user/application_security/secret_detection/#enable-secret-detection">enabled Secret Detection</a> on GitLab.com. Secret Detection scanning is available in all GitLab tiers, but an automatic response to leaked secrets is currently only available in Ultimate projects.</p>
<p>See <a href="https://about.gitlab.com/blog/how-secret-detection-can-proactively-revoke-leaked-credentials/">the blog post about this integration</a> for further details.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/secret_detection/automatic_response.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Clearer guidance and better coverage for SAST rules</strong>
    <p><p>We&rsquo;ve updated the GitLab SAST rules to:</p>
<ul>
<li>More clearly explain the type of weakness each rule targets and how to fix it. We&rsquo;ve updated the description and guidance text for C, C#, Go, and Java rules so far. The remaining languages are tracked in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/382119">issue 382119</a>.</li>
<li>Catch additional vulnerabilities in existing Java rules.</li>
</ul>
<p>These improvements are part of a collaboration between the GitLab Static Analysis and Vulnerability Research teams to <a href="https://gitlab.com/groups/gitlab-org/-/epics/8170">improve the default Static Analysis rulesets</a>.
We would welcome any feedback on the default rules for SAST, Secret Detection, and IaC Scanning in <a href="https://gitlab.com/groups/gitlab-org/-/epics/8170">epic 8170</a>.</p>
<p>For more details on the changes to GitLab SAST rules, see the <a href="https://gitlab.com/gitlab-org/security-products/sast-rules/-/blob/main/CHANGELOG.md">CHANGELOG</a>.
As of GitLab 16.1, the <a href="https://gitlab.com/gitlab-org/security-products/sast-rules"><code>sast-rules</code> project</a> is the single source of all GitLab-managed default rules used in the Semgrep-based SAST analyzer.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/sast/analyzers">View Documentation</a></p>
  </li>
  <li>
    <strong>Shared ruleset customizations in SAST, IaC Scanning, and Secret Detection</strong>
    <p><p>You can now set a CI/CD variable to share ruleset customizations for <a href="https://docs.gitlab.com/ee/user/application_security/sast/customize_rulesets.html">SAST</a>, <a href="https://docs.gitlab.com/ee/user/application_security/iac_scanning/#customize-rulesets">IaC Scanning</a>, or <a href="https://docs.gitlab.com/ee/user/application_security/secret_detection/pipeline/index.html#customize-analyzer-rulesets">Secret Detection</a> across more than one project.</p>
<p>Sharing a ruleset can help you:</p>
<ul>
<li><a href="https://docs.gitlab.com/ee/user/application_security/sast/customize_rulesets.html#disable-predefined-rules">Disable predefined rules</a> that you don&rsquo;t want to focus on in your projects.</li>
<li><a href="https://docs.gitlab.com/ee/user/application_security/sast/customize_rulesets.html#override-predefined-rules">Change fields in predefined rules</a>, including the description, message, name, or severity, to reflect organizational preferences. For example, you could adjust the default severity of a rule or add information about how to remediate a finding.</li>
<li><a href="https://docs.gitlab.com/ee/user/application_security/sast/customize_rulesets.html#synthesize-a-custom-configuration">Build a custom ruleset</a> by adding or replacing rules. This option is available only for some analyzers.</li>
</ul>
<p>Further improvements in this area are discussed in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/257928">an issue</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/sast/customize_rulesets.html#specify-a-remote-configuration-file">View Documentation</a></p>
  </li>
  <li>
    <strong>CI/CD: Use `needs` in `rules`</strong>
    <p>The <a href="https://docs.gitlab.com/ee/ci/yaml/#needs">needs:</a> keyword defines a dependency relationship between jobs, which you can use to set jobs to run out of stage order. In this release we&rsquo;ve added the ability to define this relationship for specific <code>rules</code> conditions. When a condition matches a rule, the job&rsquo;s <code>needs</code> configuration is completely replaced with the <code>needs</code> in the rule. This can help speed up a pipeline based on your defined conditions, when a job can start earlier than normal. You can also use this to force a job to wait for an earlier one to complete before starting, you now have more flexible <code>needs</code> options!</p>
    <p><a href="https://docs.gitlab.com/ee/ci/yaml/#rulesneeds">View Documentation</a></p>
  </li>
  <li>
    <strong>Beautify the UI of CI/CD pipelines and jobs</strong>
    <p>One of GitLab&rsquo;s most used features is CI/CD. In 16.1, we focused on improving the usability and experience of CI/CD pipeline and job list views, as well as the pipeline details page. It&rsquo;s now easier to find the information you are looking for! If you have any comments about the changes, we&rsquo;d love to hear from you in our <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/414756">feedback issue</a>.</p>
    <p><a href="https://docs.gitlab.com/ee/ci/pipelines/">View Documentation</a></p>
  </li>
  <li>
    <strong>Increased storage for GitLab SaaS runners on Linux</strong>
    <p><p>After recently upsizing our <a href="https://docs.gitlab.com/ee/ci/runners/saas/linux_saas_runner.html">GitLab.com SaaS runners on Linux</a> in vCPU and RAM, we have now also increased the storage for <code>medium</code> and <code>large</code> machine types.</p>
<p>You can now seamlessly build, test, and deploy larger applications that require a secure, on-demand GitLab Runner Linux environment fully integrated with GitLab CI/CD.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/runners/saas/linux_saas_runner.html">View Documentation</a></p>
  </li>
  <li>
    <strong>CI/CD job token scope API endpoint</strong>
    <p><p>Starting in GitLab 16.0, the <a href="https://docs.gitlab.com/ee/ci/jobs/ci_job_token.html#configure-cicd-job-token-access">default CI/CD job token (<code>CI_JOB_TOKEN</code>) scope changed</a> for all new projects. This increased the security of new projects, but added an extra step for users who used automation to create projects. The automation sometimes has to configure the job token scope as well, which could only be done with GraphQL (or manually in the UI), not the REST API.</p>
<p>To make this setting configurable through the REST API as well, <a href="https://gitlab.com/gerardo-navarro">Gerardo Navarro</a> added a new endpoint to control the job token scope in 16.1. It is available to users with a Maintainer or higher role in the project. Thank you for this great contribution Gerardo!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/jobs/ci_job_token.html#allow-access-to-your-project-with-a-job-token">View Documentation</a></p>
  </li>
  <li>
    <strong>Runner details - consolidate runners sharing a configuration</strong>
    <p>The new runner creation method enables you to re-use a runner configuration for scenarios where you may need to register multiple runners with the same capabilities. Runners registered with the same authentication token share a configuration and are grouped in the new detailed view.</p>
    <p><a href="https://docs.gitlab.com/runner/fleet_scaling/#reusing-a-runner-configuration">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner 16.1</strong>
    <p><p>We&rsquo;re also releasing GitLab Runner 16.1 today! GitLab Runner is the lightweight, highly-scalable agent that runs your CI/CD jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.</p>
<h4 id="whats-new">What&rsquo;s new:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/29410">GitLab Runner Fleeting plugin for Azure Virtual Machines (Experimental)</a>. Thank you to <a href="https://gitlab.com/vincent_stchu">vincent_stchu</a> for this contribution!</li>
</ul>
<p>The list of all changes is in the GitLab Runner <a href="https://gitlab.com/gitlab-org/gitlab-runner/-/blob/16-1-stable/CHANGELOG.md">CHANGELOG</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/runner">View Documentation</a></p>
  </li>
</ul>
]]></content></entry><entry><title>GitLab Patch Release: 16.0.5</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-0-5-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-0-5-released/</id><published>2023-06-16T00:00:00Z</published><updated>2023-06-16T00:00:00Z</updated><author><name>Alessio Caiazza</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On June 16, 2023, we released versions 16.0.5 for GitLab Community Edition and Enterprise Edition.</p>
<p>These versions resolve a number of regressions and bugs.</p>
<h2 id="gitlab-community-edition-and-enterprise-edition">GitLab Community Edition and Enterprise Edition</h2>
<h3 id="1605">16.0.5</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/122335">Update gitlab-elasticsearch-indexer version</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/122995">Add Metrics Dashboard menu</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/123155">Fix HllRedisCounter overwriting know events aggregation with symbol instead of string (backport)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/122859">Slowly iterate MigrateSharedVulnerabilityIdentifiers</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/123699">Do not run bulk cron indexer when cluster is unhealthy</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/123524">Use root_ref to index commits</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>This version does not include any new migrations, and for multi-node deployments, <a href="https://docs.gitlab.com/ee/update/#upgrading-without-downtime">should not require any downtime</a>.</p>
<p>Please be aware that by default the Omnibus packages will stop, run migrations,
and start again, no matter how “big” or “small” the upgrade is. This behavior
can be changed by adding a <a href="http://docs.gitlab.com/omnibus/update/README.html"><code>/etc/gitlab/skip-auto-reconfigure</code></a> file,
which is only used for <a href="https://docs.gitlab.com/omnibus/update/README.html">updates</a>.</p>
<h2 id="updating">Updating</h2>
<p>To update, check out our <a href="https://about.gitlab.com/update/">update page</a>.</p>
<h2 id="gitlab-subscriptions">GitLab subscriptions</h2>
<p>Access to GitLab Premium and Ultimate features is granted by a paid <a href="https://about.gitlab.com/pricing/">subscription</a>.</p>
<p>Alternatively, <a href="https://gitlab.com/users/sign_in">sign up for GitLab.com</a>
to use GitLab&rsquo;s own infrastructure.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 16.0.4</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-0-4-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-0-4-released/</id><published>2023-06-08T00:00:00Z</published><updated>2023-06-08T00:00:00Z</updated><author><name>Alessio Caiazza</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On June 8, 2023, we released versions 16.0.4 for GitLab Community Edition and Enterprise Edition.</p>
<p>These versions resolve a number of regressions and bugs.</p>
<h2 id="gitlab-community-edition-and-enterprise-edition">GitLab Community Edition and Enterprise Edition</h2>
<h3 id="1604">16.0.4</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/122797">Fix LDAP tls_options not working</a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>This version does not include any new migrations, and for multi-node deployments, <a href="https://docs.gitlab.com/ee/update/#upgrading-without-downtime">should not require any downtime</a>.</p>
<p>Please be aware that by default the Omnibus packages will stop, run migrations,
and start again, no matter how “big” or “small” the upgrade is. This behavior
can be changed by adding a <a href="http://docs.gitlab.com/omnibus/update/README.html"><code>/etc/gitlab/skip-auto-reconfigure</code></a> file,
which is only used for <a href="https://docs.gitlab.com/omnibus/update/README.html">updates</a>.</p>
<h2 id="updating">Updating</h2>
<p>To update, check out our <a href="https://about.gitlab.com/update/">update page</a>.</p>
<h2 id="gitlab-subscriptions">GitLab subscriptions</h2>
<p>Access to GitLab Premium and Ultimate features is granted by a paid <a href="https://about.gitlab.com/pricing/">subscription</a>.</p>
<p>Alternatively, <a href="https://gitlab.com/users/sign_in">sign up for GitLab.com</a>
to use GitLab&rsquo;s own infrastructure.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Patch Release: 16.0.3</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-0-3-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-0-3-released/</id><published>2023-06-07T00:00:00Z</published><updated>2023-06-07T00:00:00Z</updated><author><name>Jenny Kim</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<!-- For detailed instructions on how to complete this, please see https://gitlab.com/gitlab-org/release/docs/-/blob/master/general/patch/blog-post.md -->
<p>On June 7, 2023, we released versions 16.0.3 for GitLab Community Edition and Enterprise Edition.</p>
<p>These versions resolve a number of regressions and bugs.</p>
<h2 id="gitlab-community-edition-and-enterprise-edition">GitLab Community Edition and Enterprise Edition</h2>
<h3 id="1603">16.0.3</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/122395">Fix serialization of pull_requests in Bitbucket Server Import</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/122539">Fix memory leak in CI config includes entry</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/122466">Fix MR approval rules sync when disabling scan result policy</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/122349">LFS: Serve pre-signed URLs in <code>/lfs/objects/batch</code></a></li>
</ul>
<h2 id="important-notes-on-upgrading">Important notes on upgrading</h2>
<p>This version does not include any new migrations, and for multi-node deployments, <a href="https://docs.gitlab.com/ee/update/#upgrading-without-downtime">should not require any downtime</a>.</p>
<p>Please be aware that by default the Omnibus packages will stop, run migrations,
and start again, no matter how “big” or “small” the upgrade is. This behavior
can be changed by adding a <a href="http://docs.gitlab.com/omnibus/update/README.html"><code>/etc/gitlab/skip-auto-reconfigure</code></a> file,
which is only used for <a href="https://docs.gitlab.com/omnibus/update/README.html">updates</a>.</p>
<h2 id="updating">Updating</h2>
<p>To update, check out our <a href="https://about.gitlab.com/update/">update page</a>.</p>
<h2 id="gitlab-subscriptions">GitLab subscriptions</h2>
<p>Access to GitLab Premium and Ultimate features is granted by a paid <a href="https://about.gitlab.com/pricing/">subscription</a>.</p>
<p>Alternatively, <a href="https://gitlab.com/users/sign_in">sign up for GitLab.com</a>
to use GitLab&rsquo;s own infrastructure.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Security Release: 16.0.2, 15.11.7, and 15.10.8</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-0-2-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-0-2-released/</id><published>2023-06-05T00:00:00Z</published><updated>2023-06-05T00:00:00Z</updated><author><name>Rohit Shambhuni</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<p>On June 5, 2023, we released versions 16.0.2, 15.11.7, and 15.10.8 for GitLab Community Edition (CE) and Enterprise Edition (EE).</p>
<p>These versions contain important security fixes, and we strongly recommend that all GitLab installations be upgraded to one of these versions immediately. GitLab.com is already running the patched version.</p>
<p>GitLab releases patches for vulnerabilities in dedicated security releases. There are two types of security releases: a monthly, scheduled security release, released a week after the feature release (which deploys on the 22nd of each month), and ad-hoc security releases for critical vulnerabilities. For more information, you can visit our <a href="https://about.gitlab.com/security/faq/">security FAQ</a>. You can see all of our regular and security release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>. In addition, the issues detailing each vulnerability are made public on our <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a> 30 days after the release in which they were patched.</p>
<p>We are dedicated to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers upgrade to the latest security release for their supported version. You can read more <a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="table-of-fixes">Table of Fixes</h2>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-0-2-released/#stored-xss-with-csp-bypass-in-merge-requests">Stored-XSS with CSP-bypass in Merge requests</a></td>
          <td>high</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-0-2-released/#redos-via-frontmatterfilter-in-any-markdown-fields">ReDoS via FrontMatterFilter in any Markdown fields</a></td>
          <td>high</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-0-2-released/#redos-via-inlinedifffilter-in-any-markdown-fields">ReDoS via InlineDiffFilter in any Markdown fields</a></td>
          <td>high</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-0-2-released/#redos-via-dollarmathpostfilter-in-markdown-fields">ReDoS via DollarMathPostFilter in Markdown fields</a></td>
          <td>high</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-0-2-released/#dos-via-malicious-test-report-artifacts">DoS via malicious test report artifacts</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-0-2-released/#restricted-ip-addresses-can-clone-repositories-of-public-projects">Restricted IP addresses can clone repositories of public projects</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-0-2-released/#reflected-xss-in-report-abuse-functionality">Reflected XSS in Report Abuse Functionality</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-0-2-released/#privilege-escalation-from-maintainer-to-owner-by-importing-members-from-a-project">Privilege escalation from maintainer to owner by importing members from a project</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-0-2-released/#bypassing-tags-protection-in-gitlab">Bypassing tags protection in GitLab</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-0-2-released/#denial-of-service-using-multiple-labels-with-arbitrarily-large-descriptions">Denial of Service using multiple labels with arbitrarily large descriptions</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-0-2-released/#ability-to-use-an-unverified-email-for-public-and-commit-emails">Ability to use an unverified email for public and commit emails</a></td>
          <td>medium</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-0-2-released/#open-redirection-through-http-response-splitting">Open Redirection Through HTTP Response Splitting</a></td>
          <td>low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-0-2-released/#disclosure-of-issue-notes-to-an-unauthorized-user-when-exporting-a-project">Disclosure of issue notes to an unauthorized user when exporting a project</a></td>
          <td>low</td>
      </tr>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-0-2-released/#ambiguous-branch-name-exploitation">Ambiguous branch name exploitation</a></td>
          <td>low</td>
      </tr>
  </tbody>
</table>
<h2 id="stored-xss-with-csp-bypass-in-merge-requests">Stored-XSS with CSP-bypass in Merge requests</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/893 -->
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 15.11 before 15.11.7, all versions starting from 16.0 before 16.0.2. A specially crafted merge request could lead to a stored XSS on the client side which allows attackers to perform arbitrary actions on behalf of victims. This is a high severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N</code>, 8.7). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-2442">CVE-2023-2442</a>.</p>
<p>Thanks <a href="https://hackerone.com/yvvdwf">yvvdwf</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="redos-via-frontmatterfilter-in-any-markdown-fields">ReDoS via FrontMatterFilter in any Markdown fields</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/888 -->
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 12.0 before 15.10.8, all versions starting from 15.11 before 15.11.7, all versions starting from 16.0 before 16.0.2. A Regular Expression Denial of Service was possible via sending crafted payloads to the preview_markdown endpoint. This is a high severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code>, 7.5). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-2199">CVE-2023-2199</a>.</p>
<p>Thanks <a href="https://hackerone.com/ryhmnlfj">ryhmnlfj</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="redos-via-inlinedifffilter-in-any-markdown-fields">ReDoS via InlineDiffFilter in any Markdown fields</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/887 -->
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 8.7 before 15.10.8, all versions starting from 15.11 before 15.11.7, all versions starting from 16.0 before 16.0.2. A Regular Expression Denial of Service was possible via sending crafted payloads to the preview_markdown endpoint. This is a high severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code>, 7.5). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-2198">CVE-2023-2198</a>.</p>
<p>Thanks <a href="https://hackerone.com/ryhmnlfj">ryhmnlfj</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="redos-via-dollarmathpostfilter-in-markdown-fields">ReDoS via DollarMathPostFilter in Markdown fields</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/881 -->
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 15.4 before 15.10.8, all versions starting from 15.11 before 15.11.7, all versions starting from 16.0 before 16.0.2. A DollarMathPostFilter Regular Expression Denial of Service in was possible by sending crafted payloads to the preview_markdown endpoint. This is a high severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</code>, 7.5). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-2132">CVE-2023-2132</a>.</p>
<p>Thanks <a href="https://hackerone.com/ryhmnlfj">ryhmnlfj</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="dos-via-malicious-test-report-artifacts">DoS via malicious test report artifacts</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/850 -->
<p>A denial of service issue was discovered in GitLab CE/EE affecting all versions starting from 13.2.4 before 15.10.8, all versions starting from 15.11 before 15.11.7, all versions starting from 16.0 before 16.0.2 which allows an attacker to cause high resource consumption using malicious test report artifacts. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H</code>, 6.5). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-0121">CVE-2023-0121</a>.</p>
<p>Thanks <a href="https://hackerone.com/luryus">luryus</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="restricted-ip-addresses-can-clone-repositories-of-public-projects">Restricted IP addresses can clone repositories of public projects</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/889 -->
<p>An issue has been discovered in GitLab EE affecting all versions starting from 12.0 before 15.10.8, all versions starting from 15.11 before 15.11.7, all versions starting from 16.0 before 16.0.2. An attacker can clone a repository from a public project, from a disallowed IP, even after the top-level group has enabled IP restrictions on the group. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N</code>, 5.9). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-2589">CVE-2023-2589</a>.</p>
<p>Thanks <a href="https://hackerone.com/ali_shehab">ali_shehab</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="reflected-xss-in-report-abuse-functionality">Reflected XSS in Report Abuse Functionality</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/875 -->
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 15.8 before 15.10.8, all versions starting from 15.11 before 15.11.7, all versions starting from 16.0 before 16.0.2. A reflected XSS was possible when creating new abuse reports which allows attackers to perform arbitrary actions on behalf of victims. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:N</code>, 4.4). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-2015">CVE-2023-2015</a>.</p>
<p>Thanks <a href="https://hackerone.com/akadrian">akadrian</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="privilege-escalation-from-maintainer-to-owner-by-importing-members-from-a-project">Privilege escalation from maintainer to owner by importing members from a project</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/892 -->
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 14.1 before 15.10.8, all versions starting from 15.11 before 15.11.7, all versions starting from 16.0 before 16.0.2. A malicious maintainer in a project can escalate other users to Owners in that project if they import members from another project that those other users are Owners of. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:N/I:H/A:N</code>, 4.4). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-2485">CVE-2023-2485</a>.</p>
<p>Thanks <a href="https://hackerone.com/theluci">theluci</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="bypassing-tags-protection-in-gitlab">Bypassing tags protection in GitLab</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/890 -->
<p>An issue has been discovered in GitLab CE/EE affecting all versions before 15.10.8, all versions starting from 15.11 before 15.11.7, all versions starting from 16.0 before 16.0.2. An attacker was able to spoof protected tags, which could potentially lead a victim to download malicious code. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N</code>, 4.3). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-2001">CVE-2023-2001</a>.</p>
<p>Thanks <a href="https://hackerone.com/inspector-ambitious">inspector-ambitious</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="denial-of-service-using-multiple-labels-with-arbitrarily-large-descriptions">Denial of Service using multiple labels with arbitrarily large descriptions</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/880 -->
<p>A lack of length validation in GitLab CE/EE affecting all versions from 8.3 before 15.10.8, 15.11 before 15.11.7, and 16.0 before 16.0.2 allows an authenticated attacker to create a large Issue description via GraphQL which, when repeatedly requested, saturates CPU usage. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L</code>, 4.3). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-0921">CVE-2023-0921</a>.</p>
<p>Thanks <a href="https://hackerone.com/cryptopone">cryptopone</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="ability-to-use-an-unverified-email-for-public-and-commit-emails">Ability to use an unverified email for public and commit emails</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/867 -->
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 10.1 before 15.10.8, all versions starting from 15.11 before 15.11.7, all versions starting from 16.0 before 16.0.2. A user could use an unverified email as a public email and commit email by sending a specifically crafted request on user update settings. This is a medium severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N</code>, 4.3). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-1204">CVE-2023-1204</a>.</p>
<p>Thanks <a href="https://hackerone.com/theluci">theluci</a> for reporting this vulnerability through our HackerOne bug bounty program</p>
<h2 id="open-redirection-through-http-response-splitting">Open Redirection Through HTTP Response Splitting</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/885 -->
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 15.4 before 15.10.8, all versions starting from 15.11 before 15.11.7, all versions starting from 16.0 before 16.0.2. Open redirection was possible via HTTP response splitting in the NPM package API. This is a low severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:N</code>, 3.1). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-0508">CVE-2023-0508</a>.</p>
<p>Thanks <a href="https://hackerone.com/akadrian">akadrian</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="disclosure-of-issue-notes-to-an-unauthorized-user-when-exporting-a-project">Disclosure of issue notes to an unauthorized user when exporting a project</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/854 -->
<p>An issue has been discovered in GitLab EE affecting all versions starting from 15.7 before 15.10.8, all versions starting from 15.11 before 15.11.7, all versions starting from 16.0 before 16.0.2. It was possible to disclose issue notes to an unauthorized user at project export. This is a low severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:N/A:N</code>, 3.1). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-1825">CVE-2023-1825</a>.</p>
<p>This vulnerability has been discovered internally by GitLab team member.</p>
<h2 id="ambiguous-branch-name-exploitation">Ambiguous branch name exploitation</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/886 -->
<p>An issue has been discovered in GitLab CE/EE affecting all versions starting from 1.2 before 15.10.8, all versions starting from 15.11 before 15.11.7, all versions starting from 16.0 before 16.0.2. An issue was found that allows someone to abuse a discrepancy between the Web application display and the git command line interface to social engineer victims into cloning non-trusted code. This is a low severity issue (<code>CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:N/I:L/A:N</code>, 2.6). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-2013">CVE-2023-2013</a>.</p>
<p>Thanks <a href="https://hackerone.com/inspector-ambitious">inspector-ambitious</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="update-mattermost">Update Mattermost</h2>
<p>Mattermost has been updated to version 7.9.3 in order to mitigate security issues.</p>
<h2 id="update-ncurses">Update Ncurses</h2>
<p>Ncurses has been updated to version 6.4-20230225 in order to mitigate security issues.</p>
<h2 id="update-postgresql">Update PostgreSQL</h2>
<p>PostgreSQL has been updated to versions 12.14 and 13.11 in order to mitigate security issues.</p>
<h2 id="non-security-patches">Non Security Patches</h2>
<p>This security release also includes the following non-security patches.</p>
<h3 id="1602">16.0.2</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/121518">Update the upgrade path for 15.11 and 16.x</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/121470">Introduce parallelised BitBucket Server Importer</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/121872">Fix Sidekiq crash when gitlab.yml contains UTF-8 characters</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/121745">Revert &ldquo;Remove legacy project routes&rdquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/121843">Merge branch &lsquo;344594-fix-migration&rsquo; into &lsquo;16-0-stable-ee&rsquo;</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/121606">Do not run notify-package-and-test-failure on sec</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/121894">Add task to fix migrations for 15.11 upgrades (16.0 Stable)</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/122345">Do not requeue the indexing worker if failures occur</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/6918">Stop supporting and using deprecated Gitaly configuration</a></li>
</ul>
<h3 id="15117">15.11.7</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitaly/-/merge_requests/5868">Backport &lsquo;Remove uncessary fields from pack-objects cache key computation&rsquo; to 15.11</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/121608">Do not run notify-package-and-test-failure on sec</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/121895">Add task to fix migrations for 15.11 upgrades (15.11 Stable)</a></li>
</ul>
<h3 id="15108">15.10.8</h3>
<ul>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/1397">Update redis-namespace dependency in MailRoom</a></li>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/1406">Skip weak dependencies during install on UBI</a></li>
<li><a href="https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/1404">Fix restore with azcopy</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/120163">Backport &lsquo;fix-container-replication&rsquo; into 15.10</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/121305">Convert some regex to use Gitlab::UntrustedRegexp</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/121609">Do not run notify-package-and-test-failure on sec</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/6887">Add SMTP timeout configuration options</a></li>
<li><a href="https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/6877">Validate that SMTP settings do not enable both TLS and STARTTLS</a></li>
</ul>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-security-release-notifications">Receive Security Release Notifications</h2>
<p>To receive security release blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">security release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab Critical Security Release: 16.0.1</title><link href="https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-0-1-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/patches/patch-release-gitlab-16-0-1-released/</id><published>2023-05-23T00:00:00Z</published><updated>2023-05-23T00:00:00Z</updated><author><name>Rohit Shambhuni</name></author><content type="html"><![CDATA[<!-- markdownlint-disable -->
<!-- vale off -->
<p>On May 23, 2023, we released version 16.0.1 for GitLab Community Edition (CE) and Enterprise Edition (EE). It is only required for installations running 16.0.0. Earlier versions are not affected.</p>
<p>This version contains important security fixes, and we strongly recommend that GitLab installations running 16.0.0 be upgraded immediately. GitLab.com is already running the patched version.</p>
<p>GitLab releases patches for vulnerabilities in dedicated security releases. There are two types of security releases: a monthly, scheduled security release, released a week after the feature release (which deploys on the 22nd of each month), and ad-hoc security releases for critical vulnerabilities. For more information, you can visit our <a href="https://about.gitlab.com/security/faq/">security FAQ</a>. You can see all of our regular and security release blog posts <a href="https://about.gitlab.com/releases/categories/releases/">here</a>. In addition, the issues detailing each vulnerability are made public on our <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Avulnerability&amp;confidential=no&amp;first_page_size=100">issue tracker</a> 30 days after the release in which they were patched.</p>
<p>We are dedicated to ensuring all aspects of GitLab that are exposed to customers or that host customer data are held to the highest security standards. As part of maintaining good security hygiene, it is highly recommended that all customers upgrade to the latest security release for their supported version. You can read more <a href="https://about.gitlab.com/blog/gitlab-instance-security-best-practices/">best practices in securing your GitLab instance</a> in our blog post.</p>
<h3 id="recommended-action">Recommended Action</h3>
<p>We <strong>strongly recommend</strong> that all installations running a version affected by the issues described below are <strong>upgraded to the latest version as soon as possible</strong>.</p>
<p>When no specific deployment type (omnibus, source code, helm chart, etc.) of a product is mentioned, this means all types are affected.</p>
<h2 id="table-of-fixes">Table of Fixes</h2>
<table>
  <thead>
      <tr>
          <th>Title</th>
          <th>Severity</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/releases/patches/patch-release-gitlab-16-0-1-released/#arbitrary-file-read-via-uploads-path-traversal">Arbitrary file read via uploads path traversal</a></td>
          <td>critical</td>
      </tr>
  </tbody>
</table>
<h2 id="arbitrary-file-read-via-uploads-path-traversal">Arbitrary file read via uploads path traversal</h2>
<!-- https://gitlab.com/gitlab-org/security/gitlab/-/issues/891 -->
<p>An issue has been discovered in GitLab CE/EE affecting only version 16.0.0. An unauthenticated malicious user can use a path traversal vulnerability to read
arbitrary files on the server when an attachment exists in a public project nested within at least five groups. This is a critical severity issue (<code>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:N</code>, 10.0). It is now mitigated in the latest release and is assigned <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-2825">CVE-2023-2825</a>.</p>
<p>Thanks <a href="https://hackerone.com/pwnie">pwnie</a> for reporting this vulnerability through our HackerOne bug bounty program.</p>
<h2 id="updating">Updating</h2>
<p>To update GitLab, see the <a href="https://about.gitlab.com/update/">update page</a>.
To update Gitlab Runner, see the <a href="https://docs.gitlab.com/runner/install/linux-repository.html#updating-the-runner">Updating the Runner page</a>.</p>
<h2 id="receive-security-release-notifications">Receive Security Release Notifications</h2>
<p>To receive security release blog notifications delivered to your inbox, visit our <a href="https://about.gitlab.com/company/contact/">contact us</a> page.
To receive release notifications via RSS, subscribe to our <a href="https://docs.gitlab.com/releases/security-releases.xml">security release RSS feed</a> or our <a href="https://docs.gitlab.com/releases/all-releases.xml">RSS feed for all releases</a>.</p>
<!-- vale on -->
<!-- markdownlint-enable -->]]></content></entry><entry><title>GitLab 16.0 released</title><link href="https://docs.gitlab.com/releases/16/16-0-released/" rel="alternate"/><id>https://docs.gitlab.com/releases/16/16-0-released/</id><published>2023-05-22T00:00:00Z</published><updated>2023-05-22T00:00:00Z</updated><author><name>The GitLab Team</name></author><content type="html"><![CDATA[
<p>On May 22, 2023, GitLab 16.0 released was released with the following features.</p><p>In addition, we want to thank all of our contributors, including this month's notable contributor.</p>
<h3>MVP</h3>
<p>
  <strong>Jimmy Berry</strong>
</p>
<p>Jimmy <a href="https://gitlab.com/gitlab-org/gitlab/-/merge_requests/117594">improved the merge request security widget</a> by correcting which merge base is used for comparing branches on completed pipelines in the merge request.
Previously, the merge request security widget was comparing the most recent security scan of a completed pipeline on the main branch of the repository.  For the vulnerability findings in the merge request security widget to be accurate, we needed to adjust the logic and compare the feature branch to the main branch at the time the feature was branched from main. Without this change users might see misleading results. This was already an <a href="https://gitlab.com/groups/gitlab-org/-/epics/10092">issue</a> on our roadmap, and Jimmy contributed and accelerated this improvement not only for them, but for all GitLab users.</p>
<p>Jimmy <a href="https://gitlab.com/gitlab-com/www-gitlab-com/-/issues/34100#note_1395183419">stated</a>:</p>

<blockquote><p>I&rsquo;ve contributed to a variety of open source projects, but have never experienced such a helpful review process.</p></blockquote><p>Thank you Jimmy for helping us iterate on the logic for vulnerability findings and improve the security features in GitLab!</p>

<h3>Primary Features</h3>
<ul>
  <li>
    <strong>Value Streams Dashboard is now generally available</strong>
    <p><p>This <a href="https://youtu.be/EA9Sbks27g4">new dashboard</a> provides strategic insights into metrics that help decision-makers
identify trends and patterns to optimize software delivery. The first iteration of the GitLab Value Streams Dashboard
is focused on enabling teams to continuously improve software delivery workflows by benchmarking value stream life cycle
(<a href="https://docs.gitlab.com/ee/user/group/value_stream_analytics/">value stream analytics</a>, <a href="https://docs.gitlab.com/ee/user/analytics/dora_metrics.html">DORA4</a>),
and <a href="https://docs.gitlab.com/ee/user/application_security/vulnerability_report/">vulnerabilities</a> metrics.</p>
<p>Organizations can use the <a href="https://docs.gitlab.com/ee/user/analytics/value_streams_dashboard.html">Value Streams Dashboard</a>
to track and compare these metrics over a period of time, identify downward trends early, understand security exposure,
and drill down into individual projects or metrics to take actions for improvements.</p>
<p>This comprehensive view built as a single application with a unified data store allows all stakeholders, from
executives to individual contributors, to have visibility into the software development life cycle, without needing
to buy or maintain a third-party tool.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/analytics/value_streams_dashboard.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Upsizing GitLab SaaS runners on Linux</strong>
    <p><p>You asked, we listened! In our efforts to be best-in-class for CI/CD build speeds, we&rsquo;re doubling the vCPU &amp; RAM for all GitLab SaaS runners on Linux, with no increase in the <a href="https://docs.gitlab.com/ee/ci/pipelines/compute_minutes.html#cost-factor">cost factor</a>.</p>
<p>We&rsquo;re excited to see pipelines run faster and boost productivity.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/runners/saas/linux_saas_runner.html">View Documentation</a></p>
  </li>
  <li>
    <strong>GPU-enabled SaaS runners on Linux</strong>
    <p><p>We are aiming to bring the best practices of DevSecOps to data sciences by providing more powerful compute hardware within GitLab runner.
Previously, data scientists may have had workloads that were compute-intensive and as a result, jobs may not have been as quickly executed in GitLab.</p>
<p>Now, with GPU-enabled SaaS runners on Linux, these workloads can be seamlessly supported using GitLab.com.</p>
<p>So why wait? Try out the new runner today and let us know what you think in this <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/403008">issue</a>. We can&rsquo;t wait to hear your feedback!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/runners/saas/linux_saas_runner.html#gpu-enabled-saas-runners-on-linux">View Documentation</a></p>
  </li>
  <li>
    <strong>Apple silicon (M1) GitLab SaaS runners on macOS - Beta</strong>
    <p><p>Mobile DevOps teams can now run their entire CI/CD workflows on Apple silicon (M1)
<a href="https://docs.gitlab.com/ee/ci/runners/saas/macos_saas_runner">GitLab SaaS runners on macOS</a>
to seamlessly create, test, and deploy applications for the Apple ecosystem.</p>
<p>With up to <strong>three times</strong> the performance of hosted x86-64 macOS Runners,
you will increase your development team&rsquo;s velocity in building and deploying applications
that require macOS in a secure, on-demand GitLab Runner build environment integrated with GitLab CI/CD.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/runners/saas/macos_saas_runner.html#example-gitlab-ciyml-file">View Documentation</a></p>
  </li>
  <li>
    <strong>Comment templates</strong>
    <p><p>When you&rsquo;re commenting in issues, epics, or merge requests you might repeat yourself and need to write the same comment over and over. Maybe you always need to ask for more information about a bug report. Maybe you&rsquo;re applying labels via a quick action as part of a triage process. Or maybe you just like to finish all your code reviews with a funny gif or appropriate emoji. 🎉</p>
<p>Comment templates enable you to create saved responses that you can apply in comment boxes around GitLab to speed up your workflow. To create a comment template, go to <strong>User settings &gt; Comment templates</strong> and then fill out your template. After it&rsquo;s saved, select the <strong>Insert comment template</strong> icon on any text area, and your saved response will be applied.</p>
<p>This is a great way to standardize your replies and save you time!</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/profile/comment_templates.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Update your fork from the GitLab UI</strong>
    <p><p>Managing your fork just got easier. When your fork is behind, select <strong>Update fork</strong> in the GitLab UI to catch it up with upstream changes. When your fork is ahead, select <strong>Create merge request</strong> to contribute your change back to the upstream project. Both operations previously required you to use the command line.</p>
<p>See how many commits your fork is ahead (or behind) on your project&rsquo;s main page and at <strong>Repository &gt; Files</strong>. If merge conflicts exist, the UI gives guidance on how to resolve them using Git from the command line.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/repository/forking_workflow.html#update-your-fork">View Documentation</a></p>
  </li>
  <li>
    <strong>Mirror specific branches only</strong>
    <p><p>Do you need to mirror a busy repository with many branches, but you only need a few of them? Limit the number of
branches you mirror by creating a regular expression that matches only the branches you need.</p>
<p>Previously, mirrors required you to mirror an entire repository, or all protected branches. This new flexibility
can decrease the amount of data your mirrors push or pull, and keep sensitive branches out of public mirrors.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/repository/mirror/#mirror-specific-branches">View Documentation</a></p>
  </li>
  <li>
    <strong>New Web IDE experience now generally available</strong>
    <p><p>Since its introduction, we&rsquo;ve been iterating on the usability, performance, and stability of the Web IDE, which
has enabled us to build features like remote development workspaces and code suggestions on a powerful foundation.</p>
<p>We have received overwhelmingly positive feedback on the Web IDE Beta and starting in GitLab 16.0, we are making
it the default multi-file code editor across GitLab.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/web_ide/">View Documentation</a></p>
  </li>
  <li>
    <strong>Workspaces available in Beta for public projects</strong>
    <p><p>Stop spending hours, or even days, troubleshooting your local development environment and interpreting inscrutable package installation errors. Now you can define a consistent, stable, and secure development environment in code and use it to create on-demand; all inside Workspaces.</p>
<p>Workspaces serve as personal, ephemeral development environments in the cloud. By eliminating the need for a local development environment, you can focus more on your code and less on your dependencies. Accelerate the process of onboarding to a new project and get up and running in minutes instead of days.</p>
<p>After the GitLab Agent for Kubernetes is configured and <a href="https://docs.gitlab.com/ee/user/workspace/#prerequisites">the dependencies are installed</a> in your self-hosted cluster or cloud platform of choice, you can define your development environment in a <code>.devfile.yaml</code> file and store it in a public project. Then, you and any other developers with access to the agent can create a workspace based on the <code>.devfile.yaml</code> file and edit directly in the embedded Web IDE. You&rsquo;ll have full terminal access to the container, allowing you to work more efficiently. When you&rsquo;re done, or if something goes wrong, you can shut down the workspace and start a fresh, new workspace for your next development task.</p>
<p>This short video walks you through the lifecycle of a workspace in the current Beta. Learn more about workspaces in the <a href="https://docs.gitlab.com/ee/user/workspace/index.html">documentation</a> and let us know what you think in the <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/410031">feedback issue</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/workspace/index.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Security training with SecureFlag</strong>
    <p><p>As security shifts left, remediating security findings without guidance can be challenging. Developers need actionable advice so they can resolve vulnerabilities and continue
building features. Contextual training that is relevant to the specific vulnerability detected was released in GitLab 14.9.</p>
<p>In this release, we are adding an integration with SecureFlag based upon the CWE of the vulnerability. SecureFlag&rsquo;s
training solution is unique in that the labs involve remediating the vulnerability in a live environment,
which can be transferred to a real environment.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/vulnerabilities/#enable-security-training-for-vulnerabilities">View Documentation</a></p>
  </li>
  <li>
    <strong>Token rotation API</strong>
    <p><p>Previously, to rotate tokens, the token owner had to manually create a new token and replace the existing token.</p>
<p>Now, token owners can use a <code>:rotate</code> API endpoint to programatically rotate personal, group, and project access tokens.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/security/token_overview.html">View Documentation</a></p>
  </li>
  <li>
    <strong>AI-powered workflow features</strong>
    <p><p>GitLab is evolving into an AI‑powered DevSecOps platform. Over the past month, we&rsquo;ve introduced 10 new experiments
to improve efficiency and productivity across various GitLab features, all leveraging AI.</p>
<p>These AI-powered workflows boost efficiency and reduce cycle times in every phase of the software development lifecycle.</p>
<p>Learn more about <a href="https://about.gitlab.com/solutions/ai/">AI-powered workflows</a></p>
</p>
    <p><a href="https://docs.gitlab.com/ee/development/ai_features.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Code Suggestions improvements</strong>
    <p><p>Code Suggestions is now available on GitLab.com for all users for free while the feature is in Beta. Teams can
boost efficiency with the help of generative AI that suggests code while you&rsquo;re developing.</p>
<p>We&rsquo;ve extended language support from our initial six languages to now include 13 languages: C/C++, C#, Go, Java,
JavaScript, Python, PHP, Ruby, Rust, Scala, Kotlin, and TypeScript.</p>
<p>We are making improvements to the Code Suggestions underlying AI model weekly to improve the quality of suggestions.
Please remember that AI is non-deterministic, so you may not get the same suggestion week to week.</p>
<p>Read more about these <a href="https://about.gitlab.com/blog/code-suggestions-for-all-during-beta/">improvements and what&rsquo;s next</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/repository/code_suggestions.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Error Tracking is now generally available</strong>
    <p><p>GitLab Error Tracking, which allows developers to discover and view errors generated by their application, is now generally available on GitLab.com! GitLab error tracking helps to increase efficiency and awareness by surfacing error information directly in the same interface as the code is developed, built, deployed, and released.</p>
<p>In this release, we are supporting both the <a href="https://docs.gitlab.com/ee/operations/error_tracking.html#integrated-error-tracking">GitLab integrated error tracking</a> and the
<a href="https://docs.gitlab.com/ee/operations/error_tracking.html#sentry-error-tracking">Sentry-based</a> backends.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/operations/error_tracking.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Custom value streams for project-level value stream analytics</strong>
    <p><p>To improve the visibility into the complete workstream, we are adding to the project-level Value Stream Analytics (VSA) the <a href="https://docs.gitlab.com/ee/user/group/value_stream_analytics">Overview stage</a> and the option to <a href="https://docs.gitlab.com/ee/user/group/value_stream_analytics/#create-a-value-stream-with-custom-stages">create custom value streams</a>.</p>
<p>Until now, these features were only available at the group-level VSA only.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/value_stream_analytics/">View Documentation</a></p>
  </li>
</ul>
<h3>Secondary Features</h3>
<h4>Scale and Deployments</h4>
<ul>
  <li>
    <strong>Rate limit for unauthenticated users of the Projects List API</strong>
    <p><p>Unauthenticated users of the Projects List API will be subject to rate limitations moving forward.</p>
<p>On GitLab.com, the limit is set to 400 requests per 10 minutes per unique IP address.</p>
<p>Users of self-managed GitLab instances have the same rate limitation by default, but administrators can change the rate limits as they see fit. We encourage users who need to make more than 400 requests per 10 minutes to the Projects List API to <a href="https://about.gitlab.com/pricing/">sign up for a GitLab account</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/settings/rate_limit_on_projects_api.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Self-managed GitLab uses two database connections</strong>
    <p><p>Starting with 16.0, self-managed installations of GitLab will have two database connections by default, instead of
one. This change makes self-managed versions of GitLab behave similarly to GitLab.com, and is a step towards enabling
a <a href="https://gitlab.com/groups/gitlab-org/-/epics/7509">separate database for CI features</a> for self-managed versions of GitLab.</p>
<p>This change applies to installation methods with Omnibus GitLab, GitLab Helm chart, GitLab Operator, GitLab Docker images, and installation from source.</p>
</p>
    <p><a href="https://docs.gitlab.com/omnibus/settings/database.html#configuring-multiple-database-connections">View Documentation</a></p>
  </li>
  <li>
    <strong>Option to disable followers</strong>
    <p><p>We have received feedback from users who wanted to prevent getting unwanted followers of their user profile. We listened to your concerns, so now, in your user profile settings under Preferences, you can disable following.</p>
<p>When you disable this feature, no one can follow you, and you cannot follow anyone. All existing following and follower relationships are removed, and the count is set to zero.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/profile/#disable-following-and-being-followed-by-other-users">View Documentation</a></p>
  </li>
  <li>
    <strong>Delayed group and project deletion set as default</strong>
    <p><p>To prevent accidental deletion of projects and groups, starting in GitLab 16.0, the delayed deletion feature will be turned on by default for all GitLab Ultimate and Premium customers.</p>
<p>Self-managed users still have the option to define a deletion delay period of between 1 and 90 days, and SaaS users have a non-adjustable default retention period of 7 days.</p>
<p>Users of Ultimate and Premium groups can still delete a group or project immediately from the group or project settings via a two-step deletion process.</p>
<p>We believe that this change will contribute to a safer deletion process and will be beneficial in preventing accidental deletions. We&rsquo;d love your feedback in issue <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/396996">#396996</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/gitlab_com/index.html#delayed-project-deletion">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab chart improvements</strong>
    <p><ul>
<li>Updates to GitLab 16.0 also update cert-manager to version 1.11.x. This cert-manager update includes breaking changes you must
<a href="https://cert-manager.io/docs/release-notes/release-notes-1.10/#breaking-changes-you-must-read-this-before-you-upgrade">read before upgrading</a>.
These changes include a change to container names that was best done during a major release of GitLab. To see details of updated features, see the
<a href="https://cert-manager.io/docs/release-notes/release-notes-1.11">releases notes for cert-manager 1.11</a>.</li>
<li>PostgreSQL 12 is no longer supported. The minimum required version is PostgreSQL 13, and support for PostgreSQL 14 is added.
New chart installs of GitLab include PostgreSQL 14 by default, and upgrades must follow the steps for
<a href="https://docs.gitlab.com/charts/installation/database_upgrade.html">upgrading the bundled PostgreSQL version</a>.</li>
<li>Updates to GitLab 16.0 include an update to the Redis subchart to version 16.13.2, including Redis 6.2.7.</li>
<li>We have removed the bundled Grafana chart. For more information, see
<a href="https://docs.gitlab.com/ee/update/removals.html#bundled-grafana-helm-chart">removal of the bundled Grafana Helm chart</a> on our removals page.
If you use the bundled Grafana, you must switch to the <a href="https://artifacthub.io/packages/helm/grafana/grafana">newer chart version from Grafana Labs</a>
or a Grafana Operator from a trusted provider.</li>
<li>GitLab 16.0 includes
<a href="https://docs.gitlab.com/charts/charts/globals.html#configure-registry-settings">registry services details for webservice and Sidekiq</a>
in the <code>global.registry.*</code> configuration for simplification because the values are present in both. You can keep the old behavior with an override.</li>
<li>The <a href="https://docs.gitlab.com/charts/installation/tools.html#helm">minimum supported Helm version</a> is 3.5.2.</li>
<li>The GitLab Runner default version is now Ubuntu 22.04.</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/charts/">View Documentation</a></p>
  </li>
  <li>
    <strong>Omnibus improvements</strong>
    <p><ul>
<li>PostgreSQL 12 is no longer supported. The minimum required version is PostgreSQL 13. Users of the packaged PostgreSQL 12 must
<a href="https://docs.gitlab.com/omnibus/settings/database.html#upgrade-packaged-postgresql-server">perform a database upgrade</a> before installing GitLab
16.0.</li>
<li>The new base OS for the Omnibus GitLab docker images is Ubuntu 22.04.</li>
<li>GitLab 16.0 disables older telemetry endpoints for Consul, which were deprecated in Consul 1.9. This allows us to
<a href="https://developer.hashicorp.com/consul/docs/v1.12.x/agent/config/config-files#telemetry-parameters">update Consul to newer versions</a>.</li>
<li>GitLab 16.0 includes packages for Red Hat Enterprise Linux (RHEL) 9 and compatible distributions.</li>
<li>GitLab 16.0 includes <a href="https://mattermost.com/">Mattermost 7.10</a> with <a href="https://mattermost.com/security-updates/">security updates</a>. An upgrade from earlier versions is recommended.</li>
</ul>
</p>
    <p><a href="https://docs.gitlab.com/omnibus/">View Documentation</a></p>
  </li>
  <li>
    <strong>Additional Registration Features available to Free users</strong>
    <p><p>GitLab Free customers with a self-managed instance running GitLab Enterprise Edition can now access five more paid features under the <a href="https://docs.gitlab.com/ee/administration/settings/usage_statistics.html#registration-features-program">Registration Features</a> program:</p>
<ul>
<li><a href="https://docs.gitlab.com/ee/administration/settings/sign_up_restrictions.html#password-complexity-requirements">Password complexity policy</a></li>
<li><a href="https://docs.gitlab.com/ee/user/discussions/index.html#view-description-change-history">Description change history</a></li>
<li><a href="https://docs.gitlab.com/ee/user/project/issue_board.html#configurable-issue-boards">Issue board configuration</a></li>
<li><a href="https://docs.gitlab.com/ee/administration/maintenance_mode/index.html">Maintenance mode</a></li>
<li><a href="https://docs.gitlab.com/ee/user/application_security/coverage_fuzzing/#coverage-guided-fuzz-testing">Coverage-guided fuzz testing</a></li>
</ul>
<p>To get access to these features, register with GitLab and send us activity data through <a href="https://docs.gitlab.com/ee/administration/settings/usage_statistics.html#enable-registration-features">Service Ping</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/settings/usage_statistics.html#registration-features-program">View Documentation</a></p>
  </li>
  <li>
    <strong>Import collaborators as an additional item to import</strong>
    <p><p>In GitLab 15.10, we started mapping GitHub repository collaborators as GitLab project members during GitHub project imports. We received
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/398154">feedback</a> that this led to confusion and that some GitHub collaborators were
unexpectedly added and consumed seats.</p>
<p>In GitLab 16.0, we&rsquo;ve iterated and added GitHub repository collaborators to the list of
<a href="https://docs.gitlab.com/ee/user/project/import/github.html#select-additional-items-to-import">additional items to import</a>. This gives users the option
to avoid importing these users and to understand the possible implications of importing them.</p>
<p>This option is selected by default. Leaving it selected might result in new users using a seat in the group or namespace, and being granted permissions
<a href="https://docs.gitlab.com/ee/user/project/import/github.html#collaborators-members">as high as project owner</a>. Only
direct collaborators are imported. Outside collaborators are never imported.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/import/github.html#select-additional-items-to-import">View Documentation</a></p>
  </li>
  <li>
    <strong>Filter GitHub repositories to import</strong>
    <p><p>If you own or collaborate on a lot of repositories in GitHub, you might have trouble finding those that you want to import to GitLab using the current
filtering option.</p>
<p>To make finding the right repositories easier, we have added additional filters. You can now list subsets of the repositories you can import using three tabs:</p>
<ul>
<li><strong>Owner</strong>, to list repositories you own.</li>
<li><strong>Collaborator</strong>, to list repositories you collaborate on.</li>
<li><strong>GitHub organization</strong>, to list repositories that belong to GitHub organizations.</li>
</ul>
<p>On the <strong>Organization</strong> tab, you can further narrow down your search and choose a specific organization and list only repositories belonging
to that organization.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/import/github.html#filter-repositories-list">View Documentation</a></p>
  </li>
  <li>
    <strong>Mark to-do items completed by other group or project owners Done</strong>
    <p><p>When a user raises an access request for a group or project, the request appears in the To-Do List of the group or project owner.
For groups and projects that have multiple owners, the request appears in each owner&rsquo;s To-Do List.</p>
<p>With this new functionality, to-do items that have already been completed by another owner are marked Done in the others&rsquo; To-Do Lists.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/todos.html#actions-that-mark-a-to-do-item-as-done">View Documentation</a></p>
  </li>
  <li>
    <strong>Opt in to a new navigation experience</strong>
    <p><p>GitLab 16.0 features an all-new navigation experience! To get started, go to your avatar in the top right of the UI and turn on the <strong>New navigation</strong> toggle. The left sidebar changes to a new and improved design, based on user feedback we&rsquo;ve received over the last year.</p>
<p>Please let us know about your experience in <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/409005">this issue</a>. Based on the feedback, we will be progressively enabling the new navigation across our user base, with the final step being removal of the old navigation.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/tutorials/left_sidebar/index.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Limit session length for users</strong>
    <p>Administrators can remove the &ldquo;Remember Me&rdquo; option for users when signing in so that sessions cannot be extended and the user is forced to re-authenticate. Limiting the duration of a session may improve instance security.</p>
    <p><a href="https://docs.gitlab.com/ee/user/profile/#session-duration">View Documentation</a></p>
  </li>
  <li>
    <strong>Authenticate with Jira personal access tokens</strong>
    <p><p>Previously, you could only authenticate the <a href="https://docs.gitlab.com/ee/integration/jira/configure.html">Jira issue integration</a> with a Jira username
and password.</p>
<p>Now you can use a <a href="https://confluence.atlassian.com/enterprise/using-personal-access-tokens-1026032365.html">Jira personal access token</a> to authenticate
if you are using Jira Data Center and Jira Server with Jira 8.14 and later. A Jira personal access token is a safer alternative to a username and password.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/integration/jira/configure.html#configure-the-integration">View Documentation</a></p>
  </li>
  <li>
    <strong>Placeholder for issue description in Service Desk automated replies</strong>
    <p><p>It is useful for a Service Desk requester to see their original request in the automated thank you email replies.</p>
<p>In this release, we add an <code>%{ISSUE_DESCRIPTION}</code> placeholder so that Service Desk administrators can include the original request in the thank you email.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/service_desk/#new-note-email">View Documentation</a></p>
  </li>
</ul>
<h4>Unified DevOps and Security</h4>
<ul>
  <li>
    <strong>Real-time merge request updates</strong>
    <p><p>When working on merge requests, it&rsquo;s important to make sure that what you&rsquo;re seeing is the latest information for approvals, pipelines or other information that might impact your ability to get the changes merged. Historically, this has meant refreshing the merge request or waiting for polling updates to come through.</p>
<p>We&rsquo;ve improved the experience of both the merge button widget and approval widget inside of the merge request, so that they now update in real-time in the merge request. This is a great improvement to improve the speed at which you can deliver changes, and the confidence at which you can move a merge request forward knowing you&rsquo;re seeing the latest information.</p>
<p>We&rsquo;re looking at more areas for <a href="https://gitlab.com/groups/gitlab-org/-/epics/1812">real-time improvements</a> in merge requests, so follow along for updates.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/merge_requests/">View Documentation</a></p>
  </li>
  <li>
    <strong>Provide a reason when dismissing vulnerabilities in bulk</strong>
    <p><p>When selecting one or more vulnerabilities in the vulnerability report, it&rsquo;s possible to change their status in bulk.</p>
<p>With this release, you can now select a dismissal reason when choosing the dismiss
status, and add a comment when changing a vulnerability&rsquo;s status.&quot;</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/vulnerability_report/#change-status-of-vulnerabilities">View Documentation</a></p>
  </li>
  <li>
    <strong>Add and remove compliance frameworks without using bulk actions</strong>
    <p><p>In GitLab 15.11, we added bulk <a href="https://docs.gitlab.com/ee/user/compliance/compliance_report/#apply-a-compliance-framework-to-projects-in-a-group">adding</a> and
<a href="https://docs.gitlab.com/ee/user/compliance/compliance_report/#remove-a-compliance-framework-from-projects-in-a-group">removing</a> of compliance frameworks to the
compliance frameworks report.</p>
<p>Now in GitLab 16.0, you can also add and remove compliance frameworks from projects directly from the report table row.</p>
<p>Before GitLab 16.0, you had to create and edit frameworks in the group&rsquo;s settings.</p>
<p>Now in GitLab 16.0, you can create or edit your compliance frameworks in the
compliance framework report as well. This simplifies the framework creation workflow and reduces the need to switch contexts while managing your frameworks.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/compliance/compliance_report/#apply-a-compliance-framework-to-projects-in-a-group">View Documentation</a></p>
  </li>
  <li>
    <strong>Filter compliance violations by target branch name</strong>
    <p><p>Prior to GitLab 16.0, the compliance violations report showed all violations on all branches.</p>
<p>Now you can now filter violations using the new <strong>Search target branch</strong> field, allowing you to focus on the branches that
you are most concerned with.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/compliance/compliance_report/#view-the-compliance-violations-report-for-a-group">View Documentation</a></p>
  </li>
  <li>
    <strong>Support role-based approval action for scan result policies</strong>
    <p><p>With role-based approval actions, you can configure scan result policies to require approval from GitLab-supported roles, including Owners, Maintainers, and Developers.</p>
<p>This gives you additional flexibility over requiring individual approvers or defined groups of users, making it easier to enforce policies based on roles you already leverage in GitLab, at scale, especially across large organizations.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/policies/scan-result-policies.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Introducing Out-of-band Application Security Testing through browser-based DAST</strong>
    <p><p>Previously, GitLab&rsquo;s DAST analyzers did not support callback attacks while performing active checks. This meant that Out-of-band Application Security Testing (OAST) needed to be configured separately from your DAST scan.</p>
<p>Now, you can run OAST by <a href="https://docs.gitlab.com/ee/user/application_security/breach_and_attack_simulation/#extend-dynamic-application-security-testing-dast">extending the browser-based DAST analyzer</a> configuration to enable callback attacks.</p>
<p>In this release we are introducing the <a href="https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Security/BAS.latest.gitlab-ci.yml">BAS.latest.gitlab-ci.yml</a> template. The Breach and Attack Simulation CI/CD template features job configuration for the browser-based DAST analyzer and enables container-to-container networking to add extended DAST scans against service containers to your CI/CD pipeline.</p>
<p>We&rsquo;re continuously iterating to develop new Breach and Attack Simulation features. We&rsquo;d love to <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/404809">hear your feedback</a> on the addition of callback attacks to browser-based DAST.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/breach_and_attack_simulation/#extend-dynamic-application-security-testing-dast">View Documentation</a></p>
  </li>
  <li>
    <strong>Import Maven/Gradle packages by using CI/CD pipelines</strong>
    <p><p>Have you been thinking about moving your Maven or Gradle repository to GitLab, but haven&rsquo;t been able to invest the time to plan the migration? GitLab is proud to announce the MVC launch of a Maven/Gradle package importer.</p>
<p>You can now use the Packages Importer tool to import packages from any Maven/Gradle compliant registry, like Artifactory.</p>
<p>To use the tool, simply create a <code>config.yml</code> file that contains the details of the packages you want to import into GitLab. Then add the importer to a <code>.gitlab-ci.yml</code> pipeline configuration file, and the importer does the rest. It runs in the pipeline, dynamically generating a child pipeline with jobs that import all the packages into your GitLab package registry.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/packages/package_registry/#to-import-packages">View Documentation</a></p>
  </li>
  <li>
    <strong>Download packages from the Maven Registry with Scala</strong>
    <p><p>The GitLab Package Registry now supports downloading Maven packages using the Scala build tool (<code>sbt</code>). Previously, Scala users had no way to download Maven packages from the registry because basic authentication was not supported. As a result, Scala users were either blocked from using the registry or had to use Maven (<code>mvn</code>) or Gradle as an alternative.</p>
<p>By adding support for Scala, we hope to help you use the Package Registry with your more data intensive projects.</p>
<p>Please note that publishing artifacts using <code>sbt</code> is not yet supported, but you can follow <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/408479">issue 408479</a> if you are interested in adding support for publishing.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/packages/maven_repository/#install-a-package">View Documentation</a></p>
  </li>
  <li>
    <strong>Add or resolve to-do items on tasks, objectives, and key results</strong>
    <p><p>We know that GitLab <a href="https://docs.gitlab.com/ee/user/todos.html">To-Do List</a> is a widely adopted feature, but it was not available on tasks, objectives, and key results.</p>
<p>In this release, we&rsquo;re introducing the ability to toggle a to-do item on or off from a work item record.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/todos.html">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Pages unique subdomains</strong>
    <p><p>In previous versions of GitLab, cookies of different GitLab Pages sites under the same top-level group were visible for other projects under the same top-level because of the GitLab Pages default URL format.</p>
<p>Now, you can secure your sites by assigning a unique subdomain to each GitLab Pages project.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/pages/">View Documentation</a></p>
  </li>
  <li>
    <strong>Add emoji reactions on tasks, objectives and key results</strong>
    <p><p>You can now contribute to tasks, objectives and key results with the addition of emoji reactions for work items.</p>
<p>Before this release, you could only add reactions on issues, merge requests, snippets, and epics.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/award_emojis.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Change work item type from quick action</strong>
    <p>With this additional quick action, you can now convert key results to objectives.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/quick_actions.html#issues-merge-requests-and-epics">View Documentation</a></p>
  </li>
  <li>
    <strong>Pick custom colors for labels</strong>
    <p><p>Until now, you could specify only a fixed number of colors for your labels.</p>
<p>This release introduces a color picker to label management, allowing you to select any range of colors for your labels.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/labels.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Reorder child records for tasks, objectives and key results</strong>
    <p><p>If you&rsquo;re a user of <a href="https://docs.gitlab.com/ee/user/tasks.html">tasks</a> or OKRs you&rsquo;ve likely wished more than once that we could reorder the child records within the widget!</p>
<p>With this work, users will now be able to reorder child records within work item widgets allowing them to indicate relative priority or signal what&rsquo;s up next.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/okrs.html#reorder-objective-and-key-result-children">View Documentation</a></p>
  </li>
  <li>
    <strong>New stage events for custom Value Stream Analytics</strong>
    <p><p>Value Stream Analytics has been extended with two new stage events: issue first assigned and merge request first assigned.
These events can be useful for measuring the time it takes for an item to be first assigned to a user.</p>
<p>To implement this feature, GitLab started storing the history of assignment events in GitLab 16.0. This means that issue
and MR assignment events prior to GitLab 16.0 are not available.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/group/value_stream_analytics/#create-a-value-stream-with-custom-stages">View Documentation</a></p>
  </li>
  <li>
    <strong>Display message when deploy freeze is active</strong>
    <p>GitLab now shows you a message on the Environments page when a deploy freeze is in effect. This helps ensure your team is aware of when freezes occur, and when deployments are not allowed.</p>
    <p><a href="https://docs.gitlab.com/ee/user/project/releases/index.html#prevent-unintentional-releases-by-setting-a-deploy-freeze">View Documentation</a></p>
  </li>
  <li>
    <strong>SAST analyzer updates</strong>
    <p><p>GitLab SAST includes <a href="https://docs.gitlab.com/ee/user/application_security/sast/#supported-languages-and-frameworks">many security analyzers</a> that the GitLab Static Analysis team actively maintains, updates, and supports. We published the following updates during the 16.0 release milestone:</p>
<ul>
<li>The Semgrep-based analyzer includes updated <a href="https://gitlab.com/gitlab-org/security-products/sast-rules">GitLab-managed scanning rules</a>. See the <a href="https://gitlab.com/gitlab-org/security-products/analyzers/semgrep/-/blob/main/CHANGELOG.md#v423">CHANGELOG</a> for further details. We&rsquo;ve updated the rules to:
<ul>
<li>Update OWASP mappings to show that they&rsquo;re based on the 2017 OWASP Top Ten. Thanks to <a href="https://gitlab.com/artem-fedorov"><code>@artem-fedorov</code></a> for this <a href="https://gitlab.com/gitlab-org/security-products/analyzers/semgrep/-/merge_requests/196">community contribution</a>.</li>
<li>Handle additional cases in the <code>PyYAML.load</code> rule. Thanks to <a href="https://gitlab.com/stevep-arm"><code>@stevep-arm</code></a> for this <a href="https://gitlab.com/gitlab-org/security-products/analyzers/semgrep/-/merge_requests/237">community contribution</a>.</li>
<li>Significantly improve the descriptions and guidance for C rules based on revisions from the GitLab Vulnerability Research team.</li>
<li>Add support for <a href="/#faster-easier-scala-scanning-in-sast">scanning Scala code</a>.</li>
</ul>
</li>
<li>The Flawfinder-based analyzer now supports <a href="https://docs.gitlab.com/ee/user/application_security/sast/#security-scanner-configuration">passing the <code>--neverignore</code> flag</a> to disregard &ldquo;ignore&rdquo; directives in comments. See the <a href="https://gitlab.com/gitlab-org/security-products/analyzers/flawfinder/-/blob/master/CHANGELOG.md#v401">CHANGELOG</a> for further details.</li>
<li>The KICS-based analyzer is updated to KICS version 1.7.0. See the <a href="https://gitlab.com/gitlab-org/security-products/analyzers/kics/-/blob/main/CHANGELOG.md#v401">CHANGELOG</a> for further details.</li>
<li>The MobSF-based analyzer now supports multiple modules and projects, which resolves several bug reports. See the <a href="https://gitlab.com/gitlab-org/security-products/analyzers/kics/-/blob/main/CHANGELOG.md#v401">CHANGELOG</a> for further details.</li>
</ul>
<p>Also, <a href="https://docs.gitlab.com/ee/update/deprecations.html#secure-analyzers-major-version-update">as previously announced</a>, we increased the major version number of each analyzer as part of GitLab 16.0.</p>
<p>If you <a href="https://docs.gitlab.com/ee/user/application_security/sast/#configure-sast-in-your-cicd-yaml">include the GitLab-managed SAST template</a> (<a href="https://gitlab.com/gitlab-org/gitlab/blob/master/lib/gitlab/ci/templates/Security/SAST.gitlab-ci.yml"><code>SAST.gitlab-ci.yml</code></a>) and run GitLab 16.0 or higher, you automatically receive these updates.
To remain on a specific version of any analyzer and prevent automatic updates, you can <a href="https://docs.gitlab.com/ee/user/application_security/sast/#pinning-to-minor-image-version">pin its version</a>.</p>
<p>For previous changes, see <a href="https://about.gitlab.com/releases/2023/04/22/gitlab-15-11-released/#static-analysis-analyzer-updates">last month&rsquo;s updates</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/sast/analyzers">View Documentation</a></p>
  </li>
  <li>
    <strong>Secret Detection updates</strong>
    <p><p>We regularly release updates to the GitLab Secret Detection analyzer. During the GitLab 16.0 milestone, we:</p>
<ul>
<li>Added <a href="https://docs.gitlab.com/ee/user/application_security/secret_detection/#detected-secrets">GitLab-managed detection rules</a> for:
<ul>
<li>Access tokens for the Meta, Oculus, and Instagram APIs.</li>
<li>Tokens for the Segment Public API.</li>
</ul>
</li>
<li>Updated the Gitleaks scanning engine to version 8.16.3.</li>
<li><a href="https://gitlab.com/gitlab-org/security-products/analyzers/secrets/-/merge_requests/212">Fixed a bug</a> that prevented scanning when a repository had only a single commit.</li>
<li>Incremented the analyzer major version to <code>5</code>, <a href="https://docs.gitlab.com/ee/update/deprecations.html#secure-analyzers-major-version-update">as previously announced</a>.</li>
</ul>
<p>See the <a href="https://gitlab.com/gitlab-org/security-products/analyzers/secrets/-/blob/master/CHANGELOG.md#v501">CHANGELOG</a> for further details.</p>
<p>If you <a href="https://docs.gitlab.com/ee/user/application_security/secret_detection/#enable-secret-detection">use the GitLab-managed Secret Detection template</a> (<a href="https://gitlab.com/gitlab-org/gitlab/blob/master/lib/gitlab/ci/templates/Jobs/Secret-Detection.gitlab-ci.yml"><code>Secret-Detection.gitlab-ci.yml</code></a>) and run GitLab 16.0 or higher, you automatically receive these updates.
To remain on a specific version of any analyzer and prevent automatic updates, you can <a href="https://docs.gitlab.com/ee/user/application_security/secret_detection/#pinning-to-specific-analyzer-version">pin its version</a>.</p>
<p>For previous changes, see <a href="https://about.gitlab.com/releases/2023/04/22/gitlab-15-11-released/#static-analysis-analyzer-updates">last month&rsquo;s updates</a>.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/secret_detection/">View Documentation</a></p>
  </li>
  <li>
    <strong>Browser-based DAST performance improvements</strong>
    <p><p>We have optimized the way that the browser-based DAST analyzer performs its scans. These improvements have significantly
decreased the amount of time that it takes to run a DAST scan with the browser-based analyzer. The following improvements have been made:</p>
<ul>
<li>Added log summary statistics to help determine where time is spent during a scan. This can be enabled by including the environment variable <code>DAST_BROWSER_LOG=&quot;stat:debug&quot;</code>.</li>
<li>Optimized passive checks by running them in parallel.</li>
<li>Optimized passive checks by caching regular expressions used when matching content in HTTP response bodies.</li>
<li>Optimized how DAST determines whether a page has finished loading. Now, we don&rsquo;t wait for excluded document types or out-of-scope URLs.</li>
<li>Reduced waiting time for pages where the DOM stabilizes quickly after page load.</li>
</ul>
<p>With these improvements, we have seen browser-based DAST scan times reduced by 50%-80%, depending on the complexity and size of the
application being scanned. While this percentage decrease may not be seen in all scans, your browser-based DAST scans should now take significantly less time to complete.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/dast/browser_based.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Faster, easier Scala scanning in SAST</strong>
    <p><p>GitLab Static Application Security Testing (SAST) now offers Semgrep-based scanning for Scala code.
This work builds on our previous introduction of Semgrep-based Java scanning <a href="https://about.gitlab.com/releases/2022/04/22/gitlab-14-10-released/#faster-easier-java-scanning-in-sast">in GitLab 14.10</a>.
As with the other languages we have <a href="https://docs.gitlab.com/ee/user/application_security/sast/analyzers.html#transition-to-semgrep-based-scanning">transitioned to Semgrep-based scanning</a>, Scala scanning coverage uses GitLab-managed detection rules to detect a variety of security issues.</p>
<p>The new Semgrep-based scanning runs significantly faster than the existing analyzer based on SpotBugs.
It also doesn&rsquo;t need to compile your code before scanning, so it&rsquo;s simpler to use.</p>
<p>GitLab&rsquo;s Static Analysis and Vulnerability Research teams worked together to translate rules to the Semgrep format, preserving most existing rules.
We also updated, refined, and tested the rules as we converted them.</p>
<p>If you use <a href="https://docs.gitlab.com/ee/user/application_security/sast/#configure-sast-in-your-cicd-yaml">the GitLab-managed SAST template</a> (<a href="https://gitlab.com/gitlab-org/gitlab/blob/master/lib/gitlab/ci/templates/Security/SAST.gitlab-ci.yml"><code>SAST.gitlab-ci.yml</code></a>), both Semgrep-based and SpotBugs-based analyzers now run whenever Scala code is found.
In GitLab Ultimate, the Security Dashboard combines findings from the two analyzers, so you won&rsquo;t see duplicate vulnerability reports.</p>
<p>In a future release, we&rsquo;ll change <a href="https://docs.gitlab.com/ee/user/application_security/sast/#configure-sast-in-your-cicd-yaml">the GitLab-managed SAST template</a> (<a href="https://gitlab.com/gitlab-org/gitlab/blob/master/lib/gitlab/ci/templates/Security/SAST.gitlab-ci.yml"><code>SAST.gitlab-ci.yml</code></a>) to only run the Semgrep-based analyzer for Scala code.
The SpotBugs-based analyzer will still scan code for other languages, including Groovy and Kotlin.
You can <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/412060">disable SpotBugs early</a> if you prefer to use only Semgrep-based scanning.</p>
<p>If you have any questions, feedback, or issues with the new Semgrep-based Scala scanning, please <a href="https://gitlab.com/gitlab-org/gitlab/-/issues/new?issuable_template=Bug&amp;add_related_issue=362958&amp;issue[title]=Feedback%20on%20SAST%20Semgrep%20Scala%20support&amp;issue[description]=%2Flabel%20~%22group%3A%3Astatic%20analysis%22">file an issue</a>, we&rsquo;ll be glad to help.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/user/application_security/sast/#supported-languages-and-frameworks">View Documentation</a></p>
  </li>
  <li>
    <strong>Create an instance runner in the Admin Area as a user</strong>
    <p>In this new workflow, adding a new runner to a GitLab instance requires authorized users to create a runner in the GitLab UI and include essential configuration metadata. With this method, the runner is now easily traceable to the user, which will help administrators troubleshoot build issues or respond to security incidents.</p>
    <p><a href="https://docs.gitlab.com/ee/ci/runners/register_runner.html">View Documentation</a></p>
  </li>
  <li>
    <strong>Trigger job mirror status of downstream pipeline when cancelled</strong>
    <p><p>Previously, a trigger job configured with <code>strategy: depends</code> mirrored the job status of the downstream pipeline. If the downstream pipeline was in the <code>running</code> status, the trigger job was also marked as <code>running</code>. Unfortunately, if the downstream job did not comnplete and had a status <code>canceled</code>, the trigger job&rsquo;s status was inaccurately <code>failed</code>.</p>
<p>In this release, we have updated trigger jobs with <code>strategy: depend</code> to reflect the downstream&rsquo;s pipelines&rsquo;s statis accurately. When a downstream pipeline is cancelled, the trigger also shows canceled.</p>
<p>This change may have an impact on your existing pipelines, especially if you have jobs that rely on the trigger job&rsquo;s status being marked as failed. We recommend reviewing your pipeline configurations and making any necessary adjustments to accommodate this change in behavior.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/yaml/#triggerstrategy">View Documentation</a></p>
  </li>
  <li>
    <strong>CI/CD components</strong>
    <p><p>In this release we are excited to announce the availability of CI/CD components, as an experimental feature. A CI/CD component is a reusable single-purpose building block that can be used to compose a part of a project&rsquo;s CI/CD configuration, or even an entire pipeline.</p>
<p>When combined with the <a href="https://docs.gitlab.com/ee/ci/yaml/includes.html#define-inputs-for-configuration-added-with-include-beta"><code>inputs</code></a> keyword, a CI/CD component can be made much more flexible. You can configure the component to your exact needs by inputting values which can be used for job names, variables, credentials, and so on.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/components/">View Documentation</a></p>
  </li>
  <li>
    <strong>REST API endpoint to create a runner</strong>
    <p>Users can now use the new REST API endpoint, <code>POST /user/runners</code>, to automate the creation of runners associated with a user. When a runner is created, an authentication token is generated. This new endpoint supports the Next GitLab Runner Token Architecture workflow.</p>
    <p><a href="https://docs.gitlab.com/ee/api/users.html#create-a-ci-runner">View Documentation</a></p>
  </li>
  <li>
    <strong>Per-cache fallback cache keys in CI/CD pipelines</strong>
    <p><p>Using a cache is a great way to speed up your pipelines by reusing dependencies that were already fetched in a previous job or pipeline. But when there is no cache yet, the benefits of caching are lost because the job has to start from scratch, fetching every dependency.</p>
<p>We previously introduced a single fallback cache to use when no cache is found, that you can define globally. This was useful for projects that used a similar cache for all jobs. Now in 16.0 we&rsquo;ve improved that feature with per-cache fallback keys. You can define up to 5 fallback keys for every job&rsquo;s cache, greatly reducing the risk that a job runs without a useful cache. If you have a wide variety of caches, you can now use an appropriate fallback cache as needed.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/caching/index.html#per-cache-fallback-keys">View Documentation</a></p>
  </li>
  <li>
    <strong>Create a group runner as a user</strong>
    <p>In this new workflow, adding a new runner to a GitLab group requires authorized users to create a runner in the GitLab UI and include essential configuration metadata. With this method, the runner is now easily traceable to the user, which will help administrators troubleshoot build issues or respond to security incidents.</p>
    <p><a href="https://docs.gitlab.com/ee/ci/runners/register_runner.html#for-a-group-runner">View Documentation</a></p>
  </li>
  <li>
    <strong>Configurable maximum number of included CI/CD configuration files</strong>
    <p><p>The <code>include</code> keyword lets you compose your CI/CD configuration from multiple files. For example, you can split one
long <code>.gitlab-ci.yml</code> file into multiple files to increase readability, or reuse one CI/CD configuration file in multiple projects.</p>
<p>Previously, a single CI/CD configuration could include up to 150 files, but in GitLab 16.0 administrators can modify this limit to a different value in the instance settings.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/administration/settings/continuous_integration.html#maximum-includes">View Documentation</a></p>
  </li>
  <li>
    <strong>Create project runners as a user</strong>
    <p><p>In this new workflow, adding a new runner to a project requires authorized users to create a runner in the GitLab UI and include essential configuration metadata.</p>
<p>With this method, the runner is now easily traceable to the user, which will help administrators troubleshoot build issues or respond to security incidents.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/ci/runners/register_runner.html#for-a-project-runner">View Documentation</a></p>
  </li>
  <li>
    <strong>Rate Limit for the `projects/:id/jobs` API endpoint reduced</strong>
    <p><p>Previously, the <code>GET /api/:version/projects/:id/jobs</code> was rate limited to 2000 authenticated requests per minute.</p>
<p>To move this in line with other rate limits and improve efficiency and reliability, we have lowered the limit to 600 authenticated requests per minute.</p>
</p>
    <p><a href="https://docs.gitlab.com/ee/security/rate_limits.html#project-jobs-api-endpoint">View Documentation</a></p>
  </li>
  <li>
    <strong>GitLab Runner 16.0</strong>
    <p><p>We’re also releasing GitLab Runner 16.0 today! GitLab Runner is the lightweight, highly-scalable agent that runs your CI/CD jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.</p>
<h4 id="whats-new">What&rsquo;s new:</h4>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/29217">GitLab Runner autoscaling plugin for Google Compute Engine - Experiment</a></li>
</ul>
<p>The list of all changes is in the GitLab Runner <a href="https://gitlab.com/gitlab-org/gitlab-runner/blob/16-0-stable/CHANGELOG.md">CHANGELOG</a></p>
</p>
    <p><a href="https://docs.gitlab.com/runner">View Documentation</a></p>
  </li>
</ul>
]]></content></entry></feed>