https://github.com/totosugito/fin-man ·
lang: typescript ·
LOC: ·
source: user_submitted
| Rule | Severity | Count |
|---|---|---|
AIC003 Duplicated implementation block across source files |
low | 20 |
MINED044 Js Console Log Prod |
info | 4 |
MINED052 Ts Any Typed |
info | 4 |
SEC029 Server-Side Request Forgery (SSRF) — outbound HTTP from use… |
high | 4 |
MINED054 Ts As Any |
info | 4 |
MINED056 React Key As Index |
info | 4 |
MINED045 Ts Non Null Assertion |
info | 3 |
MINED043 Http Not Https |
info | 1 |
SEC009 [SEC009] .env File Committed: .env file with secrets commit… |
critical | 1 |
WEB011 Public web app has no humans.txt |
low | 1 |
CORE_ENV_FILE
.env file committed to repository
.env
.env file committed to repository
SEC009
[SEC009] .env File Committed: .env file with secrets committed to repository.
.env
· conf 1.00
[SEC009] .env File Committed: .env file with secrets committed to repository.
SEC029
Server-Side Request Forgery (SSRF) — outbound HTTP from user input
backend/src/routes/admin/user/detail.ts:99
· conf 1.00
[SEC029] Server-Side Request Forgery (SSRF) — outbound HTTP from user input: Outbound HTTP request to a user-controlled URL without allowlist validation. Attackers can probe internal services (169.25…
SEC029
Server-Side Request Forgery (SSRF) — outbound HTTP from user input
backend/src/routes/admin/user/list.ts:182
· conf 1.00
[SEC029] Server-Side Request Forgery (SSRF) — outbound HTTP from user input: Outbound HTTP request to a user-controlled URL without allowlist validation. Attackers can probe internal services (169.25…
SEC029
Server-Side Request Forgery (SSRF) — outbound HTTP from user input
backend/src/routes/admin/user/update.ts:160
· conf 1.00
[SEC029] Server-Side Request Forgery (SSRF) — outbound HTTP from user input: Outbound HTTP request to a user-controlled URL without allowlist validation. Attackers can probe internal services (169.25…
SEC040
innerHTML XSS — template literal with server-supplied data
src/components/custom/charts/ReactECharts.tsx:299
· conf 1.00
[SEC040] innerHTML XSS — template literal with server-supplied data: Setting .innerHTML with a template literal that interpolates server-supplied or user-supplied data is the canonical stored/reflect…
AUC001
[AUC001] No Repobility access matrix policy found: The repository uses web/API frameworks but does not define .repobility/access.yml or equivalent authorization documentation.
· conf 0.92
[AUC001] No Repobility access matrix policy found: The repository uses web/API frameworks but does not define .repobility/access.yml or equivalent authorization documentation.
CORE_NO_CI
No CI/CD configuration found
No CI/CD configuration found
SEC041
Tabnabbing — target="_blank" without rel="noopener noreferrer"
src/components/custom/forms/FormUpload.tsx:116
· conf 1.00
[SEC041] Tabnabbing — target="_blank" without rel="noopener noreferrer": <a target="_blank"> without rel="noopener noreferrer" leaks window.opener to the opened page. The opened page can then run win…
WEB003
Public web service has no security.txt
.well-known/security.txt
· conf 0.78
Public web service has no security.txt
AIC003
Duplicated implementation block across source files
backend/src/routes/admin/user/detail.ts:34
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
backend/src/routes/admin/user/list.ts:52
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
backend/src/routes/admin/user/reset-password.ts:26
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
backend/src/routes/admin/user/reset-password.ts:40
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
backend/src/routes/admin/user/update.ts:35
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
backend/src/routes/admin/user/update.ts:37
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
backend/src/routes/v1/project/create.ts:31
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
backend/src/routes/v1/project/delete.ts:7
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
backend/src/routes/v1/project/events.ts:24
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
backend/src/routes/v1/project/gantt-view.ts:74
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
backend/src/routes/v1/project/list.ts:16
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
backend/src/routes/v1/project/list.ts:43
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
backend/src/routes/v1/project/update.ts:34
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
backend/src/routes/v1/project/update.ts:36
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
backend/src/routes/v1/project/update.ts:63
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
backend/src/routes/v1/user.hook.ts:1
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
src/components/pages/project/list/ProjectGanttViewDetails.tsx:27
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
src/routes/__authenticated/project/$id.tsx:37
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
src/routes/__authenticated/project/list.tsx:44
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
src/routes/__authenticated/project/list.tsx:187
· conf 0.86
Duplicated implementation block across source files
CORE_NO_LICENSE
No LICENSE file
No LICENSE file
WEB001
Public web app has no robots.txt
robots.txt
· conf 0.74
Public web app has no robots.txt
WEB002
Public web app has no sitemap
sitemap.xml
· conf 0.72
Public web app has no sitemap
WEB011
Public web app has no humans.txt
humans.txt
· conf 0.50
Public web app has no humans.txt
MINED043
Http Not Https
CWE-319
backend/src/config/env.config.ts:58
· conf 1.00
[MINED043] Http Not Https: Hardcoded http:// (not localhost) for endpoints that handle credentials or data.
MINED044
Js Console Log Prod
CWE-532
· conf 0.20
[MINED044] Js Console Log Prod (and 1 more): Same pattern found in 1 additional files. Review if needed.
MINED044
Js Console Log Prod
CWE-532
backend/src/auth.ts:35
· conf 1.00
[MINED044] Js Console Log Prod: console.log left in code. Should be replaced with logger or removed.
MINED044
Js Console Log Prod
CWE-532
backend/src/scripts/init-data.ts:70
· conf 1.00
[MINED044] Js Console Log Prod: console.log left in code. Should be replaced with logger or removed.
MINED044
Js Console Log Prod
CWE-532
backend/src/scripts/init-user.ts:41
· conf 1.00
[MINED044] Js Console Log Prod: console.log left in code. Should be replaced with logger or removed.
MINED045
Ts Non Null Assertion
CWE-476
backend/src/routes/v1/project/create.ts:135
· conf 1.00
[MINED045] Ts Non Null Assertion: x! asserts not null - bypasses null checks - TypeError if wrong.
MINED045
Ts Non Null Assertion
CWE-476
backend/src/routes/v1/project-event/create.ts:201
· conf 1.00
[MINED045] Ts Non Null Assertion: x! asserts not null - bypasses null checks - TypeError if wrong.
MINED045
Ts Non Null Assertion
CWE-476
backend/src/routes/v1/project/update.ts:125
· conf 1.00
[MINED045] Ts Non Null Assertion: x! asserts not null - bypasses null checks - TypeError if wrong.
MINED052
Ts Any Typed
CWE-704
· conf 0.20
[MINED052] Ts Any Typed (and 28 more): Same pattern found in 28 additional files. Review if needed.
MINED052
Ts Any Typed
CWE-704
backend/src/routes/v1/project-event/update.ts:67
· conf 1.00
[MINED052] Ts Any Typed: : any used as type annotation. Defeats TypeScript type safety.
MINED052
Ts Any Typed
CWE-704
backend/src/scripts/init-data.ts:56
· conf 1.00
[MINED052] Ts Any Typed: : any used as type annotation. Defeats TypeScript type safety.
MINED052
Ts Any Typed
CWE-704
src/components/app/AppNavbar.tsx:29
· conf 1.00
[MINED052] Ts Any Typed: : any used as type annotation. Defeats TypeScript type safety.
MINED054
Ts As Any
CWE-704
· conf 0.20
[MINED054] Ts As Any (and 2 more): Same pattern found in 2 additional files. Review if needed.
MINED054
Ts As Any
CWE-704
backend/src/routes/v1/project-event/list-by-year-month.ts:167
· conf 1.00
[MINED054] Ts As Any: Casting to any (as any) bypasses type checking entirely.
MINED054
Ts As Any
CWE-704
backend/src/routes/v1/project-event/list.ts:113
· conf 1.00
[MINED054] Ts As Any: Casting to any (as any) bypasses type checking entirely.
MINED054
Ts As Any
CWE-704
backend/src/routes/v1/project/events.ts:201
· conf 1.00
[MINED054] Ts As Any: Casting to any (as any) bypasses type checking entirely.
MINED056
React Key As Index
CWE-682
· conf 0.20
[MINED056] React Key As Index (and 1 more): Same pattern found in 1 additional files. Review if needed.
MINED056
React Key As Index
CWE-682
src/components/custom/skeleton/SkeTable.tsx:22
· conf 1.00
[MINED056] React Key As Index: key={index} in map() — re-renders the wrong elements on re-order.
MINED056
React Key As Index
CWE-682
src/components/custom/table/data-table-pagination.tsx:177
· conf 1.00
[MINED056] React Key As Index: key={index} in map() — re-renders the wrong elements on re-order.
MINED056
React Key As Index
CWE-682
src/components/custom/table/PaginationData.tsx:92
· conf 1.00
[MINED056] React Key As Index: key={index} in map() — re-renders the wrong elements on re-order.
SEC020
Secret Printed to Logs
backend/src/auth.ts:35
· conf 0.15
[SEC020] Secret Printed to Logs: Debug or diagnostic code appears to print a credential-bearing value. This is a frequent AI-assisted coding failure: the helper exposes the exact value needed for tro…
SEC029
Server-Side Request Forgery (SSRF) — outbound HTTP from user input
· conf 0.20
[SEC029] Server-Side Request Forgery (SSRF) — outbound HTTP from user input (and 4 more): Same pattern found in 4 additional files. Review if needed.
Reading from rp.scan + rp.finding + rp.rule (unified schema, R78 series). Legacy data path unchanged. Compare with /scan/ee7d3aaf-6c31-433d-b721-478c750ea54b/.