記事個別表示 (3511)
これは「水無月ばけらのえび日記 : 情報処理試験でNUL文字攻撃の問題など」に関連するコメントです。
[3511] Re: 「情報処理試験でNUL文字攻撃の問題など」
ばけら (2006年4月20日 22時19分)
>>Perl の open が NUL 以降を無視するのですか?
> はい。少なくとも事実上「Perl の open は NUL 以降を無視する」と言って良い状況であろうと思います。
ちょっと補足です。
Perl が文字列の NUL 以降を無視しているわけではないので、「open() に渡った文字列の NUL から後ろが無視される」わけではなくて、「ファイル名のNULから後ろが無視される」ことになります。両者はほぼ同じですが、パイプを使おうとするときに大きな違いが出ます。
open(FOO, "foo\0bar|")
ではコマンド foo が実行されますが、
open(FOO, "foo|\0bar")
ではコマンド foo は実行されません。
このことからも、Perl が NUL 以降を切っているのではなく、単に NUL を含むパスをそのまま OS に渡しているだけだということが伺えますね。
これは「水無月ばけらのえび日記 : 情報処理試験でNUL文字攻撃の問題など」に関連するコメントです。
全読: [3500]Re: 「情報処理試験でNUL文字攻撃の問題など」からのスレッド(11件)]