2026-10-30 17:15CVE-2026-112365Wordfence
PUBLISHED5.2CWE-79

easy.jobs <= 2.8.4 - Unauthenticated Stored Cross-Site Scripting via 'cover_letter' Parameter

The easy.jobs – AI powered Job Listing, Job Board, Career Page, Recruitment & Hiring Solution plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'cover_letter' parameter in all versions up to, and including, 2.8.4 due to insufficient input sanitization and output escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page. Successful execution requires an administrator to open the affected candidate's Application tab and click the attacker-crafted link, at which point WHATWG URL parsing collapses the encoded scheme back to javascript: and executes the payload.

Problem type

Affected products

wpdevteam

easy.jobs – AI powered Job Listing, Job Board, Career Page, Recruitment & Hiring Solution

<= 2.8.4 - AFFECTED

References

wordfence.com

https://www.wordfence.com/threat-intel/vulnerabilities/id/bff1af96-c60e-4c1e-a793-31cd23ec635e?source=cve

plugins.trac.wordpress.org

https://plugins.trac.wordpress.org/browser/easyjobs/tags/2.8.3/admin/react/src/components/Candidate/Details/Tabs/Application.js#L100

plugins.trac.wordpress.org

https://plugins.trac.wordpress.org/browser/easyjobs/tags/2.8.3/admin/react/src/components/Messages/sanitize.js#L66

plugins.trac.wordpress.org

https://plugins.trac.wordpress.org/browser/easyjobs/tags/2.8.3/admin/react/src/components/Messages/sanitize.js#L139

plugins.trac.wordpress.org

https://plugins.trac.wordpress.org/browser/easyjobs/tags/2.8.4/admin/react/src/components/Messages/sanitize.js#L66

plugins.trac.wordpress.org

https://plugins.trac.wordpress.org/browser/easyjobs/tags/2.8.4/admin/react/src/components/Candidate/Details/Tabs/Application.js#L100

plugins.trac.wordpress.org

https://plugins.trac.wordpress.org/browser/easyjobs/tags/2.8.4/admin/react/src/components/Messages/sanitize.js#L139

plugins.trac.wordpress.org

https://plugins.trac.wordpress.org/browser/easyjobs/tags/2.8.4/admin/includes/class-easyjobs-admin-candidates.php#L226

plugins.trac.wordpress.org

https://plugins.trac.wordpress.org/browser/easyjobs/tags/2.8.3/admin/includes/class-easyjobs-admin-candidates.php#L226

plugins.trac.wordpress.org

https://plugins.trac.wordpress.org/changeset?sfp_email=&sfph_mail=&reponame=&new=3768199%40easyjobs%2Ftrunk%2Fadmin%2Freact%2Fsrc%2Fcomponents%2FMessages%2Fsanitize.js&old=3754233%40easyjobs%2Ftrunk%2Fadmin%2Freact%2Fsrc%2Fcomponents%2FMessages%2Fsanitize.js&sfp_email=&sfph_mail=

plugins.trac.wordpress.org

https://plugins.trac.wordpress.org/changeset/3768199/easyjobs/trunk/admin/react/src/components/Candidate/Details/Tabs/Application.js

GitHub Security Advisories

GHSA-wfm8-84j7-5644

The easy.jobs – AI powered Job Listing, Job Board, Career Page, Recruitment & Hiring Solution...

https://github.com/advisories/GHSA-wfm8-84j7-5644

The easy.jobs – AI powered Job Listing, Job Board, Career Page, Recruitment & Hiring Solution plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'cover_letter' parameter in all versions up to, and including, 2.8.4 due to insufficient input sanitization and output escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page. Successful execution requires an administrator to open the affected candidate's Application tab and click the attacker-crafted link, at which point WHATWG URL parsing collapses the encoded scheme back to javascript: and executes the payload.

nvd.nist.gov

https://nvd.nist.gov/vuln/detail/CVE-2026-112365

plugins.trac.wordpress.org

https://plugins.trac.wordpress.org/browser/easyjobs/tags/2.8.3/admin/includes/class-easyjobs-admin-candidates.php#L226

plugins.trac.wordpress.org

https://plugins.trac.wordpress.org/browser/easyjobs/tags/2.8.3/admin/react/src/components/Candidate/Details/Tabs/Application.js#L100

plugins.trac.wordpress.org

https://plugins.trac.wordpress.org/browser/easyjobs/tags/2.8.3/admin/react/src/components/Messages/sanitize.js#L139

plugins.trac.wordpress.org

https://plugins.trac.wordpress.org/browser/easyjobs/tags/2.8.3/admin/react/src/components/Messages/sanitize.js#L66

plugins.trac.wordpress.org

https://plugins.trac.wordpress.org/browser/easyjobs/tags/2.8.4/admin/includes/class-easyjobs-admin-candidates.php#L226

plugins.trac.wordpress.org

https://plugins.trac.wordpress.org/browser/easyjobs/tags/2.8.4/admin/react/src/components/Candidate/Details/Tabs/Application.js#L100

plugins.trac.wordpress.org

https://plugins.trac.wordpress.org/browser/easyjobs/tags/2.8.4/admin/react/src/components/Messages/sanitize.js#L139

plugins.trac.wordpress.org

https://plugins.trac.wordpress.org/browser/easyjobs/tags/2.8.4/admin/react/src/components/Messages/sanitize.js#L66

plugins.trac.wordpress.org

https://plugins.trac.wordpress.org/changeset/3768199/easyjobs/trunk/admin/react/src/components/Candidate/Details/Tabs/Application.js

plugins.trac.wordpress.org

https://plugins.trac.wordpress.org/changeset?sfp_email=&sfph_mail=&reponame=&new=3768199%40easyjobs%2Ftrunk%2Fadmin%2Freact%2Fsrc%2Fcomponents%2FMessages%2Fsanitize.js&old=3754233%40easyjobs%2Ftrunk%2Fadmin%2Freact%2Fsrc%2Fcomponents%2FMessages%2Fsanitize.js&sfp_email=&sfph_mail=

wordfence.com

https://www.wordfence.com/threat-intel/vulnerabilities/id/bff1af96-c60e-4c1e-a793-31cd23ec635e?source=cve

github.com

https://github.com/advisories/GHSA-wfm8-84j7-5644

JSON source

https://cveawg.mitre.org/api/cve/CVE-2026-112365
Click to expand
{
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "cveMetadata": {
    "cveId": "CVE-2026-112365",
    "assignerOrgId": "b15e7b5b-3da4-40ae-a43c-f7aa60e62599",
    "assignerShortName": "Wordfence",
    "dateUpdated": "2026-10-30T18:08:57.531Z",
    "dateReserved": "2026-10-19T15:19:16.195Z",
    "datePublished": "2026-10-30T17:15:31.461Z",
    "state": "PUBLISHED"
  },
  "containers": {
    "cna": {
      "providerMetadata": {
        "orgId": "b15e7b5b-3da4-40ae-a43c-f7aa60e62599",
        "shortName": "Wordfence",
        "dateUpdated": "2026-10-30T17:15:31.461Z"
      },
      "title": "easy.jobs <= 2.8.4 - Unauthenticated Stored Cross-Site Scripting via 'cover_letter' Parameter",
      "descriptions": [
        {
          "lang": "en",
          "value": "The easy.jobs – AI powered Job Listing, Job Board, Career Page, Recruitment & Hiring Solution plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'cover_letter' parameter in all versions up to, and including, 2.8.4 due to insufficient input sanitization and output escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page. Successful execution requires an administrator to open the affected candidate's Application tab and click the attacker-crafted link, at which point WHATWG URL parsing collapses the encoded scheme back to javascript: and executes the payload."
        }
      ],
      "affected": [
        {
          "vendor": "wpdevteam",
          "product": "easy.jobs – AI powered Job Listing, Job Board, Career Page, Recruitment & Hiring Solution",
          "defaultStatus": "unaffected",
          "versions": [
            {
              "version": "0",
              "status": "affected",
              "versionType": "semver",
              "lessThanOrEqual": "2.8.4"
            }
          ]
        }
      ],
      "problemTypes": [
        {
          "descriptions": [
            {
              "lang": "en",
              "description": "CWE-79 Improper Neutralization of Input During Web Page Generation",
              "cweId": "CWE-79",
              "type": "CWE"
            }
          ]
        }
      ],
      "references": [
        {
          "url": "https://www.wordfence.com/threat-intel/vulnerabilities/id/bff1af96-c60e-4c1e-a793-31cd23ec635e?source=cve"
        },
        {
          "url": "https://plugins.trac.wordpress.org/browser/easyjobs/tags/2.8.3/admin/react/src/components/Candidate/Details/Tabs/Application.js#L100"
        },
        {
          "url": "https://plugins.trac.wordpress.org/browser/easyjobs/tags/2.8.3/admin/react/src/components/Messages/sanitize.js#L66"
        },
        {
          "url": "https://plugins.trac.wordpress.org/browser/easyjobs/tags/2.8.3/admin/react/src/components/Messages/sanitize.js#L139"
        },
        {
          "url": "https://plugins.trac.wordpress.org/browser/easyjobs/tags/2.8.4/admin/react/src/components/Messages/sanitize.js#L66"
        },
        {
          "url": "https://plugins.trac.wordpress.org/browser/easyjobs/tags/2.8.4/admin/react/src/components/Candidate/Details/Tabs/Application.js#L100"
        },
        {
          "url": "https://plugins.trac.wordpress.org/browser/easyjobs/tags/2.8.4/admin/react/src/components/Messages/sanitize.js#L139"
        },
        {
          "url": "https://plugins.trac.wordpress.org/browser/easyjobs/tags/2.8.4/admin/includes/class-easyjobs-admin-candidates.php#L226"
        },
        {
          "url": "https://plugins.trac.wordpress.org/browser/easyjobs/tags/2.8.3/admin/includes/class-easyjobs-admin-candidates.php#L226"
        },
        {
          "url": "https://plugins.trac.wordpress.org/changeset?sfp_email=&sfph_mail=&reponame=&new=3768199%40easyjobs%2Ftrunk%2Fadmin%2Freact%2Fsrc%2Fcomponents%2FMessages%2Fsanitize.js&old=3754233%40easyjobs%2Ftrunk%2Fadmin%2Freact%2Fsrc%2Fcomponents%2FMessages%2Fsanitize.js&sfp_email=&sfph_mail="
        },
        {
          "url": "https://plugins.trac.wordpress.org/changeset/3768199/easyjobs/trunk/admin/react/src/components/Candidate/Details/Tabs/Application.js"
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "version": "3.1",
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N",
            "baseScore": 7.2,
            "baseSeverity": "HIGH"
          }
        }
      ],
      "timeline": [
        {
          "time": "2026-10-19T15:30:57.000Z",
          "lang": "en",
          "value": "Vendor Notified"
        },
        {
          "time": "2026-10-30T16:19:54.000Z",
          "lang": "en",
          "value": "Disclosed"
        }
      ],
      "credits": [
        {
          "lang": "en",
          "value": "poiri3r",
          "type": "finder"
        }
      ]
    },
    "adp": [
      {
        "providerMetadata": {
          "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
          "shortName": "CISA-ADP",
          "dateUpdated": "2026-10-30T18:08:57.531Z"
        },
        "title": "CISA ADP Vulnrichment",
        "metrics": [
          {}
        ]
      }
    ]
  }
}