IPA ISEC セキュア・プログラミング講座

友人に教わった文書を大体読み終わった.この辺が特にやばい...

これは無理...
パスの正規化には,この辺が役立つんじゃないのか.

Windows ShellっていわゆるExplorerのことだよね? まぁsyscallでなくbashスクリプトreadlink(1) に頼るようなものだ(何だその例えは
それにしても副次ストリーム (ADS: Alternate Data Stream) は無理ゲーすぎるなー*1.Boost.Filesystemも,ちょっとググった限りでは想定してない感じ? ラッパーで上記の正規化関数をかけてから boost::filesystem::path に食わせるのがいいのかね.ADSを予期してないソフトウェアが落ちることをQAK(急にADSが来たので)脆弱性と呼ぼう.

*1:こんなものを引数に持ってこられても正常動作するまで作り込む工数はとても払えない,という意味で.工口動画はここに隠せばいいのか! という感じではあるが...