8

私は Django 1.5 アプリケーションを運用しています。

最近、JSON、XML、および YAML オブジェクトのロードに関連するさまざまな脆弱性について多くの騒ぎがありました。私の理解が正しければ、入力は読み込み関数のバグを悪用するために慎重に作成されました。

現在、Django (または私たちが使用している数十のサードパーティ アプリ) がこれらの各プロトコルをどこで使用しているかはわかりません。このような脆弱性からどのように安全を確保できますか? Django が JSON、XML、および YAML を安全にロードしていることを何らかの方法で確認する必要がありますか?

4

1 に答える 1

1

Djangoは、デフォルトでこれらの形式のユーザーエンコード入力を受け入れません。一般に、サードパーティアプリも受け入れませんが、ユーザー向けの部分を監査して確認する価値があります。大きなものはAPIプロバイダー(Tastypie、Django REST Frameworkなど)になります。現在のバージョンを使用している場合は安全ですが、テスト/確認する価値があります。

これらの形式からアプリに何かを読み込む場合は、必ずdefusedxmlYAMLsafe_loadメソッドを使用してください。標準ライブラリjsonモジュールは、この種のエクスプロイトから安全である必要があります。

于 2013-03-21T20:58:33.707 に答える