https://github.com/medusajs/medusa.git ·
lang: typescript ·
LOC: ·
source: both
| Rule | Severity | Count |
|---|---|---|
AIC003 Duplicated implementation block across source files |
low | 30 |
JRN003 Frontend API reference is not matched by discovered backend… |
medium | 4 |
SEC029 Server-Side Request Forgery (SSRF) — outbound HTTP from use… |
high | 3 |
AIC002 Source file name looks like an AI patch artifact |
low | 3 |
AUC009 [AUC009] Sensitive function route lacks elevated authorizat… |
medium | 3 |
JRN002 Browser storage is used for session token material |
medium | 2 |
AUC004 [AUC004] Admin route does not show super_admin separation: … |
medium | 2 |
JRN001 Token handoff appears to use a callback URL or fragment |
critical | 1 |
WEB015 Public web app has no Content Security Policy |
medium | 1 |
WEB011 Public web app has no humans.txt |
low | 1 |
JRN001
Token handoff appears to use a callback URL or fragment
packages/cli/create-medusa-app/src/utils/project-creator/medusa-project-creator.ts:194
· conf 0.88
Token handoff appears to use a callback URL or fragment
SEC029
Server-Side Request Forgery (SSRF) — outbound HTTP from user input
packages/admin/dashboard/src/components/common/file-upload/file-upload.tsx:88
· 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
packages/admin/dashboard/src/routes/orders/order-detail/components/order-fulfillment-section/order-fulfillment-section.tsx:419
· 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
packages/admin/dashboard/src/routes/product-tags/product-tag-list/loader.ts:14
· 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…
AIC001
Parallel implementation file sits beside a canonical file
packages/core/utils/src/dal/mikro-orm/mikro-orm-serializer-old.ts:1
· conf 0.82
Parallel implementation file sits beside a canonical file
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.
AUC004
[AUC004] Admin route does not show super_admin separation: An administrative route was detected without nearby evidence that platform super_admin access is separated from tenant/application admin access. Endpoint: ANY /plugins/<slug:plugin_slug>/.
www/apps/api-reference/app/base-specs/route.ts:9
· conf 0.66
[AUC004] Admin route does not show super_admin separation: An administrative route was detected without nearby evidence that platform super_admin access is separated from tenant/application admin acc…
AUC004
[AUC004] Admin route does not show super_admin separation: An administrative route was detected without nearby evidence that platform super_admin access is separated from tenant/application admin access. Endpoint: ANY /plugins/<slug:plugin_slug>/.
www/apps/api-reference/app/tag/route.ts:4
· conf 0.66
[AUC004] Admin route does not show super_admin separation: An administrative route was detected without nearby evidence that platform super_admin access is separated from tenant/application admin acc…
AUC009
[AUC009] Sensitive function route lacks elevated authorization evidence: A route appears to perform a sensitive function such as export, invite, role, token, billing, or destructive action without elevated policy evidence. Endpoint: DELETE /items/{item_id}.
www/apps/api-reference/app/download/[area]/route.ts:11
· conf 0.68
[AUC009] Sensitive function route lacks elevated authorization evidence: A route appears to perform a sensitive function such as export, invite, role, token, billing, or destructive action without el…
AUC009
[AUC009] Sensitive function route lacks elevated authorization evidence: A route appears to perform a sensitive function such as export, invite, role, token, billing, or destructive action without elevated policy evidence. Endpoint: DELETE /items/{item_id}.
www/apps/api-reference/app/schema/route.ts:5
· conf 0.68
[AUC009] Sensitive function route lacks elevated authorization evidence: A route appears to perform a sensitive function such as export, invite, role, token, billing, or destructive action without el…
AUC009
[AUC009] Sensitive function route lacks elevated authorization evidence: A route appears to perform a sensitive function such as export, invite, role, token, billing, or destructive action without elevated policy evidence. Endpoint: DELETE /items/{item_id}.
www/apps/resources/app/api/references/[...slug]/route.ts:20
· conf 0.68
[AUC009] Sensitive function route lacks elevated authorization evidence: A route appears to perform a sensitive function such as export, invite, role, token, billing, or destructive action without el…
ERR002
[ERR002] Empty Catch Block: Empty catch blocks hide errors.
packages/cli/medusa-cli/scripts/postinstall.js:16
· conf 1.00
[ERR002] Empty Catch Block: Empty catch blocks hide errors.
JRN002
Browser storage is used for session token material
packages/core/js-sdk/src/client.ts:366
· conf 0.82
Browser storage is used for session token material
JRN002
Browser storage is used for session token material
packages/core/js-sdk/src/client.ts:370
· conf 0.82
Browser storage is used for session token material
JRN003
Frontend API reference is not matched by discovered backend routes
www/packages/docs-ui/src/constants.tsx:320
· conf 0.74
Frontend API reference is not matched by discovered backend routes
JRN003
Frontend API reference is not matched by discovered backend routes
www/packages/docs-ui/src/constants.tsx:326
· conf 0.74
Frontend API reference is not matched by discovered backend routes
JRN003
Frontend API reference is not matched by discovered backend routes
www/packages/remark-rehype-plugins/src/change-links-md.ts:13
· conf 0.74
Frontend API reference is not matched by discovered backend routes
JRN003
Frontend API reference is not matched by discovered backend routes
www/packages/remark-rehype-plugins/src/change-links-md.ts:14
· conf 0.74
Frontend API reference is not matched by discovered backend routes
SEC007
Unsafe Deserialization
packages/cli/oas/medusa-oas-cli/src/utils/yaml-utils.ts:6
· conf 1.00
[SEC007] Unsafe Deserialization: Unsafe deserialization can execute arbitrary code.
WEB003
Public web service has no security.txt
.well-known/security.txt
· conf 0.78
Public web service has no security.txt
WEB015
Public web app has no Content Security Policy
index.html
· conf 0.70
Public web app has no Content Security Policy
AIC002
Source file name looks like an AI patch artifact
packages/core/core-flows/src/customer/steps/utils/unset-address-for-update.ts:1
· conf 0.62
Source file name looks like an AI patch artifact
AIC002
Source file name looks like an AI patch artifact
packages/core/utils/src/common/deep-copy.ts:1
· conf 0.62
Source file name looks like an AI patch artifact
AIC002
Source file name looks like an AI patch artifact
packages/modules/order/src/utils/actions/item-update.ts:1
· conf 0.62
Source file name looks like an AI patch artifact
AIC003
Duplicated implementation block across source files
integration-tests/http/jest.config.js:1
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
integration-tests/http/medusa-config.js:42
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
integration-tests/jest.config.js:25
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
integration-tests/modules/jest.config.js:6
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
integration-tests/modules/jest.config.js:7
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
integration-tests/modules/medusa-config.ts:168
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
integration-tests/modules/src/utils/providers/fulfillment-manual-calculated/services/manual-fulfillment.ts:1
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
packages/admin/admin-vite-plugin/src/custom-fields/generate-custom-field-forms.ts:67
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
packages/admin/admin-vite-plugin/src/custom-fields/generate-custom-field-links.ts:26
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
packages/admin/admin-vite-plugin/src/custom-fields/generate-custom-field-links.ts:27
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
packages/admin/admin-vite-plugin/src/routes/generate-routes.ts:61
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
packages/admin/dashboard/src/components/common/logo-box/logo-box.tsx:37
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
packages/admin/dashboard/src/components/data-grid/components/data-grid-number-cell.tsx:16
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
packages/admin/dashboard/src/components/data-grid/components/data-grid-text-cell.tsx:9
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
packages/admin/dashboard/src/components/data-grid/components/data-grid-text-cell.tsx:11
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
packages/admin/dashboard/src/components/data-grid/components/data-grid-toggleable-number-cell.tsx:19
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
packages/admin/dashboard/src/components/layout/pages/two-column-page/two-column-page.tsx:24
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
packages/admin/dashboard/src/components/layout/settings-layout/settings-layout.tsx:231
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
packages/admin/dashboard/src/components/layout/user-menu/user-menu.tsx:180
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
packages/admin/dashboard/src/components/layout/user-menu/user-menu.tsx:220
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
packages/admin/dashboard/src/components/table/data-table/data-table-filter/number-filter.tsx:133
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
packages/admin/dashboard/src/components/table/data-table/data-table-filter/string-filter.tsx:66
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
packages/admin/dashboard/src/components/table/data-table/data-table-order-by/data-table-order-by.tsx:26
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
packages/admin/dashboard/src/components/table/data-table/data-table-search/data-table-search.tsx:24
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
packages/admin/dashboard/src/components/table/table-cells/common/date-cell/date-cell.tsx:9
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
packages/admin/dashboard/src/components/table/table-cells/common/status-cell/status-cell.tsx:7
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
packages/admin/dashboard/src/components/table/table-cells/sales-channel/name-cell/name-cell.tsx:10
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
packages/admin/dashboard/src/components/table/view-selector/view-selector.tsx:51
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
packages/admin/dashboard/src/hooks/api/collections.tsx:3
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
packages/admin/dashboard/src/hooks/api/exchanges.tsx:165
· conf 0.86
Duplicated implementation block across source files
AIC005
Duplicate top-level symbol appears in a patch-style file
packages/core/utils/src/dal/mikro-orm/mikro-orm-serializer-old.ts:1
· conf 0.64
Duplicate top-level symbol appears in a patch-style 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
WEB008
Public docs site has no llms.txt
llms.txt
· conf 0.64
Public docs site has no llms.txt
WEB011
Public web app has no humans.txt
humans.txt
· conf 0.50
Public web app has no humans.txt
Reading from rp.scan + rp.finding + rp.rule (unified schema, R78 series). Legacy data path unchanged. Compare with /scan/5f88f9b1-bad0-4cff-861c-da0f06324fff/.