Skip to main content
Scans/npm/@pendo/agent

@pendo/agent

npm

Share

Summary

@pendo/agent v2.316.0 was classified as CRITICAL RISK with a risk score of 2246.5. Sigil detected 135 findings across 15 files, covering phases including provenance, code patterns, obfuscation, install hooks, network exfiltration. Review the findings below before installing this package.

CRITICAL RISK(2246.5)

v2.316.0

26 March 2026, 22:20 UTC

by Sigil Bot

Risk Score

2246.5

Findings

135

Files Scanned

15

Provenance

Findings by Phase

Phase Ordering

Phases are ordered by criticality, with the most dangerous at the top. Click any phase header to expand or collapse its findings. Critical phases are expanded by default.

install-pip-setup-exec

CRITICAL

setup.py executes code at install time

package/dist/pendo.debugger.min.js:4

*/
!function(){"use strict";function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,o=Array(t);n<t;n++)o[n]=e[n];return o}function d(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function c(e,t,n,o,i,r,a){try{var s=e[r](a),l=s.value}catch(e){return n(e)}s.done?t(l):Promise.resolve(l).then(o,i)}function h(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function u(e,t){for(var n=0;n<t.lengt
Why was this flagged?

This setup.py calls subprocess, os.system, exec, or eval during package installation. Legitimate packages rarely need to execute arbitrary commands at install time. This pattern is commonly used by malicious packages to download and run payloads, exfiltrate environment variables, or establish persistence. Rated CRITICAL because it runs with the installer's full permissions.

install-pip-setup-exec

CRITICAL

setup.py executes code at install time

package/dist/pendo.debugger.min.js:6

                Loading...
            `,-1)),t[5]||(t[5]=Ee()),Me("rect",{style:Re({fill:`url(#${r.gradientId})`}),"clip-path":`url(#${r.clipId})`,width:"100%",height:"100%",x:"0",y:"0"},null,12,Y5),t[6]||(t[6]=Ee()),Me("defs",null,[Me("clipPath",{id:r.clipId},[Me("rect",{width:"100%",height:"100%",rx:n.skeletonProps.borderRadius+"px",ry:n.skeletonProps.borderRadius+"px",x:"0",y:"0"},null,8,K5)],8,X5),t[3]||(t[3]=Ee()),Me("linearGradient",{id:r.gradientId,gradientTransform:"translate(-2 0)"},[M
Why was this flagged?

This setup.py calls subprocess, os.system, exec, or eval during package installation. Legitimate packages rarely need to execute arbitrary commands at install time. This pattern is commonly used by malicious packages to download and run payloads, exfiltrate environment variables, or establish persistence. Rated CRITICAL because it runs with the installer's full permissions.

install-pip-setup-exec

CRITICAL

setup.py executes code at install time

package/dist/pendo.module.js:40853

        let isAdvanceIntercepted = false;
        const branchingQuestions = initialBranchingSetup(step, pendo);
        if (branchingQuestions) {
Why was this flagged?

This setup.py calls subprocess, os.system, exec, or eval during package installation. Legitimate packages rarely need to execute arbitrary commands at install time. This pattern is commonly used by malicious packages to download and run payloads, exfiltrate environment variables, or establish persistence. Rated CRITICAL because it runs with the installer's full permissions.

install-pip-setup-exec

CRITICAL

setup.py executes code at install time

package/dist/pendo.module.js:40970

};
function initialBranchingSetup(step, pendo) {
    const questions = step.guideElement.find('._pendo-multi-choice-poll-question:contains("{branching/}")');
Why was this flagged?

This setup.py calls subprocess, os.system, exec, or eval during package installation. Legitimate packages rarely need to execute arbitrary commands at install time. This pattern is commonly used by malicious packages to download and run payloads, exfiltrate environment variables, or establish persistence. Rated CRITICAL because it runs with the installer's full permissions.

install-pip-setup-exec

CRITICAL

setup.py executes code at install time

package/dist/pendo.module.min.js:36

                outline-color: red !important;
            }`)}function v(e){var t,n,i,r,o,a,s,e=e["target"];"INPUT"===e.tagName&&(t=b(e))&&d&&(d.attributes.validationHidden=!1,d.domJson||(n=u.rules[0],i=RS("context-"+u.id,u.context),n=null!=n&&n.type?function(e,t){return{props:{id:"rule-"+e,"class":"text-row",style:{display:"flex","align-items":"center"}},children:[RS(e,t)],type:"div"}}(n.id,n.ruleText):null,0!==(i=[i,n].filter(Boolean)).length&&(n=ve(_S),r=ve(CS),o=ve(xS),a=ve(TS),s=ve(kS),n.c
Why was this flagged?

This setup.py calls subprocess, os.system, exec, or eval during package installation. Legitimate packages rarely need to execute arbitrary commands at install time. This pattern is commonly used by malicious packages to download and run payloads, exfiltrate environment variables, or establish persistence. Rated CRITICAL because it runs with the installer's full permissions.

install-pip-setup-exec

CRITICAL

setup.py executes code at install time

package/dist/pendo.module.min.js:54

                name="${e.dataset.pendoPollId}">
                * Branching Error: Multiple branching polls not supported</div>`),i.dom(`#${e.id} #pendo-ps-branching-svg`).remove(),i.dom(`#${e.id} p`).css({display:"inline-block !important"}).append(r("red","20px")).attr({title:"Unsupported Branching configuration"}))})})}).observe(e,{attributeFilter:["data-layout"],attributes:!0,childList:!0,characterData:!0,subtree:!0})}};function initialBranchingSetup(n,i){var e=n.guideElement.find('._pendo-m
Why was this flagged?

This setup.py calls subprocess, os.system, exec, or eval during package installation. Legitimate packages rarely need to execute arbitrary commands at install time. This pattern is commonly used by malicious packages to download and run payloads, exfiltrate environment variables, or establish persistence. Rated CRITICAL because it runs with the installer's full permissions.

Badge

Sigil scan badge for npm/@pendo/agent

Markdown

[![Sigil Scan](https://sigilsec.ai/badge/npm/@pendo/agent)](https://sigilsec.ai/scans/DC4099FE-5BAA-4B6F-A556-3BACC47FDD46)

HTML

<a href="https://sigilsec.ai/scans/DC4099FE-5BAA-4B6F-A556-3BACC47FDD46"><img src="https://sigilsec.ai/badge/npm/@pendo/agent" alt="Sigil Scan"></a>

Run This Scan Yourself

Scan your own packages

Run Sigil locally to audit any package before it touches your codebase.

curl -sSL https://sigilsec.ai/install.sh | sh
Read the docs →Free. Apache 2.0.

Early Access

Get cloud scanning, threat intel, and CI/CD integration.

Join 150+ developers on the waitlist.

Get threat intelligence and product updates

Security research, new threat signatures, and product updates. No spam.

Other npm scans

Believe this result is incorrect? Request a review or see our Terms of Service and Methodology.

Scanned bySigil Bot