Categories
CVE-2026-52809 medium CVSS 6.8

Vulnerability in gogs.io/gogs (CVE-2026-52809)

Summary

Vulnerability in gogs.io/gogs (CVE-2026-52809). Confidential information can be exposed externally. Exploitable via POST /user/forget_password. Mitigation: upgrade to 0.14.3 or later.

Original description

The description as published by the source.

Summary

Password-reset tokens are generated using conf.Auth.ActivateCodeLives (the account-activation lifetime), not conf.Auth.ResetPasswordCodeLives. The token lifetime is baked into the token itself at generation time and is re-extracted from the token at verification time, making RESET_PASSWORD_CODE_LIVES irrelevant to actual enforcement. When an administrator configures a shorter reset window (e.g., 10 minutes) for compliance or security reasons, reset tokens remain exploitable for the full activation lifetime instead, while the reset email falsely advertises the shorter expiry.

Severity

Medium (CVSS 3.1: 6.8)

CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:N

  • Attack Vector: Network — the reset endpoint is reachable over HTTP/S.
  • Attack Complexity: High — successful exploitation requires (1) the instance to be configured with RESET_PASSWORD_CODE_LIVES < ACTIVATE_CODE_LIVES, AND (2) the attacker to have intercepted the victim's reset token (e.g., from a compromised or shared email inbox).
  • Privileges Required: None — no Gogs account is required.
  • User Interaction: Required — the victim must have triggered a password-reset request.
  • Scope: Unchanged — the impact is confined to the victim's Gogs account.
  • Confidentiality Impact: High — successful exploitation leads to account takeover, exposing all private repositories and data.
  • Integrity Impact: High — the attacker can change the victim's password and gain full write a…

Source: GitHub Security Advisories (Global) NVD GitHub Advisory

Auto-generated summary

Assembled by SecPulse from the source data (CVSS, CWE, affected versions) using templates — no AI involved. Check the original description and references below for exact details.

A vulnerability tracked as CVE-2026-52809 has been found in gogs.io/gogs.
Attackers can target a specific entry point like POST /user/forget_password over the network to misuse the product.
Confidential information can be exposed externally. CVSS score: 6.8/10.
What to do: upgrade gogs.io/gogs to 0.14.3 or later.
If unsure, ask your IT team or search "gogs.io/gogs CVE-2026-52809" on the vendor's site.

CVE-2026-52809 (gogs.io/gogs) — CWE-324 / CVSS v3 6.8
Attack vector: remote (network-reachable) / unauthenticated
Attack surface: POST /user/forget_password / POST /user/reset_password / conf.Auth.ActivateCodeLives / conf.Auth.ResetPasswordCodeLives
Patched: 0.14.3 — apply immediately
Workaround: set email: false
Plan: 1) Audit SBOM/dependencies, 2) Stage→prod upgrade, 3) Add WAF/proxy monitoring on affected endpoints, 4) Hunt IOCs in logs.
Refs: see the GHSA / vendor advisory / patched release linked on this page.

❓ What is the problem

A vulnerability (CWE-324) exists in gogs.io/gogs. Attackers reach the vulnerable code path via POST /user/forget_password without authentication.

📍 Affected scope

Check the vendor advisory for the affected versions of gogs.io/gogs. Attack surface: POST /user/forget_password / POST /user/reset_password / conf.Auth.ActivateCodeLives / conf.Auth.ResetPasswordCodeLives.

🔥 Severity

Severity: Medium (CVSS 6.8/10). Confidential information can be exposed externally.

🔧 How to fix

Update to 0.14.3.

🛡️ Workaround

Workaround: set email: false

🔍 Detection

Search webserver/proxy logs for unusual POST /user/forget_password requests with malformed payloads or SQL meta-characters. Run grep -r 'gogs.io/gogs' . against your dependency files (package-lock.json, requirements.txt, go.sum) to find affected services.

Response actions

Concrete steps and command examples for SOC/SRE teams to execute in order

  1. 1
    Identify exposure identify
    grep -r 'gogs.io/gogs' . | grep -v node_modules

    リポジトリと本番環境の依存ファイル (package-lock.json / requirements.txt / go.sum / Gemfile.lock 等) で gogs.io/gogs を grep し、稼働しているサービス・バージョンを把握する。

  2. 2
    Hunt for indicators of compromise detect
    grep 'POST /user/forget_password' /var/log/nginx/access.log | grep -E '(unusual_payload|sqli_pattern)'

    アクセスログで POST /user/forget_password への異常なリクエスト (不正な認証ヘッダ・SQLメタ文字)を過去 30〜90日分捜索。WAF/SIEM があれば該当パスのアラート発火履歴を確認。

  3. 3
    Apply temporary workaround mitigate
    set email: false

    パッチが適用されるまでの応急処置として、set email: false を実施。回避策の副作用 (機能低下) を確認した上で。

  4. 4
    Apply patch patch
    Upgrade gogs.io/gogs to 0.14.3

    ステージング環境で 0.14.3 に上げて回帰テスト → 本番反映。回帰テストはアプリの主要ハッピーパスと、Step 2 で見つけた異常検知の続報チェックを含めること。

  5. 5
    Post-deployment verification verify
    Replay attack against POST /user/forget_password on staging to confirm patch closes the vector

    パッチ適用後、ステージングで PoC または同等の悪用パターンを再現して脆弱性が閉じたことを確認。本番では Step 2 と同じログクエリでアラート再発が無いか継続監視。

Affected packages

go gogs.io/gogs
[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"0.14.3"}]}]

References

We use cookies for analytics and ad measurement. This setting applies to all Game co., Ltd. sites. Details