Drupal security updates, in plain English · Module

Block AJAX

222 sites report using it · on drupal.org · 1 security release explained here

It provides the ability to load blocks of content asynchronously without reloading the page.

Below is every security release for Block AJAX 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.

Block AJAX

Highly critical · 222 sites report using it · SA-CONTRIB-2026-192 · on drupal.org · Week of 7 October 2026

It provides the ability to load blocks of content asynchronously without reloading the page.

A visitor could send malicious data to the website to run dangerous code on the server. This could give them total control over the system. They could read or change absolutely everything on the website.

  • Who could do thisAnyone visiting the site. No login needed.
  • Does it apply to youA site is affected if it has the layout builder enabled or uses another block plugin that handles data in an unsafe way.
  • Has it been used in attacksNo sign of it.
  • How urgentDrupal rates this highly critical. Cyber Essentials expects a fix within 14 days. Do it this week.

Tell your developerUpdate Block AJAX to 3.0.2.

For developers: what the fix changed

The fix modifies src/Controller/AjaxBlockController.php to retrieve block configuration directly from the stored block entity instead of accepting user supplied configuration and plugin IDs from the request. It also updates js/ajax_blocks.js to stop sending these parameters in the AJAX request.

Also in this release The release adds support for cacheable responses and includes various JavaScript and CSS code style updates.

3.0.1 to 3.0.2 5 commits, 11 files.

  • .cspell-project-words.txt +3 −0
  • README.md +30 −0
  • block_ajax.routing.yml +0 −1
  • css/ajax_blocks.css +10 −8
  • js/ajax_blocks.js +81 −46 fix
  • src/AjaxBlocks.php +1 −1
  • src/BlockViewBuilder.php +1 −1
  • src/Controller/AjaxBlockController.php +87 −100 fix
  • src/Controller/AjaxBlockListController.php +1 −1
  • src/Form/AjaxBlockForm.php +2 −0
  • src/Response/AjaxBlockResponse.php +2 −3

Full diff, 3.0.1 to 3.0.2

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.