User Tools

Site Tools


pfsense:suricata:alerts:suricata_http_host_header_invalid

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
pfsense:suricata:alerts:suricata_http_host_header_invalid [2021/01/15 09:25] – created peterpfsense:suricata:alerts:suricata_http_host_header_invalid [2021/01/15 09:29] (current) – [PFSense - Suricata - Alerts - SURICATA HTTP Host header invalid] peter
Line 1: Line 1:
 ====== PFSense - Suricata - Alerts - SURICATA HTTP Host header invalid ====== ====== PFSense - Suricata - Alerts - SURICATA HTTP Host header invalid ======
  
-[[https://tools.ietf.org/html/rfc6066|RFC 6066]] doesn'specify or even recommend any particular HTTP error in the case that the hostname sent via SNI (Server Name Indication) doesn't match the HTTP Host header.+A client sent a bad hostname (or none at all) through SNI or the HTTP Host header. 
 + 
 +---- 
 + 
 +[[https://tools.ietf.org/html/rfc6066|RFC 6066]] does not specify or even recommend any particular HTTP error in the case that the hostname sent via SNI (Server Name Indication) doesn't match the HTTP Host header.
  
 It does recommend that the server abort the TLS handshake if the SNI hostname is not one that it provides service for. It does recommend that the server abort the TLS handshake if the SNI hostname is not one that it provides service for.
Line 7: Line 11:
 From [[https://tools.ietf.org/html/rfc6066#section-3|section 3]]: From [[https://tools.ietf.org/html/rfc6066#section-3|section 3]]:
  
-  * If the server understood the ClientHello extension but does not recognize the server name, the server SHOULD take one of two actions: either abort the handshake by sending a fatal-level unrecognized_name(112) alert or continue the handshake.+  * If the server understood the **ClientHello** extension but does not recognize the server name, the server SHOULD take one of two actions: either abort the handshake by sending a fatal-level unrecognized_name(112) alert or continue the handshake.
     * Since such a malformed request can get past the TLS handshake and need to be rejected in HTTP, an HTTP response code is necessary.     * Since such a malformed request can get past the TLS handshake and need to be rejected in HTTP, an HTTP response code is necessary.
     * Of all those that exist, only one really fits the situation:     * Of all those that exist, only one really fits the situation:
       * [[https://tools.ietf.org/html/rfc7231#section-6.5.1|6.5.1. 400 Bad Request]]       * [[https://tools.ietf.org/html/rfc7231#section-6.5.1|6.5.1. 400 Bad Request]]
-        * The 400 (Bad Request) status code indicates that the server cannot or will not process the request due to something that is perceived to be a client error (e.g., malformed request syntax, invalid request message framing, or deceptive request routing).+        * The **400 (Bad Request)** status code indicates that the server cannot or will not process the request due to something that is perceived to be a client error (e.g., malformed request syntax, invalid request message framing, or deceptive request routing).
  
         * This is, in fact, the response that RFC 7230 specifies. From [[https://tools.ietf.org/html/rfc7230#section-5.4|section 5.4]] describing the Host header:         * This is, in fact, the response that RFC 7230 specifies. From [[https://tools.ietf.org/html/rfc7230#section-5.4|section 5.4]] describing the Host header:
-          * A server MUST respond with a 400 (Bad Request) status code to any HTTP/1.1 request message that lacks a Host header field and to any request message that contains more than one Host header field or a Host header field with an invalid field-value.+          * A server MUST respond with a **400 (Bad Request)** status code to any HTTP/1.1 request message that lacks a Host header field and to any request message that contains more than one Host header field or a Host header field with an invalid field-value.
  
-It is recommended strongly against using a 502 for this.+It is recommended strongly against using a **502 (Bad Gateway)** for this.
  
   * Its semantics indicate that something is wrong on the server side and that the request would succeed if tried later.   * Its semantics indicate that something is wrong on the server side and that the request would succeed if tried later.
pfsense/suricata/alerts/suricata_http_host_header_invalid.1610702718.txt.gz · Last modified: 2021/01/15 09:25 by peter

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki