{"items":[{"id":"NVI-00010530","kind":"supply_chain_event","title":"Malicious code in xapi-lib (npm)","revision":1,"unknowns":["Customer inventory, deployment, reachability and exploitation have not been inspected."],"lifecycle":"active","identifiers":["GHSA-q29m-w8xx-cvvg"],"plain_summary":"GitHub lists this malware advisory for xapi-lib, xapi-lib, xapi-lib, xapi-lib. 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-fcdd10dffb2029b10bde47e1afb31387"],"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-fcdd10dffb2029b10bde47e1afb31387","url":"https://github.com/advisories/GHSA-q29m-w8xx-cvvg","basis":"vendor_advisory","notes":"GitHub Advisory Database; CC-BY-4.0. Each advisory links its original attribution. Null normalizes fields.","title":"GHSA-q29m-w8xx-cvvg","publisher":"GitHub Advisory Database","observed_at":"2026-10-31T22:06:13.671Z"}],"affected_context":[{"certainty":"source_listed","source_ids":["sr-fcdd10dffb2029b10bde47e1afb31387"],"technology":"xapi-lib","known_exclusions":[],"conditions_summary":"xapi-lib@88.2.3, 88.2.5, 90.2.1, and 90.3.1 describes itself as a package for getting IP location and metadata. Its preinstall hook runs `node index.js` on npm install and requests `https://realwbx.com/ip.php?ip=8.8.8.8` with the hardcoded Authorization value `fa79878bc2cfb48bd5127ae26fb661b1`, which is the same in all four versions and differs from the value in each of the account's other packages. The npm account conx3993 published xapi-lib on 2026-10-15, one of 9 packages from that account between 2026-09-30 and 2026-10-15 whose preinstall hook calls realwbx.com.\n\n---\n\nCredit: OpenSSF (source)","public_affected_ranges":["= 88.2.5"]},{"certainty":"source_listed","source_ids":["sr-fcdd10dffb2029b10bde47e1afb31387"],"technology":"xapi-lib","known_exclusions":[],"conditions_summary":"xapi-lib@88.2.3, 88.2.5, 90.2.1, and 90.3.1 describes itself as a package for getting IP location and metadata. Its preinstall hook runs `node index.js` on npm install and requests `https://realwbx.com/ip.php?ip=8.8.8.8` with the hardcoded Authorization value `fa79878bc2cfb48bd5127ae26fb661b1`, which is the same in all four versions and differs from the value in each of the account's other packages. The npm account conx3993 published xapi-lib on 2026-10-15, one of 9 packages from that account between 2026-09-30 and 2026-10-15 whose preinstall hook calls realwbx.com.\n\n---\n\nCredit: OpenSSF (source)","public_affected_ranges":["= 88.2.3"]},{"certainty":"source_listed","source_ids":["sr-fcdd10dffb2029b10bde47e1afb31387"],"technology":"xapi-lib","known_exclusions":[],"conditions_summary":"xapi-lib@88.2.3, 88.2.5, 90.2.1, and 90.3.1 describes itself as a package for getting IP location and metadata. Its preinstall hook runs `node index.js` on npm install and requests `https://realwbx.com/ip.php?ip=8.8.8.8` with the hardcoded Authorization value `fa79878bc2cfb48bd5127ae26fb661b1`, which is the same in all four versions and differs from the value in each of the account's other packages. The npm account conx3993 published xapi-lib on 2026-10-15, one of 9 packages from that account between 2026-09-30 and 2026-10-15 whose preinstall hook calls realwbx.com.\n\n---\n\nCredit: OpenSSF (source)","public_affected_ranges":["= 90.2.1"]},{"certainty":"source_listed","source_ids":["sr-fcdd10dffb2029b10bde47e1afb31387"],"technology":"xapi-lib","known_exclusions":[],"conditions_summary":"xapi-lib@88.2.3, 88.2.5, 90.2.1, and 90.3.1 describes itself as a package for getting IP location and metadata. Its preinstall hook runs `node index.js` on npm install and requests `https://realwbx.com/ip.php?ip=8.8.8.8` with the hardcoded Authorization value `fa79878bc2cfb48bd5127ae26fb661b1`, which is the same in all four versions and differs from the value in each of the account's other packages. The npm account conx3993 published xapi-lib on 2026-10-15, one of 9 packages from that account between 2026-09-30 and 2026-10-15 whose preinstall hook calls realwbx.com.\n\n---\n\nCredit: OpenSSF (source)","public_affected_ranges":["= 90.3.1"]}],"null_published_at":"2026-10-31T22:27:06.720Z","source_updated_at":"2026-10-16T09:31:36.000Z","source_disclosed_at":"2026-10-16T06:30:28.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"}