TavernKeeper Scan Report

cspiritsong/STLorebookManipulator

Commit 4603b7c Reviewed

No material or immediate-danger concern was identified in this review.

This advisory report describes what the named tools and contextual reviewer found at one exact commit. Unknown or unobserved behavior may still exist.

0 immediate danger 0 material 2 low

What this review found

No material or immediate-danger item was identified.

Expected scanner matches (1)

OpenGrep reported tavernkeeper.dynamic-execution.node-shell

Expected behavior · high confidence

This is a test script that runs the project's own test files one by one. The list of files to run is fixed in the code, and no outside input is used to build the command, so there is no security risk here.

Technical evidence

Scanner reason: OpenGrep matched static-analysis rule tavernkeeper.dynamic-execution.node-shell in this repository.

Contextual assessment: The matched execSync call is in a test-runner script. The command string is built from a hardcoded list of test file names joined with the script's own directory path. No external or user-controlled input reaches the command argument, so there is no command injection surface. Running child node processes to execute test files is the normal purpose of a test harness.

Impact: none · Exploitability: unlikely

Developer action: none

Scanner
opengrep 1.26.0
Rule
tavernkeeper.dynamic-execution.node-shell
File role
test
Source
tests/run-tests.js:35-38

Related contextual observations

Hardcoded test file list used for child process execution

low risk · high confidence

The script only runs a fixed set of test files from its own folder. Nothing a user could influence ends up in the command, so this is safe.

Technical assessment

The tests array is a static list of file names. The only variable interpolated into the execSync command is testPath, derived from join(__dirname, test) where test comes from that static array. There is no path traversal or injection vector because no attacker-controlled data participates.

Impact: none · Exploitability: unlikely

Developer action: none

Sources:

Coverage and limitations

Tools

Limitations

Technical scan identity