CVE-2026-63183
Description
A flaw was found in OmniAuth. When host validation is not configured, OmniAuth derives authentication callback URLs from untrusted request headers. A remote, unauthenticated attacker can exploit this vulnerability by sending a forged HTTP (Hypertext Transfer Protocol) Host header. This can allow an attacker to manipulate callback destinations, potentially redirecting authentication flows to an attacker-controlled server and leading to credential disclosure.
Statement
This vulnerability is rated as Moderate impact because successful exploitation requires specific environmental prerequisites, namely that the hosting application and reverse proxy do not restrict or validate incoming HTTP host headers. In standard production deployments, modern web frameworks and edge proxies typically enforce strict host authorization, preventing external clients from tampering with redirection endpoints. Consequently, the flaw only poses a risk in setups lacking these default architectural controls, limiting its potential blast radius across Red Hat environments.
Mitigation
To mitigate this issue, configure explicit host validation in the application or enforce host filtering at the reverse proxy layer:
1. Configure a static host in OmniAuth by setting the `full_host` option in the application configuration (for example, in `config/initializers/omniauth.rb`):
ruby
OmniAuth.config.full_host = 'https://your-domain.example.com'
2. Alternatively, enable host authorization at the application framework level (such as Rails `config.hosts` in `config/environments/production.rb`) or configure the front-end reverse proxy to validate and reject untrusted HTTP Host headers.
Caveats:
Setting a static `full_host` forces all authentication callbacks to use the designated URL, which may impact multi-tenant environments relying on dynamic hostnames. Modifying application configurations or reverse proxy settings requires restarting or reloading the affected web services.
Understanding the Weakness (CWE)
Access Control,Other
Technical Impact: Gain Privileges or Assume Identity; Varies by Context
An attacker can access any functionality that is inadvertently accessible to the source.
Frequently Asked Questions
Not sure what something means? Check out our Security Glossary.
Want to get errata notifications? Sign up here.