Windowsにおけるコンソールデバイス名の扱いについて

"CON" 以外にもコンソールを表すファイル名があることに注意という話。

To: vuln-info atmark ipa.go.jp
Date: Aug 31, 2005 11:46 AM
Subject: Windowsにおけるコンソールデバイス名の扱いについて
 3) 脆弱性の種類
  直接的な脆弱性ではないものの、IPAにより公開されているドキュメント
  「セキュア・プログラミング講座」
  http://www.ipa.go.jp/security/awareness/vendor/programming/
  を参考にした場合に脆弱性が発生する可能性があるため、連絡する。

  第8章 セキュア Windows プログラミングの [8-1.] Windowsパス名の
  落とし穴の「予約デバイス名」
  http://www.ipa.go.jp/security/awareness/vendor/programming/b08_01_main.html
  の項には、コンソールの予約デバイス名として "CON" のみが挙げられて
  いるが、実際には "CONIN$" および "CONOUT$" も標準入出力として
  有効な予約デバイス名である。
  そのため、CON と同様に、CONIN$、CONOUT$ といったファイル名をプログラムに
  与えることにより、プログラムが意図しない動作をする可能性がある。


 4) 再現手順
  Explorer にて CONIN$ という名前のファイルを作成し、コマンドプロンプト
  からそのファイルが含まれるディレクトリに移動し、以下を実行。

  C:\> type *

  このとき、単純にファイルの内容が type されるのではなく、コンソール
  からの入力が受付可能になることにより、CONIN$ がコンソールのデバイス名
  として有効なことが確認できる。

 5) 再現の状況
  ■ 常に    □ 時々    □ まれに
  補足説明(バージョンによる、言語による、などを記入)

 6) 脆弱性により発生しうる脅威
  コンソールからの入力待ちによるプログラムの停止など。

IPAからの回答

Windows におけるコンソールデバイス名の扱いの件について、届出内容を
確認しましたが、以下の理由で不受理とさせていただくことになりました
ので、ご連絡いたします。

理由:
届出いただいた問題はソフトウェアの脆弱性ではなく、IPA 資料に対する
ご意見であると受け取らせていただきましたので、告示・ガイドラインで
定義する脆弱性には該当いたしません。

まぁ、予想通りの回答でした。