ストーリー:
私たちのプロジェクトの1つでは、Django Webフレームワークを使用しています。しかし、現在1.6.11のままです(主に1.7 Python 2.6のサポートが削除されました-作業中ですが、非常に遅くなります)これは もう維持されていません 。1.6には、長い間セキュリティ修正が適用されていません。
セキュリティの観点から問題があることを経営陣に証明して、アップグレードプロセスを促進したいと思います。
質問:
Django 1.6の使用が安全ではなくなったことを実証/証明するための戦略/方法を私に勧めてくれませんか?
私はDjangoを大いに使用しており、1.6から1.7に移行する必要がありました(ただし2〜3年前ですが)。その間、の最も重要な違いセキュリティの面ではDjango.contrib.messages
、Django 1.6でHTTPSのみのCookieを認識していませんでした。つまり、次のような場合:
MESSAGE_STORAGE = 'Django.contrib.messages.storage.cookie.CookieStorage'
セッションストレージの代わりに、WebサイトがHTTPS接続に対してのみCookieを送信するように構成されていた場合、これらのCookieはとにかくプレーンHTTP経由で送信されます。
Djangoリリースプロセス は、指定されたバージョンがLTS(長期サポートバージョン)でない限り、バージョン2より高いバージョンがリリースされると、バージョンのセキュリティパッチが停止することを示しています。したがって、Django 1.9(さらにDjango 1.10)であるため、Django 1.7はセキュリティ更新を受信していません。リリースされました。
Django 1.8はDjangoのLTSバージョンであるため、2018年4月までにセキュリティアップデートを受け取る予定です。
CVE-2016-901 および CVE-2015-5145 Django実行している環境をサービス拒否攻撃および情報漏えい;そのため、恐ろしい情報セキュリティリスクがもたらされます。
Django 1.6.11がセキュリティ更新を受信していないため、これらのリスク(およびここで言及されていない他のリスク)を軽減する方法はありません)。
すべてのフレームワークのアップグレードがセキュリティのためであるとは限りませんが、バージョンがサポートされなくなった場合、これはバグ/ホットフィックスがないことも意味します。これは、新しいリリースの「より良い」機能に関係なく、アップグレードする重要な理由になるはずです。
更新
反論として、機能の増加は攻撃面を拡大するか、新しいバグを導入すると言えます。