django-raw-sql (S611)
源自 flake8-bandit linter。
作用
检查是否使用了 Django 的 RawSQL
函数。
为什么这不好?
Django 的 RawSQL
函数可用于执行任意 SQL 查询,这可能进而导致 SQL 注入漏洞。
示例
from django.db.models.expressions import RawSQL
from django.contrib.auth.models import User
User.objects.annotate(val=RawSQL("%s" % input_param, []))