Added characters that look like padlocks to URL unescaping blacklist.
commit7c2cbc445a81424c7df48ebe61ec4d0dcadd5dff
authormgiuca <mgiuca@chromium.org>
Wed, 24 Jun 2015 03:59:47 +0000 (23 20:59 -0700)
committerCommit bot <commit-bot@chromium.org>
Wed, 24 Jun 2015 04:00:16 +0000 (24 04:00 +0000)
tree642631bd7e3f95b16804d92a99f55ee3321d8aab
parent1d40cc1e1c6dc12d350bf0da668f2ddcac4f5976
Added characters that look like padlocks to URL unescaping blacklist.

This blacklists the following Unicode characters:
- U+1F50F LOCK WITH INK PEN
- U+1F510 CLOSED LOCK WITH KEY
- U+1F512 LOCK
- U+1F513 OPEN LOCK

This prevents LOCK characters from appearing in a URL in the Chrome UI,
potentially looking like an SSL padlock icon (e.g., "google.com/🔒" is
now displayed as "google.com/%F0%9F%94%92"). This presented a spoofing
risk due to a few complications:
1. In RTL mode, the end of the URL (path/query) is aligned right up
   against the right edge of the Omnibox, where the SSL padlock is
   usually displayed.
2. On Mac, ChromeOS, and Android, LOCK characters are displayed in
   colour, making them more convincing.

Note: These characters will still be unescaped when using the
SPOOFING_AND_CONTROL_CHARS unescape rule (used for decoding data URLs,
previously known as CONTROL_CHARS).

BUG=495934,421332
TBR=jam@chromium.org

Review URL: https://codereview.chromium.org/1180393003

Cr-Commit-Position: refs/heads/master@{#335870}
chrome/browser/safe_browsing/safe_browsing_util.cc
chrome/common/instant_types.cc
components/policy/core/common/cloud/device_management_service_unittest.cc
content/browser/web_contents/web_drag_source_mac.mm
extensions/browser/api/web_request/form_data_parser.cc
net/base/data_url.cc
net/base/escape.cc
net/base/escape.h
net/base/escape_unittest.cc
storage/common/fileapi/file_system_util.cc