net/url in Go before 1.11.13 and 1.12.x before 1.12.8 mishandles malformed hosts in URLs, leading to an authorization bypass in some applications. This is related to a Host field with a suffix appearing in neither Hostname() nor Port(), and is related to a non-numeric port number. For example, an attacker can compose a crafted javascript:// URL that results in a hostname of google.com.
Name | Vendor | Start Version | End Version |
---|---|---|---|
Go | Golang | * | 1.11.13 (excluding) |
Go | Golang | 1.12.0 (including) | 1.12.8 (excluding) |
Red Hat Developer Tools | RedHat | go-toolset-1.12-0:1.12.8-2.el7 | * |
Red Hat Developer Tools | RedHat | go-toolset-1.12-golang-0:1.12.8-2.el7 | * |
Red Hat Enterprise Linux 8 | RedHat | go-toolset:rhel8-8010020190829001136.ccff3eb7 | * |
Golang-1.10 | Ubuntu | bionic | * |
Golang-1.10 | Ubuntu | disco | * |
Golang-1.10 | Ubuntu | esm-infra/bionic | * |
Golang-1.10 | Ubuntu | trusty/esm | * |
Golang-1.10 | Ubuntu | xenial | * |
Golang-1.11 | Ubuntu | disco | * |
Golang-1.12 | Ubuntu | disco | * |
Golang-1.12 | Ubuntu | eoan | * |
Golang-1.6 | Ubuntu | xenial | * |
Golang-1.8 | Ubuntu | bionic | * |
Golang-1.8 | Ubuntu | esm-apps/bionic | * |
Golang-1.9 | Ubuntu | bionic | * |
Golang-1.9 | Ubuntu | esm-apps/bionic | * |