Miggo Logo

CVE-2025-55000: OpenBao TOTP Secrets Engine Code Reuse

6.5

CVSS Score
3.1

Basic Information

EPSS Score
-
Published
8/8/2025
Updated
8/8/2025
KEV Status
No
Technology
TechnologyGo

Technical Details

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
Package NameEcosystemVulnerable VersionsFirst Patched Version
github.com/openbao/openbaogo>= 0.1.0, < 2.3.22.3.2
github.com/openbao/openbaogo< 0.0.0-20250806193153-183891f8d5350.0.0-20250806193153-183891f8d535

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The analysis of the security advisory and the associated commit 183891f8d535d5b6eb3d79fda8200cade6de99e1 clearly indicates that the vulnerability is located in the TOTP code validation path. The commit message explicitly states that the underlying TOTP library transparently removes whitespace, while OpenBao's own code reuse cache did not. This created a loophole where codes with whitespace could bypass the replay attack prevention.

The patch addresses this by adding a strict validation check in the backend.pathValidateCode function within builtin/logical/totp/path_code.go. The new code, strings.TrimSpace(code) != code, ensures that any submitted code containing leading or trailing whitespace is rejected before it can be processed by the TOTP library or checked against the used-code cache. This change effectively closes the reuse vulnerability. Therefore, the backend.pathValidateCode function is the precise location of the vulnerability and the function that would appear in a runtime profile during exploitation.

Vulnerable functions

Only Mi**o us*rs **n s** t*is s**tion

WAF Protection Rules

WAF Rule

### Imp**t Op*n**o's TOTP s**r*ts *n*in* *oul* ****pt v*li* *o**s multipl* tim*s r*t**r t**n stri*tly-on**. T*is w*s **us** *y un*xp**t** norm*liz*tion in t** un**rlyin* TOTP li*r*ry. ### P*t***s Op*n**o v*.*.* will p*t** t*is issu*. In p*t**in*,

Reasoning

T** *n*lysis o* t** s**urity **visory *n* t** *sso*i*t** *ommit `****************************************` *l**rly in*i**t*s t**t t** vuln*r**ility is lo**t** in t** TOTP *o** v*li**tion p*t*. T** *ommit m*ss*** *xpli*itly st*t*s t**t t** un**rlyin*