CRIT
generic-api-key
Detected a Generic API Key, potentially exposing access to various services and sensitive…
test/test-api.js:102
CRIT
SEC001
[SEC001] Hardcoded Password: Hardcoded password found in source code.
tools/installer/locales/cli/en.sh:58
CRIT
SEC001
[SEC001] Hardcoded Password: Hardcoded password found in source code.
tools/installer/locales/cli/de.sh:58
CRIT
SEC001
[SEC001] Hardcoded Password: Hardcoded password found in source code.
tools/installer/locales/cli/cs.sh:58
CRIT
MINED116
Workflow uses `secrets.CLAUDE_CODE_OAUTH_TOKEN` on a `pull_request` trigger
.github/workflows/claude-code-review.yml:38
HIGH
SEC040
[SEC040] innerHTML XSS — template literal with server-supplied data: Setting .innerHTML w…
server/services/search.js:23
HIGH
SEC085
[SEC085] JS: child_process.exec with non-literal: child_process.exec with user-derived in…
tools/installer/i18n-mini.js:93
HIGH
SEC085
[SEC085] JS: child_process.exec with non-literal: child_process.exec with user-derived in…
server/services/ics-parser.js:28
HIGH
SEC135
[SEC135] Auth/permission check missing on AI-generated endpoint: Mutating HTTP endpoint g…
server/routes/notes.js:42
HIGH
SEC135
[SEC135] Auth/permission check missing on AI-generated endpoint: Mutating HTTP endpoint g…
server/routes/cardav.js:38
HIGH
SEC135
[SEC135] Auth/permission check missing on AI-generated endpoint: Mutating HTTP endpoint g…
server/routes/birthdays.js:68
HIGH
SEC036
[SEC036] HTTP Header Injection / CRLF Injection: Setting an HTTP response header from use…
server/middleware/csrf.js:48
HIGH
SEC029
[SEC029] Server-Side Request Forgery (SSRF) — outbound HTTP from user input: Outbound HTT…
server/services/modules.js:54
HIGH
SEC029
[SEC029] Server-Side Request Forgery (SSRF) — outbound HTTP from user input: Outbound HTT…
server/services/ics-subscription.js:28
HIGH
SEC029
[SEC029] Server-Side Request Forgery (SSRF) — outbound HTTP from user input: Outbound HTT…
public/sw.js:188
HIGH
SEC128
[SEC128] Async function without await — fire-and-forget Promise (AI mistake): Async call …
server/routes/weather.js:135
HIGH
SEC128
[SEC128] Async function without await — fire-and-forget Promise (AI mistake): Async call …
public/sw.js:137
HIGH
SEC128
[SEC128] Async function without await — fire-and-forget Promise (AI mistake): Async call …
public/reminders.js:210
HIGH
MINED115
Action `actions/setup-node` pinned to mutable ref `@v4`
.github/workflows/truenas-publish.yml:41
HIGH
MINED115
Action `actions/checkout` pinned to mutable ref `@v4`
.github/workflows/truenas-publish.yml:32
HIGH
MINED115
Action `actions/checkout` pinned to mutable ref `@v4`
.github/workflows/truenas-publish.yml:26
HIGH
MINED115
Action `anthropics/claude-code-action` pinned to mutable ref `@v1`
.github/workflows/claude.yml:35
HIGH
MINED115
Action `actions/checkout` pinned to mutable ref `@v4`
.github/workflows/claude.yml:29
HIGH
MINED115
Action `actions/setup-node` pinned to mutable ref `@v4`
.github/workflows/ci.yml:25
HIGH
MINED115
Action `actions/checkout` pinned to mutable ref `@v4`
.github/workflows/ci.yml:22
HIGH
MINED115
Action `actions/checkout` pinned to mutable ref `@v6`
.github/workflows/docker-publish.yml:23
HIGH
MINED115
Action `anthropics/claude-code-action` pinned to mutable ref `@v1`
.github/workflows/claude-code-review.yml:36
HIGH
MINED115
Action `actions/checkout` pinned to mutable ref `@v4`
.github/workflows/claude-code-review.yml:30
HIGH
MINED118
Dockerfile FROM `node:22-slim` not pinned by digest
Dockerfile:18
HIGH
MINED118
Dockerfile FROM `node:22-slim` not pinned by digest
Dockerfile:1
HIGH
MINED113
Express DELETE /:listId/items/checked has no auth
server/routes/shopping.js:440
HIGH
MINED113
Express POST /:listId/items has no auth
server/routes/shopping.js:403
HIGH
MINED113
Express DELETE /:listId has no auth
server/routes/shopping.js:351
HIGH
MINED113
Express PUT /:listId has no auth
server/routes/shopping.js:325
HIGH
MINED113
Express POST / has no auth
server/routes/shopping.js:300
HIGH
MINED113
Express DELETE /items/:itemId has no auth
server/routes/shopping.js:256
HIGH
MINED113
Express PATCH /items/:itemId has no auth
server/routes/shopping.js:215
HIGH
MINED113
Express PATCH /categories/reorder has no auth
server/routes/shopping.js:167
HIGH
MINED113
Express DELETE /categories/:catId has no auth
server/routes/shopping.js:128
HIGH
MINED113
Express PUT /categories/:catId has no auth
server/routes/shopping.js:87
HIGH
MINED113
Express POST /categories has no auth
server/routes/shopping.js:53
HIGH
MINED113
Express POST /maintenance-log has no auth
server/routes/housekeeping.js:1052
HIGH
MINED113
Express POST /supply-requests has no auth
server/routes/housekeeping.js:1010
HIGH
MINED113
Express DELETE /decay-tasks/:taskId has no auth
server/routes/housekeeping.js:997
HIGH
MINED113
Express POST /decay-tasks/:taskId/complete has no auth
server/routes/housekeeping.js:981
HIGH
MINED113
Express PATCH /decay-tasks/:taskId has no auth
server/routes/housekeeping.js:951
HIGH
MINED113
Express POST /decay-tasks has no auth
server/routes/housekeeping.js:927
HIGH
MINED113
Express POST /work-sessions/check-out has no auth
server/routes/housekeeping.js:869
HIGH
MINED113
Express DELETE /visits/:id has no auth
server/routes/housekeeping.js:852
HIGH
MINED113
Express POST /visits/:id/pay has no auth
server/routes/housekeeping.js:831
HIGH
MINED113
Express PUT /visits/:id has no auth
server/routes/housekeeping.js:763
HIGH
MINED113
Express POST /work-sessions/check-in has no auth
server/routes/housekeeping.js:678
HIGH
MINED113
Express POST /worker has no auth
server/routes/housekeeping.js:499
HIGH
MINED113
Express POST /setup has no auth
server/auth.js:645
HIGH
MINED113
Express POST /login has no auth
server/auth.js:460
HIGH
AUC003
[AUC003] Object-level route lacks visible authorization: A route with an object id-like p…
server/routes/shopping.js:371
HIGH
AUC003
[AUC003] Object-level route lacks visible authorization: A route with an object id-like p…
server/routes/shopping.js:351
HIGH
AUC003
[AUC003] Object-level route lacks visible authorization: A route with an object id-like p…
server/routes/shopping.js:325
HIGH
AUC003
[AUC003] Object-level route lacks visible authorization: A route with an object id-like p…
server/routes/shopping.js:256
HIGH
AUC003
[AUC003] Object-level route lacks visible authorization: A route with an object id-like p…
server/routes/shopping.js:215
HIGH
AUC003
[AUC003] Object-level route lacks visible authorization: A route with an object id-like p…
server/routes/shopping.js:128
HIGH
AUC003
[AUC003] Object-level route lacks visible authorization: A route with an object id-like p…
server/routes/shopping.js:87
HIGH
AUC003
[AUC003] Object-level route lacks visible authorization: A route with an object id-like p…
server/routes/housekeeping.js:997
HIGH
AUC003
[AUC003] Object-level route lacks visible authorization: A route with an object id-like p…
server/routes/housekeeping.js:981
HIGH
AUC003
[AUC003] Object-level route lacks visible authorization: A route with an object id-like p…
server/routes/housekeeping.js:951
MED
SEC045
[SEC045] eval()/exec() on stored or user-supplied data: eval() and exec() on data — even …
tools/installer/i18n-mini.js:93
MED
SEC045
[SEC045] eval()/exec() on stored or user-supplied data: eval() and exec() on data — even …
server/services/ics-parser.js:28
MED
SEC031
[SEC031] Catastrophic Backtracking Regex (ReDoS): Regex contains nested quantifiers like …
server/services/ics-parser.js:31
MED
SEC105
[SEC105] Cookie missing HttpOnly/Secure flag: Session cookie missing HttpOnly (allows JS …
server/middleware/csrf.js:39
MED
ERR002
[ERR002] Empty Catch Block: Empty catch blocks hide errors.
public/sw.js:224
MED
ERR002
[ERR002] Empty Catch Block: Empty catch blocks hide errors.
public/sw-register.js:33
MED
ERR002
[ERR002] Empty Catch Block: Empty catch blocks hide errors.
public/pages/login.js:124
MED
DKR003
Compose service `oikos` image uses the latest tag
docker-compose.yml:1
MED
AUC001
[AUC001] No Repobility access matrix policy found: The repository uses web/API frameworks…
—
MED
WEB004
robots.txt blocks the full public site
public/robots.txt
MED
DKR001
Docker final stage has no non-root USER
Dockerfile:18
MED
DKC000
Docker Compose file could not be parsed
deploy/truenas/templates/docker-compose…
MED
AGT007
localStorage write failures are swallowed silently
public/router.js:172
MED
AGT007
localStorage write failures are swallowed silently
public/pages/tasks.js:1334
MED
AGT007
localStorage write failures are swallowed silently
public/pages/setup.js:112
MED
AGT007
localStorage write failures are swallowed silently
public/pages/settings.js:247
MED
AGT007
localStorage write failures are swallowed silently
public/pages/login.js:124
MED
AGT007
localStorage write failures are swallowed silently
public/pages/calendar.js:369
MED
WEB003
Public web service has no security.txt
.well-known/security.txt
MED
DKR014
Dockerfile copies broad context with incomplete .dockerignore
Dockerfile:31
MED
JRN003
Frontend API reference is not matched by discovered backend routes
server/index.js:296
MED
JRN003
Frontend API reference is not matched by discovered backend routes
server/index.js:295
MED
JRN003
Frontend API reference is not matched by discovered backend routes
server/index.js:281
MED
JRN003
Frontend API reference is not matched by discovered backend routes
server/index.js:280
MED
JRN003
Frontend API reference is not matched by discovered backend routes
server/index.js:194
MED
JRN003
Frontend API reference is not matched by discovered backend routes
public/pages/settings.js:851
MED
JRN003
Frontend API reference is not matched by discovered backend routes
public/pages/settings.js:603
MED
JRN003
Frontend API reference is not matched by discovered backend routes
public/pages/login.js:144
MED
JRN003
Frontend API reference is not matched by discovered backend routes
public/pages/login.js:132
MED
JRN003
Frontend API reference is not matched by discovered backend routes
public/pages/documents.js:297
MED
JRN003
Frontend API reference is not matched by discovered backend routes
public/pages/dashboard.js:839
MED
JRN003
Frontend API reference is not matched by discovered backend routes
public/pages/contacts.js:250
MED
JRN003
Frontend API reference is not matched by discovered backend routes
public/pages/contacts.js:246
MED
JRN003
Frontend API reference is not matched by discovered backend routes
public/pages/budget.js:377
MED
JRN003
Frontend API reference is not matched by discovered backend routes
public/api.js:7
MED
AUC002
[AUC002] Low visible authorization coverage in route inventory: Only 32.2% of discovered …
—
MED
AUC009
[AUC009] Sensitive function route lacks elevated authorization evidence: A route appears …
server/routes/shopping.js:256
MED
AUC009
[AUC009] Sensitive function route lacks elevated authorization evidence: A route appears …
server/routes/shopping.js:128
MED
AUC009
[AUC009] Sensitive function route lacks elevated authorization evidence: A route appears …
server/routes/housekeeping.js:1010
MED
AUC009
[AUC009] Sensitive function route lacks elevated authorization evidence: A route appears …
server/routes/housekeeping.js:997
MED
AUC009
[AUC009] Sensitive function route lacks elevated authorization evidence: A route appears …
server/routes/housekeeping.js:869
MED
AUC009
[AUC009] Sensitive function route lacks elevated authorization evidence: A route appears …
server/routes/housekeeping.js:852
MED
AUC009
[AUC009] Sensitive function route lacks elevated authorization evidence: A route appears …
server/routes/housekeeping.js:724
MED
AUC009
[AUC009] Sensitive function route lacks elevated authorization evidence: A route appears …
server/routes/housekeeping.js:626
MED
AUC009
[AUC009] Sensitive function route lacks elevated authorization evidence: A route appears …
server/routes/housekeeping.js:609
MED
AUC009
[AUC009] Sensitive function route lacks elevated authorization evidence: A route appears …
server/auth.js:593
MED
AUC004
[AUC004] Admin route does not show super_admin separation: An administrative route was de…
server/routes/documents.js:228
MED
AUC004
[AUC004] Admin route does not show super_admin separation: An administrative route was de…
server/routes/housekeeping.js:499
MED
AUC004
[AUC004] Admin route does not show super_admin separation: An administrative route was de…
server/index.js:277
MED
AUC004
[AUC004] Admin route does not show super_admin separation: An administrative route was de…
server/index.js:275
MED
AUC004
[AUC004] Admin route does not show super_admin separation: An administrative route was de…
server/auth.js:1107
MED
AUC004
[AUC004] Admin route does not show super_admin separation: An administrative route was de…
server/auth.js:930
MED
AUC004
[AUC004] Admin route does not show super_admin separation: An administrative route was de…
server/auth.js:825
MED
AUC004
[AUC004] Admin route does not show super_admin separation: An administrative route was de…
server/auth.js:787
MED
AUC004
[AUC004] Admin route does not show super_admin separation: An administrative route was de…
server/auth.js:772
MED
AUC004
[AUC004] Admin route does not show super_admin separation: An administrative route was de…
server/auth.js:645
LOW
AIC003
Duplicated implementation block across source files
test/test-tasks.js:4
LOW
AIC003
Duplicated implementation block across source files
test/test-tasks.js:3
LOW
AIC003
Duplicated implementation block across source files
test/test-tasks.js:1
LOW
AIC003
Duplicated implementation block across source files
test/test-shopping.js:4
LOW
AIC003
Duplicated implementation block across source files
test/test-shopping.js:3
LOW
AIC003
Duplicated implementation block across source files
test/test-search.js:4
LOW
AIC003
Duplicated implementation block across source files
test/test-oidc.js:1
LOW
AIC003
Duplicated implementation block across source files
test/test-notes-contacts-budget.js:5
LOW
AIC003
Duplicated implementation block across source files
test/test-multi-assignment.js:3
LOW
AIC003
Duplicated implementation block across source files
test/test-meals.js:4
LOW
AIC003
Duplicated implementation block across source files
test/test-installer-static.js:7
LOW
AIC003
Duplicated implementation block across source files
test/test-installer-prereq.js:113
LOW
AIC003
Duplicated implementation block across source files
server/services/modules.js:10
LOW
AIC003
Duplicated implementation block across source files
server/services/google-calendar.js:27
LOW
AIC003
Duplicated implementation block across source files
server/services/google-calendar.js:26
LOW
AIC003
Duplicated implementation block across source files
server/services/caldav-sync.js:60
LOW
AIC003
Duplicated implementation block across source files
server/services/apple-calendar.js:23
LOW
AIC003
Duplicated implementation block across source files
public/pages/setup.js:8
LOW
AUC005
[AUC005] No authorization-focused tests detected: No test files with common authorization…
—
LOW
WEB005
robots.txt does not advertise a sitemap
public/robots.txt
LOW
WEB002
Public web app has no sitemap
sitemap.xml
LOW
DKR008
.dockerignore misses sensitive defaults
.dockerignore
LOW
DKR011
Dockerfile installs recommended OS packages
Dockerfile:20
LOW
DKR011
Dockerfile installs recommended OS packages
Dockerfile:4
LOW
WEB008
Public docs site has no llms.txt
llms.txt
LOW
DKC010
Compose service lacks no-new-privileges hardening
docker-compose.yml:1
LOW
AIC002
Source file name looks like an AI patch artifact
scripts/restore-backup.js:1
LOW
DKC006
Compose service does not declare a runtime user
docker-compose.yml:1
LOW
WEB011
Public web app has no humans.txt
humans.txt
INFO
MINED043
[MINED043] Http Not Https: Hardcoded http:// (not localhost) for endpoints that handle cr…
setup.js:134
INFO
MINED043
[MINED043] Http Not Https: Hardcoded http:// (not localhost) for endpoints that handle cr…
public/reminders.js:94
INFO
MINED043
[MINED043] Http Not Https: Hardcoded http:// (not localhost) for endpoints that handle cr…
public/nav-icons.js:11
INFO
MINED044
[MINED044] Js Console Log Prod: console.log left in code. Should be replaced with logger …
scripts/generate-icons.js:75
INFO
MINED044
[MINED044] Js Console Log Prod: console.log left in code. Should be replaced with logger …
public/sw-register.js:13
INFO
MINED044
[MINED044] Js Console Log Prod: console.log left in code. Should be replaced with logger …
docs/screenshots/build-unraid-composite…:105