{"id":"CVE-2026-116469","revision":null,"records":[{"revision":"a020281f1b2d482088f37ce860567e0c","observedAt":"2026-10-27T19:45:55.783+00:00","statement":{"source":"cve-program","id":"CVE-2026-116469","aliases":[],"title":"MISP Guard Case-Sensitive Policy Bypass Allows Unauthorized Feed Data Forwarding","description":"MISP Guard, a proxy-based security filter for MISP feed distribution, contains a case-sensitivity flaw in multiple policy enforcement checks. The functions check_required_taxonomy_exists, check_required_taxonomy_tags_allowed, check_blocked_attribute_categories, and check_blocked_analyst_data_sharing_groups_uuids performed case-sensitive string comparisons when matching event tags, attribute categories, and sharing-group UUIDs against configured allow/block lists.\n\nAn attacker with the ability to create or modify events in a MISP instance (or a connected instance that pushes events through the guard) could craft events using different letter case in taxonomy tag names, attribute categories, or sharing-group UUIDs to bypass the configured security policies. For example, if the policy requires the 'tlp' taxonomy with only 'tlp:clear' allowed, an event tagged 'TLP:AMBER' would not be recognized as belonging to the 'tlp' taxonomy and would therefore not be checked against the allowed-tags list, resulting in the event being forwarded to feed consumers. Similarly, a blocked attribute category such as 'Person' would not match a configured block entry of 'person', allowing the attribute to pass through the filter.\n\nThe security impact is unauthorized disclosure of threat-intelligence data that the operator intended to restrict. Events carrying non-allowed TLP (Traffic Light Protocol) markings, blocked attribute categories, or blocked sharing-group associations are forwarded to downstream feed consumers in violation of the configured distribution policy. This undermines the confidentiality controls that MISP Guard is designed to enforce.\n\nThe vulnerability is trivially exploitable: the attacker only needs to alter the letter case of a tag, category, or UUID string. No authentication beyond normal MISP event-creation privileges is required, and no user interaction is needed.","state":0,"publishedAt":"2026-10-26T10:35:51.992+00:00","modifiedAt":"2026-10-27T18:14:58.333+00:00","affected":[{"ecosystem":"Vendor product","name":"misp-guard","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"cpes\": [\n                        \"cpe:2.3:a:misp:misp-guard:*:*:*:*:*:*:*:*\"\n                    ],\n                    \"defaultStatus\": \"unaffected\",\n                    \"modules\": [\n                        \"src/mispguard.py\"\n                    ],\n                    \"product\": \"misp-guard\",\n                    \"programFiles\": [\n                        \"src/mispguard.py\"\n                    ],\n                    \"repo\": \"https://github.com/MISP/misp-guard\",\n                    \"vendor\": \"MISP\",\n                    \"versions\": [\n                        {\n                            \"lessThanOrEqual\": \"1.3\",\n                            \"status\": \"affected\",\n                            \"version\": \"0\",\n                            \"versionType\": \"semver\"\n                        }\n                    ]\n                }"}],"metrics":[{"system":"CVSS 4.0","vector":"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","score":7.1,"severity":"HIGH"}],"references":["https://github.com/MISP/misp-guard/commit/9868b1d93fc9cc40cc7c69ca11c86afd825bbc1c"],"sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2026-116469","license":"CVE Program Terms of Use","key":"cve-program:CVE-2026-116469","identifiers":["CVE-2026-116469"]},"retained":false,"historicalAffected":[]}],"coverage":[{"source":"cisa-kev:global","scope":"Complete CISA KEV catalog; all vendors. Missing entries do not establish absence of exploitation.","generation":"2026-10-30T21:45:26.8921006+00:00","complete":true,"records":1766,"lastAttemptAt":"2026-10-30T21:45:26.8921006+00:00","lastSuccessAt":"2026-10-30T21:45:27.0564442+00:00","error":null,"lastVerifiedAt":"2026-10-30T21:45:27.0564449+00:00","snapshotPublishedAt":null,"importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null},{"source":"cve-program","scope":"Official CVE Program baseline and cumulative hourly delta; all vendors, published and rejected records","generation":"cve-7e2c4e7288f2c464ad8c61f3bb6017374714faedcc781283ac06a706ee1a820b-fe2415543f6176e43180f3324a663ce61f6ebd2e6917542e40176ff2e9495143","complete":true,"records":417364,"lastAttemptAt":"2026-10-30T21:45:26.2908791+00:00","lastSuccessAt":"2026-10-30T19:45:36.3062344+00:00","error":null,"lastVerifiedAt":"2026-10-30T21:45:26.2908791+00:00","snapshotPublishedAt":"2026-10-30T19:18:05+00:00","importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null},{"source":"euvd","scope":"Rolling EUVD lookups of CVE aliases in current public OSV archives; 500 identifiers per refresh, rechecked after 48 hours. Not a global EUVD catalog. Successful not-found lookups count as checked; they do not imply withdrawal or safety. No reader inventory is sent.","generation":"enrichment-63f69305b6a343b791b305fac5c9c952","complete":false,"records":13533,"lastAttemptAt":"2026-10-30T21:57:59.5096056+00:00","lastSuccessAt":"2026-10-30T21:57:59.506+00:00","error":"80 identifier lookups failed; latest failures include request timeout. Other identifiers were checked independently.","lastVerifiedAt":"2026-10-30T21:57:59.506+00:00","snapshotPublishedAt":null,"importing":false,"stagedRecords":0,"checkedIdentifiers":13422,"expectedIdentifiers":13605,"failedIdentifiers":80},{"source":"first-epss:nuget","scope":"FIRST EPSS for explicit CVE aliases in the collected public NuGet archive. Not a global EPSS backfill.","generation":"2026-10-30T21:45:26.8921006+00:00","complete":true,"records":1094,"lastAttemptAt":"2026-10-30T21:45:26.8921006+00:00","lastSuccessAt":"2026-10-30T21:45:27.0572356+00:00","error":null,"lastVerifiedAt":"2026-10-30T21:45:27.0572357+00:00","snapshotPublishedAt":null,"importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null},{"source":"nvd","scope":"Rolling NVD lookups of CVE aliases in current public OSV archives; 500 identifiers per refresh, rechecked after 48 hours. Not a global NVD catalog. Successful not-found lookups count as checked; they do not imply withdrawal or safety. No reader inventory is sent.","generation":"enrichment-340eea54e9164cca8ca7627a28dfdbb6","complete":false,"records":13545,"lastAttemptAt":"2026-10-30T21:45:52.4135469+00:00","lastSuccessAt":"2026-10-30T21:45:52.407+00:00","error":null,"lastVerifiedAt":"2026-10-30T21:45:52.407+00:00","snapshotPublishedAt":null,"importing":false,"stagedRecords":0,"checkedIdentifiers":13599,"expectedIdentifiers":13605,"failedIdentifiers":0},{"source":"osv:Go","scope":"Complete OSV Go ecosystem archive, including withdrawn and malicious-package source records; statement counts are not unique CVE counts","generation":"go-311dd376326605484703c43905ee6a0126d56b980059b1c691182fb1a6e71c84","complete":true,"records":9808,"lastAttemptAt":"2026-10-30T21:45:26.8285672+00:00","lastSuccessAt":"2026-10-30T19:45:46.4838995+00:00","error":null,"lastVerifiedAt":"2026-10-30T21:45:26.8285672+00:00","snapshotPublishedAt":"2026-10-30T18:48:16+00:00","importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null},{"source":"osv:NuGet","scope":"Complete OSV NuGet ecosystem archive, including GitHub Advisory Database records; NuGet version matching only","generation":"nuget-2de9ccc5290f060c7aa63f89c25dd76f655a64ba1aba7c05c97fa3bee4f09899","complete":true,"records":1967,"lastAttemptAt":"2026-10-30T21:45:26.4381246+00:00","lastSuccessAt":"2026-10-28T20:55:34.2982937+00:00","error":null,"lastVerifiedAt":"2026-10-30T21:45:26.4381246+00:00","snapshotPublishedAt":"2026-10-28T20:03:08+00:00","importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null},{"source":"osv:crates.io","scope":"Complete OSV crates.io ecosystem archive, including withdrawn and malicious-package source records; statement counts are not unique CVE counts","generation":"crates.io-f7956b0b80c3f12706a4454a1e0aea0c83c0a5730f2cff4597eb5c4eedd05097","complete":true,"records":3023,"lastAttemptAt":"2026-10-30T21:45:26.8438359+00:00","lastSuccessAt":"2026-10-30T17:47:18.9941876+00:00","error":null,"lastVerifiedAt":"2026-10-30T21:45:26.8438359+00:00","snapshotPublishedAt":"2026-10-30T15:48:06+00:00","importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null},{"source":"osv:npm","scope":"Complete OSV npm ecosystem archive, including withdrawn and malicious-package source records; statement counts are not unique CVE counts","generation":"npm-a12b17cc91216d5a280d5a5e257a4bc61a7e8824cd7f389e730ce6d1147fa887","complete":true,"records":230969,"lastAttemptAt":"2026-10-30T21:45:26.6245171+00:00","lastSuccessAt":"2026-10-30T18:47:14.1288263+00:00","error":null,"lastVerifiedAt":"2026-10-30T21:45:26.6245171+00:00","snapshotPublishedAt":"2026-10-30T18:33:11+00:00","importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null}]}