| 语言 | 消息 |
|---|---|
| de | 'locals()' als Kontext für 'render(...)' zu verwenden ist äußerst gefährlich. Damit werden Python-Funktionen für das Template sichtbar, die nicht sichtbar sein sollten. Ein Angreifer könnte diese Funktionen nutzen, um nicht vorgesehenen Code auszuführen und die Anwendung zu kompromittieren (Server-Side-Template-Injection, SSTI). Verwenden Sie 'locals()' nicht, sondern geben Sie jede Variable in einem Dictionary oder 'django.template.Context'-Objekt an, etwa '{"var1": "hello"}', und verwenden Sie das. |
| en | Using 'locals()' as a context to 'render(...)' is extremely dangerous. This exposes Python functions to the template that were not meant to be exposed. An attacker could use these functions to execute code that was not intended to run and could compromise the application. (This is server-side template injection (SSTI)). Do not use 'locals()'. Instead, specify each variable in a dictionary or 'django.template.Context' object, like '{"var1": "hello"}' and use that instead. |
| fr | Utiliser 'locals()' comme contexte de 'render(...)' est extrêmement dangereux : cela expose au template des fonctions Python qui ne devaient pas l'être, et un attaquant peut s'en servir pour exécuter du code non prévu et compromettre l'application (injection de template côté serveur, SSTI). N'utilisez pas 'locals()' ; spécifiez chaque variable dans un dictionnaire ou un objet 'django.template.Context', comme '{"var1": "hello"}'. |
| ja | 'locals()' を 'render(...)' のコンテキストとして渡すのは極めて危険です——テンプレートに公開すべきでない Python 関数がさらされ、攻撃者はこれを利用して意図しないコードを実行し、アプリケーションを侵害できます(サーバーサイドテンプレートインジェクション SSTI)。'locals()' は使用せず、'{"var1": "hello"}' のように、辞書または 'django.template.Context' で変数を 1 つずつ指定してください。 |
| ko | 'locals()'를 'render(...)'의 컨텍스트로 사용하는 것은 극도로 위험합니다. 노출되어서는 안 되는 Python 함수까지 템플릿에 노출되며, 공격자는 이를 이용해 예상치 못한 코드를 실행하고 애플리케이션을 장악할 수 있습니다(서버 측 템플릿 인젝션 SSTI). 'locals()'를 사용하지 말고, '{"var1": "hello"}'처럼 딕셔너리나 'django.template.Context'에 변수를 하나씩 지정하십시오. |
| ru | Использовать 'locals()' как контекст для 'render(...)' крайне опасно: шаблону раскрываются Python-функции, которые не должны быть видимы, и злоумышленник сможет выполнить через них код, не предусмотренный приложением (это серверная инъекция в шаблоны — SSTI). Не используйте 'locals()': перечисляйте переменные по одной в словаре или объекте 'django.template.Context', например '{"var1": "hello"}'. |
| zh | 将 'locals()' 作为 'render(...)' 的上下文极其危险——会把本不该暴露的 Python 函数暴露给模板,攻击者可借此执行非预期代码、攻陷应用(服务端模板注入 SSTI)。请勿使用 'locals()',改为在字典或 'django.template.Context' 中逐一指定变量,如 '{"var1": "hello"}'。 |
| zh-Hant | 將 'locals()' 作為 'render(...)' 的上下文極其危險——會把本不該暴露的 Python 函式暴露給範本,攻擊者可藉此執行非預期程式碼、攻陷應用(伺服器端範本注入 SSTI)。請勿使用 'locals()',改為在字典或 'django.template.Context' 中逐一指定變數,如 '{"var1": "hello"}'。 |
| 语言 | 名称 | 修复建议 |
|---|---|---|
| de | Unsichere dynamische Code-Auswertung bzw. -Einbindung | Ersetzen Sie dynamisch zusammengesetzte Pfade, Klassennamen oder Templatenamen durch Allowlist-Zuordnungen. |
| en | — | — |
| fr | Neutralisation inappropriée de directives dans du code stocké statiquement (injection de code statique) | Remplacez les chemins, noms de classes ou noms de templates assemblés dynamiquement par des mappages en liste blanche. |
| ja | 安全でない動的コード評価/インクルード | 動的に連結されるパス、クラス名、テンプレート名は、ホワイトリストマッピングで置き換えてください。 |
| ko | 안전하지 않은 동적 코드 평가/포함 | 동적으로 조합되는 경로, 클래스 이름 또는 템플릿 이름은 허용 목록 매핑으로 대체하십시오. |
| ru | Небезопасное динамическое вычисление или подключение кода | Динамически собираемые пути, имена классов и шаблонов замените белым списком соответствий. |
| zh | 不安全的动态代码求值/包含 | 以白名单映射替代动态拼接的路径、类名或模板名。 |
| zh-Hant | 不安全的動態程式碼求值/包含 | 以白名單對映替代動態串接的路徑、類別名稱或範本名。 |