文字コード総合スレ part15 (350レス)
文字コード総合スレ part15 http://mevius.5ch.net/test/read.cgi/tech/1723861080/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
必死チェッカー(本家)
(べ)
自ID
レス栞
あぼーん
177: デフォルトの名無しさん [sage] 2025/01/18(土) 03:52:04.02 ID:CaguG0TX RustがWindowsでファイル名を扱う時のWTF-8、あれ脆弱性の元な気がするんだよな… WTF-8状態でサロゲートペアの前後を結合してしまうとUTF-8のとはまた別の冗長表現が導入されてしまう http://mevius.5ch.net/test/read.cgi/tech/1723861080/177
179: デフォルトの名無しさん [sage] 2025/01/18(土) 10:15:43.69 ID:CaguG0TX >>178 UTF-8では違反なサロゲートの片方だけを許すのがWTF-8なので 正常なサロゲートペアをUTF-8に変換したときの4〜6バイト表現に対して WTF-8ではペアの片割れを別々に変換して結合した3バイトのサロゲート片☓2な別表現が存在できてしまうでしょ これらはUTF-16に戻したら同じ文字列になってしまうので WTF-8で比較等の処理をしてUTF-16に戻すと脆弱性になっちゃう http://mevius.5ch.net/test/read.cgi/tech/1723861080/179
181: デフォルトの名無しさん [sage] 2025/01/18(土) 10:44:27.05 ID:CaguG0TX >>180 最初っからWTF-8って言ってるじゃん http://mevius.5ch.net/test/read.cgi/tech/1723861080/181
182: デフォルトの名無しさん [sage] 2025/01/18(土) 10:49:44.07 ID:CaguG0TX Windowsのファイルシステムでは文字コードとしては不正なバイト列がファイル名として存在できる それを8バイト文字列で無理やり扱うためRustではWTF-8という本来エラーになる表現も許容した規格違反UTF-8を使っている OK? http://mevius.5ch.net/test/read.cgi/tech/1723861080/182
184: デフォルトの名無しさん [sage] 2025/01/18(土) 11:15:32.70 ID:CaguG0TX Rustではファイル名をWTF-8で扱うけどWTF-8で文字列処理すると危なくね?ってそれだけの話だよ UTF-8の話と混同して絡んできたのはあんたじゃね http://mevius.5ch.net/test/read.cgi/tech/1723861080/184
187: デフォルトの名無しさん [sage] 2025/01/18(土) 11:36:02.21 ID:CaguG0TX もう自分が何書いてるかもわかってなさそう もう一度読んで? http://mevius.5ch.net/test/read.cgi/tech/1723861080/187
190: デフォルトの名無しさん [sage] 2025/01/18(土) 12:03:49.92 ID:CaguG0TX >>188-189 型としてはOsStringとしてラップされてて、中身を取り出したらWindowsではWTF-8 不正な文字コードが入りうるのはどのOSでも同じだけどバイト列そのままな他OSと異なりWindowsだとUTF-16との変換も挟まって危なそうだなあって (ちなmacOSやあとBSDのzfsなんかだと不正な文字コードは最初から入らないらしい?) http://mevius.5ch.net/test/read.cgi/tech/1723861080/190
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
1.007s*