Skip to main content
Vulnerability Database/CVE-2026-48974

CVE-2026-48974: HomeBox Authentication Bypass Vulnerability

CVE-2026-48974 is an authentication bypass flaw in HomeBox that allows authenticated users to force other accounts into their group without authorization. This post explains its impact, affected versions, and mitigation steps.

Published:

CVE-2026-48974 Overview

HomeBox is an open-source home inventory and organization system maintained by sysadminsmedia. Versions prior to 0.26.0 contain a broken access control flaw in the POST /v1/groups/members endpoint. The endpoint invokes HandleGroupMemberAdd and GroupService.AddMember using a caller-supplied userID without validating that the caller is a group owner, without requiring an invitation token, and without target-user consent or notification. Any authenticated user can force another account into the caller's group. The attack exposes the target user's email and name through the resulting member list and creates the membership precondition for a separate cross-group inventory-wipe vulnerability.

Critical Impact

Any authenticated HomeBox user can silently add arbitrary accounts to their own group, disclosing user identity data and enabling downstream inventory tampering.

Affected Products

  • HomeBox (sysadminsmedia/homebox) all versions prior to 0.26.0
  • Self-hosted HomeBox deployments exposing the /v1/groups/members API
  • HomeBox instances that permit self-registration of authenticated users

Discovery Timeline

  • 2026-09-21 - CVE-2026-48974 published to the National Vulnerability Database
  • 2026-09-23 - Last updated in NVD database

Technical Details for CVE-2026-48974

Vulnerability Analysis

The flaw is an authorization bypass classified under [CWE-841] Improper Enforcement of Behavioral Workflow. The HandleGroupMemberAdd handler in the HomeBox backend accepts a GroupMemberAdd request body containing a target UserID field. The handler passes that identifier directly into GroupService.AddMember without verifying the caller's role or requiring a prior invitation acceptance. As a result, the group membership workflow — which is intended to require an owner-issued invitation token and target-user acceptance — can be short-circuited by any authenticated user issuing a single POST request.

Once membership is established, the victim account appears in the attacker-controlled group's member list, disclosing the victim's email address and display name. The forced membership also satisfies the preconditions for a separate cross-group inventory-wipe issue patched in the same release, allowing an attacker to escalate impact beyond information disclosure.

Root Cause

The root cause is the presence of a public AddMember code path that trusted caller-supplied input for the target user identity. The handler lacked both a role check (IsOwner) and a workflow gate requiring an invitation token or target consent. A related handler for inventory wiping relied on a stale ctx.User.IsOwner field rather than authoritatively querying the group ownership relationship.

Attack Vector

Exploitation requires only a valid authenticated session on the HomeBox instance. The attacker sends a POST request to /v1/groups/members with the victim's UUID in the userId field. No email confirmation, invitation token, or user interaction is required on the victim side. The victim receives no notification of the group change.

go
// Patch: removal of the abusable GroupMemberAdd request type
// Source: github.com/sysadminsmedia/homebox commit ed3216a

	GroupMemberAdd struct {
		UserID uuid.UUID `json:"userId" validate:"required"`
	}

The fix removes the GroupMemberAdd request struct entirely, eliminating the caller-supplied userID code path. A companion patch in v1_ctrl_actions.go replaces the stale ctx.User.IsOwner check with an authoritative lookup:

go
// Patch: authoritative owner lookup for inventory wipe
// Source: github.com/sysadminsmedia/homebox commit ed3216a

isOwner, err := ctrl.repo.Groups.IsOwnerOf(ctx, ctx.UID, ctx.GID)
if err != nil {
	return validate.NewRequestError(err, http.StatusInternalServerError)
}
if !isOwner {
	return validate.NewRequestError(errors.New("only group owners can wipe inventory"), http.StatusForbidden)
}

See the GitHub Security Advisory GHSA-ffcw-whqh-hgqf for the full disclosure.

Detect Identity Attacks the Moment Authentication Fails

Singularity™ Identity surfaces credential misuse, lateral movement, and privilege escalation in real time, so you can contain the breach before it spreads.

Stop Identity Attacks

Detection Methods for CVE-2026-48974

Indicators of Compromise

  • HTTP POST requests to /v1/groups/members originating from non-owner authenticated sessions
  • Group membership changes without a preceding POST /v1/groups/invitations and POST /v1/groups/invitations/{token}/accept sequence
  • Unexpected user accounts appearing in group member listings alongside disclosure of their email addresses

Detection Strategies

  • Review HomeBox application logs for HandleGroupMemberAdd invocations and correlate the calling user's role with the target group ownership
  • Alert on group membership deltas that occur without an accompanying invitation acceptance event in the audit trail
  • Baseline the ratio of invitation-based joins versus direct AddMember calls; any direct calls on unpatched versions indicate abuse

Monitoring Recommendations

  • Enable verbose API request logging on the HomeBox reverse proxy and forward it to a centralized log store for retrospective analysis
  • Monitor for enumeration patterns such as repeated /v1/users or /v1/groups/members calls that iterate through UUIDs
  • Track database-level changes to the group_users join table and alert on inserts not tied to an invitation record

How to Mitigate CVE-2026-48974

Immediate Actions Required

  • Upgrade all HomeBox deployments to version 0.26.0 or later without delay
  • Audit current group membership rosters and remove any accounts that did not consent to their group assignment
  • Rotate session tokens and reset credentials for any accounts observed exploiting the endpoint

Patch Information

The issue is fixed in HomeBox 0.26.0 via commit ed3216a80998dfd81d4418700696244144883160. The patch removes the GroupMemberAdd request handler entirely and replaces the stale IsOwner context check with an authoritative Groups.IsOwnerOf repository lookup for the inventory-wipe action. Release notes are published under GitHub Release v0.26.0, and the code change is available in the GitHub Commit Update.

Workarounds

  • Restrict HomeBox to trusted users only by disabling self-registration until the upgrade is applied
  • Block or filter POST /v1/groups/members at the reverse proxy layer for non-owner user sessions if immediate patching is not feasible
  • Isolate the HomeBox instance behind an authenticating reverse proxy or VPN to reduce the pool of authenticated attackers
bash
# Example nginx rule to block the vulnerable endpoint until patched
location = /v1/groups/members {
    if ($request_method = POST) {
        return 403;
    }
    proxy_pass http://homebox_backend;
}

Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

Experience the Most Advanced Cybersecurity Platform

See how the world’s most intelligent, autonomous cybersecurity platform can protect your organization today and into the future.