Skip to content

ECSoC_2026 & ELUSoC_2026 Fix: Race Condition Allows Multiple Exam Submissions #205

Description

@Sairaj2033

Bug Description

The submitExam controller does not verify if a student has already submitted an exam before saving a new Submission document.

Because there is no application-level check and no unique database constraint, a student can send concurrent POST requests to POST /api/submissions/:examId/submit and generate multiple graded submissions for the same exam, allowing them to manipulate their final score.

Location & Severity

  • File: controllers/submissionController.js (Lines 4–36)
  • Severity: High

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions