{"id":"CVE-2026-67587","aliases":[],"cve":{"records":[{"id":"CVE-2026-67587","source":"apache","state":"PUBLISHED","reasons":[],"replacements":[],"disputed":false,"unsupportedWhenAssigned":false,"reserved":"2026-07-29T19:47:18.427Z","published":"2026-08-12T15:32:10.565Z","modified":"2026-11-03T06:59:15.615Z"}],"publishers":[{"name":"apache","role":"CNA","organizationId":"f0158376-9dc2-43b6-827c-5f631a4d8d09","modified":"2026-11-03T06:59:15.615Z"},{"name":"CISA-ADP","role":"ADP","organizationId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","modified":"2026-08-13T12:17:26.307Z"}],"references":[{"url":"https://github.com/apache/airflow/pull/70704","tags":["patch"],"source":"apache"},{"url":"https://lists.apache.org/thread/o00ww4n69qojvsckb464dtwd2nhzy6t0","tags":["vendor-advisory"],"source":"apache"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-58076","tags":["related"],"source":"apache"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-67260","tags":["related"],"source":"apache"}],"weaknesses":[{"id":"CWE-502","description":"CWE-502: Deserialization of Untrusted Data","source":"apache"}],"applicability":[],"prioritization":[{"source":"CISA-ADP","type":"SSVC","role":"CISA Coordinator","timestamp":"2026-08-13T12:17:23.923988Z","decisions":[{"name":"Exploitation","value":"none"},{"name":"Automatable","value":"no"},{"name":"Technical Impact","value":"total"}]}]},"title":"Apache Airflow: DAG-author remote code execution on the Scheduler via a Serde `Callback` deserialization gadget","titleSource":"apache","descriptionSource":"apache","description":"Apache Airflow's Task SDK rebuilt a `Callback` object from serialized data by re-running its constructor, which imports the module named by the stored callback path. Because `SyncCallback` is itself an Airflow class it passes the default `allowed_deserialization_classes` allow-list, so tightening that setting does not help. A Dag author — who controls a task instance's `next_kwargs` through the task execution API — can therefore cause an arbitrary module to be imported inside the scheduler process, when the scheduler's `awaiting_input` timeout sweep deserializes that value. No non-default configuration is required; the sweep runs unconditionally. Versions before 3.3.0 are not affected: the class existed, but the scheduler sweep that reaches it did not. This is a separate code path from CVE-2026-58076 and CVE-2026-67260, which cover different gadgets reaching deserialization — applying either of those fixes does not address this one. Users are advised to upgrade to apache-airflow 3.3.1 or later.","score":8.8,"severity":"high","published":"2026-08-12T15:32:10.565Z","modified":"2026-11-03T06:59:15.615Z","withdrawn":false,"knownExploited":false,"affected":[],"products":[{"vendor":"Apache Software Foundation","name":"Apache Airflow","platforms":[],"versions":[{"version":"3.3.0","status":"affected","lessThan":"3.3.1","versionType":"semver"}],"defaultStatus":"unaffected","packageURL":"pkg:pypi/apache-airflow-core","packageIdentity":{"ecosystem":"PyPI","name":"apache-airflow-core"},"cpes":[],"source":"apache","url":"https://www.cve.org/CVERecord?id=CVE-2026-67587"}],"remediation":[],"references":["https://github.com/apache/airflow/pull/70704","https://lists.apache.org/thread/o00ww4n69qojvsckb464dtwd2nhzy6t0","https://www.cve.org/CVERecord?id=CVE-2026-58076","https://www.cve.org/CVERecord?id=CVE-2026-67260"],"sources":[{"name":"CVE","id":"CVE-2026-67587","modified":"2026-11-03T06:59:15.615Z","url":"https://www.cve.org/CVERecord?id=CVE-2026-67587"}],"assessments":[{"source":"CISA-ADP","vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","score":8.8}],"sourceAffected":[],"observedAt":"2026-11-03T07:11:31.125Z","kev":{"status":"not-listed","checkedAt":"2026-11-15T00:20:33.177Z"},"coverage":[{"source":"NVD","status":"available","checkedAt":"2026-11-03T07:15:33.473Z","attemptedAt":"2026-11-03T07:15:33.473Z"},{"source":"GHSA","status":"available","checkedAt":"2026-11-03T07:15:34.027Z","attemptedAt":"2026-11-03T07:15:34.027Z"},{"source":"EUVD","status":"available","checkedAt":"2026-11-03T07:15:35.093Z","attemptedAt":"2026-11-03T07:15:35.093Z"},{"source":"EPSS","status":"available","checkedAt":"2026-11-03T07:15:33.467Z","attemptedAt":"2026-11-03T07:15:33.467Z"}],"evidence":[{"source":"FIRST EPSS","id":"CVE-2026-67587","url":"https://www.first.org/epss/","probability":0.00611,"percentile":0.49287,"date":"2026-11-02","checkedAt":"2026-11-03T07:15:33.467Z"},{"source":"NVD","id":"CVE-2026-67587","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-67587","modified":"2026-10-24T16:10:00.153","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","checkedAt":"2026-11-03T07:15:33.473Z"},{"source":"GitHub Advisory Database","id":"GHSA-2qjv-p2gc-mjg2","url":"https://github.com/advisories/GHSA-2qjv-p2gc-mjg2","modified":"2026-10-02T23:15:28Z","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","checkedAt":"2026-11-03T07:15:34.027Z"},{"source":"ENISA EUVD","id":"EUVD-2026-57274","url":"https://euvd.enisa.europa.eu/vulnerability/EUVD-2026-57274","modified":"Sep 16, 2026, 2:56:11 PM","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","checkedAt":"2026-11-03T07:15:35.093Z"}],"aiSummary":{"text":"Apache Airflow versions 3.3.0 are affected by a deserialization weakness, allowing a DAG author to import arbitrary modules in the scheduler process. The attacker must have access to the task execution API. The impact is related to deserialization of untrusted data.","model":"@cf/meta/llama-3.3-70b-instruct-fp8-fast","generatedAt":"2026-11-03T07:16:06.274Z","sources":[{"name":"CVE","url":"https://www.cve.org/CVERecord?id=CVE-2026-67587"}]}}