Skip to content

fix(deps): update dependency systeminformation to v5.23.8 [security] #32234

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Aug 13, 2025

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
systeminformation (source) 5.22.8 -> 5.23.8 age adoption passing confidence

GitHub Vulnerability Alerts

CVE-2024-56334

Summary

The SSID is not sanitized when before it is passed as a parameter to cmd.exe in the getWindowsIEEE8021x function. This means that malicious content in the SSID can be executed as OS commands.

Details

I have exploited this vulnerability in a Windows service using version 5.22.11 of the module, to escalate privileges (in an environment where I am authorized to do so). However, as far as I can see from the code, it is still present in master branch at time of writing, on line 403/404 of network.js.

The SSID is obtained from netsh wlan show interface ... in getWindowsWirelessIfaceSSID, and then passed to cmd.exe /d /s /c "netsh wlan show profiles ... in getWindowsIEEE8021x, without sanitization.

PoC

First, the command injection payload should be included in the connected Wi-Fi SSID. For example create hotspot on mobile phone or other laptop, set SSID to payload, connect to it with victim Windows system. Two example SSID's to demonstrate exploitation are below.

Demonstration to run ping command indefinitely:

a" | ping /t 127.0.0.1 &

Run executable with privileges of the user in which vulnerable function is executed. Chosen executable should should be placed in (assuming system drive is C): C:\a\a.exe.

a" | %SystemDrive%\a\a.exe &

Then, the vulnerable function can be executed on the victim system, for example, using:

const si = require('systeminformation');
si.networkInterfaces((net) => { console.log(net) });

Now the chosen command, PING.exe or a.exe will be run through the cmd.exe command line.

Impact

This vulnerability may enable an attacker, depending on how the package is used, to perform remote code execution or local privilege escalation.


Release Notes

sebhildebrandt/systeminformation (systeminformation)

v5.23.8

Compare Source

v5.23.6

Compare Source

v5.23.5

Compare Source

v5.23.4

Compare Source

v5.23.3

Compare Source

v5.23.2

Compare Source

v5.23.1

Compare Source

v5.23.0

Compare Source

v5.22.11

Compare Source

v5.22.10

Compare Source

v5.22.9

Compare Source


Configuration

📅 Schedule: Branch creation - "" in timezone America/New_York, Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about these updates again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@cypress-app-bot
Copy link
Collaborator

See the guidelines for reviewing dependency updates for info on how to review dependency update PRs.

@renovate renovate bot force-pushed the renovate/npm-systeminformation-vulnerability branch 15 times, most recently from 296d196 to 07e9002 Compare August 15, 2025 14:13
@renovate renovate bot force-pushed the renovate/npm-systeminformation-vulnerability branch 2 times, most recently from 516a03f to fcc7ce2 Compare August 15, 2025 19:42
@jennifer-shehane jennifer-shehane self-requested a review August 15, 2025 19:58
@jennifer-shehane jennifer-shehane self-assigned this Aug 15, 2025
@renovate renovate bot force-pushed the renovate/npm-systeminformation-vulnerability branch from fcc7ce2 to 46e4643 Compare August 15, 2025 19:59
Copy link
Contributor Author

renovate bot commented Aug 15, 2025

Edited/Blocked Notification

Renovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR.

You can manually request rebase by checking the rebase/retry box above.

⚠️ Warning: custom changes will be lost.

Copy link
Member

@jennifer-shehane jennifer-shehane left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like all good fix updates

Copy link

cypress bot commented Aug 15, 2025

cypress    Run #64669

Run Properties:  status check passed Passed #64669  •  git commit c628c1ad5e: add changelog entry
Project cypress
Branch Review renovate/npm-systeminformation-vulnerability
Run status status check passed Passed #64669
Run duration 19m 20s
Commit git commit c628c1ad5e: add changelog entry
Committer Jennifer Shehane
View all properties for this run ↗︎

Test results
Tests that failed  Failures 0
Tests that were flaky  Flaky 8
Tests that did not run due to a developer annotating a test with .skip  Pending 1101
Tests that did not run due to a failure in a mocha hook  Skipped 0
Tests that passed  Passing 26543
View all changes introduced in this branch ↗︎
UI Coverage  45.11%
  Untested elements 186  
  Tested elements 157  
Accessibility  97.71%
  Failed rules  4 critical   8 serious   2 moderate   2 minor
  Failed elements 110  

@jennifer-shehane jennifer-shehane merged commit 4afff00 into develop Aug 18, 2025
82 of 90 checks passed
@jennifer-shehane jennifer-shehane deleted the renovate/npm-systeminformation-vulnerability branch August 18, 2025 20:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants