公開日:2021/11/10 最終更新日:2021/11/10
JVNVU#98850865
Unicodeを採用するコンパイラに双方向テキスト制御文字およびホモグリフ文字の意図しない制御を可能にする脆弱性
Unicodeを採用するコンパイラには双方向テキスト制御文字およびホモグリフ文字による意図しない制御を可能にする脆弱性が存在します。
- 14.0までのUnicode仕様を採用するコンパイラ、インタプリタ、およびその他の開発ツール等
14.0までのUnicode仕様を採用するコンパイラ等には双方向テキスト制御文字およびホモグリフ文字の意図しない制御を可能にする脆弱性(CWE-20、CVE-2021-42574、CVE-2021-42694)が存在します。
攻撃者によって、ソースコード内にレビューアーやコーディンクツールが視覚的に確認できないコードを挿入され、コンパイラやインタプリタ等がこれを解釈することで意図しない制御をさせられる可能性があります。
ワークアラウンドを実施する
本脆弱性の発見者は、コンパイラ等の開発者に対して次の対策の実施を提示しています。
- 言語仕様では双方向テキスト制御文字を禁止する
- コンパイラ、インタプリタ、およびビルドパイプラインでは双方向テキスト制御文字やホモグリフ文字についてエラーもしくは警告を表示する
- コードエディタとリポジトリフロントエンドで双方向テキスト制御文字やホモグリフ文字について視覚的な記号や警告を表示する
-
Vulnerability Note VU#999008
Compilers permit Unicode control and homoglyph characters -
Trojan Source
Invisible Source Code Vulnerabilities