The vulnerability stems from two key pre-patch flaws: 1) Missing 'rel_id' validation in the comment submission endpoint allowed arbitrary content ID injection. 2) Absence of Content::whereActive() check failed to verify if the target content exists and is in an active/undeleted state. The patch added both the input validation (required|min:1) and the content availability check, confirming these were the missing access control mechanisms. The scopeActive() modification in Content.php appears to be a secondary hardening measure to properly handle 'is_deleted' null values, but the primary vulnerability resided in the comment submission workflow's lack of resource ownership validation.