CVE-2026-48158: use-context-selector was vulnerable to malicious code execution via compromised commits

Published Aug 10, 2026
·
Updated

use-context-selector is a React useContextSelector hook in userland Between 2026-05-18 15:57:18 and 2026-05-19 15:24:34, the default branch contained malicious commits 9d8481a513b7b0d1c0941b220c69b25de748641b through 6f2dae054ca014068bdbbb4db96006424d674124 that executed remote attacker-controlled code on developer machines during npm install. The commits were removed by force-push, but local clones, forks, and direct-SHA URLs may still contain them, and npm install against an affected checkout will still execute the code today. The package was not published to npm. src/install.js was added and wired into the postinstall script. It fetched a JavaScript payload from an attacker-controlled HTTPS endpoint (configurable via an environment variable), disabled TLS verification, and evaluated the response as code with require available. Execution was deliberately skipped on CI and cloud/serverless environments, targeting developer workstations. The second-stage payload was attacker-hosted and cannot be reconstructed. Assume full compromise of anything reachable from a Node process with the user's permissions. Those who ran npm install against an affected checkout on a developer machine on or after 2026-05-18 15:57:18 should treat the machine as compromised, rotate every credential the machine could reach, audit account activity since 2026-05-18 15:57:18, and clean local clones.

Affected Software

1 affected component
npm/use-context-selector>=9d8481a513b7b0d1c0941b220c69b25de748641b<=6f2dae054ca014068bdbbb4db96006424d674124

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Remove

    Remove use-context-selector from your environment.

    Remove/uninstall the affected `use-context-selector` package from developer checkouts that contain the malicious commits.

  2. Compensating control

    Treat any developer workstation that ran `npm install` against an affected checkout on or after 2026-05-18 15:57:18 as fully compromised: restrict or isolate the machine from the network (e.g., remove from production/untrusted networks) to prevent further access to reachable systems.

  3. Operational

    Rotate every credential the compromised developer machine could reach.

  4. Operational

    Audit account activity since 2026-05-18 15:57:18.

  5. Operational

    Clean local clones (and any forks/direct-SHA checkouts) that may still contain the malicious commits, since force-pushing may not remove them locally.

Event History

Aug 10, 2026
CVE Published
via MITRE·03:56 PM
Data Sourced
via MITRE·03:56 PM
DescriptionWeakness
Data Sourced
via NVD·04:19 PM
DescriptionSeverityWeakness
Free Weekly Intel

Don't miss critical vulnerabilities

Join thousands of security professionals who receive our weekly digest of trending CVEs, zero-days, and exploited vulnerabilities.

No spam. Unsubscribe anytime.

Frequently Asked Questions

1

What is the severity of CVE-2026-48158?

The severity of CVE-2026-48158 is rated at 89, indicating a high risk of exploitation.

2

What vulnerability does CVE-2026-48158 address?

CVE-2026-48158 addresses a vulnerability in use-context-selector that allows for malicious code execution through compromised commits.

3

How do I fix CVE-2026-48158?

To fix CVE-2026-48158, update use-context-selector to the latest version that has mitigated the vulnerability.

4

What is the impact of exploiting CVE-2026-48158?

Exploitation of CVE-2026-48158 could allow an attacker to execute remote code on the affected systems.

5

When was CVE-2026-48158 published?

CVE-2026-48158 was published on August 10, 2026.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203