Skip to content
vetkitChecksChangelogDocumentation

vetkit.php.sql-injection.laravel-raw

Request input reaches a raw Laravel query fragment (DB::raw, whereRaw, orderByRaw …), bypassing query-builder bindings (SQL injection).

Last updated:

Suite: Security

php

Request input reaches a raw Laravel query fragment (DB::raw, whereRaw, orderByRaw …), bypassing query-builder bindings (SQL injection).

Category: SECURITY · Engine rule severity: ERROR

How to fix it

Pass values through the bindings argument (whereRaw('price > ?', [$price])) or use the regular query-builder methods; map sort columns/directions to an allow-list.

References

Source: packages/engine/rules/sast/php.yml.

Generated from shipped rule definitions at build time. Matching is a review signal, not proof of exploitability. “generic” denotes text matching, not complete language or framework coverage. Runtime configuration and available tools affect whether a rule runs.