Provides models for the
which represents a textual SQL string directly.
Initially I wanted to add lots of additional taint steps for such that the normal SQL injection query would be able to find cases as the one above where an ORM query includes a TextClause that includes user-input directly… But that presented 2 problems:
- which part of the query construction above should be marked as SQL to fit our
SqlExecutionconcept. Nothing really fits this well, since all the SQL execution happens under the hood.
- This would require a LOT of modeling for these additional taint steps, since there are many many constructs we would need to have models for. (see the 2 examples below)
So instead we extended the SQL injection query to include TextClause construction as a sink. And so we don’t highlight any parts of an ORM constructed query such as these as containing SQL, and don’t need the additional taint steps either.
A construction of a