[hackers-jp: 225] Re: COPYの権限

ISHIDA Akio iakio @ mono-space.net
2007年 4月 5日 (木) 22:39:53 JST


こんにちは。石田です。

07/04/05 に Yasuo Ohgaki<yohgaki @ ohgaki.net> さんは書きました:
> 大垣です。
>
> GRANT/REVOKEでCOPY文の利用に制限を付けることが可能か、本家hackersに
> 聞いてみようと思っています。その前に皆さんのご意見と聞いてみたいと
> 思ってメールしています。
>
> COPY文はSTDINからの入力も可能であるためWeb環境などで実行すると永遠
> に待ち続けることになります。Webサーバを共有している環境では簡単に
> DoSを行うことができます。
> # わざとSQLインジェクションに脆弱にしておくなど。
> # わざとでなくてもSQLインジェクションに脆弱であれば
> # 攻撃可能ですが...
>

読み違えているかもしれませんが、
ユーザ毎に接続数制限があればよい解決する話であれば、
最近のバージョンでは CREATE ROLE(またはCREATE USER)
で connection limit が指定できるようです。

> GRANT/REVOKEでCOPY文へのアクセス制限ができればこのような単純なDoSを
> 防ぐ事が可能になります。
>
> 2)はポリシーの問題です。COPY FROM STDINのようなDoSに使えるSQL文を
> このケースだけ制限するのはどうか?といった部分が議論になると思います。
> 別にCOPYを使わなくてもSQL文が使えればいくらでもDoSが行えるSQL文を
> 作れる、と言う指摘もあると思います。

そうですね。最近追加された関数ではpg_sleep()というのがあります。
(でも関数であれば権限を制御できるか)。

-- 
ISHIDA Akio <iakio @ mono-space.net/ishida @ cycleof5th.com>



hackers-jp メーリングリストの案内