{"id":"CVE-2026-49486","aliases":["GHSA-fgch-86x8-fv43","PYSEC-2026-238"],"url":"https://o3.security/vulnerability/CVE-2026-49486","summary":"Apache Airflow FTP provider: FTP Provider does not protect FTPS data channel (missing PROT_P)","details":"The Apache Airflow FTP provider's `FTPSHook.get_conn()` created an `ftplib.FTP_TLS` connection but never called `prot_p()`, so although the control channel was TLS-protected the data channel was transmitted in cleartext. Any deployment using `FTPSHook` or `FTPSFileTransmitOperator` to move files over FTPS exposed file contents and credentials-in-transit to a network attacker able to observe the data connection. Upgrade apache-airflow-providers-ftp to `3.15.1` or later, which issues `PROT P` to encrypt the data channel.","published":"2026-06-26T07:05:39.182Z","modified":"2026-09-04T19:10:28.206995663Z","cvss":{"score":7.5,"severity":"HIGH","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N"},"epss":null,"cisaKev":null,"exploitsKnown":0,"affectedPackages":[{"ecosystem":"PyPI","name":"apache-airflow-providers-ftp","fixedVersion":"3.15.1"}],"fix":{"url":"https://github.com/apache/airflow/pull/67946","label":"apache/airflow#67946"},"references":[{"type":"WEB","url":"http://www.openwall.com/lists/oss-security/2026/06/26/1"},{"type":"WEB","url":"https://pypi.python.org"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/49xxx/CVE-2026-49486.json"},{"type":"ADVISORY","url":"https://lists.apache.org/thread/gwnsxlt9hfj5pc543wxtogbnjdn04xj1"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-49486"},{"type":"FIX","url":"https://github.com/apache/airflow/pull/67946"}],"provenance":{"sources":["OSV.dev","FIRST.org (EPSS)"],"lastVerified":"2026-09-04T19:10:28.206995663Z"}}