[ 
https://issues.apache.org/jira/browse/AIRFLOW-4180?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ash Berlin-Taylor closed AIRFLOW-4180.
--------------------------------------
    Resolution: Won't Fix

I don't recommend doing SSL termination in Airflow anyway, so this is not 
Airflow's job.

> [security] Lack of HTTP Strict Transport Security (HSTS) Policy
> ---------------------------------------------------------------
>
>                 Key: AIRFLOW-4180
>                 URL: https://issues.apache.org/jira/browse/AIRFLOW-4180
>             Project: Apache Airflow
>          Issue Type: Bug
>          Components: security, ui
>            Reporter: t oo
>            Priority: Major
>
> The Airflow application does not have the HSTS header set. HTTP Strict 
> Transport Security (HSTS) allows websites to declare themselves accessible 
> only over HTTPS and was designed to prevent hackers from forcing user 
> connections over HTTP or abusing mistakes in HTTPS implementations to 
> compromise content integrity. When the browser connects over HTTPS to a 
> website that supports HSTS, the site's strict transport security policy is 
> saved and remembered for a specified amount of time. From that point forward, 
> as long as the cached policy doesn't expire, the browser will refuse to 
> initiate insecure connections with that website. This is the standard 
> mechanism of HSTS: "Strict-Transport-Security: max-age=expiretime". The time, 
> in seconds, that the browser should remember that this site is only accessed 
> through https. 
>  
> The HSTS header (Strict-Transport-Security) is not set in server responses. 
>  
> Business Impact/Attack Scenario 
> "When the browser loads the insecure resource it makes a request over plain 
> HTTP and can also send the user's session cookie along with it. An attacker 
> that can intercept the request using networking sniffing techniques can use 
> the cookie to hijack the user's account. Man-in-the-middle attacks can be 
> executed, where the attacker is in a position to intercept a user's 
> connection with a website.
> From the client browser side, HTTP requests are possible until the request 
> reaches the server and instructs the browser to use HTTPS. This allows for 
> unencrypted communications in the initial request(s).
> A web application may inadvertently contain HTTP links instead of HTTPS 
> links. This allows an attacker to be able to inject malicious code in the 
> HTTP requests and server responses.
> Without the HSTS header, HTTPS click through prompts on browsers cannot be 
> prevented. This will allow an attacker to see the HTTPS requests and 
> responses in unencrypted form.
> SSL Stripping:
> The SSL stripping attack works (on TLS as well) by transparently converting a 
> secure HTTPS connection into a plain HTTP connection. The user can see that 
> the connection is insecure, but crucially there is no way of knowing whether 
> the connection should be secure. Many websites do not use TLS/SSL, therefore 
> there is no way of knowing (without prior knowledge) whether the use of plain 
> HTTP is due to an attack, or simply because the website hasn't implemented 
> TLS/SSL. Additionally, no warnings are presented to the user during the 
> downgrade process, making the attack fairly subtle to all but the most 
> vigilant. Marlinspike's sslstrip tool fully automates the attack." 
>  
> Recommendation 
> "HSTS addresses the following threats:
> - User bookmarks or manually types example.com and is subject to a 
> man-in-the-middle attacker
>  -> HSTS automatically redirects HTTP requests to HTTPS for the target domain.
> - Web application that is intended to be purely HTTPS inadvertently contains 
> HTTP links or serves content over HTTP
>  -> HSTS automatically redirects HTTP requests to HTTPS for the target domain
> - A man-in-the-middle attacker attempts to intercept traffic from a victim 
> user using an invalid certificate and hopes the user will accept the bad 
> certificate
>  -> HSTS does not allow a user to override the invalid certificate message
> If you wish to implement a fix for the web application solution below:
> For websites or applications with private and confidential information, this 
> security policy must be employed in its HTTP Response header for HTTPS 
> connections: "Strict-Transport-Security: max-age=31536000".
> Reference:
> http://www.youtube.com/watch?v=zEV3HOuM_Vw&feature=youtube_gdata
> https://tools.ietf.org/html/rfc6797
> http://www.thoughtcrime.org/software/sslstrip/
> https://en.wikipedia.org/wiki/HTTP_Strict_Transport_Security
> The Internet Engineering Task Force (IETF) released the specification under 
> RFC6797"



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to