{"items":[{"id":"NVI-00004163","kind":"vulnerability","title":"Contao: Improper access control in the preview links module","revision":2,"unknowns":["Customer inventory, deployment, reachability and exploitation have not been inspected.","NVD lastModified does not establish freshness of every associated CPE record."],"lifecycle":"active","identifiers":["GHSA-q6wp-fr43-gm9v","CVE-2026-107850"],"plain_summary":"OSV carries this publisher advisory for contao/core-bundle. This is an aggregated source copy; consult the original publisher and compare update dates.","review_status":"source_listed","control_topics":[],"public_actions":[{"summary":"The original advisory lists fixed boundaries 5.7.12 for contao/core-bundle. Confirm the publisher’s latest guidance.","source_ids":["sr-5b334e3bfdda206f0b7317d5c75fc6b0"],"action_type":"vendor_patch","limitations":"Confirm current vendor support, compatibility and deployment evidence. This report has not tested a fix in your system.","current_supported_target":null},{"summary":"Identify the exact component and deployed version, examine the linked publisher’s conditions, and retain evidence of any mitigation.","source_ids":["sr-28293690c2c2e8f1d294c61c97cffaea"],"action_type":"investigate","limitations":"Confirm current vendor support, compatibility and deployment evidence. This report has not tested a fix in your system.","current_supported_target":null}],"schema_version":"1.1.0","source_metrics":[{"kind":"CVSS","as_of":"2026-10-16T17:17:04.113Z","value":"4.3 MEDIUM (3.1)","meaning":"security-advisories@github.com severity; no combined Null risk score.","source_id":"sr-28293690c2c2e8f1d294c61c97cffaea"}],"why_it_matters":"Published affected context helps an owner decide what evidence to gather. This report has not examined your application.","related_sources":[{"id":"sr-5b334e3bfdda206f0b7317d5c75fc6b0","url":"https://github.com/advisories/GHSA-q6wp-fr43-gm9v","basis":"vendor_advisory","notes":"GitHub-origin advisory, CC-BY-4.0; OSV is an aggregate copy, not independent corroboration.","title":"GHSA-q6wp-fr43-gm9v","publisher":"GitHub Advisory Database via OSV","observed_at":"2026-10-31T21:42:30.999Z"},{"id":"sr-28293690c2c2e8f1d294c61c97cffaea","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-107850","basis":"official_catalog","notes":"This product uses data from the NVD API but is not endorsed or certified by the NVD.","title":"CVE-2026-107850","publisher":"NIST National Vulnerability Database","observed_at":"2026-11-01T01:40:38.141Z"}],"affected_context":[{"certainty":"source_listed","source_ids":["sr-5b334e3bfdda206f0b7317d5c75fc6b0"],"technology":"contao/core-bundle","known_exclusions":[],"conditions_summary":"`core-bundle/config/services.yaml` registers the preview access voter with the class `Contao\\CoreBundle\\Security\\Voter\\DataContainer\\PreviewAccessVoter`, but the class shipped on disk is named `PreviewVoter`. Symfony resolves the class with `getReflectionClass($class, false)`, gets `null`, silently skips the interface based autoconfiguration that would have tagged it as a voter, and the now untagged private service is removed when the container is compiled. The application boots without a warning, and the ownership rule in `PreviewVoter::hasAccess()` is never executed. `tl_preview_link` has no compensating SQL filter on `createdBy`, so any non administrator back end user whose group holds the `preview_link` module reads every preview link on the installation and lifts the already signed share URLs straight out of the list. Following one grants front end preview of the target page, with `showUnpublished` and with no page permission check, to anyone at all.\n\n### Impact\n\nA non administrator back end user reads every preview link on the installation, including links created by administrators, and lifts the already signed share URLs out of the list. Following one grants front end previe","public_affected_ranges":["ECOSYSTEM: introduced 5.7.1; fixed 5.7.12"]}],"null_published_at":"2026-11-01T14:34:07.602Z","source_updated_at":"2026-10-09T21:00:14.820Z","source_disclosed_at":"2026-10-09T20:53:46.000Z","is_synthetic_fixture":false,"null_last_reviewed_at":null,"public_change_summary":"Source facts changed; compare the preserved prior revision.","null_first_observed_at":"2026-10-31T21:42:30.999Z"},{"id":"NVI-00004163","kind":"vulnerability","title":"Contao: Improper access control in the preview links module","revision":1,"unknowns":["Customer inventory, deployment, reachability and exploitation have not been inspected."],"lifecycle":"active","identifiers":["GHSA-q6wp-fr43-gm9v","CVE-2026-107850"],"plain_summary":"OSV carries this publisher advisory for contao/core-bundle. This is an aggregated source copy; consult the original publisher and compare update dates.","review_status":"source_listed","control_topics":[],"public_actions":[{"summary":"The original advisory lists fixed boundaries 5.7.12 for contao/core-bundle. Confirm the publisher’s latest guidance.","source_ids":["sr-5b334e3bfdda206f0b7317d5c75fc6b0"],"action_type":"vendor_patch","limitations":"Confirm current vendor support, compatibility and deployment evidence. This report has not tested a fix in your system.","current_supported_target":null}],"schema_version":"1.1.0","source_metrics":[],"why_it_matters":"Published affected context helps an owner decide what evidence to gather. This report has not examined your application.","related_sources":[{"id":"sr-5b334e3bfdda206f0b7317d5c75fc6b0","url":"https://github.com/advisories/GHSA-q6wp-fr43-gm9v","basis":"vendor_advisory","notes":"GitHub-origin advisory, CC-BY-4.0; OSV is an aggregate copy, not independent corroboration.","title":"GHSA-q6wp-fr43-gm9v","publisher":"GitHub Advisory Database via OSV","observed_at":"2026-10-31T21:42:30.999Z"}],"affected_context":[{"certainty":"source_listed","source_ids":["sr-5b334e3bfdda206f0b7317d5c75fc6b0"],"technology":"contao/core-bundle","known_exclusions":[],"conditions_summary":"`core-bundle/config/services.yaml` registers the preview access voter with the class `Contao\\CoreBundle\\Security\\Voter\\DataContainer\\PreviewAccessVoter`, but the class shipped on disk is named `PreviewVoter`. Symfony resolves the class with `getReflectionClass($class, false)`, gets `null`, silently skips the interface based autoconfiguration that would have tagged it as a voter, and the now untagged private service is removed when the container is compiled. The application boots without a warning, and the ownership rule in `PreviewVoter::hasAccess()` is never executed. `tl_preview_link` has no compensating SQL filter on `createdBy`, so any non administrator back end user whose group holds the `preview_link` module reads every preview link on the installation and lifts the already signed share URLs straight out of the list. Following one grants front end preview of the target page, with `showUnpublished` and with no page permission check, to anyone at all.\n\n### Impact\n\nA non administrator back end user reads every preview link on the installation, including links created by administrators, and lifts the already signed share URLs out of the list. Following one grants front end previe","public_affected_ranges":["ECOSYSTEM: introduced 5.7.1; fixed 5.7.12"]}],"null_published_at":"2026-10-31T22:12:52.632Z","source_updated_at":"2026-10-09T21:00:14.820Z","source_disclosed_at":"2026-10-09T20:53:46.000Z","is_synthetic_fixture":false,"null_last_reviewed_at":null,"public_change_summary":"First indexed by Null; source disclosure date is shown separately.","null_first_observed_at":"2026-10-31T21:42:30.999Z"}],"next_cursor":null,"snapshot_revision":"42594"}