Описание
WebOb provides objects for HTTP requests and responses. When WebOb normalizes the HTTP Location header to include the request hostname, it does so by parsing the URL that the user is to be redirected to with Python's urlparse, and joining it to the base URL. urlparse
however treats a //
at the start of a string as a URI without a scheme, and then treats the next part as the hostname. urljoin
will then use that hostname from the second part as the hostname replacing the original one from the request. This vulnerability is patched in WebOb version 1.8.8.
A vulnerability was found in the WebOb package. WebOb normalizes the HTTP Location header using urlparse and urljoin. If the URL starts with //, urlparse treats the following part as the hostname, and replaces the original request's hostname. This issue, combined with user interaction, may become a vulnerability.
Меры по смягчению последствий
If the Response class is used, any HTTP Location header (i.e. location) can be rewritten so that it always passes a full URI that includes the hostname to redirect the user to.
Затронутые пакеты
Платформа | Пакет | Состояние | Рекомендация | Релиз |
---|---|---|---|---|
Red Hat Ceph Storage 4 | python-webob | Out of support scope | ||
Red Hat Ceph Storage 5 | python-webob | Affected | ||
Red Hat Ceph Storage 6 | python-webob | Affected | ||
Red Hat Ceph Storage 8 | python-webob | Affected | ||
Red Hat Enterprise Linux 6 | python-webob | Out of support scope | ||
Red Hat Enterprise Linux 7 | python-webob | Out of support scope | ||
Red Hat Openshift Container Storage 4 | python-webob | Affected | ||
Red Hat OpenStack Platform 16.1 | python-webob | Out of support scope | ||
Red Hat OpenStack Platform 16.2 | python-webob | Affected | ||
Red Hat Quay 3 | quay/quay-rhel8 | Affected |
Показывать по
Дополнительная информация
Статус:
6.1 Medium
CVSS3
Связанные уязвимости
WebOb provides objects for HTTP requests and responses. When WebOb normalizes the HTTP Location header to include the request hostname, it does so by parsing the URL that the user is to be redirected to with Python's urlparse, and joining it to the base URL. `urlparse` however treats a `//` at the start of a string as a URI without a scheme, and then treats the next part as the hostname. `urljoin` will then use that hostname from the second part as the hostname replacing the original one from the request. This vulnerability is patched in WebOb version 1.8.8.
WebOb provides objects for HTTP requests and responses. When WebOb normalizes the HTTP Location header to include the request hostname, it does so by parsing the URL that the user is to be redirected to with Python's urlparse, and joining it to the base URL. `urlparse` however treats a `//` at the start of a string as a URI without a scheme, and then treats the next part as the hostname. `urljoin` will then use that hostname from the second part as the hostname replacing the original one from the request. This vulnerability is patched in WebOb version 1.8.8.
WebOb provides objects for HTTP requests and responses. When WebOb nor ...
6.1 Medium
CVSS3