チケット #17226

UTF-8の冗長な表現の取り扱い

登録: 2009-06-08 16:37 最終更新: 2023-06-13 00:52

報告者:
担当者:
チケットの種類:
状況:
完了
コンポーネント:
マイルストーン:
優先度:
5 - 中
重要度:
5 - 中
解決法:
受領
ファイル:
なし
投票
点数: 0
No votes
0.0% (0/0)
0.0% (0/0)

詳細

UTF-8の冗長な表現を取り扱えなくすべき。

例えば、"!"はUTF-8だと<0x21>の1バイトとなるが、<0xC0><0xA1>の2バイトや<0xE0><0xC0><0xA1>とも表せる。 現状のTera Termではこれらの冗長な表現も表示できてしまうが、Unicode的には不正であり、セキュリティ的にも問題があるので取り扱えなくするべき。

チケットの履歴 (6 件中 3 件表示)

2009-06-08 16:37 更新者: doda
  • 新しいチケット "UTF-8の冗長な表現の取り扱い" が作成されました
2009-06-18 02:31 更新者: doda
  • 解決法なし から 受領 に更新されました
  • 担当者(未割り当て) から doda に更新されました
2023-05-21 00:33 更新者: zmatsuo
  • 詳細が更新されました
コメント

r10715 で UTF-8の冗長な表現を受け入れないようにしました。

例えば、すべて "!" U+0021 として扱えます。

echo -e "\x21"
echo -e "\xc0\xa1"
echo -e "\xe0\x80\xa1"
echo -e "\xf0\x80\x80\xa1"
# もし5byteを許す場合(不正なUTF-8)
echo -e "\xf8\x80\x80\x80\xa1"

"\x21"以外を受け入れないようにして、そのままUnicode入力として扱うようにしました。

ISO8859-1と同等になります。

問題があれば指摘ください。

スナップショットを置きました

https://osdn.net/projects/ttssh2/storage/snapshot/teraterm-5.0-dev-r10715-20230520-appveyor.zip

(編集済, 2023-05-21 14:16 更新者: zmatsuo)
2023-05-21 00:35 更新者: zmatsuo
  • 担当者doda から zmatsuo に更新されました
2023-06-13 00:52 更新者: zmatsuo
コメント

ISO8859-1と同等になります。

不正な入力をどう扱うか別チケットを作成しました。ticket #48226 です。

このチケットはクローズします。

2023-06-13 00:52 更新者: zmatsuo
  • 状況オープン から 完了 に更新されました
  • マイルストーン(未割り当て) から Tera Term 5.0 に更新されました

添付ファイルリスト

添付ファイルはありません

編集

ログインしていません。ログインしていない状態では、コメントに記載者の記録が残りません。 » ログインする