GHSA-FWCF-753V-FGCJ
Vulnerability from github – Published: 2023-04-24 22:44 – Updated: 2025-04-11 23:44Impact
Kiwi TCMS allows users to upload attachments to test plans, test cases, etc. In earlier versions there is no control over what kinds of files can be uploaded. Thus a malicious actor may upload an .exe file or a file containing embedded JavaScript and trick others into clicking on these files causing vulnerable browsers to execute malicious code on another computer or attempting XSS attacks.
Stored XSS attacks via file uploads have been fixed in earlier versions of Kiwi TCMS, see GHSA-2wcr-87wf-cf9j. This advisory deals with prohibiting users to upload potentially compromised files in the first place.
Patches
Kiwi TCMS v12.2 comes with functionality that allows administrators to configure additional upload validator functions which give them more control over what file types are accepted for upload. By default .exe are denied. Other files containing the <script> tag, regardless of their type are also denied b/c they are a path to XSS attacks.
Workarounds
Upgrade to version 12.2 or later.
References
Originally reported by Ahmed Rabeaa Mosaa.
{
"affected": [
{
"package": {
"ecosystem": "PyPI",
"name": "kiwitcms"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "12.2"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"aliases": [
"CVE-2023-30613"
],
"database_specific": {
"cwe_ids": [
"CWE-434"
],
"github_reviewed": true,
"github_reviewed_at": "2023-04-24T22:44:12Z",
"nvd_published_at": "2023-04-24T17:15:10Z",
"severity": "HIGH"
},
"details": "### Impact\nKiwi TCMS allows users to upload attachments to test plans, test cases, etc. In earlier versions there is no control over what kinds of files can be uploaded. Thus a malicious actor may upload an `.exe` file or a file containing embedded JavaScript and trick others into clicking on these files causing vulnerable browsers to execute malicious code on another computer or attempting XSS attacks.\n\nStored XSS attacks via file uploads have been fixed in earlier versions of Kiwi TCMS, see [GHSA-2wcr-87wf-cf9j](https://github.com/kiwitcms/Kiwi/security/advisories/GHSA-2wcr-87wf-cf9j). This advisory deals with prohibiting users to upload potentially compromised files in the first place.\n\n\n### Patches\nKiwi TCMS v12.2 comes with functionality that allows administrators to configure additional upload validator functions which give them more control over what file types are accepted for upload. By default `.exe` are denied. Other files containing the `\u003cscript\u003e` tag, regardless of their type are also denied b/c they are a path to XSS attacks.\n\n\n\n### Workarounds\nUpgrade to version 12.2 or later.\n\n### References\nOriginally reported by [Ahmed Rabeaa Mosaa](https://huntr.dev/bounties/c30d3503-600d-4d00-9571-98826a51f12c).",
"id": "GHSA-fwcf-753v-fgcj",
"modified": "2025-04-11T23:44:47Z",
"published": "2023-04-24T22:44:12Z",
"references": [
{
"type": "WEB",
"url": "https://github.com/kiwitcms/Kiwi/security/advisories/GHSA-fwcf-753v-fgcj"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2023-30613"
},
{
"type": "PACKAGE",
"url": "https://github.com/kiwitcms/Kiwi"
},
{
"type": "WEB",
"url": "https://huntr.com/bounties/c30d3503-600d-4d00-9571-98826a51f12c"
},
{
"type": "WEB",
"url": "https://huntr.dev/bounties/c30d3503-600d-4d00-9571-98826a51f12c"
},
{
"type": "WEB",
"url": "https://kiwitcms.org/blog/kiwi-tcms-team/2023/04/23/kiwi-tcms-122"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:H/I:H/A:N",
"type": "CVSS_V3"
}
],
"summary": "Unrestricted file upload in kiwi TCMS"
}
Sightings
| Author | Source | Type | Date |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.