<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">
  <channel>
    <title>Most recent entries from all</title>
    <link>https://vulnerability.circl.lu</link>
    <description>Contains only the most 10 recent entries.</description>
    <docs>http://www.rssboard.org/rss-specification</docs>
    <generator>python-feedgen</generator>
    <language>en</language>
    <lastBuildDate>Thu, 01 Oct 2026 11:43:17 +0000</lastBuildDate>
    <item>
      <title>fkie_cve-2026-42611</title>
      <link>https://vulnerability.circl.lu/vuln/fkie_cve-2026-42611</link>
      <description>&lt;p&gt;Grav is a file-based Web platform. Prior to 2.0.0-beta.2, a low-privileged (with the ability to create a page) user can cause XSS with the injection of svg element. The XSS can further be escalated to dump the entire system information available under /admin/config/info whenever a Super Admin visits the page; which can further be chained with the use of admin-nonce to do a complete server compromise (RCE). This vulnerability is fixed in 2.0.0-beta.2.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;Grav is a file-based Web platform. Prior to 2.0.0-beta.2, a low-privileged (with the ability to create a page) user can cause XSS with the injection of svg element. The XSS can further be escalated to dump the entire system information available under /admin/config/info whenever a Super Admin visits the page; which can further be chained with the use of admin-nonce to do a complete server compromise (RCE). This vulnerability is fixed in 2.0.0-beta.2.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/fkie_cve-2026-42611</guid>
    </item>
    <item>
      <title>GHSA-w8cg-7jcj-4vv2 — Grav is Vulnerable to Stored XSS via Tag Injection</title>
      <link>https://vulnerability.circl.lu/vuln/ghsa-w8cg-7jcj-4vv2</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Packagist: getgrav/grav&lt;/p&gt;
&lt;p&gt;### Summary
A low-privileged (with the ability to create a page) user can cause XSS with the injection of `svg` element. The XSS can further be escalated to dump the entire system information available under `/admin/config/info` whenever a Super Admin visits the page; which can further be chained with the use of admin-nonce to do a complete server compromise (RCE).&lt;/p&gt;
&lt;p&gt;### Details
Affected endpoint: `admin/pages/&amp;lt;page&amp;gt;`
Affected code: `system/src/Grav/Common/Security.php`&lt;/p&gt;
&lt;p&gt;```php
    public static function detectXss($string, array $options = null): ?string
    {
        // Skip any null or non string values
        if (null === $string || !is_string($string) || empty($string)) {
            return null;
        }&lt;/p&gt;
&lt;p&gt;if (null === $options) {
            $options = static::getXssDefaults();
        }&lt;/p&gt;
&lt;p&gt;$enabled_rules = (array)($options[&amp;#39;enabled_rules&amp;#39;] ?? null);
        $dangerous_tags = (array)($options[&amp;#39;dangerous_tags&amp;#39;] ?? null);
        if (!$dangerous_tags) {
            $enabled_rules[&amp;#39;dangerous_tags&amp;#39;] = false;
        }
        $invalid_protocols = (array)($options[&amp;#39;invalid_protocols&amp;#39;] ?? null);
        if (!$invalid_protocols) {
            $enabled_rules[&amp;#39;invalid_protocols&amp;#39;] = false;
        }
        $enabled_rules = array_filter($enabled_rules, static function ($val) { return !empty($val); });
        if (!$enabled_rules) {
            return null;
        }&lt;/p&gt;
&lt;p&gt;// Keep a copy of the original string before cleaning up
        $orig = $string;…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Packagist: getgrav/grav&lt;/p&gt;
&lt;p&gt;### Summary
A low-privileged (with the ability to create a page) user can cause XSS with the injection of `svg` element. The XSS can further be escalated to dump the entire system information available under `/admin/config/info` whenever a Super Admin visits the page; which can further be chained with the use of admin-nonce to do a complete server compromise (RCE).&lt;/p&gt;
&lt;p&gt;### Details
Affected endpoint: `admin/pages/&amp;lt;page&amp;gt;`
Affected code: `system/src/Grav/Common/Security.php`&lt;/p&gt;
&lt;p&gt;```php
    public static function detectXss($string, array $options = null): ?string
    {
        // Skip any null or non string values
        if (null === $string || !is_string($string) || empty($string)) {
            return null;
        }&lt;/p&gt;
&lt;p&gt;if (null === $options) {
            $options = static::getXssDefaults();
        }&lt;/p&gt;
&lt;p&gt;$enabled_rules = (array)($options[&amp;#39;enabled_rules&amp;#39;] ?? null);
        $dangerous_tags = (array)($options[&amp;#39;dangerous_tags&amp;#39;] ?? null);
        if (!$dangerous_tags) {
            $enabled_rules[&amp;#39;dangerous_tags&amp;#39;] = false;
        }
        $invalid_protocols = (array)($options[&amp;#39;invalid_protocols&amp;#39;] ?? null);
        if (!$invalid_protocols) {
            $enabled_rules[&amp;#39;invalid_protocols&amp;#39;] = false;
        }
        $enabled_rules = array_filter($enabled_rules, static function ($val) { return !empty($val); });
        if (!$enabled_rules) {
            return null;
        }&lt;/p&gt;
&lt;p&gt;// Keep a copy of the original string before cleaning up
        $orig = $string;…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/ghsa-w8cg-7jcj-4vv2</guid>
    </item>
  </channel>
</rss>
