新生鳩丸掲示板♯

bakera.jp > 新生鳩丸掲示板♯ > [3511] Re: 「情報処理試験でNUL文字攻撃の問題など」

記事個別表示 (3511)

[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 に渡しているだけだということが伺えますね。

コメントフォーム

※広告や宣伝の書き込みはご遠慮ください。

:

:

:

最近の日記

関わった本など