---
id: "GHSA-fw6v-88vw-pqr3"
page: "https://infrastack.ai/live/GHSA-fw6v-88vw-pqr3"
kind: "package"
aliases: ["GHSA-fw6v-88vw-pqr3", "MAL-2026-16053"]
title: "Malicious code in file-type-detector (npm)"
severity: "critical"
cvss: null
epss: null
exploited: false
status: "open"
category: "package"
products: [{"name": "file-type-detector", "note": "all versions", "fixed": [], "affected": "", "ecosystem": "npm"}]
ecosystems: ["npm"]
tags: ["malicious", "package"]
not_affected_if: []
published_at: "2026-09-09T00:27:12+00:00"
first_seen_at: "2026-11-11T17:28:37+00:00"
updated_at: "2026-11-11T17:30:36+00:00"
sources: [{"source": "osv-malicious", "url": "https://osv.dev/vulnerability/MAL-2026-16053", "first_seen_at": "2026-11-11T17:28:37+00:00"}]
exploit_sources: []
---

# Malicious code in file-type-detector (npm)

Link for people: https://infrastack.ai/live/GHSA-fw6v-88vw-pqr3 (this .md is for agents)

## Affected

- npm:file-type-detector affected range not listed fixed no fixed version listed

## Timeline

- 2026-11-11T17:28:37+00:00 osv-malicious https://osv.dev/vulnerability/MAL-2026-16053

## From the sources

---
_-= Per source details. Do not edit below this line.=-_

## Source: amazon-inspector (04917bd7fc156dcb9793cb1f1d06ed0f2d0cb1b3aa4b04431dea54ed71f6be72)
A clone of file-type-checker with one function added: isSign(name, moduleName, offset) in dist/validation/image.js reads public/${name}.png from the working directory, splits the buffer at -offset, and writes the trailing payload to../../../{moduleName}/log - a sibling package under node_modules - then returns isPNG() so the caller sees a plausible boolean. It is undocumented, reachable only via an __exportStar wildcard so it is never named in dist/index.js, and fails silently on try/catch.

Drop stage of a three-package chain: file-type-detector writes the payload, gloggo (1.1.2-1.1.4) executes it via require('./log'), and sonmors (typosquat of sonner) triggers the chain by requiring gloggo. gloggo shares the npm publisher log-developer and was published five minutes apart on 2026-08-27. No install hooks; execution occurs on require().

## Source: ghsa-malware (cf4b330143b17fd8c5b2c9b3ea655e4d8ab79266aa54faefc66369c49343d020)
Any computer that has this package installed or running should be considered fully compromised. All secrets and keys stored on that computer should be rotated immediately from a different computer. The package should be removed, but as full control of the computer may have been given to an outside entity, there is no guarantee that removing the package will remove all malicious software resulting from installing it.

---

_Free to read, with fair use of about 60 pages a minute. For higher limits or API access: sales@infrastack.ai_
