Apache Airflow: Session Fixation
CVE-2023-40273 is a high-severity session fixation vulnerability in Apache Airflow from Apache, with a CVSS 3.1 base score of 8.0 out of 10. It can be exploited remotely over the network by an attacker with a low-privileged account, but only if a user takes part, for example by opening a link or file. The record lists version 2.7.0 as the first without the flaw, so updating Apache Airflow to that release or later removes the exposure. There is no confirmed exploitation so far. EPSS estimates a 1.85% chance of exploitation within 30 days, higher than 79% of scored CVEs.
High severity with no evidence of exploitation so far.
What to do
- Update Apache Airflow to 2.7.0 or a later version.
- Read the advisory on lists.apache.org for workarounds and exact fixed builds.
- Because the attack needs a user to take part, warn users about unexpected links and files related to this product until it is patched.
Affected products and versions
| Vendor | Product | Affected versions | Fixed in |
|---|---|---|---|
| Apache | Apache Airflow | before 2.7.0 | 2.7.0 |
| Apache | airflow | 2.7.0 and earlier | Not stated |
Version data comes from the organisation that assigned the CVE. Confirm against the vendor advisory before deciding you are unaffected.
How the severity score breaks down
- Attack vector
- NetworkCan be exploited remotely over a network, including the internet.
- Attack complexity
- LowNo special conditions are needed; the attack works reliably.
- Privileges required
- LowA basic user account is enough.
- User interaction
- RequiredA user must take an action such as opening a file or link.
- Scope
- UnchangedImpact stays within the vulnerable component.
- Confidentiality
- HighAll data handled by the component can be read.
- Integrity
- HighData or code can be modified at will.
- Availability
- HighThe component can be taken down completely.
Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:H. Scored by NVD.
| Scoring system | Score | Severity | Scored by |
|---|---|---|---|
| CVSS 3.1 | 8.0 | High | NVD |
| CVSS 3.1 | 8.0 | High | CISA (ADP) |
Official description
The session fixation vulnerability allowed the authenticated user to continue accessing Airflow webserver even after the password of the user has been reset by the admin - up until the expiry of the session of the user. Other than manually cleaning the session database (for database session backend), or changing the secure_key and restarting the webserver, there were no mechanisms to force-logout the user (and all other users with that). With this fix implemented, when using the database session backend, the existing sessions of the user are invalidated when the password of the user is reset. When using the securecookie session backend, the sessions are NOT invalidated and still require changing the secure key and restarting the webserver (and logging out all other users), but the user resetting the password is informed about it with a flash message warning displayed in the UI. Documentation is also updated explaining this behaviour. Users of Apache Airflow are advised to upgrade to version 2.7.0 or newer to mitigate the risk associated with this vulnerability.
Source: the CVE record as published by its numbering authority, via NVD and CVE.org.
The underlying weakness: Session Fixation
Authenticating a user, or otherwise establishing a new user session, without invalidating any existing session identifier gives an attacker the opportunity to steal authenticated sessions.
How developers prevent this class of flaw
- Invalidate any existing session identifiers prior to authorizing a new user session.
- For platforms such as ASP that do not generate new values for sessionid cookies, utilize a secondary cookie. In this approach, set a secondary cookie on the user's browser to a random value and set a session variable to the same value. If the session variable and the cookie value ever don't match, invalidate the session, and force the user to log on again.
- Use an application firewall that can detect attacks against this weakness. It can be beneficial in cases in which the code cannot be fixed (because it is controlled by a third party), as an emergency prevention measure while more comprehensive software assurance measures are applied, or to provide defense in depth.
Timeline
- CVE record published.
- CISA published its SSVC assessment (exploitation: none, automatable: no, technical impact: total).
- Record last changed materially (score, affected products, status or references).
References
Patches and release notes
- github.com/apache/airflow/pull/33347Third Party Advisory
Third-party and government advisories
- openwall.com/lists/oss-security/2023/08/23/1Mailing List, Third Party Advisory
Other vulnerabilities in Apache Airflow
- 8.8 High severity
- 8.8 High severity
- 7.3 High severity
- 9.8 Critical severity
- 8.2 High severity
- 7.5 High severity
Recent Session Fixation vulnerabilities
- 7.0 High severity
- 8.8 High severity
- 7.5 High severity
- 9.8 Critical severity
- 9.8 Critical severity
- 8.1 High severity
Spotted an error? Tell us.