{"items":[{"id":"NVI-00009823","kind":"supply_chain_event","title":"Malicious code in @flexmr/survey-client (npm)","revision":1,"unknowns":["Customer inventory, deployment, reachability and exploitation have not been inspected."],"lifecycle":"active","identifiers":["GHSA-w9wx-pxhr-p9g4"],"plain_summary":"GitHub lists this malware advisory for @flexmr/survey-client, @flexmr/survey-client, @flexmr/survey-client, @flexmr/survey-client, @flexmr/survey-client. Published version ranges and source prerequisites are shown below; this is not an inspection of a visitor’s application.","review_status":"source_listed","control_topics":[],"public_actions":[{"summary":"Identify the exact component and deployed version, examine the linked publisher’s conditions, and retain evidence of any mitigation.","source_ids":["sr-678583cf4b5573ecee13977f922dcfdc"],"action_type":"investigate","limitations":"Confirm current vendor support, compatibility and deployment evidence. This report has not tested a fix in your system.","current_supported_target":null}],"schema_version":"1.1.0","source_metrics":[],"why_it_matters":"Published affected context helps an owner decide what evidence to gather. This report has not examined your application.","related_sources":[{"id":"sr-678583cf4b5573ecee13977f922dcfdc","url":"https://github.com/advisories/GHSA-w9wx-pxhr-p9g4","basis":"vendor_advisory","notes":"GitHub Advisory Database; CC-BY-4.0. Each advisory links its original attribution. Null normalizes fields.","title":"GHSA-w9wx-pxhr-p9g4","publisher":"GitHub Advisory Database","observed_at":"2026-10-31T22:06:13.671Z"}],"affected_context":[{"certainty":"source_listed","source_ids":["sr-678583cf4b5573ecee13977f922dcfdc"],"technology":"@flexmr/survey-client","known_exclusions":[],"conditions_summary":"## Source: amazon-inspector (ed5d0e26b18d32568569b828bdbe2ccb40d0c4a54780c6e51be6280cb5fc851f)\n@flexmr/survey-client@10.0.12 declares its sole dependency 'marker-index-symbol-schema' as a bare HTTPS URL to https://artifacts.creditslib.com/npm/marker-index-symbol-schema instead of a registry version range. On npm install, npm fetches whatever bytes that URL returns and executes any lifecycle scripts contained in them, with no version pin, no hash, and no integrity check. The shipped index.js is a one-line re-export stub (module.exports = require('marker-index-symbol-schema')), so the external host is the entire payload surface and whoever controls artifacts.creditslib.com controls code executed on every installer's machine. The package also carries dependency-confusion markers that aggravate the delivery vector: a vendor-looking scope (@flexmr/survey-client) paired with placeholder metadata (description 'Generated package', author 'Package Registry', repository URL under github.com/example/...), none of which are consistent with a legitimate @flexmr-published client. The artifacts.creditslib.com host is unrelated to any npm registry or to the @flexmr publisher.\n\n---\n\nCredit: [OpenSS","public_affected_ranges":["= 1.0.0"]},{"certainty":"source_listed","source_ids":["sr-678583cf4b5573ecee13977f922dcfdc"],"technology":"@flexmr/survey-client","known_exclusions":[],"conditions_summary":"## Source: amazon-inspector (ed5d0e26b18d32568569b828bdbe2ccb40d0c4a54780c6e51be6280cb5fc851f)\n@flexmr/survey-client@10.0.12 declares its sole dependency 'marker-index-symbol-schema' as a bare HTTPS URL to https://artifacts.creditslib.com/npm/marker-index-symbol-schema instead of a registry version range. On npm install, npm fetches whatever bytes that URL returns and executes any lifecycle scripts contained in them, with no version pin, no hash, and no integrity check. The shipped index.js is a one-line re-export stub (module.exports = require('marker-index-symbol-schema')), so the external host is the entire payload surface and whoever controls artifacts.creditslib.com controls code executed on every installer's machine. The package also carries dependency-confusion markers that aggravate the delivery vector: a vendor-looking scope (@flexmr/survey-client) paired with placeholder metadata (description 'Generated package', author 'Package Registry', repository URL under github.com/example/...), none of which are consistent with a legitimate @flexmr-published client. The artifacts.creditslib.com host is unrelated to any npm registry or to the @flexmr publisher.\n\n---\n\nCredit: [OpenSS","public_affected_ranges":["= 1.0.12"]},{"certainty":"source_listed","source_ids":["sr-678583cf4b5573ecee13977f922dcfdc"],"technology":"@flexmr/survey-client","known_exclusions":[],"conditions_summary":"## Source: amazon-inspector (ed5d0e26b18d32568569b828bdbe2ccb40d0c4a54780c6e51be6280cb5fc851f)\n@flexmr/survey-client@10.0.12 declares its sole dependency 'marker-index-symbol-schema' as a bare HTTPS URL to https://artifacts.creditslib.com/npm/marker-index-symbol-schema instead of a registry version range. On npm install, npm fetches whatever bytes that URL returns and executes any lifecycle scripts contained in them, with no version pin, no hash, and no integrity check. The shipped index.js is a one-line re-export stub (module.exports = require('marker-index-symbol-schema')), so the external host is the entire payload surface and whoever controls artifacts.creditslib.com controls code executed on every installer's machine. The package also carries dependency-confusion markers that aggravate the delivery vector: a vendor-looking scope (@flexmr/survey-client) paired with placeholder metadata (description 'Generated package', author 'Package Registry', repository URL under github.com/example/...), none of which are consistent with a legitimate @flexmr-published client. The artifacts.creditslib.com host is unrelated to any npm registry or to the @flexmr publisher.\n\n---\n\nCredit: [OpenSS","public_affected_ranges":["= 3.0.12"]},{"certainty":"source_listed","source_ids":["sr-678583cf4b5573ecee13977f922dcfdc"],"technology":"@flexmr/survey-client","known_exclusions":[],"conditions_summary":"## Source: amazon-inspector (ed5d0e26b18d32568569b828bdbe2ccb40d0c4a54780c6e51be6280cb5fc851f)\n@flexmr/survey-client@10.0.12 declares its sole dependency 'marker-index-symbol-schema' as a bare HTTPS URL to https://artifacts.creditslib.com/npm/marker-index-symbol-schema instead of a registry version range. On npm install, npm fetches whatever bytes that URL returns and executes any lifecycle scripts contained in them, with no version pin, no hash, and no integrity check. The shipped index.js is a one-line re-export stub (module.exports = require('marker-index-symbol-schema')), so the external host is the entire payload surface and whoever controls artifacts.creditslib.com controls code executed on every installer's machine. The package also carries dependency-confusion markers that aggravate the delivery vector: a vendor-looking scope (@flexmr/survey-client) paired with placeholder metadata (description 'Generated package', author 'Package Registry', repository URL under github.com/example/...), none of which are consistent with a legitimate @flexmr-published client. The artifacts.creditslib.com host is unrelated to any npm registry or to the @flexmr publisher.\n\n---\n\nCredit: [OpenSS","public_affected_ranges":["= 10.0.12"]},{"certainty":"source_listed","source_ids":["sr-678583cf4b5573ecee13977f922dcfdc"],"technology":"@flexmr/survey-client","known_exclusions":[],"conditions_summary":"## Source: amazon-inspector (ed5d0e26b18d32568569b828bdbe2ccb40d0c4a54780c6e51be6280cb5fc851f)\n@flexmr/survey-client@10.0.12 declares its sole dependency 'marker-index-symbol-schema' as a bare HTTPS URL to https://artifacts.creditslib.com/npm/marker-index-symbol-schema instead of a registry version range. On npm install, npm fetches whatever bytes that URL returns and executes any lifecycle scripts contained in them, with no version pin, no hash, and no integrity check. The shipped index.js is a one-line re-export stub (module.exports = require('marker-index-symbol-schema')), so the external host is the entire payload surface and whoever controls artifacts.creditslib.com controls code executed on every installer's machine. The package also carries dependency-confusion markers that aggravate the delivery vector: a vendor-looking scope (@flexmr/survey-client) paired with placeholder metadata (description 'Generated package', author 'Package Registry', repository URL under github.com/example/...), none of which are consistent with a legitimate @flexmr-published client. The artifacts.creditslib.com host is unrelated to any npm registry or to the @flexmr publisher.\n\n---\n\nCredit: [OpenSS","public_affected_ranges":["= 2.0.12"]}],"null_published_at":"2026-10-31T22:13:39.949Z","source_updated_at":"2026-10-16T09:30:39.000Z","source_disclosed_at":"2026-10-16T09:30:31.000Z","is_synthetic_fixture":false,"null_last_reviewed_at":null,"public_change_summary":"First indexed by Null; source disclosure date is shown separately.","null_first_observed_at":"2026-10-31T22:06:13.671Z"}],"next_cursor":null,"snapshot_revision":"42594"}