AI Security Review
scanned 9d ago · by lpm-firewall-aiNo confirmed malicious attack surface was established. The package is a browser eKYC UI SDK with bundled dependencies and package-aligned model/font resource references.
Static reason
High-risk behavior combination matched malicious policy.
Trigger
Runtime import and explicit PWUISDK.init usage by an application
Impact
No install-time execution, unauthorized mutation, credential theft, persistence, or destructive behavior found.
Mechanism
browser eKYC UI SDK resource loading and user-invoked identity submission flow
Rationale
Static source inspection found packaging hygiene issues and normal runtime network/resource references, but no concrete malicious install-time, import-time, exfiltration, persistence, or destructive behavior. The package should be marked clean for the firewall.
Evidence
package.jsonREADME.md.env.production.env.developmentdist/pw-bundle.jsdist/pw-bundle.js.LICENSE.txt
Network endpoints6
assets.pipwave.com/ekyc/sdk/face-modelsassets.pipwave.com/ekyc/sdk/card-modelsassets.pipwave.com/ekyc/sdk/ortfonts.googleapis.com/css2?family=Roboto+Flex:ital,wght@0,400;0,600;1,400;1,600&display=swapfonts.googleapis.com/icon?family=Material+Iconsfonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200
Decision evidence
public snapshotAI called this Clean at 84.0% confidence as Benign with high false-positive risk.
Evidence for block
- .env.production is shipped and contains production model asset URLs for Pipwave eKYC resources.
- dist/pw-bundle.js loads Google Fonts/Material Icons CSS and bundled browser SDK/runtime code over normal browser APIs.
Evidence against
- package.json has no preinstall/install/postinstall hooks and no bin entry.
- main points to dist/pw-bundle.js, a webpack UMD browser SDK bundle exporting PWUISDK.
- README.md describes an eKYC UI that collects ID/selfie data only after integrator supplies an accessToken and initializes the SDK.
- No source evidence of credential/env harvesting, shell execution, filesystem mutation, persistence, destructive behavior, or AI-agent control-surface writes.
- The scanner protestware hit is not supported by inspected source context; matches appear inside a large bundled dependency/artifact rather than an attack path.
Behavioral surface
ChildProcessEvalNetwork
HighEntropyStringsMinifiedObfuscatedProtestwareTrivialUrlStrings
Oversized source lightweight scan
dist/pw-bundle.js2.87 MB file, sampled 256 KB
NetworkChildProcessEvalObfuscatedHighEntropyStringsMinifiedUrlStringsProtestwaredbushell.comfonts.googleapis.comnicolasgallagher.com
Source & flagged code
2 flagged · loading source.env.productionView file
•patternName = blocked_file
severity = critical
matchedText = .env.production
redactedSecretContext =
secretLikeLines = 0
notes = no secret-like key/value lines found in sampled text
Critical
dist/pw-bundle.jsView file
•path = dist/pw-bundle.js
kind = oversized_source_file
sizeBytes = 3014444
magicHex = [redacted]
High
Oversized Source File
Package contains source files above the static scanner size ceiling.
dist/pw-bundle.jsView on unpkgFindings
2 Critical1 High2 Medium5 Low
CriticalCritical Secret.env.production
CriticalProtestware
HighOversized Source Filedist/pw-bundle.js
MediumNetwork
MediumStructural Risk Force Deep Review
LowScripts Present
LowEval
LowObfuscated
LowHigh Entropy Strings
LowUrl Strings