Drupal security updates, in plain English · Module

Project Browser

15,894 sites report using it · on drupal.org · 1 security update explained here

This module lets site builders find and install new features directly from the website interface.

Below is every security update for Project Browser that this site has covered, newest first. Each one says who could exploit it, whether it applies to your site, how urgent it is, and what to tell your developer. If your site uses this module and you are not sure which version, that is the first question to ask whoever looks after it.

Project Browser

Critical · 15,894 sites report using it · SA-CONTRIB-2026-178 · on drupal.org · Week of 23 September 2026

Anyone without logging in could trick an administrator into installing new features. They could view private site configurations and add unwanted modules to the site. They could not do this without tricking a logged in administrator.

  • Who could do thisAnyone visiting the site. No login needed.
  • Does it apply to youAny site using this module.
  • Has it been used in attacksNo sign of it.
  • How urgentDrupal rates this critical. Cyber Essentials expects a fix within 14 days. Do it this week.

Tell your developerUpdate Project Browser to 2.1.5 or 2.0.3, whichever branch you are on.

For developers: what the fix changed

Adds `_csrf_token: 'TRUE'` to the `project_browser.activate` and `project_browser.uninstall` routes in `project_browser.routing.yml` and introduces a `CsrfTokenPath` service to properly generate and inject CSRF tokens into URLs used by the frontend.

Also in this release Fixed an issue where an un-instantiable applied recipe would blank the entire catalog.

2.1.4 to 2.1.5 2 commits, 21 files including 9 tests.

  • .cspell-project-words.txt +1 −0
  • project_browser.routing.yml +2 −0 fix
  • project_browser.services.yml +3 −0 fix
  • src/Activator/RecipeActivator.php +22 −2
  • src/Controller/InstallerController.php +3 −21 fix
  • src/CsrfTokenPath.php +58 −0 fix
  • src/Element/ProjectBrowser.php +5 −0 fix
  • src/ProjectBrowser/Normalizer.php +5 −1 fix
  • sveltejs/public/build/bundle.js +0 −0
  • sveltejs/public/build/bundle.js.map +0 −0
  • sveltejs/src/InstallListProcessor.js +7 −5 fix
  • sveltejs/src/constants.js +1 −0 fix

Full diff, 2.1.4 to 2.1.5 · Full diff, 2.0.2 to 2.0.3

The comparison is against the release immediately before the fix. If your site is on an older release, more will have changed.

Not sure what your site is running?

Send me your Drupal site's address.

I'll tell you what I can see from outside, what the Drupal 10 end of life on 9 December means for it, and what it would cost to have me keep it patched. There's no charge for that and no obligation. peter@peterbrady.co.uk


Get in touch

Tell me who you are, what your organisation does, and what you need. That might be a Drupal site that needs looking after, an upgrade to get done before December, or an agency that needs Drupal cover.

If I can help, I'll say so and suggest a call. If I can't, I'll tell you straight away rather than waste your time.

peter@peterbrady.co.uk

For context: I work mainly with UK charities, membership bodies and research organisations, and with the agencies that look after their websites. Not recruiters.

Or start smaller and connect with me on LinkedIn. That's where I post what I find digging around in charity and grants data, and where the free tools turn up first.