VYPR
Moderate severityNVD Advisory· Published Aug 29, 2022· Updated Apr 23, 2025

Cross-site scripting (XSS) from dynamic options in the multiselect field in Kirby

CVE-2022-36037

Description

kirby is a content management system (CMS) that adapts to many different projects and helps you build your own ideal interface. Cross-site scripting (XSS) is a type of vulnerability that allows execution of any kind of JavaScript code inside the Panel session of the same or other users. In the Panel, a harmful script can for example trigger requests to Kirby's API with the permissions of the victim. If bad actors gain access to your group of authenticated Panel users they can escalate their privileges via the Panel session of an admin user. Depending on your site, other JavaScript-powered attacks are possible. The multiselect field allows selection of tags from an autocompleted list. Unfortunately, the Panel in Kirby 3.5 used HTML rendering for the raw option value. This allowed attackers with influence on the options source to store HTML code. The browser of the victim who visited a page with manipulated multiselect options in the Panel will then have rendered this malicious HTML code when the victim opened the autocomplete dropdown. Users are *not* affected by this vulnerability if you don't use the multiselect field or don't use it with options that can be manipulated by attackers. The problem has been patched in Kirby 3.5.8.1.

Affected packages

Versions sourced from the GitHub Security Advisory.

PackageAffected versionsPatched versions
getkirby/cmsPackagist
< 3.5.8.13.5.8.1

Affected products

1

Patches

1
b5b8863885e1

Fix XSS issue in the multiselect dropdown

https://github.com/getkirby/kirbyLukas BestleAug 23, 2022via ghsa
1 file changed · +1 2
  • panel/src/components/Forms/Input/MultiselectInput.vue+1 2 modified
    @@ -58,8 +58,7 @@
             >
               <!-- eslint-disable-next-line vue/no-v-html -->
               <span v-html="option.display" />
    -          <!-- eslint-disable-next-line vue/no-v-html -->
    -          <span class="k-multiselect-value" v-html="option.info" />
    +          <span class="k-multiselect-value" v-text="option.info" />
             </k-dropdown-item>
     
             <k-dropdown-item
    

Vulnerability mechanics

Generated by null/stub on May 9, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.

References

5

News mentions

0

No linked articles in our index yet.