再現の手順
このクロスサイトスクリプティング(XSS)エクスプロイトは、AngularJSのすべての公開バージョンに存在します。Internet Explorerブラウザにのみ存在し、テキストエリアを扱う際のページキャッシュにバグがあります。悪意のある行為者は、ブラウザが実行する危険なコードを挿入することができ、それによってデータやスクリプト機能にアクセスすることができます(攻撃者は、アプリケーションやサイトを騙して、あたかも信頼できるソースからのリクエストであるかのように受け取らせます)。このエクスプロイトを実証する概念実証は、StackBlitz で入手可能です。
問題への対処
Internet Explorerブラウザのユーザーは、AngularJSのすべての公開バージョンを使用している場合、この潜在的な悪用のベクターとなります。開発者はこの種の攻撃を防ぐためにコードをエスケープすることができますが(下記を参照)、修正されたライブラリのバージョンにアップグレードする必要があります。
学習と予防
In general, XSS exploits are best avoided by escaping content that isn’t from a trusted source. Escaping can be done by libraries that specialize in this function. Using HTML for an example, they will take a < and > code them as < and >. Performing this transformation prevents code from being executed in locations where it can cause harm.
結論
HeroDevsのクライアントの皆様には、バージョン1.9.0のリリースと同時に、直ちにアップグレードするようお知らせいたしました。HeroDevsのネバーエンディングサポートサブスクリプションから得られる安心感をご希望の場合は、今すぐ営業チームまでご連絡ください。
リソース
NIST 2022-25869エントリー
弊社がサポートするオープンソースソフトウェアに新たな脆弱性が修正された場合、いつでもアラートを受け取ることができます。