Critical Malicious Code Vulnerability in struct-logger Package

struct-logger Updated 02 Oct 2025

Summary

23/05/2025
CRITICAL
No i
Critical
Not published

MAL-2025-4405: Malicious code in struct-logger (npm). Affected versions are not published. No fix is published. How to fix ↓

Free scan

Check if this vulnerability affects your application

Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.

Check my app free

No signup required · Results in about 60 seconds

Upload your dependency manifest or SBOM

Drag & drop your file here or

Java Javascript PHP Python Go Rust Ruby Dart C/C++ Elixir CycloneDX SPDX

Upload a supported dependency manifest or SBOM. No installation or source-code access required.

See supported files and SBOM formats
SBOM sbom.json · bom.json · bom.xml · *.spdx.json · *.cdx.json · *.cdx.xml
Java pom.xml · gradle.lockfile · buildscript-gradle.lockfile
Javascript package-lock.json · yarn.lock · pnpm-lock.yaml
PHP composer.lock
Python poetry.lock · requirements.txt · Pipfile.lock
Go go.mod
Rust Cargo.lock
Ruby Gemfile.lock
Dart pubspec.lock
C/C++ conan.lock
Elixir mix.lock
Enter your work email to receive your report link.

Verify your email to view the full report and start 30 days of continuous monitoring. No credit card required.

Sponsored Devnack Your last release was probably never penetration tested Manual testing by engineers who build software, not an auditor's checklist. Trusted by teams at Swift and Google Talk to Devnack

Background

The struct-logger package is an npm library designed for structured logging in Node.js applications. It allows developers to log messages in a structured format, making it easier to analyze logs and troubleshoot issues. However, this package has been compromised, leading to significant security concerns for any application utilizing it.

Vulnerability Detail

The vulnerability originates from malicious code embedded within the struct-logger package. This code can fully compromise any computer that has the package installed or running, allowing unauthorized access to sensitive information such as secrets and keys. The malicious nature of the code falls under CWE-506, which indicates the presence of embedded malicious code. Users are advised to treat any system with this package as compromised.

How To Fix

This package is malicious. Remove it and rotate any credentials it could have accessed.

npm uninstall struct-logger

If it arrived as a transitive dependency, remove the package that pulled it in, then reinstall.

Tip — Not sure whether your app is affected? Vulert can check the versions your app actually runs. Scan free →

Workaround

As a temporary measure, you can prevent the execution of the struct-logger package by removing it from your project dependencies. Use the following command to uninstall it: npm uninstall struct-logger. However, be aware that this does not guarantee the removal of all malicious software that may have been installed.

Conclusion

The struct-logger package has been identified as containing malicious code that poses a serious security risk. Users must take immediate action to remove the package and secure their systems. Monitoring tools like Vulert can help keep your applications safe from future vulnerabilities.

See every vulnerability recorded for struct-logger →

Share this vulnerability

FAQ

The struct-logger package is an npm library used for structured logging in Node.js applications, allowing developers to log messages in a format that is easier to analyze.

The package was compromised by the introduction of malicious code that can fully compromise any system where it is installed or running.

You should immediately uninstall the struct-logger package and rotate any secrets or keys stored on the affected system.

Currently, there is no patched version available. Users are advised to remove the package entirely.

You can use Vulert, which monitors and alerts in real-time for open-source vulnerabilities in your software using just the package-lock.json file. You can also check your application for vulnerabilities using the Vulert playground without any signup.

How To Fix

This package is malicious. Remove it and rotate any credentials it could have accessed.

npm uninstall struct-logger

If it arrived as a transitive dependency, remove the package that pulled it in, then reinstall.

Tip — Not sure whether your app is affected? Vulert can check the versions your app actually runs. Scan free →

Subscribe to Vulert on Telegram
Daily digest of new CVEs, critical and high severity, affected packages and fixes — plus a weekly roundup.
Join the channel →
Help improve this record
Report an issue or send feedback