Security advisory: critical PHP and Node.js vulnerabilities are being exploited in the wild. What you need to do →
All months

Radar · 2025-03

March 2025

The tj-actions/changed-files compromise spills secrets into public build logs, a Next.js middleware flaw allows authorisation bypass, IngressNightmare exposes unauthenticated RCE in ingress-nginx, a Chrome sandbox escape is exploited in the wild and ASD releases the March update to the Information security manual.

AI platform and models

Sections
  • notable MCP

    Model Context Protocol specification revision adds Streamable HTTP and OAuth 2.1 — modelcontextprotocol.io

    The 2025-03-26 revision of the Model Context Protocol replaces the HTTP-with-SSE transport with Streamable HTTP and adds an OAuth 2.1-based authorisation framework.

    If you are building or piloting MCP servers, target the new revision and review the authorisation model before exposing anything beyond localhost.

  • notable OpenAI

    OpenAI's Responses API and Agents SDK put the Assistants API on notice — openai.com

    On 11 March 2025 OpenAI released the Responses API alongside an open-source Agents SDK and built-in web search, file search and computer-use tools, and said it would formally announce deprecation of the Assistants API once feature parity is reached, with a target sunset in mid-2026. The Agents SDK includes handoff and tracing primitives.

    Inventory anything using the Assistants API and plan the move to Responses. If you are choosing an agent framework now, weigh it against MCP-based approaches rather than adopting a single vendor's SDK by default.

  • fyi OWASP

    OWASP promotes its GenAI Security Project to Flagship status — genai.owasp.org

    OWASP announced on 27 March 2025 (post dated 26 March) that the GenAI Security Project had been elevated to Flagship status. The Foundation director said a Flagship project must be mature, active and strategic. The announcement points to the LLM Top 10 and the newly published Agentic AI Threats and Mitigations Guide.

    Flagship status is the signal that these documents are now safe to cite in policy and procurement rather than as interesting reading; point vendor questionnaires at them.

Security and edge

Sections
  • critical Chrome

    Chrome sandbox escape exploited in the wild (CVE-2025-2783) — chromereleases.googleblog.com

    Google shipped Chrome 134.0.6998.177/178 for Windows on 25 March 2025 to fix CVE-2025-2783, an incorrect handle provided in unspecified circumstances in Mojo that allowed a sandbox escape. Kaspersky found it being used in targeted attacks — a single click on a malicious link was enough, with no further user interaction — making it a genuine zero-day rather than a theoretical one.

    Force a browser restart across managed fleets rather than waiting for users to do it, and confirm your endpoint management can actually report Chrome versions in use.

  • critical Kubernetes

    IngressNightmare exposes unauthenticated RCE in ingress-nginx (CVE-2025-1974) — kubernetes.io

    Disclosed on 24 March 2025, the IngressNightmare set of five flaws in the Kubernetes ingress-nginx controller culminates in CVE-2025-1974 (CVSS 9.8): the admission controller is reachable inside the cluster network without authentication, and a crafted admission request injects nginx configuration that runs as the controller — which by default can read every Secret in the cluster. Fixed in 1.11.5 and 1.12.1.

    Upgrade the controller, then verify the admission webhook is not reachable from pod networks or the internet. Over 40 per cent of clusters run this controller, so assume it is in scope until you have checked.

  • fyi HTTP

    RFC 9745 standardises the Deprecation HTTP response header — rfc-editor.org

    The IETF published RFC 9745 in March 2025, defining a Deprecation response header that lets an API signal when a resource is or will be deprecated, with a companion link relation pointing at migration documentation. For teams running content APIs — headless CMS endpoints, JSON feeds, integration webhooks — it replaces ad hoc sunset announcements with a machine-readable signal clients can monitor.

    Consider emitting the header on API endpoints you plan to retire, and have API consumers watch for it alongside the existing Sunset header.

Standards and compliance

Sections
  • notable ISM

    ASD releases March 2025 update to the Information security manual — cyber.gov.au

    The Australian Signals Directorate published a March 2025 update to the Information security manual, with new and amended controls summarised in an accompanying changes document. Agencies and suppliers that align to the ISM should reconcile the changes against their current control implementations.

    Review the March changes document and update system security plans and statements of applicability where affected controls apply to you.

  • notable Cyber Security Act

    Ransomware payment reporting rules registered, with a 29 May start — legislation.gov.au

    The Cyber Security (Ransomware Payment Reporting) Rules 2025 (F2025L00278) were registered on 3 March 2025, setting the $3 million turnover threshold and the prescribed fields for the reporting obligation in the Cyber Security Act 2024. That Act requires a reporting business entity that makes or becomes aware of a ransomware payment to report it to the designated Commonwealth body within 72 hours. The Rules commence at the same time as Part 3 of the Act, which the Act's commencement table dates 29 May 2025. The default designated body is the Department and ASD unless the rules specify otherwise; these Rules do not.

    Registration is your notice period. Write the reporting step into the incident response plan now, decide who is authorised to make the report, and make sure the 72-hour clock is understood before commencement on 29 May.

  • fyi ACMA

    ACMA consults on rules for the SMS Sender ID Register — acma.gov.au

    ACMA opened consultation on 27 March 2025 on the rules that will govern the SMS Sender ID Register — the scheme requiring telcos to check alphanumeric sender IDs against a register of legitimate registered brands. Scammers use those IDs to impersonate well-known brands. The consultation includes a draft industry standard and a consultation paper.

    Organisations that send SMS under a brand name — appointment reminders, MFA codes, service notifications — should identify every sender ID in use across their own systems and their vendors' before registration becomes mandatory.

CMS and platforms

Sections
  • notable Drupal

    Drupal core patches XSS in the Link field (SA-CORE-2025-004) — drupal.org

    Published 19 March 2025, SA-CORE-2025-004 is a moderately critical cross-site scripting flaw in Drupal core's Link field: Link field attributes were not sufficiently sanitised. The advisory says an attacker typically needs the ability to add specific attributes, often via core web services or a contrib or custom module. Fixed in 10.3.14, 10.4.5, 11.0.13 and 11.1.5.

    Patch on your normal security-release cadence, and review who can set Link field attributes — including via web services — on sites where those accounts are not all trusted staff.

  • fyi Drupal

    DriesNote at DrupalCon Atlanta sets out Drupal CMS and Experience Builder roadmap — thedroptimes.com

    At DrupalCon Atlanta in late March, the DriesNote reviewed the launch of Drupal CMS 1.0 and set out what is next, including the Experience Builder page-building tool and a Drupal CMS desktop launcher that is already available to try. The roadmap signals where upstream investment is going for teams planning Drupal builds over the next year.

    If you run Drupal 10 or 11, keep an eye on Experience Builder's progress before committing to alternative page-builder approaches.

    Update, December 2025: Experience Builder is now Drupal Canvas. Drupal Canvas 1.0, a visual page builder, was released on 4 December 2025 and ships with Drupal CMS 2.0; the old Experience Builder project is kept only for historic reasons.

  • fyi GovCMS

    GovCMS marks ten years with anniversary events — finance.gov.au

    The Department of Finance ran GovCMS 10th anniversary events from 3 to 6 March 2025, including online sessions on content as an API, accessibility and security, and Drupal 11, plus an in-person meetup in Canberra. The platform now counts more than 114 member agencies across all tiers of government and hosts 369 live websites.

    Nothing to act on. The two figures — more than 114 member agencies and 369 live sites — are the platform's current scale and the most useful numbers to have ready when a government client asks how much company they are in.

Supply chain, CI/CD and IaC

Sections
  • critical GitHub Actions

    tj-actions/changed-files GitHub Action compromised (CVE-2025-30066) — thehackernews.com

    Sometime before 14 March an attacker retroactively pointed multiple version tags of the widely used tj-actions/changed-files action at malicious code that dumped CI/CD secrets — including access keys, personal access tokens and npm tokens — into workflow logs. More than 23,000 repositories used the action; the ones at risk are those whose workflows ran during the compromise window, before the action was cleaned and re-released.

    If any workflow used this action in mid March, rotate every secret available to those workflows and audit logs for exposure. Pin third-party actions to full commit SHAs rather than tags.

  • notable GitHub Actions

    GitHub flags breaking changes for Actions, including cache service cutover — github.blog

    On 20 March GitHub published notice of upcoming breaking changes in GitHub Actions, headlined by shutdown of the legacy cache service on 15 April after scheduled brownouts. Workflows still on the old service — typically third-party cache actions, runners older than 2.320.1, or manually rewritten cache environment variables — may fail during the brownouts and after cutover.

    Before 15 April, check third-party cache actions and runner versions, and watch the scheduled brownouts as an early warning.

  • notable Terraform

    Terraform Enterprise single sign-on hit by Ruby-SAML authentication bypasses — hashicorp.com

    Security bulletin HCSEC-2025-05, published 13 March 2025, covers CVE-2025-25291 and CVE-2025-25292 in Ruby-SAML as they affect Terraform Enterprise single sign-on. Both are authentication-bypass issues via XML signature wrapping. Fixed in Terraform Enterprise v202502-2.

    Patch self-hosted Terraform Enterprise to v202502-2 or newer and review the audit log for unexpected sign-ins across the exposure window.

Languages, runtimes and frameworks

Sections
  • notable PHP

    Coordinated PHP security releases across all supported branches — github.com

    PHP 8.4.5, 8.3.19, 8.2.28 and 8.1.32 shipped on 13 March 2025 fixing multiple security issues, including CVE-2025-1219: libxml streams used the wrong Content-Type header when requesting a redirected resource, which can cause a document to be parsed with the wrong charset and possibly bypass validation. These are the first 2025 fixes for the security-only 8.1 and 8.2 branches.

    Update PHP on Drupal and WordPress hosts. If you are still on PHP 8.1, note it leaves security support at the end of 2025 and plan the jump to 8.3 or 8.4.

  • notable Node.js

    Node.js 18.20.8 lands, five weeks before Node 18's end of life — nodejs.org

    Node.js 18.20.8 was released on 27 March 2025, and its release notes say Node.js 18 is scheduled to reach end of life on 30 April 2025. Separately, by 7 March the CVE Program had rejected three CVEs Node had minted purely to mark end-of-life versions, and Node instead began including end-of-life lines in the applicability of regular advisories.

    Use the release team's schedule data as the authority for end-of-life dates, because Node no longer mints CVEs to mark them. The five weeks before the end-of-life date are exactly where a fleet gets left unpatched, so bring the move to Node 20 or 22 forward rather than waiting for 30 April.

  • notable Laravel

    Laravel file validation bypass in wildcard array rules — github.com

    CVE-2025-27515, published 5 March 2025 and rated Moderate, allows a file validation bypass in Laravel where wildcard array validation rules are used. Patched releases are 10.48.29, 11.44.1 and 12.1.1. Validation rules that look like they constrain an uploaded file's type can be sidestepped when the file arrives inside an array.

    Patch, then grep for wildcard rules applied to file inputs and re-test them with an array payload. A validation rule that silently does not apply is worse than no rule, because the code above it assumes the check ran.

Static site and web tooling

Sections
  • critical Next.js

    Next.js middleware authorisation bypass (CVE-2025-29927) — nextjs.org

    A critical flaw (CVSS 9.1) disclosed on 21 March lets attackers skip Next.js middleware entirely by supplying the internal x-middleware-subrequest header, bypassing authentication and authorisation checks on self-hosted deployments. Fixed in 15.2.3, 14.2.25, 13.5.9 and 12.3.5. Fully static exports are not affected.

    Upgrade self-hosted Next.js applications immediately. If you cannot patch, strip the x-middleware-subrequest header from external requests at your proxy or web server.

  • notable Astro

    Astro 5.5 improves Markdown rendering and adds type-safe sessions — astro.build

    Astro 5.5, released 13 March, adds better support for diagramming tools such as Mermaid in Markdown code blocks, improved heading ID compatibility, type-safe experimental sessions, and experimental preservation of style and script tag order. The Markdown changes can alter rendered build output for content-heavy sites.

    Review rendered Markdown output after upgrading, particularly pages using code blocks or diagram tooling.

  • notable Nuxt

    Nuxt cache poisoning turns a shared cache into a denial of service — github.com

    CVE-2025-27415, published 19 March 2025 and rated High, lets an attacker poison a shared cache using Nuxt's payload-rendering response. Because the poisoned entry is served from the cache rather than the origin, the impact lands on every subsequent visitor rather than on the attacker's own session.

    If you serve a Nuxt application through a CDN or any shared cache, patch and then review what your cache key actually includes — this class of flaw is only exploitable because the poisoned response looks cacheable, and a stricter key limits the blast radius of the next one.