insecure tempfile problem

Yuuichi Teranishi teranisi @ gohome.org
2003年 5月 9日 (金) 10:10:19 JST


At 09 May 2003 06:41:18 +0900,
Shuhei KOBAYASHI wrote:
> 
>   Emacs 20 を使っているならば, いくら個々のアプリケーションが対応しても,
>   `call-process-region' という広く使われている関数が一時ファイルを安全で
>   はない方法で(デフォルトでは) /tmp に作成するので, 安全な場所を確保して
>   TMPDIR に指定しないと(複数人で使用している環境では特に)問題があります.
>   Emacs 19 やそれ以前では回避策はありません.

なるほど、Emacs 20 では、/tmp に代わる安全な場所を確保して、
TMPDIR を設定することしか、自衛策がなかったということですね。

> > それはさておき、TMPDIR や temporary-file-directory は、ユーザに
> > とって安全な場所に設定するべきである、という規定はないと思うので、
> 
> 「規定」はないですが, /tmp が危険な場所であるというのは少なくとも 5 年は
> 前から言われていることです. (GCC の security hole などの話題がその頃か?)

> 個々のアプリケーションが注意深く /tmp を使うのと /tmp に代わる安全な場所
> を確保してアプリケーションにそちらを使わせるのとどちらがより根本的な解決
> だと思われますか? 

セキュリティの観点では、後者なのでしょうね。

しかし、そもそも一時ファイルを共通の位置に置くのは、マルチユーザ環境で、
何らかの原因で残った一時ファイルを管理者が一括して削除したいから、
というのもありますよね。(OS boot 時に /tmp を rm -r するとか)
;; いまどきそんなこと気にしないのかな?

というわけで、資源管理の観点からは、巨大な一時ファイルを作るアプリケー
ションは特に、一時ファイル置き場が共通の場所となっていることを考慮する
意義はあると思います。

--
Yuuichi Teranishi (寺西裕一) <teranisi @ gohome.org>
GPG Public Key: http://www.gohome.org/gpg/teranisi.asc
"Love is needing to be loved..."




More information about the Emacs-mime-ja mailing list