---
id: CVE-2026-111109
title: >-
  Webmention <= 5.10.1 - Unauthenticated Stored Cross-Site Scripting via Open
  Graph og:title Meta Tag
summary: >-
  The Webmention plugin for WordPress is vulnerable to Stored Cross-Site
  Scripting via the Open Graph og:title meta tag of a webmention source URL in
  versions up to, and including, 5.10.1. This is due to insufficient input
  sanitization: Me…
severity: medium
cvss: 6.1
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N'
cvssSource: cna
cwe:
  - CWE-79
vendor: pfefferle
product: Webmention
affected:
  - Webmention <= 5.10.1
ssvc:
  exploitation: none
  automatable: 'no'
  technicalImpact: partial
  timestamp: '2026-11-01T17:34:53.986526Z'
published: '2026-10-31'
updated: '2026-11-01'
sourceUpdated: '2026-11-01T17:44:30.159Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-111109'
references:
  - url: >-
      https://www.wordfence.com/threat-intel/vulnerabilities/id/0b283d17-b89f-467d-8a79-cdf7b9bfdb65?source=cve
  - url: >-
      https://plugins.trac.wordpress.org/browser/webmention/tags/5.10.1/includes/handler/class-meta.php#L78
  - url: >-
      https://plugins.trac.wordpress.org/browser/webmention/tags/5.10.1/includes/entity/class-item.php#L297
  - url: >-
      https://plugins.trac.wordpress.org/browser/webmention/tags/5.10.1/includes/class-receiver.php#L453
  - url: >-
      https://plugins.trac.wordpress.org/browser/webmention/tags/5.10.1/includes/entity/class-item.php#L125
  - url: >-
      https://plugins.trac.wordpress.org/browser/webmention/tags/5.10.1/includes/class-receiver.php#L267
  - url: 'https://github.com/pfefferle/wordpress-webmention/pull/698'
  - url: >-
      https://plugins.trac.wordpress.org/browser/webmention/tags/5.10.2/includes/class-receiver.php
tags:
  - cve.org
epss: 0.0028
epssPercentile: 0.20603
ingestedAt: '2026-11-05T19:30:42.601Z'
---

## Overview

The Webmention plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the Open Graph og:title meta tag of a webmention source URL in versions up to, and including, 5.10.1. This is due to insufficient input sanitization: Meta::add_properties() maps og:title to the Item::name property, but Item has no concrete set_name() method, so Item::__call() stores the value raw while sibling set_content()/set_summary() paths route through webmention_sanitize_html(); Item::get_content() then falls back to the raw name when content and summary are empty, and Receiver::process() explicitly removes the core wp_filter_kses / wp_filter_post_kses hooks on pre_comment_content before calling wp_new_comment(), so the payload is persisted to comment_content as-is. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page, after an administrator approves the resulting pending webmention comment. Successful exploitation additionally requires an action by an administrator — the attacker cannot trigger the vulnerability on their own.

## Affected

- `Webmention <= 5.10.1`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
