@servicetitan/titan-chatbot-ui-cypress@9.0.5
Malicious code in @servicetitan/titan-chatbot-ui-cypress (npm)
Analysis
The package @servicetitan/titan-chatbot-ui-cypress@9.0.5 is a trojanized Cypress helper package. The preinstall hook (setup.mjs) downloads the Bun JavaScript runtime from github[.]com/oven-sh/bun/releases, then executes a 727KB heavily-obfuscated JavaScript file (math_init.js) through the downloaded binary. The obfuscated payload uses the javascript-obfuscator dictionary-array pattern with thousands of _0x-prefixed identifiers and a base64-like decode function, making static analysis of its runtime behaviour infeasible. The package also depends on two other packages (@servicetitan/titan-chat-ui-common, @servicetitan/titan-chatbot-api) that are themselves confirmed malware, indicating a coordinated supply-chain compromise of the ServiceTitan npm namespace.
- analyzed by
- Leitwacht
- first seen
- Aug 4, 2026, 11:25 AM
- analyzed
- Aug 4, 2026, 11:36 AM
Related advisories
- @servicetitan/anvil-token@0.4.4
- @servicetitan/cp-mfe-dev@1.115.4
- @servicetitan/grid@0.0.66
- @servicetitan/carto-charts-react@0.0.6
- @servicetitan/titan-chat-ui-anvil2@9.0.5
- @servicetitan/eh-module-communication@0.2.5
- @servicetitan/carto-charts-rn@0.0.6
- @servicetitan/anvil-react@0.11.7
Independently detected by the Leitwacht supply-chain probe. IOCs are defanged. Published CC0. Think this is a mistake? See the dispute policy.