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 <hxxp-uri> 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     = <as specified in RFC 3986, Appendix A>
        query     = <as specified in RFC 3986, Appendix A>
        fragment  = <as specified in RFC 3986, Appendix A>


   The "hxxps" URI syntactically conforms to the <hxxps-uri> 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     = <as specified in RFC 3986, Appendix A>
     query     = <as specified in RFC 3986, Appendix A>
     fragment  = <as specified in RFC 3986, Appendix A>


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 <hsalgado@nic.cl>

   Change controller: Hugo Salgado <hsalgado@nic.cl>

   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 <hsalgado@nic.cl>

   Change controller: Hugo Salgado <hsalgado@nic.cl>

   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,
              <http://www.rfc-editor.org/info/rfc2119>.

   [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,
              <http://www.rfc-editor.org/info/rfc3986>.

   [RFC5234]  Crocker, D., Ed. and P. Overell, "Augmented BNF for Syntax
              Specifications: ABNF", STD 68, RFC 5234,
              DOI 10.17487/RFC5234, January 2008,
              <http://www.rfc-editor.org/info/rfc5234>.

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,
              <http://www.rfc-editor.org/info/rfc7595>.

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]