Skip to content

Task and report APIs lack a user/owner authorization model #401

Description

@ionfwsrijan

Problem

Tasks, findings, and reports are globally addressable by task/report IDs without per-user ownership enforcement.

Evidence

Affected code:

  • backend/secuscan/routes.py
  • backend/secuscan/database.py

The database stores tasks, findings, and reports, but task operations are not consistently scoped to an authenticated owner.

Impact

If SecuScan is deployed beyond single-user localhost, one user can enumerate or download another user’s scan results, including sensitive targets, raw outputs, findings, and reports.

Expected fix

  • Introduce authenticated user/workspace ownership for tasks
  • Store owner_id on tasks/reports/findings
  • Scope all list/get/delete/report endpoints by owner
  • Add tests for cross-user task/result/report access

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions