{"schema_version":"0.10.0","id":"LR-2026-0540","record_version":1,"title":"Nx Console VS Code extension compromise breaches GitHub internal repositories","verification":{"human_verified":false,"method":"automated_gate","auto_verified":true,"score":60.7,"score_breakdown":{"source_authority":12.1,"independent_corroboration":20.0,"implicated_party_confirmed":0.0,"citation_integrity":14.0,"specificity":3.0,"completeness":3.52,"unhedged_language":5.0},"checks":{"schema_valid":true,"every_field_cited":true,"quotes_verbatim":true,"source_fetched":true,"distinct_incident":true,"dates_plausible":true,"sources_agree":true,"source_describes_incident":true,"severe_backed_by_source":true,"record_integrity":true,"eligible":true,"about_this_case":true},"gate_version":"gate-2026-10-18.7","cross_check_model":null,"cross_check_agreement":null,"duplicate_of":null,"verified_by":null,"verified_at":"2026-11-01","extraction_run_id":null,"evidence_level":{"level":"confirmed","reason":"StepSecurity research","original_document":{"url":"https://www.stepsecurity.io/blog/nx-console-vs-code-extension-compromised","organisation":"StepSecurity","role":"researcher"},"reports_total":3,"reports_independent":3,"reports_derivative":0,"developing":false,"disputed":false,"rules_version":"evidence-2026-10-29.1","computed_at":"2026-11-01","history":[{"date":"2026-11-01","from_level":null,"to_level":"confirmed","reason":"StepSecurity research"}]},"sources_hash":"16972b221b9120ef3b296cb217a07697003078a93619b496f5b4334bc7f42340"},"system":{"model_name":null,"model_version":null,"developer":"unknown","harness":null,"tools_granted":[],"permissions_scope":null,"autonomy_level":"unknown","guardrails_present":[],"deployment_context":"unknown","tier":null,"lifecycle_stage":null,"integration_type":null,"intended_use":null,"safeguard_state":null,"production_intended":null},"event":{"date_occurred":"2026-05-18","date_disclosed":"2026-05-19","incident_class":"security_compromise","failure_class":null,"agent_involved":null,"secondary_failure_classes":[],"trigger":"unknown","duration":"PT11M","detection_method":"unknown","summary":"In May 2026 a version of the Nx Console VS Code extension was published to the Visual Studio Code Marketplace on May 18 and ran a credential-stealing payload when developers opened a workspace. The payload was fetched from an orphan commit in the nrwl/nx repository, which the attacker reached using a contributor's GitHub token stolen in an earlier supply chain attack. The extension was live for about 11 minutes before the Nx team detected the rogue publish and removed it. GitHub said on May 19 that approximately 3,800 of its internal source code repositories were exfiltrated after an employee's device was compromised by the extension. GitHub said it removed the extension version, isolated the endpoint, began incident response and rotated critical secrets. TeamPCP claimed responsibility and offered the stolen data for sale.","tags":[],"date_detected":null,"near_miss":null,"root_cause":null,"root_cause_detail":null,"failure_class_detail":null,"responsible_party":null,"adversarial_actor":null,"input_provenance":null,"time_to_contain":null,"operations_paused":null,"remediation":null,"precursor_events":null,"primary_risk":"RK04"},"impact":{"direct_loss_usd":null,"remediation_hours":null,"records_exposed":null,"third_parties_affected_count":null,"severity":"moderate","severity_because":"Bounded scope: approximately 3,800 GitHub-internal repositories; no evidence customer data outside them affected","harm_class":[],"affected_description":"approximately 3,800 of its internal source code repositories were exfiltrated","protected_class_involved":null,"data_categories_exposed":[],"loss_range_usd":null,"reversibility":null,"downstream_exposure_count":null},"evidence":{"sources":[{"url":"https://www.stepsecurity.io/blog/nx-console-vs-code-extension-compromised","publisher":"Step Security","date":"2026-05-18","type":"press","title":"Nx Console VS Code Extension Compromised - Step Security","archived_url":null,"attachment":"first_report","independence":"independent"},{"url":"https://www.infosecurity-magazine.com/news/github-confirms-breach-vs-code/","publisher":"Infosecurity Magazine","date":"2026-05-20","type":"press","title":"GitHub Confirms Breach of Internal Repositories Via Malicious VS Code Extension - Infosecurity Magazine","archived_url":null,"independence":"independent"},{"url":"https://www.bleepingcomputer.com/news/security/github-confirms-breach-of-3-800-repos-via-malicious-vscode-extension/","publisher":"BleepingComputer","date":"2026-05-20","type":"press","title":"GitHub confirms breach of 3,800 repos via malicious VSCode extension - BleepingComputer","archived_url":null,"independence":"independent"}],"per_field_confidence":{"event.date_occurred":"C","event.date_disclosed":"C","event.duration":"C","impact.affected_description":"C","context.industry":"C","event.incident_class":"D","impact.severity":"D","impact.severity_because":"D","event.primary_risk":"D","event.summary":"C","system.autonomy_level":"D","system.deployment_context":"D","event.trigger":"D","event.detection_method":"D","context.country":"D","system.developer":"D","context.denominator_available":"D"},"field_citations":{"event.date_occurred":[{"source_index":0,"quote":"On May 18, 2026, a compromised version of the Nx Console VS Code extension (nrwl.angular-console v18.95.0) was published to the Visual Studio Code Marketplace."}],"event.date_disclosed":[{"source_index":0,"quote":"On May 19, 2026, GitHub publicly disclosed that approximately 3,800 of its internal source code repositories were exfiltrated after an employee's device was compromised by a poisoned VS Code extension."}],"event.duration":[{"source_index":0,"quote":"According to the official advisory, the malicious version was live for approximately 11 minutes before the Nx team pulled it from the marketplace."}],"impact.affected_description":[{"source_index":0,"quote":"On May 19, 2026, GitHub publicly disclosed that approximately 3,800 of its internal source code repositories were exfiltrated after an employee's device was compromised by a poisoned VS Code extension."}],"context.industry":[{"source_index":1,"quote":"The Microsoft-owed software developer platform, GitHub, has confirmed a third-party has gained unauthorized access to 3800 internal repositories."}],"event.incident_class":[{"source_index":0,"quote":"This is the second supply chain attack against the Nx ecosystem in under a year."}],"impact.severity":[{"source_index":2,"quote":"Our current assessment is that the activity involved exfiltration of GitHub-internal repositories only."}],"impact.severity_because":[{"source_index":2,"quote":"This comes after GitHub told BleepingComputer on Tuesday evening that it was investigating claims of unauthorized access to its internal repositories and added that it has no evidence that customer data stored outside the affected repos has been affected."}],"event.summary":[{"source_index":0,"quote":"On May 18, 2026, a compromised version of the Nx Console VS Code extension (nrwl.angular-console v18.95.0) was published to the Visual Studio Code Marketplace."},{"source_index":0,"quote":"A contributor's GitHub personal access token was scraped during a separate, earlier supply chain incident."},{"source_index":0,"quote":"According to the official advisory, the malicious version was live for approximately 11 minutes before the Nx team pulled it from the marketplace."},{"source_index":0,"quote":"On May 19, 2026, GitHub publicly disclosed that approximately 3,800 of its internal source code repositories were exfiltrated after an employee's device was compromised by a poisoned VS Code extension."},{"source_index":1,"quote":"We removed the malicious extension version, isolated the endpoint and began incident response immediately."},{"source_index":0,"quote":"TeamPCP is behind the GitHub breach and is attempting to sell the stolen data."}]},"notes_on_gaps":"Sources describe a credential-stealing malicious VS Code extension, not an AI agent; system.* fields, event.agent_involved, failure_class and the AI-specific fields were left out as not stated. Detection method, root cause category, country, direct loss, records exposed and third-party count are not stated and were omitted. Judgements: incident_class security_compromise; responsible_party third_party based on GitHub's statement; trigger credential_exposure from the stated token scraping; severity moderate because scope is bounded at about 3,800 GitHub-internal repositories, though the install count (2.2 million per Step Security, Nx CEO estimate above 6,000 versus Microsoft's figure of 28) was not treated as affected parties. Source counts differ: Source 1 gives 3800 repositories while TeamPCP claims about 4000. The A1 and J4 outcomes and F5 as the control for the remediation are my judgements from the quoted sentences. The GitHub remediation timing and the TanStack link are as reported by press sources and not independently verified. [case created by the backfill: read by claude-haiku-5-5, backfill-2026-11-01.2, 2026-11-01; not yet reviewed] [2026-11-01: evidence level set: Confirmed (StepSecurity research)]"},"context":{"industry":"software development","org_size_band":null,"country":"unknown","denominator_available":false,"denominator":null,"related_incident_ids":[],"systemic_exposure":null,"shared_model_id":null,"upstream_incident_id":null,"incident_evidence":null,"regulatory":null,"coverage":null},"narrative":{"steps":[{"step":"doing","text":"The extension ran a hidden payload from a planted commit when a developer opened a workspace.","quote":"Within seconds of a developer opening any workspace, the compromised extension silently fetched and executed a 498 KB obfuscated payload from a dangling orphan commit hidden inside the official nrwl/nx GitHub repository.","source_index":0,"grade":"C"},{"step":"reached","text":"GitHub confirmed a third party gained unauthorized access to about 3,800 internal repositories.","quote":"The Microsoft-owed software developer platform, GitHub, has confirmed a third-party has gained unauthorized access to 3800 internal repositories.","source_index":1,"grade":"C"}],"model":"claude-haiku-5-5","prompt_version":"backfill-2026-11-01.2","extracted_at":"2026-11-01","source_urls":["https://www.stepsecurity.io/blog/nx-console-vs-code-extension-compromised","https://www.infosecurity-magazine.com/news/github-confirms-breach-vs-code/","https://www.bleepingcomputer.com/news/security/github-confirms-breach-of-3-800-repos-via-malicious-vscode-extension/"]},"analysis":{"sections":{"timeline":[{"text":"Attacker pushed an orphan commit to nrwl/nx using the stolen token.","quote":"At 03:18 UTC on May 18, the attacker used the stolen token to push an orphan commit to nrwl/nx.","source_index":0,"when":"2026-05-18 03:18 UTC"},{"text":"Attacker published the malicious extension version to the VS Code Marketplace.","quote":"At 12:36 UTC, the attacker published nrwl.angular-console v18.95.0 to the VS Code Marketplace.","source_index":0,"when":"2026-05-18 12:36 UTC"},{"text":"Nx team removed the malicious extension from the marketplace.","quote":"The Nx team detected the rogue publish within 11 minutes and removed the extension from the marketplace at 12:47 UTC.","source_index":0,"when":"2026-05-18 12:47 UTC"},{"text":"GitHub publicly disclosed the exfiltration of about 3,800 internal repositories.","quote":"On May 19, 2026, GitHub publicly disclosed that approximately 3,800 of its internal source code repositories were exfiltrated after an employee's device was compromised by a poisoned VS Code extension.","source_index":0,"when":"2026-05-19"},{"text":"GitHub linked the breach to the TanStack npm supply-chain attack and said the employee installed the Nx Console extension.","quote":"Update May 21: GitHub has now linked this breach to the TanStack npm supply-chain attack and says the employee installed a malicious version of the Nx Console extension.","source_index":2,"when":"2026-05-21"}]},"model":"claude-haiku-5-5","prompt_version":"backfill-2026-11-01.2","extracted_at":"2026-11-01","source_urls":["https://www.stepsecurity.io/blog/nx-console-vs-code-extension-compromised","https://www.infosecurity-magazine.com/news/github-confirms-breach-vs-code/","https://www.bleepingcomputer.com/news/security/github-confirms-breach-of-3-800-repos-via-malicious-vscode-extension/"]}}