TavernKeeper Scan Report

prolix-oc/Lumiverse-SimTracker

Commit 491a8d2 Reviewed

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

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

0 immediate danger 0 material 18 low

What this review found

No material or immediate-danger item was identified.

Minor cautions

OpenGrep reported tavernkeeper.dynamic-execution.javascript-eval

Minor caution · high confidence

Detailed wording was omitted by the public report safety filter.

Technical evidence

Scanner reason: OpenGrep matched static-analysis rule tavernkeeper.dynamic-execution.javascript-eval. The match applies to this repository.

Contextual assessment: Detailed technical wording was omitted by the public report safety filter.

Impact: low · Exploitability: plausible

Developer action: Review the cited evidence and confirm the intended behavior.

Scanner
opengrep 1.26.0
Rule
tavernkeeper.dynamic-execution.javascript-eval
File role
production
Source
src/frontend.ts:1078
Deterministic technical evidence (9)
  • Dependency advisory GHSA-xhpv-hc6g-r9c6:pkg:4114756074b3c1883ca427a6 applies · osv-scanner 2.4.0

    A dependency has a published security issue, though this scan does not show that the project exposes it to an attacker.

    Policy reason: osv-structured-advisory · Execution scope: unknown

    Source: bun.lock

  • Dependency advisory GHSA-xjpj-3mr7-gcpf:pkg:2c93c7ce30edf86304d17bbe applies · osv-scanner 2.4.0

    A dependency has a published security issue, though this scan does not show that the project exposes it to an attacker.

    Policy reason: osv-structured-advisory · Execution scope: unknown

    Source: bun.lock

  • Dependency advisory GHSA-3mfm-83xf-c92r:pkg:146840b9eb3231ae1d463c20 applies · osv-scanner 2.4.0

    A dependency has a published security issue, though this scan does not show that the project exposes it to an attacker.

    Policy reason: osv-structured-advisory · Execution scope: unknown

    Source: bun.lock

  • Dependency advisory GHSA-2qvq-rjwj-gvw9:pkg:bde04755dd174b8acbe6de92 applies · osv-scanner 2.4.0

    A dependency has a published security issue, though this scan does not show that the project exposes it to an attacker.

    Policy reason: osv-structured-advisory · Execution scope: unknown

    Source: bun.lock

  • Dependency advisory GHSA-442j-39wm-28r2:pkg:c54738cea96a333e19b8bd79 applies · osv-scanner 2.4.0

    A dependency has a published security issue, though this scan does not show that the project exposes it to an attacker.

    Policy reason: osv-structured-advisory · Execution scope: unknown

    Source: bun.lock

  • Dependency advisory GHSA-7rx3-28cr-v5wh:pkg:2d05cf734c06fd6d1e77b848 applies · osv-scanner 2.4.0

    A dependency has a published security issue, though this scan does not show that the project exposes it to an attacker.

    Policy reason: osv-structured-advisory · Execution scope: unknown

    Source: bun.lock

  • Dependency advisory GHSA-9cx6-37pm-9jff:pkg:ca52f57e7f6518348696e910 applies · osv-scanner 2.4.0

    A dependency has a published security issue, though this scan does not show that the project exposes it to an attacker.

    Policy reason: osv-structured-advisory · Execution scope: unknown

    Source: bun.lock

  • Dependency advisory GHSA-48c2-rrv3-qjmp:pkg:15fc6ff22ccf7f2f103da797 applies · osv-scanner 2.4.0

    A dependency has a published security issue, though this scan does not show that the project exposes it to an attacker.

    Policy reason: osv-structured-advisory · Execution scope: unknown

    Source: bun.lock

  • Dependency advisory GHSA-2w6w-674q-4c4q:pkg:d25708df68737694eb8e6977 applies · osv-scanner 2.4.0

    A dependency has a published security issue, though this scan does not show that the project exposes it to an attacker.

    Policy reason: osv-structured-advisory · Execution scope: unknown

    Source: bun.lock

Contextual expected matches (8)

JavaScript analysis reported javascript.xray.prototype-pollution

Expected behavior · high confidence

The code is actively blocking dangerous JavaScript prototype properties, not exploiting them. The scanner flagged the mention of these properties without recognizing they are being turned off for safety.

Technical evidence

Scanner reason: JavaScript analysis matched static JavaScript security signal javascript.xray.prototype-pollution. The match applies to this repository.

Contextual assessment: The flagged line shows a bundled dependency explicitly setting defaultPropertyWhiteList["__proto__"] = false and defaultMethodWhiteList["__defineSetter__"] = false. This is defensive whitelist code that blocks access to dangerous prototype properties, not a prototype-pollution sink. The scanner matched the literal __proto__ string without retaining the assignment-to-false context.

Impact: none · Exploitability: unlikely

Developer action: none

Scanner
javascript-analysis webcrack-2.16.0_js-x-ray-16.0.0_signatures-1_literals-1_families-1
Rule
javascript.xray.prototype-pollution
File role
generated
Source
dist/frontend.js:567

JavaScript analysis reported javascript.download-to-execution

Expected behavior · high confidence

The file contains both a network call to the local host (to check its version) and a template-rendering engine. These are separate, expected features of an extension that renders cards from templates, not a pipeline that downloads code and runs it.

Technical evidence

Scanner reason: JavaScript analysis matched static JavaScript security signal javascript.download-to-execution. The match applies to this repository.

Contextual assessment: The candidate spans the entire 18k-line bundled file. The network retrieval is a same-origin fetch to /api/v1/system/info with credentials: same-origin, used for host version compatibility checking. The code execution sink is Handlebars template compilation, which is the extension's stated purpose of rendering tracker cards from templates. These are independent capabilities coexisting in a large bundle, not a download-to-execution chain.

Impact: none · Exploitability: unlikely

Developer action: none

Scanner
javascript-analysis webcrack-2.16.0_js-x-ray-16.0.0_signatures-1_literals-1_families-1
Rule
javascript.download-to-execution
File role
generated
Source
dist/frontend.js:36-18578

JavaScript analysis reported javascript.xray.unsafe-regex

Expected behavior · high confidence

The flagged patterns are complex text-matching rules from a standard YAML library used to format and validate data. While complex rules can sometimes slow down processing, these come from a widely used library and any slowdown would only affect the user's own browser tab temporarily. No evidence shows they can be exploited to cause real harm.

Technical evidence

Scanner reason: JavaScript analysis matched static JavaScript security signal javascript.xray.unsafe-regex. The match applies to this repository.

Contextual assessment: The scanner flagged 9 occurrences of an unsafe-regex signal in the bundled yaml browser library's stringification and schema-test code. The visible regexes are part of standard YAML scalar type detection and block-string folding logic from the yaml npm package. They are applied to string values during serialization and parsing. No evidence demonstrates an attacker-controlled input path that triggers catastrophic backtracking on these specific patterns. Even if a pathological input caused excessive regex evaluation, the concrete harm would be a local tab freeze or slowdown, which is low impact per the threat model. These are well-established library patterns, not custom obfuscated regexes.

Impact: none · Exploitability: unlikely

Developer action: none

Scanner
javascript-analysis webcrack-2.16.0_js-x-ray-16.0.0_signatures-1_literals-1_families-1
Rule
javascript.xray.unsafe-regex
File role
generated
Source
dist/backend.js:7874

JavaScript analysis reported javascript.xray.obfuscated-code

Expected behavior · high confidence

The code at the top of the file is standard output from a build tool that packages JavaScript modules together. It is not designed to hide anything.

Technical evidence

Scanner reason: JavaScript analysis matched static JavaScript security signal javascript.xray.obfuscated-code. The match applies to this repository.

Contextual assessment: Line 1 shows standard bundler-generated CommonJS interop helpers (__create, __getProtoOf, __defProp, __getOwnPropNames, __hasOwnProp). This is typical output from esbuild, bun, or similar bundlers when packaging Node-style modules for the browser. The scanner has low confidence and the pattern is consistent with normal build output, not intentional obfuscation.

Impact: none · Exploitability: unlikely

Developer action: none

Scanner
javascript-analysis webcrack-2.16.0_js-x-ray-16.0.0_signatures-1_literals-1_families-1
Rule
javascript.xray.obfuscated-code
File role
generated
Source
dist/frontend.js:1

JavaScript analysis reported javascript.download-to-execution

Expected behavior · high confidence

The extension checks the local host's version using a same-origin network call and separately uses a template engine to render visual cards. Both are expected features for an extension whose stated job is to render tracker cards, and neither downloads executable code from the internet.

Technical evidence

Scanner reason: JavaScript analysis matched static JavaScript security signal javascript.download-to-execution. The match applies to this repository.

Contextual assessment: Detailed technical wording was omitted by the public report safety filter.

Impact: none · Exploitability: unlikely

Developer action: none

Scanner
javascript-analysis webcrack-2.16.0_js-x-ray-16.0.0_signatures-1_literals-1_families-1
Rule
javascript.download-to-execution
File role
production
Source
src/frontend.ts:107-1078

JavaScript analysis reported javascript.xray.unsafe-regex

Expected behavior · high confidence

The regular expressions flagged here are standard pattern-matching rules used by the template engine and YAML parser built into the extension. They are normal library code, not a security problem.

Technical evidence

Scanner reason: JavaScript analysis matched static JavaScript security signal javascript.xray.unsafe-regex. The match applies to this repository.

Contextual assessment: The flagged regexes are Handlebars lexer tokens and YAML schema type-test patterns (float, int, bool, null, timestamp). These are standard, bounded parsing expressions used by widely-used libraries. They operate on short scalar values during template parsing or YAML deserialization, not on attacker-controlled input of arbitrary length. No ReDoS-style catastrophic backtracking pattern is evident in the supplied context.

Impact: none · Exploitability: unlikely

Developer action: none

Scanner
javascript-analysis webcrack-2.16.0_js-x-ray-16.0.0_signatures-1_literals-1_families-1
Rule
javascript.xray.unsafe-regex
File role
generated
Source
dist/frontend.js:1848

JavaScript analysis reported javascript.xray.shady-link

Expected behavior · high confidence

The flagged strings are internal type identifiers used by the YAML parser to categorize data types. They look like web links to the scanner but are never used to connect to anything on the internet.

Technical evidence

Scanner reason: JavaScript analysis matched static JavaScript security signal javascript.xray.shady-link. The match applies to this repository.

Contextual assessment: The 51 occurrences are all instances of the standard YAML tag URI prefix tag:yaml.org,2002: used by the yaml library to identify scalar, mapping, sequence, and other built-in YAML types. These are schema identifiers embedded in the bundled yaml package, not network URLs or external links. No fetch, navigation, or network request is associated with these strings.

Impact: none · Exploitability: unlikely

Developer action: none

Scanner
javascript-analysis webcrack-2.16.0_js-x-ray-16.0.0_signatures-1_literals-1_families-1
Rule
javascript.xray.shady-link
File role
generated
Source
dist/frontend.js:12449

JavaScript analysis reported javascript.xray.shady-link

Expected behavior · high confidence

The flagged text is part of a standard YAML parsing library. The strings look like web addresses but are actually official YAML format identifiers used to label data types internally. They are not used to connect to any website or server.

Technical evidence

Scanner reason: JavaScript analysis matched static JavaScript security signal javascript.xray.shady-link. The match applies to this repository.

Contextual assessment: The scanner flagged 51 occurrences of a fixed signal matching string literals in the bundled yaml browser library. The matched values are standard YAML specification tag URIs such as tag:yaml.org,2002:str, tag:yaml.org,2002:map, tag:yaml.org,2002:int, and similar. These are specification-defined identifiers used as keys in schema tag-definition objects, not network endpoints. No fetch, XMLHttpRequest, WebSocket, or outbound network call references these strings. They serve as internal type identifiers for the YAML parser and serializer, which is a legitimate dependency for the project's stated purpose of accepting YAML-formatted tracker data.

Impact: none · Exploitability: unlikely

Developer action: none

Scanner
javascript-analysis webcrack-2.16.0_js-x-ray-16.0.0_signatures-1_literals-1_families-1
Rule
javascript.xray.shady-link
File role
generated
Source
dist/backend.js:7066

Coverage and limitations

JavaScript coverage

Unresolved JavaScript stages

Tools

Limitations

Technical scan identity