アカウント名:
パスワード:
そもそもそのファームウェア自体をアレコレするマスターキーがわかったわけだからそのファームウェアをマスターキー使ってバラせば新しいカギも取り出せるんじゃないかな。なのでいくらカギを入れ替えてもいたちごっこかと。
だいぶ電波をばらまいてしまって申し訳ないんですが、公開鍵暗号の秘密鍵は配らなくていいんですよね…公開鍵があれば秘密鍵で署名されたバイナリが改変されてないことが確認できる、と。
秘密鍵は入っていなかったし、盗み出されてもないんです。ソニーの実装に問題があったために、任意の二つのバイナリから求められることが分かったんだそうで…
わかりやすいソースがあったら教えてください
フォーマットと欠陥についてのスライドがhttp://events.ccc.de/congress/2010/Fahrplan/attachments/1780_27c3_cons... [events.ccc.de]のp.121-125に。ツールのいくつかはhttp://www.geohot.com/ [geohot.com]に。
そもそも、ルートキー、つまりルート証明書の秘密鍵を個々に入れて配る必要性って何なんでしょう?
秘密鍵が必要ってのは、署名して正当なSONY製PS3だって証明するか、ユーザーとかには知られたくない情報を暗号化する必要があるからだと思うけれども、別にそれはルートキーである必要はなくて、ルートキーで署名した秘密鍵を幾つか持っておけば良かったわけですよね。万が一どれか漏れたら、ルートキーで署名された秘密鍵と漏れた鍵を含むCRLを、漏れていない秘密鍵で暗号化してバラ撒く。つまり中間公開鍵証明書じゃなく、中間秘密鍵証明書。
で、ゲームやファームとかのバイナリの署名は、それら本体に持たす秘密鍵とは別に作った普通の中間公開鍵証明書を使っておく。そうすれば秘密鍵がすべて漏れてもファーム書き換えは防げる。
ようするに、署名検証用の公開鍵と、暗号用の秘密鍵を一つのペアで行わなければ被害は限定的ですんだのに、ということですね。
PSP内ファームウェアにはいる新しい鍵は、復号鍵ではないの?共通鍵暗号の方式?それだったら今までもファームウェアを解析すれば、ばれてたのではないですか?
問題は、すでにある過去のソフトを動かすのが難しいと思います
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
開いた括弧は必ず閉じる -- あるプログラマー
こんなこともあろうかと・・・ (スコア:1)
コストはともかく、ファームウェアアップデートにしか使われないマスター鍵なんかを別途仕込んでおいて、普通のソフトウェアの署名確認用鍵の方は後からでも差し替えられる仕組みにしとくことは可能。けど、鍵のアップデートは、それ以前に発売されたゲームが動かなくなる事を意味するから、そもそも差し替えちゃまずい。
でも、発売されるゲームの数に対して本体ROM容量が十分にあれば、ホワイトリスト方式の実装は出来るかな。古い鍵で署名されている既発売のソフトのハッシュ値のリストをファームウェアにハードコードしちゃって、それらのソフトは新しい鍵で署名されてなくても起動可、と言うような。
ついでにもちろん、マスター鍵が漏れるとどっちにしろ終わりなので、よりいっそう厳重に管理する必要はある。滅多に使われるものではない分だけ、普段使いの鍵より管理しやすい、という程度の話。
Re:こんなこともあろうかと・・・ (スコア:2)
そもそもそのファームウェア自体をアレコレするマスターキーがわかったわけだから
そのファームウェアをマスターキー使ってバラせば新しいカギも取り出せるんじゃないかな。
なのでいくらカギを入れ替えてもいたちごっこかと。
こないだのストーリで (スコア:2)
だいぶ電波をばらまいてしまって申し訳ないんですが、公開鍵暗号の秘密鍵は配らなくていいんですよね…
公開鍵があれば秘密鍵で署名されたバイナリが改変されてないことが確認できる、と。
Re:こないだのストーリで (スコア:1)
そんな重要な情報を量産端末にわざわざ持たせた以上は、なにかしらそうせざるを得ない理由があったんでしょうが、 秘密鍵としては致命的に弱くなってしまうので、なんとか出来なかったのかなぁ、と。 そこまでPS3のセキュリティに自信があったんでしょうかね。
で、「ファームウェアアップデータをハードウェア依存にするなり通常のPSPソフトウェアの範囲では叩けないようにした上で、ファームウェアアップデータに動作を承認させるための署名用、最終防衛ライン、マスター秘密鍵」とかを別途用意し、それはPS3に入れて売るような無防備な扱いにはせず、いざというときのために本社の金庫室にしまっておく、っちゅうのは可能だと思うんですが、コスト的にどうなのかな、とか妄想してみました。
Re:こないだのストーリで (スコア:2)
秘密鍵は入っていなかったし、盗み出されてもないんです。ソニーの実装に問題があったために、任意の二つのバイナリから求められることが分かったんだそうで…
Re:こないだのストーリで (スコア:1)
わかりやすいソースがあったら教えてください
Re:こないだのストーリで (スコア:2)
フォーマットと欠陥についてのスライドがhttp://events.ccc.de/congress/2010/Fahrplan/attachments/1780_27c3_cons... [events.ccc.de]のp.121-125に。ツールのいくつかはhttp://www.geohot.com/ [geohot.com]に。
Re:こないだのストーリで (スコア:1, 参考になる)
そもそも、ルートキー、つまりルート証明書の秘密鍵を個々に入れて配る必要性って何なんでしょう?
秘密鍵が必要ってのは、署名して正当なSONY製PS3だって証明するか、ユーザーとかには知られたくない情報を暗号化する必要があるからだと思うけれども、
別にそれはルートキーである必要はなくて、ルートキーで署名した秘密鍵を幾つか持っておけば良かったわけですよね。
万が一どれか漏れたら、ルートキーで署名された秘密鍵と漏れた鍵を含むCRLを、漏れていない秘密鍵で暗号化してバラ撒く。
つまり中間公開鍵証明書じゃなく、中間秘密鍵証明書。
で、ゲームやファームとかのバイナリの署名は、それら本体に持たす秘密鍵とは別に作った普通の中間公開鍵証明書を使っておく。
そうすれば秘密鍵がすべて漏れてもファーム書き換えは防げる。
ようするに、署名検証用の公開鍵と、暗号用の秘密鍵を一つのペアで行わなければ被害は限定的ですんだのに、ということですね。
Re: (スコア:0)
PSP内ファームウェアにはいる新しい鍵は、復号鍵ではないの?共通鍵暗号の方式?
それだったら今までもファームウェアを解析すれば、ばれてたのではないですか?
問題は、すでにある過去のソフトを動かすのが難しいと思います