[#26468] $SAFE=1 の open-uri で redirect 時にエラー — Kazuhiko <kazuhiko@...>

かずひこです。

40 messages 2005/07/07
[#26469] Re: $SAFE=1 の open-uri で redirect 時にエラー — Tanaka Akira <akr@...17n.org> 2005/07/07

In article <m3zmsylimn.wl%kazuhiko@fdiary.net>,

[#26470] Re: $SAFE=1 の open-uri で redirect 時にエラー — Yukihiro Matsumoto <matz@...> 2005/07/07

まつもと ゆきひろです

[#26471] Re: $SAFE=1 の open-uri で redirect 時にエラー — Tanaka Akira <akr@...17n.org> 2005/07/07

In article <1120754832.716261.15867.nullmailer@x31.priv.netlab.jp>,

[#26472] Re: $SAFE=1 の open-uri で redirect 時にエラー — Yukihiro Matsumoto <matz@...> 2005/07/07

まつもと ゆきひろです

[#26475] Re: $SAFE=1 の open-uri で redirect 時にエラー — Tanaka Akira <akr@...17n.org> 2005/07/08

In article <1120762886.189058.18880.nullmailer@x31.priv.netlab.jp>,

[#26476] Re: $SAFE=1 の open-uri で redirect 時にエラー — Yukihiro Matsumoto <matz@...> 2005/07/08

まつもと ゆきひろです

[#26479] Re: $SAFE=1 の open-uri で redirect 時にエラー — Tanaka Akira <akr@...17n.org> 2005/07/08

In article <1120810939.815280.27104.nullmailer@x31.priv.netlab.jp>,

[#26483] Re: $SAFE=1 の open-uri で redirect 時にエラー — Yukihiro Matsumoto <matz@...> 2005/07/08

まつもと ゆきひろです

[#26485] Re: $SAFE=1 の open-uri で redirect 時にエラー — Shugo Maeda <shugo@...> 2005/07/08

前田です。

[#26486] Re: $SAFE=1 の open-uri で redirect 時にエラー — Yukihiro Matsumoto <matz@...> 2005/07/08

まつもと ゆきひろです

[#26525] Re: $SAFE=1 の open-uri で redirect 時にエラー — Tanaka Akira <akr@...17n.org> 2005/07/12

In article <42CF1918.5000603@ruby-lang.org>,

[#26493] can't handle \c\ — KIMURA Koichi <kbk@...>

木村です。

18 messages 2005/07/09
[#26496] Re: can't handle \c\ — "URABE Shyouhei aka. mput" <root@...> 2005/07/10

卜部でございます。

[#26574] SystemCallError.new("abc") => #<SystemCallError: unknown error - ab> — Tanaka Akira <akr@...17n.org>

次のように、メッセージの最後が切れます。

28 messages 2005/07/19
[#26576] Re: SystemCallError.new("abc") => #<SystemCallError: unknown error - ab> — Yukihiro Matsumoto <matz@...> 2005/07/19

まつもと ゆきひろです

[#26578] Re: SystemCallError.new("abc") => #<SystemCallError: unknown error - ab> — nobu@... 2005/07/19

なかだです。

[#26579] Re: SystemCallError.new("abc") => #<SystemCallError: unknown error - ab> — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2005/07/19

山本です。

[#26580] Re: SystemCallError.new("abc") => #<SystemCallError: unknown error - ab> — Yukihiro Matsumoto <matz@...> 2005/07/19

まつもと ゆきひろです

[#26586] Re: SystemCallError.new("abc") => #<SystemCallError: unknown error - ab> — nobuyoshi nakada <nobuyoshi.nakada@...> 2005/07/20

なかだです。

[#26587] Re: SystemCallError.new("abc") => #<SystemCallError: unknown error - ab> — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2005/07/20

山本です。

[#26589] Re: SystemCallError.new("abc") => #<SystemCallError: unknown error - ab> — nobu@... 2005/07/20

なかだです。

[#26597] Re: SystemCallError.new("abc") => #<SystemCallError: unknown error - ab> — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2005/07/21

山本です。

[#26599] Re: SystemCallError.new("abc") => #<SystemCallError: unknown error - ab> — nobuyoshi nakada <nobuyoshi.nakada@...> 2005/07/22

なかだです。

[#26628] show information of '--enable-pthread' — Hidetoshi NAGAI <nagai@...>

永井@知能.九工大です.

37 messages 2005/07/28
[#26632] Re: show information of '--enable-pthread' — Yukihiro Matsumoto <matz@...> 2005/07/28

まつもと ゆきひろです

[#26634] Re: show information of '--enable-pthread' — Hidetoshi NAGAI <nagai@...> 2005/07/28

永井@知能.九工大です.

[#26635] Re: show information of '--enable-pthread' — WATANABE Hirofumi <eban@...> 2005/07/28

わたなべです。

[#26645] Re: show information of '--enable-pthread' — "U.Nakamura" <usa@...> 2005/07/29

こんにちは、なかむら(う)です。

[#26646] Re: show information of '--enable-pthread' — Hidetoshi NAGAI <nagai@...> 2005/07/29

永井@知能.九工大です.

[#26658] Re: show information of '--enable-pthread' — Hidetoshi NAGAI <nagai@...> 2005/07/31

永井@知能.九工大です.

[#26659] Re: show information of '--enable-pthread' — Takahiro Kambe <taca@...> 2005/07/31

In message <20050731.094203.74726476.nagai@ai.kyutech.ac.jp>

[#26662] Re: show information of '--enable-pthread' — Hidetoshi NAGAI <nagai@...> 2005/07/31

永井@知能.九工大です.

[#26663] Re: show information of '--enable-pthread' — "U.Nakamura" <usa@...> 2005/07/31

こんにちは、なかむら(う)です。

[#26669] Re: show information of '--enable-pthread' — Hidetoshi NAGAI <nagai@...> 2005/08/01

永井@知能.九工大です.

[ruby-dev:26525] Re: $SAFE=1 の open-uri で redirect 時にエラー

From: Tanaka Akira <akr@...17n.org>
Date: 2005-07-12 14:51:41 UTC
List: ruby-dev #26525
In article <42CF1918.5000603@ruby-lang.org>,
  Shugo Maeda <shugo@ruby-lang.org> writes:

> たとえば、RFCではredirect先にPUTしてはいけないことになっている
> わけですが、仮にPUTがredirectされたとすると、本来はIPアドレス
> ベースでPUTが制限されているURLにデータの書き込みをさせることが
> できてしまったりする危険性がないでしょうか。
>
> OpenURI.redirectable?の仕様が明らかになっていて、redirect先の
> URLが一定の条件をみたす場合にuntaintしてredirectされることを
> ユーザが理解して使うのであれば、問題ないように思います。

いろいろと考えているのですが、untaint することによってどんな安全性を
失うのかを把握できた気になりません。そのため、OpenURI.redirectable? が
その失った安全性をどの程度回復できるのか判断できません。

たとえば、OpenURI.redirectable? はメソッド (GET, PUT, etc.) を受け取ら
ないので、上であげられた PUT の危険性は防げず、別のコードを書くことに
よって防がなければならないように思います。つまり、その危険性は
OpenURI.redirectable? では回復できません。もちろん、PUT の redirect を
防ぐためにはそのためのコードを書けばいいわけですが、失われる安全性はそ
れだけとは限りません。

そして、仮に untaint するにしても潜在的に失われる安全性を少なくするよ
うにしたいところですが、taint 機構が提供する安全性をいま把握した気にな
れないため、どう untaint するのがより安全かがわかりません。

> ユーザが最初にopen-uriに渡すURLがtainted?でないということによって、
> open-uriがredirect先のURLをuntaintすることを是認したと判断
> できるわけですから。
> 
> 仮にPUTが無条件にredirectされたとしても、ユーザがそのことを
> 理解して使う(たとえばredirect元URLを無条件に信頼してよいと
> 判断したとか)のであれば、(少なくともライブラリ側としては)
> 問題ないように思います。

ドキュメントは開発者のいいわけとして重要ですが、できればいいわけ不要な
ほうがいいと思っています。

> ライブラリがuntaintする際のおおざっぱな指針としては、
>
> (1) untaint前には明らかな危険性はチェックによって排除する。
> (2) どのようなデータが自動的にuntaintされ、どのような処理に
>     利用されるかをドキュメントに明記し、ユーザがライブラリ
>     に渡したパラメータがtainted?でないことによって、リスク
>     を受け入れたと判断する。
>     (ただし、(1)によるチェックでuntaintが無条件に安全である
>     と判断できる場合はドキュメントに記述する必要はない。)
>
> といったところでしょうか。
> # 問題があればご指摘ください。

根本的なところで、taint 機構が対象としている危険性とはなにか、というと
ころがよくわかりません。

perl が参考にならないか、と思って perlsec を読んでみたりもしたのですが、
あっちは read mode の open が許されていたり、想定されている危険性が違っ
ている気がしました。
-- 
[田中 哲][たなか あきら][Tanaka Akira]

In This Thread