Submeter #891889: Forgejo 15.0.4 SSRFinformação

TítuloForgejo 15.0.4 SSRF
DescriçãoForgejo restricts repository migration and mirror sources by rejecting loopback and private network destinations. This protection relies on a DNS lookup performed during URL validation (net.LookupIP). For plain Git migrations, however, the actual clone is performed by an external git subprocess. That subprocess performs its own DNS resolution when establishing the network connection and is not protected by Forgejo's connect-time IP validation (hostmatcher.NewDialContext). Because validation and connection perform independent DNS resolutions, an attacker controlling DNS responses (DNS rebinding) can return: a public IP during Forgejo's validation (request accepted), then 127.0.0.1 or another internal address when the Git subprocess connects. As a result, the migration succeeds even though a direct request to the same internal address is correctly rejected.
Fonte⚠️ https://codeberg.org/forgejo/forgejo/issues/13433
Utilizador
 spooky (UID 96038)
Submissão15/07/2026 15h28 (há 2 meses)
Moderação29/08/2026 21h04 (2 months later)
EstadoAceite
Entrada VulDB397072 [Forgejo até 15.0.4 Repository Migration is_migrate_allowed.go net.LookupIP Elevação de Privilégios]
Pontos19

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!