{"id":"CVE-2026-55548","summary":"Yamcs: Insecure Direct Object Reference (IDOR) in PacketsApi allows unprivileged users to dump all telemetry packets","details":"Yamcs is a mission control framework. Prior to 5.12.8 and 5.13.2, the PacketsApi.exportPackets endpoint in yamcs-core/src/main/java/org/yamcs/http/api/PacketsApi.java failed to enforce object-level ReadPacket privileges when a request omitted specific packet names: with an empty name list the ctx.checkObjectPrivileges(ObjectPrivilegeType.ReadPacket, nameSet) call passed over an empty set, no WHERE pname IN filter was applied to the resulting SELECT * FROM tm query, and the onTuple handler streamed every retrieved packet without any per-row authorization check, so a low-privileged or zero-privilege authenticated user could dump the entire raw telemetry packet archive and bypass the role-based access control model. This issue is fixed in versions 5.12.8 and 5.13.2, which enforce per-packet ReadPacket checks in exportPackets.","aliases":["GHSA-8xjq-pr36-ccgf"],"modified":"2026-07-22T04:19:30.966613Z","published":"2026-07-16T16:09:35.505Z","database_specific":{"cna_assigner":"GitHub_M","cwe_ids":["CWE-284","CWE-862"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/55xxx/CVE-2026-55548.json"},"references":[{"type":"WEB","url":"https://github.com/yamcs/yamcs/releases/tag/yamcs-5.12.8"},{"type":"WEB","url":"https://github.com/yamcs/yamcs/releases/tag/yamcs-5.13.2"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/55xxx/CVE-2026-55548.json"},{"type":"ADVISORY","url":"https://github.com/yamcs/yamcs/security/advisories/GHSA-8xjq-pr36-ccgf"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-55548"},{"type":"FIX","url":"https://github.com/yamcs/yamcs/commit/b566beceba98cc35514b0e1519be126b8c5a0438"},{"type":"FIX","url":"https://github.com/yamcs/yamcs/commit/c743cc3acf5b5c53ff5181b94eacc21340f70dd9"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/yamcs/yamcs","events":[{"introduced":"0"},{"fixed":"144335f15d7730d7fc833122c8c8a6f1906fea9f"},{"introduced":"8bf5af6fe227bbf8ead15e60644b7ddbf345d623"},{"fixed":"50d73a44d136f0dd2828fa11f69f1fe1fc5583f7"},{"fixed":"b566beceba98cc35514b0e1519be126b8c5a0438"},{"fixed":"c743cc3acf5b5c53ff5181b94eacc21340f70dd9"}],"database_specific":{"cpe":"cpe:2.3:a:spaceapplications:yamcs:*:*:*:*:*:*:*:*","extracted_events":[{"introduced":"0"},{"fixed":"5.12.8"},{"introduced":"5.13.0"},{"fixed":"5.13.2"}],"source":["CPE_RANGE","REFERENCES"]}}],"versions":["yamcs-5.13.1","yamcs-5.13.0","yamcs-5.12.7","yamcs-5.12.6","yamcs-5.12.5","yamcs-5.12.4","yamcs-5.12.3","yamcs-5.12.2","yamcs-5.12.1","yamcs-5.12.0","yamcs-5.11.7","yamcs-5.9.8","yamcs-5.11.6","yamcs-5.11.5","yamcs-5.11.4","yamcs-5.10.9","yamcs-5.11.3","yamcs-5.11.2","yamcs-5.11.1","yamcs-5.11.0","yamcs-5.10.8","yamcs-5.10.7","yamcs-5.10.6","yamcs-5.10.5","yamcs-5.10.4","yamcs-5.10.3","yamcs-5.10.2","yamcs-5.10.1","yamcs-5.10.0","yamcs-5.9.7","yamcs-5.9.6","yamcs-5.9.5","yamcs-5.9.4","yamcs-5.9.3","yamcs-5.9.2","yamcs-5.9.1","yamcs-5.9.0","yamcs-5.8.8","yamcs-5.8.7","yamcs-5.8.6","yamcs-5.8.5","yamcs-5.8.4","yamcs-5.8.3","yamcs-5.8.2","yamcs-5.8.0","yamcs-5.8.1","yamcs-5.7.10","yamcs-5.7.9","yamcs-5.7.8","yamcs-5.7.7","yamcs-5.7.6","yamcs-5.7.5","yamcs-5.7.4","yamcs-5.7.3","yamcs-5.7.2","yamcs-5.7.1","yamcs-5.7.0","yamcs-5.6.2","yamcs-5.5.7","yamcs-5.6.1","yamcs-5.6.0","yamcs-5.5.6","before-removing-cfdp-half-implemented-features","yamcs-5.5.5","yamcs-5.5.4","yamcs-5.5.3","yamcs-5.5.2","yamcs-5.5.1","yamcs-5.5.0","yamcs-5.3.5","yamcs-5.4.3","yamcs-5.4.2","yamcs-5.4.1","yamcs-5.4.0","yamcs-5.2.0","yamcs-5.3.4","yamcs-5.3.3","yamcs-5.3.2","yamcs-5.3.1","yamcs-5.3.0","yamcs-5.1.3","yamcs-5.1.2","yamcs-5.1.1","yamcs-5.1.0","yamcs-5.0.1","yamcs-5.0.0","yamcs-4.10.9","yamcs-4.10.8","yamcs-4.10.7","yamcs-4.10.6","yamcs-4.10.5","yamcs-4.10.4","yamcs-4.10.3","yamcs-4.10.2","yamcs-4.10.1","yamcs-4.10.0","yamcs-4.9.5","yamcs-4.9.4","yamcs-4.9.3","yamcs-4.9.2","yamcs-4.9.1","yamcs-4.9.0","yamcs-4.8.1","yamcs-4.8.0","yamcs-4.7.3","yamcs-4.7.2","yamcs-4.7.1","yamcs-4.7","yamcs-4.4.2","yamcs-4.4.1","yamcs-4.4.0","yamcs-4.3.1","yamcs-4.3.0","yamcs-4.2.2","yamcs-4.2.1","yamcs-4.2.0","yamcs-4.1.2","yamcs-4.1.1","yamcs-4.0.1","yamcs-3.4.0","yamcs-3.3.0","yamcs-3.2.2","yamcs-3.2.1","yamcs-3.2.0","yamcs-3.1.2","yamcs-3.1.1","yamcs-3.1.0","yamcs-3.0.0","yamcs-0.30.0","v0.29.4","v0.29.3-20160608","v0.29.3","v0.29.1","v0.29.1-20160127","v0.29.1-20160119","v0.29.1-20151214","v0.29.0","v0.28.0","v0.28.0-20150903","v0.28.0-20150902-2","v0.28.0-20150902","v0.28.0-20150901","v0.28.0-20150828","v0.28.0-20150827","v0.28.0-20150826","v0.28.0-20150825","v0.28.0-20150824","v0.28.0-20150820","v0.28.0-20150817","v0.28.0-20150811","v0.26.1","v0.26.0"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-55548.json","vanir_signatures_modified":"2026-07-22T04:19:30Z","vanir_signatures":[{"target":{"file":"yamcs-core/src/main/java/org/yamcs/http/api/PacketsApi.java"},"deprecated":false,"digest":{"line_hashes":["320898656256652072698292542556734183101","45871571197387845877829527911951693680","105791968791167402494078665792316924313","243314963090185581176738930677219827094","254745690880522417671517590300875079267","186701871805743295717214320244092168127","87742036207741781162638899509594603198","183662766587370330370177078903951405617"],"threshold":0.9},"id":"CVE-2026-55548-10a1215b","signature_type":"Line","signature_version":"v1","source":"https://github.com/yamcs/yamcs/commit/c743cc3acf5b5c53ff5181b94eacc21340f70dd9"},{"signature_version":"v1","source":"https://github.com/yamcs/yamcs/commit/b566beceba98cc35514b0e1519be126b8c5a0438","target":{"file":"yamcs-core/src/main/java/org/yamcs/http/api/PacketsApi.java","function":"onTuple"},"deprecated":false,"digest":{"function_hash":"284341187513386973607588782792876718745","length":329},"id":"CVE-2026-55548-66bd52f3","signature_type":"Function"},{"deprecated":false,"digest":{"function_hash":"24461536933610560081028751681158508848","length":1270},"id":"CVE-2026-55548-8a5bcb9f","signature_type":"Function","signature_version":"v1","source":"https://github.com/yamcs/yamcs/commit/c743cc3acf5b5c53ff5181b94eacc21340f70dd9","target":{"file":"yamcs-core/src/main/java/org/yamcs/http/api/PacketsApi.java","function":"exportPackets"}},{"deprecated":false,"digest":{"threshold":0.9,"line_hashes":["320898656256652072698292542556734183101","45871571197387845877829527911951693680","105791968791167402494078665792316924313","243314963090185581176738930677219827094","254745690880522417671517590300875079267","186701871805743295717214320244092168127","87742036207741781162638899509594603198","183662766587370330370177078903951405617"]},"id":"CVE-2026-55548-8a895d1b","signature_type":"Line","signature_version":"v1","source":"https://github.com/yamcs/yamcs/commit/b566beceba98cc35514b0e1519be126b8c5a0438","target":{"file":"yamcs-core/src/main/java/org/yamcs/http/api/PacketsApi.java"}},{"signature_type":"Function","signature_version":"v1","source":"https://github.com/yamcs/yamcs/commit/b566beceba98cc35514b0e1519be126b8c5a0438","target":{"file":"yamcs-core/src/main/java/org/yamcs/http/api/PacketsApi.java","function":"exportPackets"},"deprecated":false,"digest":{"function_hash":"24461536933610560081028751681158508848","length":1270},"id":"CVE-2026-55548-baec2fcb"},{"signature_type":"Function","signature_version":"v1","source":"https://github.com/yamcs/yamcs/commit/c743cc3acf5b5c53ff5181b94eacc21340f70dd9","target":{"file":"yamcs-core/src/main/java/org/yamcs/http/api/PacketsApi.java","function":"onTuple"},"deprecated":false,"digest":{"function_hash":"284341187513386973607588782792876718745","length":329},"id":"CVE-2026-55548-e00192ae"}]}}],"schema_version":"1.7.5","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N"}]}