1

request.GETまたはrequest.METAを使用してHTTP_REFERERを取得するためにリクエストパラメータを取得しているときに、djangoでセキュリティを強化するために実装できるセキュリティチェックの種類。

具体的には、 XSS(クロスサイトスクリプティング)のセキュリティチェックを探しています。同僚の1人が、ここでXSS攻撃を何らかの方法で実行できると指摘しました。

サンプルコード:

next = request.GET.get('next','')
if next:
 do something

私は公式のdjangoドキュメントを確認しましたが、request.GETメソッドとMETAメソッドの保護についてはあまり理解していませんでした。 djangoのセキュリティドキュメント。

4

1 に答える 1

1

next次に、の値をテンプレートに直接ダンプするか、チェックせずにテンプレートにリダイレクトする場合、これはXSS攻撃ベクトルにすぎません。

リダイレクトについては、Djangoの組み込みのログインフォームで、別のホストにリダイレクトしていないかどうかを確認します。コードを参照してください。

スクリプト攻撃の場合、Djangoは常にすべてのコードを自動エスケープするため、<script>に変換され&lt;script&gt;ます。自動エスケープをオフにしたり、変数を安全としてマークしたりしないように注意する必要があります。

于 2012-08-01T08:20:22.293 に答える