<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
  <id>https://cve.radiocsirt.org/rss/recent/all/10</id>
  <title>Most recent entries from all</title>
  <updated>2026-10-22T08:39:25.086659+00:00</updated>
  <author>
    <name>Vulnerability-Lookup</name>
    <email>csirt@opendfir.org</email>
  </author>
  <link href="https://cve.radiocsirt.org" rel="alternate"/>
  <generator uri="https://lkiesow.github.io/python-feedgen" version="1.0.0">python-feedgen</generator>
  <subtitle>Contains only the most 10 recent entries.</subtitle>
  <entry>
    <id>https://cve.radiocsirt.org/vuln/euvd-2026-280034</id>
    <title>EUVD-2026-280034</title>
    <updated>2026-10-22T08:39:25.088872+00:00</updated>
    <content>EUVD-2026-280034</content>
    <link href="https://cve.radiocsirt.org/vuln/euvd-2026-280034"/>
  </entry>
  <entry>
    <id>https://cve.radiocsirt.org/vuln/fkie_cve-2026-34729</id>
    <title>fkie_cve-2026-34729</title>
    <updated>2026-10-22T08:39:25.088910+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>phpMyFAQ is an open source FAQ web application. Prior to version 4.1.1, there is a stored XSS vulnerability via Regex Bypass in Filter::removeAttributes(). This issue has been patched in version 4.1.1.</p>
      </div>
    </content>
    <link href="https://cve.radiocsirt.org/vuln/fkie_cve-2026-34729"/>
  </entry>
  <entry>
    <id>https://cve.radiocsirt.org/vuln/ghsa-cv2g-8cj8-vgc7</id>
    <title>GHSA-cv2g-8cj8-vgc7 — phpMyFAQ: Stored XSS via Regex Bypass in Filter::removeAttributes()</title>
    <updated>2026-10-22T08:39:25.088941+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> Packagist: phpmyfaq/phpmyfaq</p>
<p>### Summary
The sanitization pipeline for FAQ content is:
1. `Filter::filterVar($input, FILTER_SANITIZE_SPECIAL_CHARS)` — encodes `&lt;`, `&gt;`, `"`, `'`, `&amp;` to HTML entities
2. `html_entity_decode($input, ENT_QUOTES | ENT_HTML5)` — decodes entities back to characters
3. `Filter::removeAttributes($input)` — removes dangerous HTML attributes</p>
<p>The `removeAttributes()` regex at line 174 only matches attributes with double-quoted values:
```php
preg_match_all(pattern: '/[a-z]+=".+"/iU', subject: $html, matches: $attributes);
```</p>
<p>This regex does NOT match:
- Attributes with single quotes: `onerror='alert(1)'`
- Attributes without quotes: `onerror=alert(1)`</p>
<p>An attacker can bypass sanitization by submitting FAQ content with unquoted or single-quoted event handler attributes.</p>
<p>### Details</p>
<p>**Affected File:** `phpmyfaq/src/phpMyFAQ/Filter.php`, line 174</p>
<p>**Sanitization flow for FAQ question field:**</p>
<p>`FaqController::create()` lines 110, 145-149:
```php
$question = Filter::filterVar($data-&gt;question, FILTER_SANITIZE_SPECIAL_CHARS);
// ...
-&gt;setQuestion(Filter::removeAttributes(html_entity_decode(
    (string) $question,
    ENT_QUOTES | ENT_HTML5,
    encoding: 'UTF-8',
)))
```</p>
<p>**Template rendering:** `faq.twig` line 36:
```twig
&lt;h2 class="mb-4 border-bottom"&gt;{{ question | raw }}&lt;/h2&gt;
```</p>
<p>**How the bypass works:**</p>
<p>1. Attacker submits: `&lt;img src=x onerror=alert(1)&gt;`
2. After `FILTER_SANITIZE_SPECIAL_CHARS`: `&amp;lt;img src=x onerror=alert(1)&amp;gt;`
3. After `html_entity_decode()`: `&lt;img src…</p></div>
    </content>
    <link href="https://cve.radiocsirt.org/vuln/ghsa-cv2g-8cj8-vgc7"/>
  </entry>
</feed>
