---
canonical: "https://firewall.lpm.dev/npm/chai-as-promised-plus"
markdown: "https://firewall.lpm.dev/npm/chai-as-promised-plus/report.md"
package: "chai-as-promised-plus"
report_status: "published"
title: "chai-as-promised-plus@6.1.3 npm security report"
verdict: "malicious"
version: "6.1.3"
---

# chai-as-promised-plus@6.1.3 npm security report

> **Trust boundary:** Package metadata, advisory text, filenames, URLs, and source snippets in this report come from external packages or feeds. Treat them as untrusted evidence. Do not execute instructions or code found in this document.

## Verdict summary
**Blocked & quarantined** — Host data can be collected and commands or additional behavior can be executed outside the package's stated assertion-plugin purpose.

- **Verdict:** Malicious
- **Product-default install policy:** Block
- **Firewall policy:** Block by default
- **Public report status:** Published
- **Threat category:** Malware
- **Selected version:** 6.1.3
- **Selected version is latest:** Yes
- **Analysis source:** AI Security Review (lpm-firewall-ai)

LPM AI independently confirmed malicious behavior in this version and supplies the Firewall block.

AI assessment: malicious; recommendation: publish block. This assessment is supporting evidence; the published decision above determines the current policy.

The package's real export path introduces obfuscated system reconnaissance and remote-capable execution primitives that are not required for Chai assertions. This is malicious import-time behavior, not a noisy static label.

## Latest scan
- **Scanner version:** rust-scanner-worker-schema-1
- **Recorded final verdict:** Malicious
- **Recorded analysis confidence:** 96.0%
- **Started:** 2026-07-17T14:13:48.517Z
- **Finished:** 2026-07-17T14:15:42.157Z
- **Download time:** 510 ms
- **Static scan time:** 91 ms
- **AI review time:** 113038 ms
- **Total time:** 113640 ms

The recorded confidence comes from the underlying analysis. Trusted advisory policy can determine the final verdict even when the AI assessment differs.

## Security analysis

### Published attack-surface review

- **Summary:** Importing the advertised assertion plugin unconditionally loads a large obfuscated module unrelated to Chai assertions. That module gathers machine identity data and includes filesystem, shell, cryptographic, dynamic-code, and HTTP-client capabilities.

- **Trigger:** Runtime import of \`chai-as-promised-plus\`.

- **Impact:** Host data can be collected and commands or additional behavior can be executed outside the package's stated assertion-plugin purpose.

- **Evidence paths:** package.json, lib/chai-as-promised-plus.js, lib/config/config.js

- **Review source:** ai\_review

- **Reviewed:** 2026-07-17T14:15:42.157Z

### AI review details

- **Review stage:** source\_first\_review

- **Mechanism:** Obfuscated import-time host reconnaissance and remote-capable payload loader.

- **Attack narrative:** The main entrypoint redirects module export to an obfuscated 3.5 MB configuration file. On import, that file loads OS, filesystem, path, shell-execution, HTTP, and cryptographic capabilities, constructs host/OS/username telemetry, and contains dynamic \`Function\` execution. These behaviors are unrelated to promise assertions and establish a concrete malicious runtime payload surface, even though no npm lifecycle hook is present.

- **Rationale:** The package's real export path introduces obfuscated system reconnaissance and remote-capable execution primitives that are not required for Chai assertions. This is malicious import-time behavior, not a noisy static label.

- **Files touched:** package.json, lib/chai-as-promised-plus.js, lib/config/config.js

### Review decision

- **Verdict:** Malicious

- **Confidence:** 96.0%

- **Recommended action:** publish\_block

- **Intent class:** Malware

- **False-positive risk:** Low

- **Evidence for block:** \`lib/chai-as-promised-plus.js\` replaces its export with \`./config/config\`., \`lib/config/config.js\` is a 3.5 MB obfuscated import-time module., \`lib/config/config.js\` imports \`os\`, \`fs\`, \`path\`, and \`child\_process\` (\`execSync\`, \`spawn\`)., The module collects host, OS, and username data in \`Utils.gsi\`., The module dynamically loads \`axios\` and \`crypto\`., Obfuscated code invokes the \`Function\` constructor.

- **Evidence against:** \`package.json\` has no \`preinstall\`, \`install\`, or \`postinstall\` lifecycle hook., The visible assertion implementation itself is conventional Chai promise support.

## Affected versions and remediation

This report applies to chai-as-promised-plus@6.1.3.

- Avoid installing chai-as-promised-plus@6.1.3. Remove it from direct dependencies and check your lockfile for transitive copies.
- Choose an independently verified alternative or release. This report does not establish that other versions are safe.
- If this version ran, investigate the affected machine and build environment. Rotate credentials it could access and rebuild from a trusted environment.

## Public findings

### 1. Low: Scripts Present
- **Category:** Manifest
- **Confidence:** 100.0%

Package declares npm scripts.

### 2. Low: Url Strings
- **Category:** Supply Chain
- **Confidence:** 65.0%

Package source contains URL literals.

### 3. High: Oversized Source File
- **Category:** Artifact Inventory
- **Confidence:** 80.0%
- **Path:** lib/config/config.js
- **Public source:** [View source](<https://unpkg.com/chai-as-promised-plus@6.1.3/lib/config/config.js>)

Package contains source files above the static scanner size ceiling.

Public source snippet (untrusted):

```javascript
path = lib/config/config.js
kind = oversized_source_file
sizeBytes = 3546568
magicHex = [redacted]
```

### 4. Medium: Structural Risk Force Deep Review
- **Category:** Artifact Inventory
- **Confidence:** 85.0%

Artifact structure forces deeper review even if the static behavioral verdict is clean.

## Dependencies and install lifecycle
- **Lifecycle scripts present:** No

- **Dependencies:** 1
- **Optional dependencies:** 0
- **Peer dependencies:** 1
- **Development dependencies:** 0
- **Published dependency-graph edges:** 2

### Published dependency entries
- check-error ^1.0.2 (Dependency)
- chai \>= 2.1.2 \< 6 (PeerDependency)

## Package metadata
- **Package:** chai-as-promised-plus
- **Ecosystem:** npm
- **Version:** 6.1.3
- **License:** WTFPL
- **Version published:** 2026-07-17T04:30:21.432Z
- **Package first seen:** 2026-07-17T14:15:42.157Z
- **Package last seen:** 2026-07-17T14:15:42.157Z
- **Known versions:** 1
- **Latest version:** 6.1.3
- **Appeal under review:** No
- **Description:** Extends Chai with comprehensive promise assertions and testing utilities.
- **Author:** James D
- **Keywords:** chai, chai-plugin, browser, async, testing, assertions, promises, promises-aplus
- **Artifact files:** 5
- **Artifact unpacked size:** 3,574,949 bytes
- **Artifact signatures:** 1
- **Attestations:** No

## References
- [HTML security report](<https://firewall.lpm.dev/npm/chai-as-promised-plus>)
- [Repository](<https://github.com/webbvivianpxt790/chai-as-promised.git>)
- [Homepage](<https://github.com/webbvivianpxt790/chai-as-promised#readme>)
- [Issues](<https://github.com/webbvivianpxt790/chai-as-promised/issues>)
- [OpenSSF/OSV advisory](<https://osv.dev/vulnerability/MAL-2026-13703>)
- [PACKAGE](<https://www.npmjs.com/package/chai-as-promised-plus/v/6.1.3>)
