CWE-862
Allowed-with-ReviewMissing Authorization
Abstraction: Class · Status: Incomplete
The product does not perform an authorization check when an actor attempts to access a resource or perform an action.
17432 vulnerabilities reference this CWE, most recent first.
CVE-2026-91108 (GCVE-0-2026-91108)
Vulnerability from cvelistv5 – Published: 2026-10-03 05:29 – Updated: 2026-10-03 15:42- CWE-862 - Missing Authorization
| Vendor | Product | Version | |
|---|---|---|---|
| alttextai | Alt Text AI – Automatically generate image alt text for SEO and accessibility |
Affected:
0 , ≤ 1.10.41
(semver)
|
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-91108",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "no"
},
{
"Technical Impact": "partial"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-10-03T15:33:11.401945Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-10-03T15:42:45.733Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"defaultStatus": "unaffected",
"product": "Alt Text AI \u2013 Automatically generate image alt text for SEO and accessibility",
"vendor": "alttextai",
"versions": [
{
"lessThanOrEqual": "1.10.41",
"status": "affected",
"version": "0",
"versionType": "semver"
}
]
}
],
"credits": [
{
"lang": "en",
"type": "finder",
"value": "Webbernaut"
}
],
"descriptions": [
{
"lang": "en",
"value": "The Alt Text AI \u2013 Automatically generate image alt text for SEO and accessibility plugin for WordPress is vulnerable to authorization bypass in all versions up to, and including, 1.10.41. This is due to the plugin not properly verifying that a user is authorized to perform an action. This makes it possible for authenticated attackers, with subscriber-level access and above, to overwrite the post_content of any post or page on the site \u2014 including content they do not own \u2014 with LLM-generated text influenced by attacker-controlled keywords, enabling black-hat SEO manipulation and unauthorized consumption of the site owner\u0027s paid AltText.ai API credits. The nonce required to invoke the action is emitted on every admin page including /wp-admin/profile.php, which is accessible to Subscribers, making the nonce trivially obtainable by any authenticated user."
}
],
"metrics": [
{
"cvssV3_1": {
"baseScore": 4.3,
"baseSeverity": "MEDIUM",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N",
"version": "3.1"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-862",
"description": "CWE-862 Missing Authorization",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-10-03T05:29:13.391Z",
"orgId": "b15e7b5b-3da4-40ae-a43c-f7aa60e62599",
"shortName": "Wordfence"
},
"references": [
{
"url": "https://www.wordfence.com/threat-intel/vulnerabilities/id/216e3087-52f1-4b2e-a31c-0c2ddf41aefb?source=cve"
},
{
"url": "https://plugins.trac.wordpress.org/browser/alttext-ai/tags/1.10.38/includes/class-atai-post.php#L275"
},
{
"url": "https://plugins.trac.wordpress.org/browser/alttext-ai/tags/1.10.38/includes/class-atai.php#L271"
},
{
"url": "https://plugins.trac.wordpress.org/browser/alttext-ai/tags/1.10.38/admin/class-atai-admin.php#L75"
},
{
"url": "https://plugins.trac.wordpress.org/changeset?reponame=\u0026old=3723468%40alttext-ai\u0026new=3723468%40alttext-ai"
}
],
"timeline": [
{
"lang": "en",
"time": "2026-10-02T16:34:58.000Z",
"value": "Disclosed"
}
],
"title": "Alt Text AI \u003c= 1.10.41 - Missing Authorization to Authenticated (Subscriber+) Arbitrary Post Content Modification via atai_enrich_post_content AJAX Action"
}
},
"cveMetadata": {
"assignerOrgId": "b15e7b5b-3da4-40ae-a43c-f7aa60e62599",
"assignerShortName": "Wordfence",
"cveId": "CVE-2026-91108",
"datePublished": "2026-10-03T05:29:13.391Z",
"dateReserved": "2026-09-14T19:34:00.791Z",
"dateUpdated": "2026-10-03T15:42:45.733Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
CVE-2026-91092 (GCVE-0-2026-91092)
Vulnerability from cvelistv5 – Published: 2026-09-22 07:41 – Updated: 2026-09-23 18:46- CWE-862 - Missing Authorization
| Vendor | Product | Version | |
|---|---|---|---|
| tomdever | wpForo Forum |
Affected:
0 , ≤ 3.1.5
(semver)
|
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-91092",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "no"
},
{
"Technical Impact": "partial"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-09-23T18:37:44.048003Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-09-23T18:46:53.727Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"defaultStatus": "unaffected",
"product": "wpForo Forum",
"vendor": "tomdever",
"versions": [
{
"lessThanOrEqual": "3.1.5",
"status": "affected",
"version": "0",
"versionType": "semver"
}
]
}
],
"credits": [
{
"lang": "en",
"type": "finder",
"value": "Jonah Burgess (CryptoCat)"
}
],
"descriptions": [
{
"lang": "en",
"value": "The wpForo Forum plugin for WordPress is vulnerable to authorization bypass in all versions up to, and including, 3.1.5. This is due to the plugin not properly verifying that a user is authorized to perform an action. This makes it possible for authenticated attackers, with subscriber-level access and above, to take over another guest author\u0027s forum post and modify its title, body, author name, and stored owner email address. This requires that guest posting and editing are enabled on the forum, and that the attacker knows the target guest author\u0027s email address."
}
],
"metrics": [
{
"cvssV3_1": {
"baseScore": 4.3,
"baseSeverity": "MEDIUM",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N",
"version": "3.1"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-862",
"description": "CWE-862 Missing Authorization",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-09-22T07:41:13.210Z",
"orgId": "b15e7b5b-3da4-40ae-a43c-f7aa60e62599",
"shortName": "Wordfence"
},
"references": [
{
"url": "https://www.wordfence.com/threat-intel/vulnerabilities/id/97084759-a8fb-4b26-a6fa-93d005b1110e?source=cve"
},
{
"url": "https://plugins.trac.wordpress.org/browser/wpforo/tags/3.1.5/classes/Posts.php#L319"
},
{
"url": "https://plugins.trac.wordpress.org/browser/wpforo/tags/3.1.5/includes/functions.php#L2820"
},
{
"url": "https://plugins.trac.wordpress.org/browser/wpforo/tags/3.1.5/classes/Members.php#L3704"
},
{
"url": "https://plugins.trac.wordpress.org/browser/wpforo/tags/3.1.5/classes/Actions.php#L806"
},
{
"url": "https://plugins.trac.wordpress.org/browser/wpforo/tags/3.1.5/includes/hooks.php#L1004"
},
{
"url": "https://plugins.trac.wordpress.org/changeset?reponame=\u0026old=3702319%40wpforo\u0026new=3702319%40wpforo"
}
],
"timeline": [
{
"lang": "en",
"time": "2026-09-14T18:24:03.000Z",
"value": "Vendor Notified"
},
{
"lang": "en",
"time": "2026-09-21T19:01:21.000Z",
"value": "Disclosed"
}
],
"title": "wpForo Forum \u003c= 3.1.5 - Missing Authorization to Authenticated (Subscriber+) Guest Post Takeover via wpforo_post_edit Action / Forged comment_author_email Cookie"
}
},
"cveMetadata": {
"assignerOrgId": "b15e7b5b-3da4-40ae-a43c-f7aa60e62599",
"assignerShortName": "Wordfence",
"cveId": "CVE-2026-91092",
"datePublished": "2026-09-22T07:41:13.210Z",
"dateReserved": "2026-09-14T18:11:51.829Z",
"dateUpdated": "2026-09-23T18:46:53.727Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
CVE-2026-91085 (GCVE-0-2026-91085)
Vulnerability from cvelistv5 – Published: 2026-09-29 08:39 – Updated: 2026-10-01 14:18| URL | Tags |
|---|---|
| https://karaf.apache.org/security/cve-2026-91085.txt | vendor-advisory |
| http://www.openwall.com/lists/oss-security/2026/0… |
| Vendor | Product | Version | |
|---|---|---|---|
| Apache Software Foundation | Apache Karaf |
Affected:
0 , < 4.4.12
(semver)
|
{
"containers": {
"adp": [
{
"providerMetadata": {
"dateUpdated": "2026-09-29T09:15:47.789Z",
"orgId": "af854a3a-2127-422b-91ae-364da2661108",
"shortName": "CVE"
},
"references": [
{
"url": "http://www.openwall.com/lists/oss-security/2026/09/28/10"
}
],
"title": "CVE Program Container"
},
{
"metrics": [
{
"cvssV3_1": {
"attackComplexity": "LOW",
"attackVector": "NETWORK",
"availabilityImpact": "LOW",
"baseScore": 6.3,
"baseSeverity": "MEDIUM",
"confidentialityImpact": "LOW",
"integrityImpact": "LOW",
"privilegesRequired": "LOW",
"scope": "UNCHANGED",
"userInteraction": "NONE",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L",
"version": "3.1"
}
},
{
"other": {
"content": {
"id": "CVE-2026-91085",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "no"
},
{
"Technical Impact": "partial"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-10-01T14:17:41.304608Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-10-01T14:18:12.957Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"defaultStatus": "unaffected",
"product": "Apache Karaf",
"vendor": "Apache Software Foundation",
"versions": [
{
"lessThan": "4.4.12",
"status": "affected",
"version": "0",
"versionType": "semver"
}
]
}
],
"credits": [
{
"lang": "en",
"type": "reporter",
"value": "Rin Ray \u003crindilray@gmail.com\u003e"
}
],
"descriptions": [
{
"lang": "en",
"supportingMedia": [
{
"base64": false,
"type": "text/html",
"value": "Apache Karaf\u0027s shell/SSH command security is enforced by per-scope ACL configuration files (\u003ccode\u003eetc/org.apache.karaf.command.acl.\u0026lt;scope\u0026gt;.cfg\u003c/code\u003e).\u0026nbsp;\u003ccode\u003eSecuredSessionFactoryImpl.checkSecurity()\u003c/code\u003e\u0026nbsp;resolves the roles required for an invocation and, when no ACL rule matches the command, \u003cb\u003efails open\u003c/b\u003e:\u0026nbsp;\u003ccode\u003eACLConfigurationParser.Specificity.NO_MATCH\u003c/code\u003e\u0026nbsp;sets\u0026nbsp;\u003ccode\u003epassCheck = true\u003c/code\u003e. The safety valve for this,\u0026nbsp;\u003ccode\u003ekaraf.secured.command.compulsory.roles\u003c/code\u003e, ships commented out in\u0026nbsp;\u003ccode\u003eetc/system.properties\u003c/code\u003e, so an unmatched command is allowed for any authenticated user.\u003cdiv\u003e\u003cbr\u003e\u003c/div\u003e\u003cdiv\u003eThe shipped\u0026nbsp;\u003ccode\u003eorg.apache.karaf.command.acl.config\u003c/code\u003e\u0026nbsp;ACL (\u003ccode\u003eassemblies/features/standard/src/main/feature/feature.xml\u003c/code\u003e, mirrored into\u0026nbsp;\u003ccode\u003einstance/.../etc/org.apache.karaf.command.acl.config.cfg\u003c/code\u003e) has no\u0026nbsp;\u003ccode\u003einstall\u003c/code\u003e\u0026nbsp;entry. It restricts\u0026nbsp;\u003ccode\u003edelete\u003c/code\u003e\u0026nbsp;to\u0026nbsp;\u003ccode\u003eadmin\u003c/code\u003e, restricts\u0026nbsp;\u003ccode\u003eedit\u003c/code\u003e/\u003ccode\u003eproperty-*\u003c/code\u003e/\u003ccode\u003eupdate\u003c/code\u003e\u0026nbsp;on the\u0026nbsp;\u003ccode\u003ejmx.acl.*\u003c/code\u003e,\u0026nbsp;\u003ccode\u003eorg.apache.karaf.command.acl.*\u003c/code\u003e\u0026nbsp;and\u0026nbsp;\u003ccode\u003eorg.apache.karaf.service.acl.*\u003c/code\u003e\u0026nbsp;PIDs to\u0026nbsp;\u003ccode\u003eadmin\u003c/code\u003e, and allows\u0026nbsp;\u003ccode\u003emanager\u003c/code\u003e\u0026nbsp;for everything else, but\u0026nbsp;\u003ccode\u003econfig:install\u003c/code\u003e\u0026nbsp;was simply unmatched, and therefore allowed for any authenticated user, including one holding only the\u0026nbsp;\u003ccode\u003eviewer\u003c/code\u003e\u0026nbsp;role.\u003c/div\u003e\u003cdiv\u003e\u003cbr\u003e\u003c/div\u003e\u003cdiv\u003e\u003cspan\u003econfig:install \u0026lt;url\u0026gt; \u0026lt;finalname\u0026gt;\u003c/span\u003e\u0026nbsp;fetches\u0026nbsp;\u003ccode\u003eurl\u003c/code\u003e\u0026nbsp;and writes it into\u0026nbsp;\u003ccode\u003e${karaf.etc}\u003c/code\u003e\u0026nbsp;as\u0026nbsp;\u003ccode\u003efinalname\u003c/code\u003e. It calls\u0026nbsp;\u003ccode\u003ePathUtils.checkWithin()\u003c/code\u003e\u0026nbsp;to block\u0026nbsp;\u003ccode\u003e..\u003c/code\u003e\u0026nbsp;traversal outside\u0026nbsp;\u003ccode\u003ekaraf.etc\u003c/code\u003e, but that folder holds every security-relevant file Karaf ships:\u0026nbsp;\u003ccode\u003eusers.properties\u003c/code\u003e,\u0026nbsp;\u003ccode\u003ekeys.properties\u003c/code\u003e,\u0026nbsp;\u003ccode\u003ehost.key\u003c/code\u003e, and all\u0026nbsp;\u003ccode\u003eorg.apache.karaf.*.acl.*\u003c/code\u003e\u0026nbsp;files, including the very ACL file that (mis)governs this command. With\u0026nbsp;\u003ccode\u003e-o\u003c/code\u003e/\u003ccode\u003e--override\u003c/code\u003e, an existing file is overwritten with attacker-controlled bytes fetched from an arbitrary URL.\u003c/div\u003e\u003cdiv\u003e\u003cbr\u003e\u003c/div\u003e\u003cdiv\u003eBecause\u0026nbsp;\u003ccode\u003efelix.fileinstall.dir = ${karaf.etc}\u003c/code\u003e\u0026nbsp;(\u003ccode\u003eetc/config.properties\u003c/code\u003e), Felix FileInstall also watches and reloads any\u0026nbsp;\u003ccode\u003e.cfg\u003c/code\u003e\u0026nbsp;file dropped there, closing the loop without requiring a restart.\u003c/div\u003e\u003cdiv\u003e\u003cbr\u003e\u003c/div\u003e\u003cdiv\u003eBy contrast,\u0026nbsp;\u003ccode\u003ebundle:install\u003c/code\u003e,\u0026nbsp;\u003ccode\u003efeature:install\u003c/code\u003e\u0026nbsp;and\u0026nbsp;\u003ccode\u003ekar:install\u003c/code\u003e\u0026nbsp;are all\u0026nbsp;\u003ccode\u003eadmin\u003c/code\u003e-only in their own ACLs, and\u0026nbsp;\u003ccode\u003econfig:delete\u003c/code\u003e\u0026nbsp;is\u0026nbsp;\u003ccode\u003eadmin\u003c/code\u003e\u0026nbsp;in this same ACL,\u0026nbsp;\u003ccode\u003econfig:install\u003c/code\u003e\u0026nbsp;was the outlier.\u003c/div\u003e\u003ch3\u003eMitigation\u003c/h3\u003e\u003cdiv\u003eAdd\u0026nbsp;\u003ccode\u003einstall = admin\u003c/code\u003e\u0026nbsp;in\u0026nbsp;\u003ccode\u003eetc/org.apache.karaf.command.acl.config.cfg\u003c/code\u003e\u0026nbsp;(create the file is absent), and/or set\u0026nbsp;\u003ccode\u003ekaraf.secured.command.compulsory.roles=admin\u003c/code\u003e\u0026nbsp;in\u0026nbsp;\u003ccode\u003eetc/system.properties\u003c/code\u003e\u0026nbsp;(and restart) to make unmatched commands fail closed by default.\u003c/div\u003e"
}
],
"value": "Apache Karaf\u0027s shell/SSH command security is enforced by per-scope ACL configuration files (etc/org.apache.karaf.command.acl.\u003cscope\u003e.cfg).\u00a0SecuredSessionFactoryImpl.checkSecurity()\u00a0resolves the roles required for an invocation and, when no ACL rule matches the command, fails open:\u00a0ACLConfigurationParser.Specificity.NO_MATCH\u00a0sets\u00a0passCheck = true. The safety valve for this,\u00a0karaf.secured.command.compulsory.roles, ships commented out in\u00a0etc/system.properties, so an unmatched command is allowed for any authenticated user.\n\n\nThe shipped\u00a0org.apache.karaf.command.acl.config\u00a0ACL (assemblies/features/standard/src/main/feature/feature.xml, mirrored into\u00a0instance/.../etc/org.apache.karaf.command.acl.config.cfg) has no\u00a0install\u00a0entry. It restricts\u00a0delete\u00a0to\u00a0admin, restricts\u00a0edit/property-*/update\u00a0on the\u00a0jmx.acl.*,\u00a0org.apache.karaf.command.acl.*\u00a0and\u00a0org.apache.karaf.service.acl.*\u00a0PIDs to\u00a0admin, and allows\u00a0manager\u00a0for everything else, but\u00a0config:install\u00a0was simply unmatched, and therefore allowed for any authenticated user, including one holding only the\u00a0viewer\u00a0role.\n\n\n\n\nconfig:install \u003curl\u003e \u003cfinalname\u003e\u00a0fetches\u00a0url\u00a0and writes it into\u00a0${karaf.etc}\u00a0as\u00a0finalname. It calls\u00a0PathUtils.checkWithin()\u00a0to block\u00a0..\u00a0traversal outside\u00a0karaf.etc, but that folder holds every security-relevant file Karaf ships:\u00a0users.properties,\u00a0keys.properties,\u00a0host.key, and all\u00a0org.apache.karaf.*.acl.*\u00a0files, including the very ACL file that (mis)governs this command. With\u00a0-o/--override, an existing file is overwritten with attacker-controlled bytes fetched from an arbitrary URL.\n\n\n\n\nBecause\u00a0felix.fileinstall.dir = ${karaf.etc}\u00a0(etc/config.properties), Felix FileInstall also watches and reloads any\u00a0.cfg\u00a0file dropped there, closing the loop without requiring a restart.\n\n\n\n\nBy contrast,\u00a0bundle:install,\u00a0feature:install\u00a0and\u00a0kar:install\u00a0are all\u00a0admin-only in their own ACLs, and\u00a0config:delete\u00a0is\u00a0admin\u00a0in this same ACL,\u00a0config:install\u00a0was the outlier.\n\nMitigationAdd\u00a0install = admin\u00a0in\u00a0etc/org.apache.karaf.command.acl.config.cfg\u00a0(create the file is absent), and/or set\u00a0karaf.secured.command.compulsory.roles=admin\u00a0in\u00a0etc/system.properties\u00a0(and restart) to make unmatched commands fail closed by default."
}
],
"metrics": [
{
"other": {
"content": {
"text": "moderate"
},
"type": "Textual description of severity"
},
"scenarios": [
{
"lang": "en",
"value": "GENERAL"
}
]
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-862",
"description": "CWE-862",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-09-29T08:39:33.209Z",
"orgId": "f0158376-9dc2-43b6-827c-5f631a4d8d09",
"shortName": "apache"
},
"references": [
{
"tags": [
"vendor-advisory"
],
"url": "https://karaf.apache.org/security/cve-2026-91085.txt"
}
],
"source": {
"discovery": "EXTERNAL"
},
"title": "Apache Karaf: config:install missing ACL entry allows privilege escalation to admin",
"x_generator": {
"engine": "Vulnogram 1.0.3"
}
}
},
"cveMetadata": {
"assignerOrgId": "f0158376-9dc2-43b6-827c-5f631a4d8d09",
"assignerShortName": "apache",
"cveId": "CVE-2026-91085",
"datePublished": "2026-09-29T08:39:33.209Z",
"dateReserved": "2026-09-14T17:55:38.562Z",
"dateUpdated": "2026-10-01T14:18:12.957Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
CVE-2026-91048 (GCVE-0-2026-91048)
Vulnerability from cvelistv5 – Published: 2026-09-29 08:34 – Updated: 2026-10-01 14:13| Vendor | Product | Version | |
|---|---|---|---|
| Apache Software Foundation | Apache Karaf |
Affected:
0 , < 4.4.12
(semver)
|
{
"containers": {
"adp": [
{
"providerMetadata": {
"dateUpdated": "2026-09-29T09:15:44.666Z",
"orgId": "af854a3a-2127-422b-91ae-364da2661108",
"shortName": "CVE"
},
"references": [
{
"url": "http://www.openwall.com/lists/oss-security/2026/09/28/9"
}
],
"title": "CVE Program Container"
},
{
"metrics": [
{
"cvssV3_1": {
"attackComplexity": "LOW",
"attackVector": "NETWORK",
"availabilityImpact": "HIGH",
"baseScore": 9.8,
"baseSeverity": "CRITICAL",
"confidentialityImpact": "HIGH",
"integrityImpact": "HIGH",
"privilegesRequired": "NONE",
"scope": "UNCHANGED",
"userInteraction": "NONE",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
"version": "3.1"
}
},
{
"other": {
"content": {
"id": "CVE-2026-91048",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "yes"
},
{
"Technical Impact": "total"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-10-01T14:13:10.417139Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-10-01T14:13:30.717Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"defaultStatus": "unaffected",
"product": "Apache Karaf",
"vendor": "Apache Software Foundation",
"versions": [
{
"lessThan": "4.4.12",
"status": "affected",
"version": "0",
"versionType": "semver"
}
]
}
],
"credits": [
{
"lang": "en",
"type": "reporter",
"value": "MopMonk-AI \u003cmopmonk-ai@tophant.com\u003e"
}
],
"descriptions": [
{
"lang": "en",
"supportingMedia": [
{
"base64": false,
"type": "text/html",
"value": "The\u0026nbsp;\u003ccode\u003ejdbc\u003c/code\u003e\u0026nbsp;shell command scope shipped no\u0026nbsp;\u003ccode\u003eorg.apache.karaf.command.acl.jdbc.cfg\u003c/code\u003e. Karaf\u0027s command guard (\u003ccode\u003eSecuredSessionFactoryImpl\u003c/code\u003e) treats a command with no matching ACL rule as \u003cb\u003eallowed\u003c/b\u003e, so any authenticated shell session (including one holding only the\u0026nbsp;\u003ccode\u003eviewer\u003c/code\u003e\u0026nbsp;role) could run every\u0026nbsp;\u003ccode\u003ejdbc:*\u003c/code\u003e\u0026nbsp;command.\u0026nbsp;\u003ccode\u003ejdbc:ds-create\u003c/code\u003e\u0026nbsp;stores a fully attacker-controlled JDBC URL into a\u0026nbsp;\u003ccode\u003epax-jdbc-config\u003c/code\u003e\u0026nbsp;factory\u0026nbsp;\u003ccode\u003eConfiguration\u003c/code\u003e\u0026nbsp;with no validation.\u0026nbsp;\u003ccode\u003epax-jdbc-config\u003c/code\u003e\u0026nbsp;reactively turns that into a live\u0026nbsp;\u003ccode\u003eDataSource\u003c/code\u003e. Several JDBC drivers run code or SQL at connection time based on URL parameters (e.g. H2\u0026nbsp;\u003ccode\u003eINIT=RUNSCRIPT\u003c/code\u003e), so a\u0026nbsp;\u003ccode\u003eviewer\u003c/code\u003e-level shell user could reach arbitrary code execution, bypassing the\u0026nbsp;\u003ccode\u003eadmin\u003c/code\u003e-role gate that already protects\u0026nbsp;\u003ccode\u003eshell:exec\u003c/code\u003e. This is a privilege-escalation-to-RCE chain, not merely an \"admin misconfiguration\".\u003cdiv\u003e\u003cbr\u003e\u003c/div\u003e\u003cdiv\u003eThe same applies to\u0026nbsp;\u003ccode\u003ejms:*\u003c/code\u003e\u0026nbsp;shell commands.\u003c/div\u003e"
}
],
"value": "The\u00a0jdbc\u00a0shell command scope shipped no\u00a0org.apache.karaf.command.acl.jdbc.cfg. Karaf\u0027s command guard (SecuredSessionFactoryImpl) treats a command with no matching ACL rule as allowed, so any authenticated shell session (including one holding only the\u00a0viewer\u00a0role) could run every\u00a0jdbc:*\u00a0command.\u00a0jdbc:ds-create\u00a0stores a fully attacker-controlled JDBC URL into a\u00a0pax-jdbc-config\u00a0factory\u00a0Configuration\u00a0with no validation.\u00a0pax-jdbc-config\u00a0reactively turns that into a live\u00a0DataSource. Several JDBC drivers run code or SQL at connection time based on URL parameters (e.g. H2\u00a0INIT=RUNSCRIPT), so a\u00a0viewer-level shell user could reach arbitrary code execution, bypassing the\u00a0admin-role gate that already protects\u00a0shell:exec. This is a privilege-escalation-to-RCE chain, not merely an \"admin misconfiguration\".\n\n\nThe same applies to\u00a0jms:*\u00a0shell commands."
}
],
"metrics": [
{
"other": {
"content": {
"text": "moderate"
},
"type": "Textual description of severity"
},
"scenarios": [
{
"lang": "en",
"value": "GENERAL"
}
]
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-862",
"description": "CWE-862",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-09-29T08:34:47.193Z",
"orgId": "f0158376-9dc2-43b6-827c-5f631a4d8d09",
"shortName": "apache"
},
"references": [
{
"tags": [
"vendor-advisory"
],
"url": "https://lists.apache.org/thread/ph3867mxh2tft75w0o1hpn10f5mbmw32"
}
],
"source": {
"discovery": "EXTERNAL"
},
"title": "Apache Karaf: Missing authorization on the jdbc:* shell command scope allows privilege escalation to remote code execution via jdbc:ds-create",
"x_generator": {
"engine": "Vulnogram 1.0.3"
}
}
},
"cveMetadata": {
"assignerOrgId": "f0158376-9dc2-43b6-827c-5f631a4d8d09",
"assignerShortName": "apache",
"cveId": "CVE-2026-91048",
"datePublished": "2026-09-29T08:34:47.193Z",
"dateReserved": "2026-09-14T17:14:08.734Z",
"dateUpdated": "2026-10-01T14:13:30.717Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
CVE-2026-90941 (GCVE-0-2026-90941)
Vulnerability from cvelistv5 – Published: 2026-09-14 13:58 – Updated: 2026-09-24 14:22- CWE-862 - Missing Authorization
| URL | Tags |
|---|---|
| https://github.com/LinYuanyi1/cve-request-poc/blo… | exploit |
| https://github.com/201206030/novel-plus/blob/d63c… | technical-description |
| https://github.com/201206030/novel-plus/blob/d63c… | technical-description |
| https://github.com/201206030/novel-plus/releases/… | release-notes |
| https://github.com/201206030/novel-plus | product |
| https://www.vulncheck.com/advisories/novel-plus-t… | third-party-advisory |
| Vendor | Product | Version | |
|---|---|---|---|
| 201206030 | novel-plus |
Affected:
0 , ≤ 5.3.3
(custom)
cpe:2.3:a:xxyopen:novel-plus:*:*:*:*:*:*:*:* |
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-90941",
"options": [
{
"Exploitation": "poc"
},
{
"Automatable": "no"
},
{
"Technical Impact": "partial"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-09-16T15:03:53.883606Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-09-16T15:04:06.648Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"defaultStatus": "unaffected",
"packageURL": "pkg:github/201206030/novel-plus",
"product": "novel-plus",
"repo": "https://github.com/201206030/novel-plus",
"vendor": "201206030",
"versions": [
{
"lessThanOrEqual": "5.3.3",
"status": "affected",
"version": "0",
"versionType": "custom"
}
]
}
],
"cpeApplicability": [
{
"nodes": [
{
"cpeMatch": [
{
"criteria": "cpe:2.3:a:xxyopen:novel-plus:*:*:*:*:*:*:*:*",
"versionEndIncluding": "5.3.3",
"vulnerable": true
}
],
"negate": false,
"operator": "OR"
}
]
}
],
"credits": [
{
"lang": "en",
"type": "finder",
"value": "Mingsheng Lin"
}
],
"datePublic": "2026-09-12T00:00:00.000Z",
"descriptions": [
{
"lang": "en",
"value": "novel-plus through 5.3.3 contains an authorization bypass vulnerability in the BookController download endpoint that allows authenticated backend accounts to export complete book text including paid chapters. Attackers can supply a bookId and bookName to retrieve all chapter content without VIP or purchase verification, bypassing the permission checks and data-scope limits enforced elsewhere in the admin interface."
}
],
"metrics": [
{
"cvssV3_1": {
"attackComplexity": "LOW",
"attackVector": "NETWORK",
"availabilityImpact": "NONE",
"baseScore": 4.3,
"baseSeverity": "MEDIUM",
"confidentialityImpact": "LOW",
"integrityImpact": "NONE",
"privilegesRequired": "LOW",
"scope": "UNCHANGED",
"userInteraction": "NONE",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N",
"version": "3.1"
},
"format": "CVSS",
"scenarios": [
{
"lang": "en",
"value": "GENERAL"
}
]
},
{
"cvssV4_0": {
"attackComplexity": "LOW",
"attackRequirements": "NONE",
"attackVector": "NETWORK",
"baseScore": 5.3,
"baseSeverity": "MEDIUM",
"privilegesRequired": "LOW",
"subAvailabilityImpact": "NONE",
"subConfidentialityImpact": "NONE",
"subIntegrityImpact": "NONE",
"userInteraction": "NONE",
"vectorString": "CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N",
"version": "4.0",
"vulnAvailabilityImpact": "NONE",
"vulnConfidentialityImpact": "LOW",
"vulnIntegrityImpact": "NONE"
},
"format": "CVSS"
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-862",
"description": "Missing Authorization",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-09-24T14:22:02.877Z",
"orgId": "83251b91-4cc7-4094-a5c7-464a1b83ea10",
"shortName": "VulnCheck"
},
"references": [
{
"name": "GET /novel/book/download missing authorization proof of concept",
"tags": [
"exploit"
],
"url": "https://github.com/LinYuanyi1/cve-request-poc/blob/master/novel-plus/poc-09-book-download-missing-authorization.py"
},
{
"name": "BookController.download is the only one of nine methods without @RequiresPermissions",
"tags": [
"technical-description"
],
"url": "https://github.com/201206030/novel-plus/blob/d63c3ee394657046ebd469e263532a350a60e930/novel-admin/src/main/java/com/java2nb/novel/controller/BookController.java"
},
{
"name": "The reader portal gates paid chapters behind a needBuy purchase check that the admin download endpoint omits",
"tags": [
"technical-description"
],
"url": "https://github.com/201206030/novel-plus/blob/d63c3ee394657046ebd469e263532a350a60e930/novel-front/src/main/java/com/java2nb/novel/controller/page/PageController.java"
},
{
"name": "novel-plus v5.3.3 Release Notes",
"tags": [
"release-notes"
],
"url": "https://github.com/201206030/novel-plus/releases/tag/v5.3.3"
},
{
"name": "Product",
"tags": [
"product"
],
"url": "https://github.com/201206030/novel-plus"
},
{
"name": "VulnCheck Advisory: novel-plus through 5.3.3 Missing Authorization on the Admin Book Download Endpoint",
"tags": [
"third-party-advisory"
],
"url": "https://www.vulncheck.com/advisories/novel-plus-through-5.3.3-missing-authorization-on-the-admin-book-download-endpoint"
}
],
"source": {
"discovery": "UNKNOWN"
},
"title": "novel-plus through 5.3.3 Missing Authorization on the Admin Book Download Endpoint",
"x_generator": {
"engine": "vulncheck-endgame"
}
}
},
"cveMetadata": {
"assignerOrgId": "83251b91-4cc7-4094-a5c7-464a1b83ea10",
"assignerShortName": "VulnCheck",
"cveId": "CVE-2026-90941",
"datePublished": "2026-09-14T13:58:44.268Z",
"dateReserved": "2026-09-14T11:34:24.687Z",
"dateUpdated": "2026-09-24T14:22:02.877Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
CVE-2026-90939 (GCVE-0-2026-90939)
Vulnerability from cvelistv5 – Published: 2026-09-14 13:58 – Updated: 2026-09-24 14:22- CWE-862 - Missing Authorization
| URL | Tags |
|---|---|
| https://github.com/LinYuanyi1/cve-request-poc/blo… | exploit |
| https://github.com/201206030/novel-plus/blob/d63c… | technical-description |
| https://github.com/201206030/novel-plus/blob/d63c… | technical-description |
| https://github.com/201206030/novel-plus/releases/… | release-notes |
| https://github.com/201206030/novel-plus | product |
| https://www.vulncheck.com/advisories/novel-plus-t… | third-party-advisory |
| Vendor | Product | Version | |
|---|---|---|---|
| 201206030 | novel-plus |
Affected:
0 , ≤ 5.3.3
(custom)
cpe:2.3:a:xxyopen:novel-plus:*:*:*:*:*:*:*:* |
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-90939",
"options": [
{
"Exploitation": "poc"
},
{
"Automatable": "no"
},
{
"Technical Impact": "partial"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-09-14T14:50:45.473032Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-09-14T14:50:54.291Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"defaultStatus": "unaffected",
"packageURL": "pkg:github/201206030/novel-plus",
"product": "novel-plus",
"repo": "https://github.com/201206030/novel-plus",
"vendor": "201206030",
"versions": [
{
"lessThanOrEqual": "5.3.3",
"status": "affected",
"version": "0",
"versionType": "custom"
}
]
}
],
"cpeApplicability": [
{
"nodes": [
{
"cpeMatch": [
{
"criteria": "cpe:2.3:a:xxyopen:novel-plus:*:*:*:*:*:*:*:*",
"versionEndIncluding": "5.3.3",
"vulnerable": true
}
],
"negate": false,
"operator": "OR"
}
]
}
],
"credits": [
{
"lang": "en",
"type": "finder",
"value": "Mingsheng Lin"
}
],
"datePublic": "2026-09-12T00:00:00.000Z",
"descriptions": [
{
"lang": "en",
"value": "novel-plus through 5.3.3 contains an information disclosure vulnerability in the /sys/user/list endpoint that lacks proper permission annotations. Authenticated attackers can retrieve password hashes and personal data including email addresses and phone numbers for users within their data scope, enabling offline hash cracking and account takeover."
}
],
"metrics": [
{
"cvssV3_1": {
"attackComplexity": "LOW",
"attackVector": "NETWORK",
"availabilityImpact": "NONE",
"baseScore": 6.5,
"baseSeverity": "MEDIUM",
"confidentialityImpact": "HIGH",
"integrityImpact": "NONE",
"privilegesRequired": "LOW",
"scope": "UNCHANGED",
"userInteraction": "NONE",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N",
"version": "3.1"
},
"format": "CVSS",
"scenarios": [
{
"lang": "en",
"value": "GENERAL"
}
]
},
{
"cvssV4_0": {
"attackComplexity": "LOW",
"attackRequirements": "NONE",
"attackVector": "NETWORK",
"baseScore": 7.1,
"baseSeverity": "HIGH",
"privilegesRequired": "LOW",
"subAvailabilityImpact": "NONE",
"subConfidentialityImpact": "NONE",
"subIntegrityImpact": "NONE",
"userInteraction": "NONE",
"vectorString": "CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N",
"version": "4.0",
"vulnAvailabilityImpact": "NONE",
"vulnConfidentialityImpact": "HIGH",
"vulnIntegrityImpact": "NONE"
},
"format": "CVSS"
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-862",
"description": "Missing Authorization",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-09-24T14:22:01.017Z",
"orgId": "83251b91-4cc7-4094-a5c7-464a1b83ea10",
"shortName": "VulnCheck"
},
"references": [
{
"name": "GET /sys/user/list password hash disclosure proof of concept",
"tags": [
"exploit"
],
"url": "https://github.com/LinYuanyi1/cve-request-poc/blob/master/novel-plus/poc-03-user-list-password-hash-disclosure.py"
},
{
"name": "SysUserController.list carries no @RequiresPermissions while the sibling page method does",
"tags": [
"technical-description"
],
"url": "https://github.com/201206030/novel-plus/blob/d63c3ee394657046ebd469e263532a350a60e930/novel-admin/src/main/java/com/java2nb/system/controller/SysUserController.java"
},
{
"name": "UserMapper.xml list and listByPerm both select the password column",
"tags": [
"technical-description"
],
"url": "https://github.com/201206030/novel-plus/blob/d63c3ee394657046ebd469e263532a350a60e930/novel-admin/src/main/resources/mybatis/system/UserMapper.xml"
},
{
"name": "novel-plus v5.3.3 Release Notes",
"tags": [
"release-notes"
],
"url": "https://github.com/201206030/novel-plus/releases/tag/v5.3.3"
},
{
"name": "Product",
"tags": [
"product"
],
"url": "https://github.com/201206030/novel-plus"
},
{
"name": "VulnCheck Advisory: novel-plus through 5.3.3 Missing Authorization on the Admin /sys/user/list Endpoint",
"tags": [
"third-party-advisory"
],
"url": "https://www.vulncheck.com/advisories/novel-plus-through-5.3.3-missing-authorization-on-the-admin-sys-user-list-endpoint"
}
],
"source": {
"discovery": "UNKNOWN"
},
"title": "novel-plus through 5.3.3 Missing Authorization on the Admin /sys/user/list Endpoint",
"x_generator": {
"engine": "vulncheck-endgame"
}
}
},
"cveMetadata": {
"assignerOrgId": "83251b91-4cc7-4094-a5c7-464a1b83ea10",
"assignerShortName": "VulnCheck",
"cveId": "CVE-2026-90939",
"datePublished": "2026-09-14T13:58:42.915Z",
"dateReserved": "2026-09-14T11:34:24.687Z",
"dateUpdated": "2026-09-24T14:22:01.017Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
CVE-2026-90933 (GCVE-0-2026-90933)
Vulnerability from cvelistv5 – Published: 2026-09-14 12:48 – Updated: 2026-09-14 13:38- CWE-862 - Missing Authorization
| URL | Tags |
|---|---|
| https://github.com/laradashboard/laradashboard/se… | vendor-advisory |
| https://www.vulncheck.com/advisories/laradashboar… | third-party-advisory |
| Vendor | Product | Version | |
|---|---|---|---|
| laradashboard | laradashboard |
Affected:
0 , ≤ 1.2.2
(semver)
cpe:2.3:a:laradashboard:lara_dashboard:*:*:*:*:*:*:*:* |
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-90933",
"options": [
{
"Exploitation": "poc"
},
{
"Automatable": "no"
},
{
"Technical Impact": "partial"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-09-14T13:38:11.865968Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-09-14T13:38:29.284Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"references": [
{
"tags": [
"exploit"
],
"url": "https://github.com/laradashboard/laradashboard/security/advisories/GHSA-j4m5-rrc4-5qv6"
}
],
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"defaultStatus": "unaffected",
"product": "laradashboard",
"vendor": "laradashboard",
"versions": [
{
"lessThanOrEqual": "1.2.2",
"status": "affected",
"version": "0",
"versionType": "semver"
}
]
}
],
"cpeApplicability": [
{
"nodes": [
{
"cpeMatch": [
{
"criteria": "cpe:2.3:a:laradashboard:lara_dashboard:*:*:*:*:*:*:*:*",
"versionEndIncluding": "1.2.2",
"vulnerable": true
}
],
"negate": false,
"operator": "OR"
}
]
}
],
"credits": [
{
"lang": "en",
"type": "reporter",
"value": "EQSTLab"
}
],
"datePublic": "2026-08-30T00:00:00.000Z",
"descriptions": [
{
"lang": "en",
"value": "laradashboard through 1.2.2 contains a missing authorization vulnerability in the Local License API endpoints that allows any authenticated user to read, overwrite, and delete premium module license keys. Attackers with low-privileged accounts can access GET /api/admin/licenses/show, POST /api/admin/licenses/store, and POST /api/admin/licenses/remove endpoints to disclose confidential license keys, inject attacker-controlled values, or delete stored licenses entirely."
}
],
"metrics": [
{
"cvssV4_0": {
"attackComplexity": "LOW",
"attackRequirements": "NONE",
"attackVector": "NETWORK",
"baseScore": 7.1,
"baseSeverity": "HIGH",
"privilegesRequired": "LOW",
"subAvailabilityImpact": "NONE",
"subConfidentialityImpact": "NONE",
"subIntegrityImpact": "NONE",
"userInteraction": "NONE",
"vectorString": "CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N",
"version": "4.0",
"vulnAvailabilityImpact": "NONE",
"vulnConfidentialityImpact": "HIGH",
"vulnIntegrityImpact": "LOW"
},
"format": "CVSS"
},
{
"cvssV3_1": {
"attackComplexity": "LOW",
"attackVector": "NETWORK",
"availabilityImpact": "NONE",
"baseScore": 7.1,
"baseSeverity": "HIGH",
"confidentialityImpact": "HIGH",
"integrityImpact": "LOW",
"privilegesRequired": "LOW",
"scope": "UNCHANGED",
"userInteraction": "NONE",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:N",
"version": "3.1"
},
"format": "CVSS"
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-862",
"description": "Missing Authorization",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-09-14T12:48:28.438Z",
"orgId": "83251b91-4cc7-4094-a5c7-464a1b83ea10",
"shortName": "VulnCheck"
},
"references": [
{
"name": "GitHub Security Advisory (GHSA-j4m5-rrc4-5qv6)",
"tags": [
"vendor-advisory"
],
"url": "https://github.com/laradashboard/laradashboard/security/advisories/GHSA-j4m5-rrc4-5qv6"
},
{
"name": "VulnCheck Advisory: laradashboard through 1.2.2 Missing Authorization via License API",
"tags": [
"third-party-advisory"
],
"url": "https://www.vulncheck.com/advisories/laradashboard-through-1.2.2-missing-authorization-via-license-api"
}
],
"title": "laradashboard through 1.2.2 Missing Authorization via License API",
"x_generator": {
"engine": "vulncheck-endgame"
}
}
},
"cveMetadata": {
"assignerOrgId": "83251b91-4cc7-4094-a5c7-464a1b83ea10",
"assignerShortName": "VulnCheck",
"cveId": "CVE-2026-90933",
"datePublished": "2026-09-14T12:48:28.438Z",
"dateReserved": "2026-09-14T11:33:51.886Z",
"dateUpdated": "2026-09-14T13:38:29.284Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
CVE-2026-90895 (GCVE-0-2026-90895)
Vulnerability from cvelistv5 – Published: 2026-09-14 09:40 – Updated: 2026-09-14 10:26| URL | Tags |
|---|---|
| https://github.com/MISP/MISP/commit/cd9f548ed | patch |
qwen3.8:27b
advisory
bcp-05-x-01bcp-05-x-02
Draft vulnerability metadata was generated from a git-format patch using an Ollama-hosted language model. Human validation is required before publication.
| Model | Source | Identifier |
|---|---|---|
| qwen3.8:27b | ollama | qwen3.8:27b |
- Generator
-
patch2vuln.pyon 2026-09-14 09:16 - Model
qwen3.8:27b- Input
-
https://github.com/MISP/MISP/commit/cd9f548ed.patch
1993ed3ac039… - Confidence
- high
| Commit | Subject | Patch SHA-256 |
|---|---|---|
cd9f548ed808
|
fix: [cli] Route interactive CLI shell authorization through | 1993ed3ac039… |
Fix summary
The fix replaces the shell's hand-rolled authorization logic with the same model-level accessors used by the web interface (Event::fetchSimpleEvent, MispAttribute::fetchAttributes, MispObject::fetchObjects, SharingGroup::checkIfAuthorised, Organisation::canSee), ensuring read and write operations enforce identical ACL rules. Credential columns are excluded at the query level via a hiddenFields mechanism so they are never fetched from the database. The inline detail editor now delegates to the entity-specific edit handlers, which enforce per-record write authorization. All terminal output passes through a sanitiser that neutralises C0/C1 control characters, ANSI escape sequences, and Unicode bidirectional overrides. Pagination is clamped to a safe range (1-1000) to prevent unbounded result sets.
Patch summary
Replaced hand-rolled ACL conditions in attribute, object, feed, sharing-group, and organisation queries with calls to the model's authorized fetch methods (fetchAttributes, fetchObjects, fetchSimpleEvent, checkIfAuthorised, canSee). Added hiddenFields configuration for server (authkey), feed (headers), and user (password, authkey, totp, hotp_counter, external_auth_key) so credential columns are excluded from SQL SELECT. Added __detailFields() to build the field list excluding hidden columns. Rewrote __editDetailField() to delegate to entity-specific edit handlers with a $fields parameter, eliminating the unguarded direct save(). Added __canWriteEntity() and __denyWrite() as a unified write-authorization gate for add/edit/delete. Added __term() sanitiser applied via overridden out()/err() methods and __termRows() for list data, neutralising C0/C1 controls, DEL, and Unicode bidi characters. Added __normalisePagination() to clamp limit to 1-1000 and page to >=1. Added __warnUnsupportedFilters() to report ignored
CVSS rationale
AV:L: The CLI shell is a local console command requiring SSH or local shell access to the MISP server. AC:L: No race conditions or special timing are needed; the unguarded write path and missing ACL checks are deterministic. AT:N: The authorization bypass and credential exposure require no target interaction. PR:L: Any authenticated MISP user with basic permissions (perm_add) can exploit the write bypass and read credential columns. UI:N: The core authorization bypass and data exposure do not require the victim to perform any action. VC:H: Sensitive credentials (feed HTTP auth, server sync key, user passwords/TOTP) are exposed. VI:H: An attacker can modify events, attributes, and objects they should not be able to change. VA:H: An attacker can read records (feeds, organisations, hidden tags) outside their authorized scope. SC/SI/SA:N: Impact is confined to the local MISP instance and its data.
Weakness rationale
- CWE-862 The primary vulnerability: the inline detail editor saved records without enforcing per-record write authorization, and list/detail queries used incomplete ACL conditions that did not match the web interface's access rules. A user who could read a record could modify it, and could read records (feeds, organisations, tags) the web would not expose.
- CWE-200 Credential columns (Feed.headers, Server.authkey, User.password/authkey/totp/hotp_counter/external_auth_key) were fetched from the database and exposed in CLI output to users who should not have access, and organisation/tag visibility settings were not enforced.
- CWE-150 Database values containing ANSI escape sequences, C0/C1 control characters, or Unicode bidirectional override characters were printed verbatim to the terminal, allowing output forgery, window retitling, and visual manipulation of displayed indicators.
- CWE-400 A limit value of zero, negative, or non-numeric caused the ORM to omit the SQL LIMIT clause, returning the entire table into memory and enabling denial of service.
Assumptions to verify
- The CLI shell is accessible to any authenticated MISP user with local/SSH access to the server; no additional authentication layer is assumed.
- The affected version range is not precisely bounded; the fix commit is 184 commits after tag v2.5.46, but the exact release version containing the fix is not stated in the patch metadata.
- CVSS assumes the attacker already possesses a low-privilege MISP account and local shell access; remote exploitation without local access is not assessed.
- The terminal injection impact (VC:H) is assessed on the basis that an analyst's terminal session is the primary trust boundary for indicator review; in automated/piped contexts the impact may be lower.
- The unguarded write path is assessed as allowing modification of any readable record, not limited to specific entity types, based on the patch comment stating 'a user rewrite any record they could read'.
Model comparison
Selected qwen3.8:27b
by deterministic-consensus-v1
The selected result is closest to model consensus; this heuristic does not establish factual correctness and human review remains required.
| Model | Score | Agreement | Confidence | Assumptions |
|---|---|---|---|---|
qwen3.8:27b |
6 | 9 | high | 5 |
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-90895",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "no"
},
{
"Technical Impact": "total"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-09-14T10:24:27.267671Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-09-14T10:26:12.372Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"modules": [
"app/Console/Command/CLIShell/"
],
"product": "MISP",
"programFiles": [
"app/Console/Command/CLIShell.php",
"app/Console/Command/CLIShell/cli_attributes.php",
"app/Console/Command/CLIShell/cli_common.php",
"app/Console/Command/CLIShell/cli_events.php",
"app/Console/Command/CLIShell/cli_objects.php",
"app/Console/Command/CLIShell/cli_organisations.php",
"app/Console/Command/CLIShell/cli_roles.php",
"app/Console/Command/CLIShell/cli_tags.php",
"app/Console/Command/CLIShell/cli_users.php"
],
"repo": "https://github.com/MISP/MISP",
"vendor": "MISP",
"versions": [
{
"lessThan": "2.5.46",
"status": "affected",
"version": "0",
"versionType": "semver"
}
]
}
],
"credits": [
{
"lang": "en",
"type": "reporter",
"value": "Scottish Government - National Cyber Team"
},
{
"lang": "en",
"type": "remediation developer",
"value": "iglocska"
},
{
"lang": "en",
"type": "remediation developer",
"value": "Claude Opus 4.8"
}
],
"descriptions": [
{
"lang": "en",
"supportingMedia": [
{
"base64": false,
"type": "text/html",
"value": "\u003cp\u003e\u003c/p\u003e\u003cp\u003eAffected versions of MISP\u2019s interactive CLI shell implement access control independently from the normal web application, causing several authorization inconsistencies.\u003c/p\u003e\n\u003cp\u003eThe patch shows that CLI access could differ from the web application in multiple security-sensitive areas:\u003c/p\u003e\u2003- feed listings did not enforce the same \u003ccode\u003elookup_visible\u003c/code\u003e restrictions for non-host-organisation users;\u003cbr\u003e\u2003- feed detail access did not enforce the same host-organisation/site-admin authorization as \u003ccode\u003eFeedsController::view()\u003c/code\u003e;\u003cbr\u003e\u003ccode\u003e\u2003- Feed.headers\u003c/code\u003e, which can contain HTTP authorization credentials, could be exposed instead of being hidden or masked;\u003cbr\u003e\u2003- server synchronization \u003ccode\u003eauthkey\u003c/code\u003e values were not explicitly hidden from CLI detail output;\u003cbr\u003e\u2003- sharing-group detail access did not consistently use \u003ccode\u003eSharingGroup::checkIfAuthorised()\u003c/code\u003e;\u003cbr\u003e\u2003- the \u003ccode\u003euse\u003c/code\u003e command could establish context for a record without first proving that the user was authorized to view that record\u003cul\u003e\n\u003c/ul\u003e\u003cp\u003eThe commit additionally hardens pagination and terminal rendering, including neutralization of terminal control sequences found in database-backed values. Those are important hardening changes, but the main vulnerability is the CLI authorization/data-disclosure mismatch.\u003c/p\u003e\u003cp\u003eVersion affected: \u22642.5.45\u003cbr\u003e\u003c/p\u003e\u003cp\u003e\u003c/p\u003e"
}
],
"value": "Affected versions of MISP\u2019s interactive CLI shell implement access control independently from the normal web application, causing several authorization inconsistencies.\n\n\nThe patch shows that CLI access could differ from the web application in multiple security-sensitive areas:\n\n\u2003- feed listings did not enforce the same lookup_visible restrictions for non-host-organisation users;\n\u2003- feed detail access did not enforce the same host-organisation/site-admin authorization as FeedsController::view();\n\u2003- Feed.headers, which can contain HTTP authorization credentials, could be exposed instead of being hidden or masked;\n\u2003- server synchronization authkey values were not explicitly hidden from CLI detail output;\n\u2003- sharing-group detail access did not consistently use SharingGroup::checkIfAuthorised();\n\u2003- the use command could establish context for a record without first proving that the user was authorized to view that record\n\n\nThe commit additionally hardens pagination and terminal rendering, including neutralization of terminal control sequences found in database-backed values. Those are important hardening changes, but the main vulnerability is the CLI authorization/data-disclosure mismatch.\n\nVersion affected: \u22642.5.45"
}
],
"impacts": [
{
"capecId": "CAPEC-1",
"descriptions": [
{
"lang": "en",
"value": "CAPEC-1 Accessing Functionality Not Properly Constrained by ACLs"
}
]
}
],
"metrics": [
{
"cvssV4_0": {
"Automatable": "NOT_DEFINED",
"Recovery": "NOT_DEFINED",
"Safety": "NOT_DEFINED",
"attackComplexity": "LOW",
"attackRequirements": "NONE",
"attackVector": "LOCAL",
"baseScore": 8.4,
"baseSeverity": "HIGH",
"privilegesRequired": "LOW",
"providerUrgency": "NOT_DEFINED",
"subAvailabilityImpact": "NONE",
"subConfidentialityImpact": "NONE",
"subIntegrityImpact": "NONE",
"userInteraction": "NONE",
"valueDensity": "NOT_DEFINED",
"vectorString": "CVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N",
"version": "4.0",
"vulnAvailabilityImpact": "NONE",
"vulnConfidentialityImpact": "HIGH",
"vulnIntegrityImpact": "HIGH",
"vulnerabilityResponseEffort": "NOT_DEFINED"
},
"format": "CVSS",
"scenarios": [
{
"lang": "en",
"value": "GENERAL"
}
]
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-862",
"description": "CWE-862 Missing Authorization",
"lang": "en",
"type": "CWE"
}
]
},
{
"descriptions": [
{
"cweId": "CWE-200",
"description": "CWE-200 Exposure of Sensitive Information to an Unauthorized Actor",
"lang": "en",
"type": "CWE"
}
]
},
{
"descriptions": [
{
"cweId": "CWE-150",
"description": "CWE-150 Improper Neutralization of Escape, Quote, or Control Sequences",
"lang": "en",
"type": "CWE"
}
]
},
{
"descriptions": [
{
"cweId": "CWE-522",
"description": "CWE-522 Insufficiently Protected Credentials",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-09-14T09:40:55.800Z",
"orgId": "5a6e4751-2f3f-4070-9419-94fb35b644e8",
"shortName": "CIRCL"
},
"references": [
{
"name": "Security patch",
"tags": [
"patch"
],
"url": "https://github.com/MISP/MISP/commit/cd9f548ed"
}
],
"solutions": [
{
"lang": "en",
"supportingMedia": [
{
"base64": false,
"type": "text/html",
"value": "\u003cp\u003eThe fix replaces the shell\u0027s hand-rolled authorization logic with the same model-level accessors used by the web interface (Event::fetchSimpleEvent, MispAttribute::fetchAttributes, MispObject::fetchObjects, SharingGroup::checkIfAuthorised, Organisation::canSee), ensuring read and write operations enforce identical ACL rules. Credential columns are excluded at the query level via a hiddenFields mechanism so they are never fetched from the database. The inline detail editor now delegates to the entity-specific edit handlers, which enforce per-record write authorization. All terminal output passes through a sanitiser that neutralises C0/C1 control characters, ANSI escape sequences, and Unicode bidirectional overrides. Pagination is clamped to a safe range (1-1000) to prevent unbounded result sets.\u003c/p\u003e"
}
],
"value": "The fix replaces the shell\u0027s hand-rolled authorization logic with the same model-level accessors used by the web interface (Event::fetchSimpleEvent, MispAttribute::fetchAttributes, MispObject::fetchObjects, SharingGroup::checkIfAuthorised, Organisation::canSee), ensuring read and write operations enforce identical ACL rules. Credential columns are excluded at the query level via a hiddenFields mechanism so they are never fetched from the database. The inline detail editor now delegates to the entity-specific edit handlers, which enforce per-record write authorization. All terminal output passes through a sanitiser that neutralises C0/C1 control characters, ANSI escape sequences, and Unicode bidirectional overrides. Pagination is clamped to a safe range (1-1000) to prevent unbounded result sets."
}
],
"title": "MISP Interactive CLI Shell: Authorization Bypass, Credential Exposure, and Terminal Injection",
"x_gcve": [
{
"extensions": {
"bcp-05-x-01": {
"ai_annotations": [
{
"ai_level": "generated",
"description": "Draft vulnerability metadata was generated from a git-format patch using an Ollama-hosted language model. Human validation is required before publication.",
"gna_source": 1,
"models": [
{
"gna_source": 1,
"identifier": "qwen3.8:27b",
"name": "qwen3.8:27b",
"source": "ollama"
}
],
"review_status": "review",
"scope": "record",
"tags": [
"ai-computer-assisted:llm-generated",
"ai-computer-assisted:classification"
]
}
]
},
"bcp-05-x-02": {
"x_patch2vuln": {
"assumptions": [
"The CLI shell is accessible to any authenticated MISP user with local/SSH access to the server; no additional authentication layer is assumed.",
"The affected version range is not precisely bounded; the fix commit is 184 commits after tag v2.5.46, but the exact release version containing the fix is not stated in the patch metadata.",
"CVSS assumes the attacker already possesses a low-privilege MISP account and local shell access; remote exploitation without local access is not assessed.",
"The terminal injection impact (VC:H) is assessed on the basis that an analyst\u0027s terminal session is the primary trust boundary for indicator review; in automated/piped contexts the impact may be lower.",
"The unguarded write path is assessed as allowing modification of any readable record, not limited to specific entity types, based on the patch comment stating \u0027a user rewrite any record they could read\u0027."
],
"commit": "cd9f548ed808f89e4e018fad9a81a628098d73fb",
"confidence": "high",
"credits": [
{
"lang": "en",
"type": "reporter",
"value": "Scottish Government - National Cyber Team"
},
{
"lang": "en",
"type": "remediation developer",
"value": "iglocska"
},
{
"lang": "en",
"type": "remediation developer",
"value": "Claude Opus 4.8"
}
],
"cvssRationale": "AV:L: The CLI shell is a local console command requiring SSH or local shell access to the MISP server. AC:L: No race conditions or special timing are needed; the unguarded write path and missing ACL checks are deterministic. AT:N: The authorization bypass and credential exposure require no target interaction. PR:L: Any authenticated MISP user with basic permissions (perm_add) can exploit the write bypass and read credential columns. UI:N: The core authorization bypass and data exposure do not require the victim to perform any action. VC:H: Sensitive credentials (feed HTTP auth, server sync key, user passwords/TOTP) are exposed. VI:H: An attacker can modify events, attributes, and objects they should not be able to change. VA:H: An attacker can read records (feeds, organisations, hidden tags) outside their authorized scope. SC/SI/SA:N: Impact is confined to the local MISP instance and its data.",
"draft": false,
"fixSummary": "The fix replaces the shell\u0027s hand-rolled authorization logic with the same model-level accessors used by the web interface (Event::fetchSimpleEvent, MispAttribute::fetchAttributes, MispObject::fetchObjects, SharingGroup::checkIfAuthorised, Organisation::canSee), ensuring read and write operations enforce identical ACL rules. Credential columns are excluded at the query level via a hiddenFields mechanism so they are never fetched from the database. The inline detail editor now delegates to the entity-specific edit handlers, which enforce per-record write authorization. All terminal output passes through a sanitiser that neutralises C0/C1 control characters, ANSI escape sequences, and Unicode bidirectional overrides. Pagination is clamped to a safe range (1-1000) to prevent unbounded result sets.",
"generatedAt": "2026-09-14T09:16:49.402134Z",
"generator": "patch2vuln.py",
"model": "qwen3.8:27b",
"modelComparison": {
"rankings": [
{
"agreementScore": 9,
"assumptionCount": 5,
"confidence": "high",
"model": "qwen3.8:27b",
"score": 6
}
],
"selectedModel": "qwen3.8:27b",
"selectionMethod": "deterministic-consensus-v1",
"selectionNotice": "The selected result is closest to model consensus; this heuristic does not establish factual correctness and human review remains required."
},
"patchSha256": "1993ed3ac039d8fca56d636755584952f47c43046158fdd08278e2e308f1bad1",
"patchSummary": "Replaced hand-rolled ACL conditions in attribute, object, feed, sharing-group, and organisation queries with calls to the model\u0027s authorized fetch methods (fetchAttributes, fetchObjects, fetchSimpleEvent, checkIfAuthorised, canSee). Added hiddenFields configuration for server (authkey), feed (headers), and user (password, authkey, totp, hotp_counter, external_auth_key) so credential columns are excluded from SQL SELECT. Added __detailFields() to build the field list excluding hidden columns. Rewrote __editDetailField() to delegate to entity-specific edit handlers with a $fields parameter, eliminating the unguarded direct save(). Added __canWriteEntity() and __denyWrite() as a unified write-authorization gate for add/edit/delete. Added __term() sanitiser applied via overridden out()/err() methods and __termRows() for list data, neutralising C0/C1 controls, DEL, and Unicode bidi characters. Added __normalisePagination() to clamp limit to 1-1000 and page to \u003e=1. Added __warnUnsupportedFilters() to report ignored",
"patchTruncated": false,
"patches": [
{
"commit": "cd9f548ed808f89e4e018fad9a81a628098d73fb",
"patchSha256": "1993ed3ac039d8fca56d636755584952f47c43046158fdd08278e2e308f1bad1",
"source": "https://github.com/MISP/MISP/commit/cd9f548ed.patch",
"sourceUrl": "https://github.com/MISP/MISP/commit/cd9f548ed.patch",
"subject": "fix: [cli] Route interactive CLI shell authorization through"
}
],
"source": "https://github.com/MISP/MISP/commit/cd9f548ed.patch",
"subject": "fix: [cli] Route interactive CLI shell authorization through",
"tagVersionBoundary": {
"commits_after_fix": 184,
"repository": "https://github.com/MISP/MISP",
"tag": "v2.5.46",
"version": "2.5.46",
"version_type": "semver"
},
"weaknessRationale": [
{
"cweId": "CWE-862",
"rationale": "The primary vulnerability: the inline detail editor saved records without enforcing per-record write authorization, and list/detail queries used incomplete ACL conditions that did not match the web interface\u0027s access rules. A user who could read a record could modify it, and could read records (feeds, organisations, tags) the web would not expose."
},
{
"cweId": "CWE-200",
"rationale": "Credential columns (Feed.headers, Server.authkey, User.password/authkey/totp/hotp_counter/external_auth_key) were fetched from the database and exposed in CLI output to users who should not have access, and organisation/tag visibility settings were not enforced."
},
{
"cweId": "CWE-150",
"rationale": "Database values containing ANSI escape sequences, C0/C1 control characters, or Unicode bidirectional override characters were printed verbatim to the terminal, allowing output forgery, window retitling, and visual manipulation of displayed indicators."
},
{
"cweId": "CWE-400",
"rationale": "A limit value of zero, negative, or non-numeric caused the ORM to omit the SQL LIMIT clause, returning the entire table into memory and enabling denial of service."
}
]
}
}
},
"recordType": "advisory",
"vulnId": "GCVE-1-2026-20058"
}
]
}
},
"cveMetadata": {
"assignerOrgId": "5a6e4751-2f3f-4070-9419-94fb35b644e8",
"assignerShortName": "CIRCL",
"cveId": "CVE-2026-90895",
"datePublished": "2026-09-14T09:40:55.800Z",
"dateReserved": "2026-09-14T09:40:52.456Z",
"dateUpdated": "2026-09-14T10:26:12.372Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
CVE-2026-90820 (GCVE-0-2026-90820)
Vulnerability from cvelistv5 – Published: 2026-09-14 20:45 – Updated: 2026-09-15 13:55 X_Open Source| URL | Tags |
|---|---|
| https://vuldb.com/vuln/403323 | vdb-entrytechnical-description |
| https://vuldb.com/vuln/403323/cti | signaturepermissions-required |
| https://vuldb.com/cve/CVE-2026-90820 | third-party-advisory |
| https://vuldb.com/submit/925152 | third-party-advisory |
| https://github.com/a2aproject/a2a-java/pull/1038 | issue-trackingpatch |
| https://github.com/a2aproject/a2a-java/commit/e9a… | patch |
| https://github.com/a2aproject/a2a-java/releases/t… | patch |
| https://github.com/a2aproject/a2a-java/ | product |
| Vendor | Product | Version | |
|---|---|---|---|
| a2aproject | a2a-java |
Affected:
1.2.0
Unaffected: 1.3.0 cpe:2.3:a:a2aproject:a2a-java:*:*:*:*:*:*:*:* |
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-90820",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "no"
},
{
"Technical Impact": "partial"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-09-15T13:32:14.683925Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-09-15T13:55:18.224Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"cpes": [
"cpe:2.3:a:a2aproject:a2a-java:*:*:*:*:*:*:*:*"
],
"product": "a2a-java",
"vendor": "a2aproject",
"versions": [
{
"status": "affected",
"version": "1.2.0"
},
{
"status": "unaffected",
"version": "1.3.0"
}
]
}
],
"credits": [
{
"lang": "en",
"type": "reporter",
"value": "colorfullbz (VulDB User)"
}
],
"descriptions": [
{
"lang": "en",
"value": "A security vulnerability has been detected in a2aproject a2a-java 1.2.0. The impacted element is the function AuthorizationRequestHandlerDecorator.onListTasks of the file server-common/src/main/java/org/a2aproject/sdk/server/requesthandlers/AuthorizationRequestHandlerDecorator.java. Such manipulation leads to missing authorization. The attack can be launched remotely. Upgrading to version 1.3.0 is sufficient to resolve this issue. The name of the patch is e9a1abf9c90c02b16d17293afdc3cc2f555d63a6. The affected component should be upgraded."
}
],
"metrics": [
{
"cvssV4_0": {
"baseScore": 5.3,
"baseSeverity": "MEDIUM",
"vectorString": "CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N/E:X",
"version": "4.0"
}
},
{
"cvssV3_1": {
"baseScore": 4.3,
"baseSeverity": "MEDIUM",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N/E:X/RL:O/RC:C",
"version": "3.1"
}
},
{
"cvssV3_0": {
"baseScore": 4.3,
"baseSeverity": "MEDIUM",
"vectorString": "CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N/E:X/RL:O/RC:C",
"version": "3.0"
}
},
{
"cvssV2_0": {
"baseScore": 4,
"vectorString": "AV:N/AC:L/Au:S/C:P/I:N/A:N/E:ND/RL:OF/RC:C",
"version": "2.0"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-862",
"description": "Missing Authorization",
"lang": "en",
"type": "CWE"
}
]
},
{
"descriptions": [
{
"cweId": "CWE-863",
"description": "Incorrect Authorization",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-09-14T20:45:11.104Z",
"orgId": "1af790b2-7ee1-4545-860a-a788eba489b5",
"shortName": "VulDB"
},
"references": [
{
"name": "VDB-403323 | a2aproject a2a-java AuthorizationRequestHandlerDecorator.java AuthorizationRequestHandlerDecorator.onListTasks authorization",
"tags": [
"vdb-entry",
"technical-description"
],
"url": "https://vuldb.com/vuln/403323"
},
{
"name": "VDB-403323 | CTI Indicators (IOB, IOC, IOA)",
"tags": [
"signature",
"permissions-required"
],
"url": "https://vuldb.com/vuln/403323/cti"
},
{
"name": "CVE-2026-90820 | CVE Analysis and Report",
"tags": [
"third-party-advisory"
],
"url": "https://vuldb.com/cve/CVE-2026-90820"
},
{
"name": "Submit #925152 | a2a-project a2a-java v1.2.0.Final CWE-862",
"tags": [
"third-party-advisory"
],
"url": "https://vuldb.com/submit/925152"
},
{
"tags": [
"issue-tracking",
"patch"
],
"url": "https://github.com/a2aproject/a2a-java/pull/1038"
},
{
"tags": [
"patch"
],
"url": "https://github.com/a2aproject/a2a-java/commit/e9a1abf9c90c02b16d17293afdc3cc2f555d63a6"
},
{
"tags": [
"patch"
],
"url": "https://github.com/a2aproject/a2a-java/releases/tag/v1.3.0.Final"
},
{
"tags": [
"product"
],
"url": "https://github.com/a2aproject/a2a-java/"
}
],
"tags": [
"x_open-source"
],
"timeline": [
{
"lang": "en",
"time": "2026-09-13T00:00:00.000Z",
"value": "Advisory disclosed"
},
{
"lang": "en",
"time": "2026-09-13T02:00:00.000Z",
"value": "VulDB entry created"
},
{
"lang": "en",
"time": "2026-09-13T21:06:50.000Z",
"value": "VulDB entry last update"
}
],
"title": "a2aproject a2a-java AuthorizationRequestHandlerDecorator.java AuthorizationRequestHandlerDecorator.onListTasks authorization",
"x_generator": [
"VulDB PVTS v202609"
]
}
},
"cveMetadata": {
"assignerOrgId": "1af790b2-7ee1-4545-860a-a788eba489b5",
"assignerShortName": "VulDB",
"cveId": "CVE-2026-90820",
"datePublished": "2026-09-14T20:45:11.104Z",
"dateReserved": "2026-09-13T19:01:40.764Z",
"dateUpdated": "2026-09-15T13:55:18.224Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
CVE-2026-90806 (GCVE-0-2026-90806)
Vulnerability from cvelistv5 – Published: 2026-09-14 17:30 – Updated: 2026-09-14 17:57 X_Open Source| URL | Tags |
|---|---|
| https://vuldb.com/vuln/403308 | vdb-entrytechnical-description |
| https://vuldb.com/vuln/403308/cti | signaturepermissions-required |
| https://vuldb.com/cve/CVE-2026-90806 | third-party-advisory |
| https://vuldb.com/submit/920489 | third-party-advisory |
| https://github.com/Django-CRM/Django-CRM/issues/745 | issue-tracking |
| https://github.com/Django-CRM/Django-CRM/pull/746 | issue-trackingpatch |
| https://github.com/Django-CRM/Django-CRM/commit/7… | patch |
| https://github.com/Django-CRM/Django-CRM/releases… | patch |
| Vendor | Product | Version | |
|---|---|---|---|
| DjangoCRM | django-crm |
Affected:
1.0
Affected: 1.1 Affected: 1.2 Unaffected: 1.3.0 cpe:2.3:a:djangocrm:django-crm:*:*:*:*:*:*:*:* |
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-90806",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "no"
},
{
"Technical Impact": "partial"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-09-14T17:56:18.727279Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-09-14T17:57:14.310Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"cpes": [
"cpe:2.3:a:djangocrm:django-crm:*:*:*:*:*:*:*:*"
],
"modules": [
"Bulk Case Update"
],
"product": "django-crm",
"vendor": "DjangoCRM",
"versions": [
{
"status": "affected",
"version": "1.0"
},
{
"status": "affected",
"version": "1.1"
},
{
"status": "affected",
"version": "1.2"
},
{
"status": "unaffected",
"version": "1.3.0"
}
]
}
],
"credits": [
{
"lang": "en",
"type": "reporter",
"value": "Customer (VulDB User)"
}
],
"descriptions": [
{
"lang": "en",
"value": "A vulnerability has been found in DjangoCRM django-crm up to 1.2. This vulnerability affects the function BulkUpdateCasesView of the file backend/cases/bulk_views.py of the component Bulk Case Update. The manipulation leads to missing authorization. The attack is possible to be carried out remotely. Upgrading to version 1.3.0 is able to resolve this issue. The identifier of the patch is 799bb1210238f402c0c4948c8eedb6e61cd0c8d7. You should upgrade the affected component."
}
],
"metrics": [
{
"cvssV4_0": {
"baseScore": 5.3,
"baseSeverity": "MEDIUM",
"vectorString": "CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N/E:X",
"version": "4.0"
}
},
{
"cvssV3_1": {
"baseScore": 6.3,
"baseSeverity": "MEDIUM",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L/E:X/RL:O/RC:C",
"version": "3.1"
}
},
{
"cvssV3_0": {
"baseScore": 6.3,
"baseSeverity": "MEDIUM",
"vectorString": "CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L/E:X/RL:O/RC:C",
"version": "3.0"
}
},
{
"cvssV2_0": {
"baseScore": 6.5,
"vectorString": "AV:N/AC:L/Au:S/C:P/I:P/A:P/E:ND/RL:OF/RC:C",
"version": "2.0"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-862",
"description": "Missing Authorization",
"lang": "en",
"type": "CWE"
}
]
},
{
"descriptions": [
{
"cweId": "CWE-863",
"description": "Incorrect Authorization",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-09-14T17:30:08.547Z",
"orgId": "1af790b2-7ee1-4545-860a-a788eba489b5",
"shortName": "VulDB"
},
"references": [
{
"name": "VDB-403308 | DjangoCRM django-crm Bulk Case Update bulk_views.py BulkUpdateCasesView authorization",
"tags": [
"vdb-entry",
"technical-description"
],
"url": "https://vuldb.com/vuln/403308"
},
{
"name": "VDB-403308 | CTI Indicators (IOB, IOC, IOA)",
"tags": [
"signature",
"permissions-required"
],
"url": "https://vuldb.com/vuln/403308/cti"
},
{
"name": "CVE-2026-90806 | CVE Analysis and Report",
"tags": [
"third-party-advisory"
],
"url": "https://vuldb.com/cve/CVE-2026-90806"
},
{
"name": "Submit #920489 | Django-CRM master Missing Authorization",
"tags": [
"third-party-advisory"
],
"url": "https://vuldb.com/submit/920489"
},
{
"tags": [
"issue-tracking"
],
"url": "https://github.com/Django-CRM/Django-CRM/issues/745"
},
{
"tags": [
"issue-tracking",
"patch"
],
"url": "https://github.com/Django-CRM/Django-CRM/pull/746"
},
{
"tags": [
"patch"
],
"url": "https://github.com/Django-CRM/Django-CRM/commit/799bb1210238f402c0c4948c8eedb6e61cd0c8d7"
},
{
"tags": [
"patch"
],
"url": "https://github.com/Django-CRM/Django-CRM/releases/tag/v1.3.0"
}
],
"tags": [
"x_open-source"
],
"timeline": [
{
"lang": "en",
"time": "2026-09-13T00:00:00.000Z",
"value": "Advisory disclosed"
},
{
"lang": "en",
"time": "2026-09-13T02:00:00.000Z",
"value": "VulDB entry created"
},
{
"lang": "en",
"time": "2026-09-13T17:50:45.000Z",
"value": "VulDB entry last update"
}
],
"title": "DjangoCRM django-crm Bulk Case Update bulk_views.py BulkUpdateCasesView authorization",
"x_generator": [
"VulDB PVTS v202609"
]
}
},
"cveMetadata": {
"assignerOrgId": "1af790b2-7ee1-4545-860a-a788eba489b5",
"assignerShortName": "VulDB",
"cveId": "CVE-2026-90806",
"datePublished": "2026-09-14T17:30:08.547Z",
"dateReserved": "2026-09-13T15:45:40.850Z",
"dateUpdated": "2026-09-14T17:57:14.310Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
Mitigation
- Divide the product into anonymous, normal, privileged, and administrative areas. Reduce the attack surface by carefully mapping roles with data and functionality. Use role-based access control (RBAC) [REF-229] to enforce the roles at the appropriate boundaries.
- Note that this approach may not protect against horizontal authorization, i.e., it will not protect a user from attacking others with the same role.
Mitigation
Ensure that access control checks are performed related to the business logic. These checks may be different than the access control checks that are applied to more generic resources such as files, connections, processes, memory, and database records. For example, a database may restrict access for medical records to a specific database user, but each record might only be intended to be accessible to the patient and the patient's doctor [REF-7].
Mitigation MIT-4.4
Strategy: Libraries or Frameworks
- Use a vetted library or framework that does not allow this weakness to occur or provides constructs that make this weakness easier to avoid.
- For example, consider using authorization frameworks such as the JAAS Authorization Framework [REF-233] and the OWASP ESAPI Access Control feature [REF-45].
Mitigation
- For web applications, make sure that the access control mechanism is enforced correctly at the server side on every page. Users should not be able to access any unauthorized functionality or information by simply requesting direct access to that page.
- One way to do this is to ensure that all pages containing sensitive information are not cached, and that all such pages restrict access to requests that are accompanied by an active and authenticated session token associated with a user who has the required permissions to access that page.
Mitigation
Use the access control capabilities of your operating system and server environment and define your access control lists accordingly. Use a "default deny" policy when defining these ACLs.
CAPEC-665: Exploitation of Thunderbolt Protection Flaws
An adversary leverages a firmware weakness within the Thunderbolt protocol, on a computing device to manipulate Thunderbolt controller firmware in order to exploit vulnerabilities in the implementation of authorization and verification schemes within Thunderbolt protection mechanisms. Upon gaining physical access to a target device, the adversary conducts high-level firmware manipulation of the victim Thunderbolt controller SPI (Serial Peripheral Interface) flash, through the use of a SPI Programing device and an external Thunderbolt device, typically as the target device is booting up. If successful, this allows the adversary to modify memory, subvert authentication mechanisms, spoof identities and content, and extract data and memory from the target device. Currently 7 major vulnerabilities exist within Thunderbolt protocol with 9 attack vectors as noted in the Execution Flow.