CVE-2020-11023

クロスサイト・スクリプティング
影響
jQuery
>=1.0.3 <3.5.0
jQuery
感嘆符アイコン
パッチあり
この脆弱性はHeroDevsが提供するNever-Ending Support (NES)バージョンで修正されました。

再現の手順

This Medium level exploit is related to CVE-2020-11022; it can be found in jQuery versions greater than or equal to 1.0.3 and before 3.5.0. Instead of being concerned with general HTML (which CVE-2020-11022 handles), this problem may occur when passing HTML containing <option> elements, even after sanitizing it, to one of jQuery's DOM manipulation methods (i.e. .html(), .append(), and others). With input not correctly sanitized, these methods may execute untrusted code.

問題への対処

クライアントは、十分なテストを行った後、直ちにjQuery 3.5.0にアップデートしてください。jQuery.htmlPrefilter()で使用されているサニタイズ方法が3.5.0で変更され、サニタイズ機能が予期しない結果をもたらす可能性があるエッジケースが存在するため、広範なテストが必要です。古い動作がどうしても必要な場合は、jQuery 3.5.0 Releaseのブログで、安全な方法で古いロジックを使用する方法が説明されています。

学習と予防

Sanitizing untrusted data before using or storing it is a security best practice for good reason: it is a common vector for breaking code. In this case, the error was found in the code designed to sanitize the data that specifically included <option> elements.

通常は、組み込みのサニタイズ方法を使用するだけで十分です。しかし、バージョン3.5.0で新しいサニタイズ方法を採用しているにもかかわらず、jQueryチームは追加のサニタイズのためにDOMPurifyライブラリを 使用し、SAFE_FOR_JQUERYオプションを必ず使用することも推奨しています。DOMPurifyは、クロスサイトスクリプティング(XSS)エクスプロイトを防ぐために特別に設計された、非常に人気があり、高度に設定可能なライブラリです。

結論

サイトに可能な限り安全なJavascriptフレームワークを提供するために、HeroDevs NESクライアントは、このバージョンのjQueryと、修正された他のすべての関連するCVEを受け取ります。

この修正により、CVE-2020-11023 で説明されている潜在的なセキュリティホールが直接修正されます。このようなセキュリティアップデートの最新情報を入手するには、今すぐ弊社にお問い合わせください。

リソース

脆弱性の詳細
身分証明書
CVE-2020-11023
影響を受けるプロジェクト
jQuery
影響を受けるバージョン
>=1.0.3 <3.5.0
≈ 確定日
2023年2月1日
で修正
重大性
ミディアム
カテゴリー
クロスサイト・スクリプティング