Internet Engineering Task Force H. Salgado Internet-Draft NIC Chile Intended status: Informational May 8, 2017 Expires: November 9, 2017 The "hxxp" and "hxxps" URI Schemes draft-salgado-hxxp-01 Abstract This document describes the "hxxp" and "hxxps" URI schemes, which are widely used by the security community to obfuscate an http or https URI to avoid being accidentaly interpreted and loaded by a web browser or user-agent. Status of This Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." This Internet-Draft will expire on November 9, 2017. Copyright Notice Copyright (c) 2017 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Salgado Expires November 9, 2017 [Page 1] Internet-Draft The "hxxp" and "hxxps" URI Schemes May 2017 Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1.1. Requirements Language . . . . . . . . . . . . . . . . . . 2 2. URI Scheme Specification . . . . . . . . . . . . . . . . . . 3 2.1. URI Scheme Syntax . . . . . . . . . . . . . . . . . . . . 3 2.2. URI Scheme Semantics . . . . . . . . . . . . . . . . . . 3 2.3. Encoding Considerations . . . . . . . . . . . . . . . . . 3 3. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 3 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 4 4.1. URI Scheme Registration . . . . . . . . . . . . . . . . . 4 5. Security Considerations . . . . . . . . . . . . . . . . . . . 5 6. References . . . . . . . . . . . . . . . . . . . . . . . . . 5 6.1. Normative References . . . . . . . . . . . . . . . . . . 5 6.2. Informative References . . . . . . . . . . . . . . . . . 5 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 5 1. Introduction This document describes the "hxxp" and "hxxps" URI schemes, which are widely used by the security community to obfuscate an http or https URI to avoid being accidentaly interpreted and loaded by a web browser or user-agent. These schemes are used in case the resource is dangerous and there is security risks on being automatically processed by an application, such a pre-loading mechanism in web user agents. It also prevents the creation of "clickables" areas in user interfaces, which could detect http or https URIs automatically. The purpose of this registration is to document its use, prevent any registration of this scheme in the future, explicitly recommend to web application developers to never act with this URI schemes in any way, and provide a safe method for the security community to share malicious information. These schemes must not be treated as an http or https schemes, and must not be identified as web resources. Its consumption is only for humans and documentation, and should be handled with caution by security professionals. 1.1. Requirements Language The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [RFC2119]. Salgado Expires November 9, 2017 [Page 2] Internet-Draft The "hxxp" and "hxxps" URI Schemes May 2017 2. URI Scheme Specification 2.1. URI Scheme Syntax The "hxxp" URI syntactically conforms to the rule below, expressed using the Augmented Backus-Naur Form (ABNF) [RFC5234]: hxxp-uri = "hxxp:" hxxp-token [ hxxp-query ] [ hxxp-fragment ] hxxp-token = *pchar hxxp-query = "?" query hxxp-fragment = "#" fragment pchar = query = fragment = The "hxxps" URI syntactically conforms to the rule below, expressed using the Augmented Backus-Naur Form (ABNF) [RFC5234]: hxxps-uri = "hxxps:" hxxps-token [ hxxps-query ] [ hxxps-fragment ] hxxps-token = *pchar hxxps-query = "?" query hxxps-fragment = "#" fragment pchar = query = fragment = 2.2. URI Scheme Semantics The resource that is referenced by a particular "hxxp" or "hxxps" URI is NOT meant to be interpreted or parsed in any way for applications, or any automated means. The resource MUST be interpreted and consumed by human security professionals. 2.3. Encoding Considerations "hxxp" and "hxxps" URIs are subject to encoding rules as defined in RFC 3986 [RFC3986]. 3. Acknowledgements The author acknowledges the suggestions and comments made by Fernando Gont and Harlan Lieberman-Berg, for the first revision. Salgado Expires November 9, 2017 [Page 3] Internet-Draft The "hxxp" and "hxxps" URI Schemes May 2017 4. IANA Considerations 4.1. URI Scheme Registration The IANA is requested to register "hxxp" and "hxxps" URI schemes in the "Provisional URI Schemes" registry. The information below is provided according to the guidelines from RFC 7595 [RFC7595]: ----- Scheme name: hxxp Status: Provisional Applications/protocols that use this scheme name: "hxxp" URIs are forbidden to be used by applications. Contact: Hugo Salgado Change controller: Hugo Salgado References: "The "hxxp" and "hxxps" URI Schemes" Internet Draft, https://datatracker.ietf.org/doc/draft-salgado-hxxp/ ----- ----- Scheme name: hxxps Status: Provisional Applications/protocols that use this scheme name: "hxxps" URIs are forbidden to be used by applications. Contact: Hugo Salgado Change controller: Hugo Salgado References: "The "hxxp" and "hxxps" URI Schemes" Internet Draft, https://datatracker.ietf.org/doc/draft-salgado-hxxp/ ----- Salgado Expires November 9, 2017 [Page 4] Internet-Draft The "hxxp" and "hxxps" URI Schemes May 2017 5. Security Considerations As stated in the Introduction, the "hxxp" and "hxxps" schemes are forbidden to be used or interpreted by applications. These schemes must be consumed only by humans. Application developers are encouraged to forbid "hxxp" and "hxxps" schemes URIs inside HTML anchors or tags. 6. References 6.1. Normative References [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997, . [RFC3986] Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform Resource Identifier (URI): Generic Syntax", STD 66, RFC 3986, DOI 10.17487/RFC3986, January 2005, . [RFC5234] Crocker, D., Ed. and P. Overell, "Augmented BNF for Syntax Specifications: ABNF", STD 68, RFC 5234, DOI 10.17487/RFC5234, January 2008, . 6.2. Informative References [RFC7595] Thaler, D., Ed., Hansen, T., and T. Hardie, "Guidelines and Registration Procedures for URI Schemes", BCP 35, RFC 7595, DOI 10.17487/RFC7595, June 2015, . Author's Address Hugo Salgado NIC Chile Miraflores 222, piso 14 Santiago CP 8320198 CL Phone: +56 2 29407700 Email: hsalgado@nic.cl Salgado Expires November 9, 2017 [Page 5]