registry  /  matterbridge-roborock-vacuum-plugin  /  1.1.7

matterbridge-roborock-vacuum-plugin@1.1.7

Matterbridge Roborock Vacuum Plugin

Static Scan Results

scanned 1h ago · by rust-scanner

Static analysis flagged 21 finding(s) at 72.0% confidence. This version is warn-only unless an AI or security-team review confirms malicious behavior.

Static reason
One or more suspicious static signals were detected.

Decision evidence

public snapshot
Behavioral surface
Source
ChildProcessCryptoDynamicRequireFilesystemNetworkShell
Supply chain
HighEntropyStringsUrlStrings
ManifestNo manifest risk signals triggered.
scanned 476 file(s), 2.04 MB of source, external domains: another-api.roborock.com, api-eu.roborock.com, api-us.roborock.com, api.example, api.example.com, api.roborock.com, base.url, cached.url, cniot.example.com, cniot.roborock.com, custom-api.roborock.com, default.com, euiot.example.com, euiot.roborock.com, files.roborock.com, github.com, ruiot.example.com, ruiot.roborock.com, test.com, test.roborock.com, test.url, usiot.example.com, usiot.roborock.com, wood-eu.roborock.com, wood-us.roborock.com

Source & flagged code

15 flagged · loading source
dist/services/authenticationService.jsView file
61patternName = generic_password severity = medium line = 61 matchedText = this.log... });
Medium
Secret Pattern

Package contains a possible secret pattern.

dist/services/authenticationService.jsView on unpkg · L61
scripts/run-lint-fix-summary.mjsView file
1/* eslint-disable no-console, n/no-process-exit */ L2: import { spawnSync } from 'node:child_process'; L3:
High
Child Process

Package source references child process execution.

scripts/run-lint-fix-summary.mjsView on unpkg · L1
7return spawnSync(command, { L8: shell: true, L9: encoding: 'utf8',
High
Shell

Package source references shell execution.

scripts/run-lint-fix-summary.mjsView on unpkg · L7
dist/types/roborockVacuumCleaner.jsView file
46[redacted](supportedAreas, selectedAreas, currentArea, supportedMaps) { L47: this.behaviors.require(RoborockServiceAreaServer.with(ServiceArea.Feature.Maps, ServiceArea.Feature.ProgressReporting), { L48: supportedAreas: supportedAreas ?? [
Medium
Dynamic Require

Package source references dynamic require/import behavior.

dist/types/roborockVacuumCleaner.jsView on unpkg · L46
dist/roborockCommunication/map/b01/b01MapParser.jsView file
19} L20: const decoded = this.decodeBase64IfNeeded(rawBuffer); L21: const decrypted = this.decryptIfNeeded(decoded, modelShortCode, serial); ... L95: const matrixBytes = roomMatrixRaw?.matrix; L96: const roomMatrix = Buffer.isBuffer(matrixBytes) && matrixBytes.length > 0 ? { data: matrixBytes } : undefined; L97: if (!roomDataInfo || roomDataInfo.length === 0) {
Low
Weak Crypto

Package source references weak cryptographic algorithms.

dist/roborockCommunication/map/b01/b01MapParser.jsView on unpkg · L19
scripts/run-format-summary.mjsView file
6L7: const { status, stdout, stderr } = spawnSync(`npx prettier --write "${GLOB}"`, { L8: shell: true,
High
Runtime Package Install

Package source invokes a package manager install command at runtime.

scripts/run-format-summary.mjsView on unpkg · L6
.cursor/statusline.shView file
path = .cursor/statusline.sh kind = payload_in_excluded_dir sizeBytes = 1907 magicHex = [redacted]
High
Payload In Excluded Dir

Package hides binary, compressed, or executable-looking payloads in test/fixture/hidden paths.

.cursor/statusline.shView on unpkg
path = .cursor/statusline.sh kind = build_helper sizeBytes = 1907 magicHex = [redacted]
Medium
Ships Build Helper

Package ships non-JavaScript build or shell helper files.

.cursor/statusline.shView on unpkg
dist/constants/sensitiveDataRegexReplacements.jsView file
17patternName = generic_password severity = medium line = 17 matchedText = // passw...ord'
Medium
Secret Pattern

Hardcoded password in dist/constants/sensitiveDataRegexReplacements.js

dist/constants/sensitiveDataRegexReplacements.jsView on unpkg · L17
dist/tests/services/roborockService/roborockService.coverage.test.jsView file
88patternName = generic_password severity = medium line = 88 matchedText = password...ss',
Medium
Secret Pattern

Hardcoded password in dist/tests/services/roborockService/roborockService.coverage.test.js

dist/tests/services/roborockService/roborockService.coverage.test.jsView on unpkg · L88
dist/tests/services/roborockService/roborockService.authentication.test.jsView file
32patternName = generic_password severity = medium line = 32 matchedText = password...23',
Medium
Secret Pattern

Hardcoded password in dist/tests/services/roborockService/roborockService.authentication.test.js

dist/tests/services/roborockService/roborockService.authentication.test.jsView on unpkg · L32
dist/tests/services/roborockService.test.jsView file
94patternName = generic_password severity = medium line = 94 matchedText = password...ss',
Medium
Secret Pattern

Hardcoded password in dist/tests/services/roborockService.test.js

dist/tests/services/roborockService.test.jsView on unpkg · L94
172patternName = generic_password severity = medium line = 172 matchedText = password...ss',
Medium
Secret Pattern

Hardcoded password in dist/tests/services/roborockService.test.js

dist/tests/services/roborockService.test.jsView on unpkg · L172
179patternName = generic_password severity = medium line = 179 matchedText = password...ss',
Medium
Secret Pattern

Hardcoded password in dist/tests/services/roborockService.test.js

dist/tests/services/roborockService.test.jsView on unpkg · L179
200patternName = generic_password severity = medium line = 200 matchedText = password...ss',
Medium
Secret Pattern

Hardcoded password in dist/tests/services/roborockService.test.js

dist/tests/services/roborockService.test.jsView on unpkg · L200

Findings

4 High12 Medium5 Low
HighChild Processscripts/run-lint-fix-summary.mjs
HighShellscripts/run-lint-fix-summary.mjs
HighRuntime Package Installscripts/run-format-summary.mjs
HighPayload In Excluded Dir.cursor/statusline.sh
MediumSecret Patterndist/services/authenticationService.js
MediumDynamic Requiredist/types/roborockVacuumCleaner.js
MediumNetwork
MediumShips Build Helper.cursor/statusline.sh
MediumStructural Risk Force Deep Review
MediumSecret Patterndist/constants/sensitiveDataRegexReplacements.js
MediumSecret Patterndist/tests/services/roborockService/roborockService.coverage.test.js
MediumSecret Patterndist/tests/services/roborockService/roborockService.authentication.test.js
MediumSecret Patterndist/tests/services/roborockService.test.js
MediumSecret Patterndist/tests/services/roborockService.test.js
MediumSecret Patterndist/tests/services/roborockService.test.js
MediumSecret Patterndist/tests/services/roborockService.test.js
LowScripts Present
LowWeak Cryptodist/roborockCommunication/map/b01/b01MapParser.js
LowFilesystem
LowHigh Entropy Strings
LowUrl Strings