python.sql-injection-using-raw

返回列表 · CWE 索引

pythonWARNING规则详情

各语言消息对照

语言消息
de

Möglicherweise benutzerkontrollierte Daten aus einer Python-Anfrage werden an `raw()` übergeben. Das kann zu SQL-Injection führen und Angreifern Zugang zu geschützten Informationen verschaffen. Verwenden Sie stattdessen Djangos QuerySets, die mit Abfrageparametrisierung aufgebaut sind und daher nicht für SQL-Injection anfällig sind; etwa `Entry.objects.filter(date=2006)`.

en

Data that is possible user-controlled from a python request is passed to `raw()`. This could lead to SQL injection and attackers gaining access to protected information. Instead, use django's QuerySets, which are built with query parameterization and therefore not vulnerable to sql injection. For example, you could use `Entry.objects.filter(date=2006)`.

fr

Des données, possiblement contrôlées par l'utilisateur, issues d'une requête Python sont transmises à `raw()`. Cela peut conduire à une injection SQL et donner à des attaquants accès à des informations protégées. Utilisez plutôt les QuerySets de Django, construits avec la paramétrisation des requêtes et donc non vulnérables à l'injection SQL ; par exemple, vous pourriez utiliser `Entry.objects.filter(date=2006)`.

ja

リクエスト内のユーザーが制御した可能性のあるデータが `raw()` に渡されており、SQL インジェクションや攻撃者による保護された情報の取得につながる恐れがあります。代わりに Django QuerySet を使用してください——クエリのパラメーター化が組み込まれており、SQL インジェクションの影響を受けません。例:`Entry.objects.filter(date=2006)`。

ko

요청에서 사용자가 제어할 가능성이 있는 데이터가 `raw()`에 전달되어 SQL 인젝션이 발생하거나 공격자가 보호된 정보를 획득할 수 있습니다. 쿼리 매개변수화가 내장되어 있어 SQL 인젝션의 영향을 받지 않는 Django QuerySet으로 전환하십시오(예: `Entry.objects.filter(date=2006)`).

ru

Возможно управляемые пользователем данные запроса передаются в `raw()` — возможна SQL-инъекция и доступ злоумышленника к защищаемой информации. Используйте QuerySets Django: они построены на параметризации запросов и не уязвимы к SQL-инъекциям, например `Entry.objects.filter(date=2006)`.

zh

请求中可能被用户控制的数据被传入 `raw()`,可能导致 SQL 注入、攻击者获取受保护信息。请改用 Django QuerySet——它内建查询参数化,不受 SQL 注入影响,例如 `Entry.objects.filter(date=2006)`。

zh-Hant

請求中可能被使用者控制的資料被傳入 `raw()`,可能導致 SQL 注入、攻擊者獲取受保護資訊。請改用 Django QuerySet——它內建查詢參數化,不受 SQL 注入影響,例如 `Entry.objects.filter(date=2006)`。

CWE 知识卡

语言名称修复建议
deSQL-InjectionVerwenden Sie durchgängig parametrisierte Abfragen/Prepared Statements, verketten Sie keine SQL-Strings und schließen Sie beim ORM die Schnittstellen für rohe Verkettung.
en——
frNeutralisation inappropriée des éléments spéciaux dans une commande SQL (injection SQL)Utilisez systématiquement des requêtes paramétrées ou des instructions préparées ; interdisez la concaténation de SQL et fermez les points d'entrée SQL brut de l'ORM.
jaSQL インジェクションすべてパラメーター化クエリ/プリペアドステートメントを使用し、SQL を文字列連結で組み立てないでください。ORM ではネイティブな連結の入り口を無効化してください。
koSQL 인젝션모든 곳에서 매개변수화된 쿼리나 사전 컴파일된 문장을 사용하고, SQL을 문자열로 이어 붙이지 말며, ORM이 SQL을 문자열로 이어 붙이는 네이티브 진입점은 비활성화하십시오.
ruSQL-инъекцияВезде применяйте параметризованные запросы и подготовленные выражения; склейка SQL-строк запрещена, а нативные пути ORM закрывайте.
zhSQL 注入全部使用参数化查询/预编译语句,禁止字符串拼接 SQL,ORM 关闭原生拼接入口。
zh-HantSQL 注入全部使用參數化查詢/預備陳述式,禁止字串串接 SQL,ORM 關閉原生串接入口。

OWASP

A01:2017 - InjectionA03:2021 - Injection

元数据

likelihoodMEDIUM
impactHIGH
confidenceMEDIUM

修复字段

fix无
fix-regex无

上游规则源

github.com/opengrep/opengrep-rules/tree/main/python/django/security/injection/sql/sql-injection-using-raw.yaml