Apple、Mac App Storeからインストールした一部のアプリが一時的に起動できなくなった問題の原因を説明 18
ストーリー by headless
証明 部門より
証明 部門より
Mac App Storeからインストールしたアプリの一部で、破損しているため再インストールが必要といったエラーメッセージが表示され、アプリが起動できないトラブルが先週発生していた。Mac App Storeが発行するセキュリティ証明書の期限切れが原因とされていたが、これについてAppleが開発者に謝罪し、詳細な原因を説明している(MacRumorsの記事、
9to5Macの記事、
The Vergeの記事)。
Appleでは、これまでMac App Storeで使用していたセキュリティ証明書の有効期限が近づいたことから、9月に新たなセキュリティ証明書を発行した。古い証明書のハッシュアルゴリズムがSHA-1だったのに対し、新しい証明書はSHA-2を使用している。
しかし、一部のユーザーではシステムを再起動してキャッシュをクリアしなければ、Mac App Storeの再認証が行われない状況になっていたという。キャッシュの問題については、今後のOS Xアップデートで対応すると述べている。
また、一部のアプリではレシート検証コードでSHA-2をサポートしない古いバージョンのOpenSSLを使用しているため、新しい証明書ではレシートの検証が行えなかったようだ。これについてAppleでは、SHA-2証明書をSHA-1証明書に置き換えることで対処したとのこと。
ほとんどの問題はこれまでに解決しているが、証明書について誤った仮定をしたレシート検証コードを使用している一部のアプリでは、検証に失敗する問題が続いているという。そのため、Appleではコードがレシート検証プログラミングガイド (日本語版PDF)に従っているかどうか確認し、問題が解決したことを確認するよう開発者に求めている。
Appleでは、これまでMac App Storeで使用していたセキュリティ証明書の有効期限が近づいたことから、9月に新たなセキュリティ証明書を発行した。古い証明書のハッシュアルゴリズムがSHA-1だったのに対し、新しい証明書はSHA-2を使用している。
しかし、一部のユーザーではシステムを再起動してキャッシュをクリアしなければ、Mac App Storeの再認証が行われない状況になっていたという。キャッシュの問題については、今後のOS Xアップデートで対応すると述べている。
また、一部のアプリではレシート検証コードでSHA-2をサポートしない古いバージョンのOpenSSLを使用しているため、新しい証明書ではレシートの検証が行えなかったようだ。これについてAppleでは、SHA-2証明書をSHA-1証明書に置き換えることで対処したとのこと。
ほとんどの問題はこれまでに解決しているが、証明書について誤った仮定をしたレシート検証コードを使用している一部のアプリでは、検証に失敗する問題が続いているという。そのため、Appleではコードがレシート検証プログラミングガイド (日本語版PDF)に従っているかどうか確認し、問題が解決したことを確認するよう開発者に求めている。
でも安いよね (スコア:1, 参考になる)
でもデベロッパーがいちいちSymantec等から購入しなければいけないWindowsアプリやドライバ用デジタル署名に比べれば
Appleが代行して貼っつけてくれるから破格の安さなんだよね。
今回はそのAppleのチョンボということなだけ。
Re:でも安いよね (スコア:1)
Windowsも、ストアアプリで審査を通せばMS側で署名をつけてくれますよw
詳細はまだよくわかりませんが、ドライバの方もWin10デバイス共通のユニバーサルWindowsドライバ(UWD)という物ができるとか。
Re: (スコア:0)
> 詳細はまだよくわかりませんが、ドライバの方もWin10デバイス共通のユニバーサルWindowsドライバ(UWD)という物ができるとか。
Windows 10のドライバーに署名してもらうにはEV証明書が必要 [security.srad.jp]だから別に安くないでしょう。
Re:でも安いよね (スコア:2)
ユニバーサルWindowsドライバ(UWD)という物
これは常にカーネルモードドライバなの?
Re: (スコア:0)
「MSに署名してもらうには」EV証明書が必須。ユーザーモードドライバは(カーネルモードドライバも現時点ではまだ)MSに署名してもらう必要がないだけ。
Re:でも安いよね (スコア:2)
MSはEV証明書で作った署名要求がない場合は署名しないの?
Re: (スコア:0)
http://blogs.msdn.com/b/jpwdkblog/archive/2015/09/18/windows-10-sha-1.aspx [msdn.com]
> Q: 何をすればマイクロソフトの署名を手に入れることができるのか?
> A:ハードウェア ダッシュボードにドライバーを申請する必要があります。
(中略)
> 2015 年 10 月 31 日 より、ハードウェア ダッシュボード の申請サービスの利用にあたって、EV 証明書の登録が必要になります。
Re: (スコア:0)
安かろう悪かろう
高いのはただのボッタクリってワケじゃなかったと。
Re: (スコア:0)
何にでもケチつけりゃいいってもんじゃねーぞ!
Re: (スコア:0)
それアンチM$(笑)にも言ってあげて
古い OpenSSL て (スコア:0)
> 一部のアプリではレシート検証コードでSHA-2をサポートしない古いバージョンのOpenSSLを使用している
これって少なくとも Heartbleed 問題を修正する前のバージョンですよね。
レシート認証で外部接続を受け付けるわけではないので Heartbleed 問題は発生しません(ことを祈ります)が、
危険なバージョンのライブラリが使い続けられるのは問題ですよね。
SHA-1 は来年いっぱいで終了ですし、Apple の一声で対応、移行が進めば良いのですが。
# いざとなれば Apple なら未対応のアプリを公開停止にするぐらい強気にやってくれると思いますが
Re:古い OpenSSL て (スコア:1)
OpenSSL の SHA-2対応は 0.9.8 から(つまり、古い OpenSSL って 0.9.7以前?)
Heatbleed があり得るのは 1.0.1 から (1.0.0以前には Heartbeatコード自体が入っていない)
というわけで、Heartbleed については心配しなくてよろしいかと
# OpenSSLの他のバグが放置されている可能性はありますが...
なんちゃってプログラマ?
ていうか (スコア:0)
定期的にApp Storeでログインしてれば問題もなにもない話じゃないの
Re: (スコア:0)
再起動しないってのも問題あるかもね。
最近のMacはOSのアップデートでもないと再起動しないって人も多そうwww
それだけ安定してるってことなんだろうけど、たまには再起動した方が良さそうだね。
SHA-1証明書に置き換えることで対処した (スコア:0)
発覚がもう少し遅れて来年になってたらどうするつもりだったんだろう(SHA-1証明書の新規発行が不可能)。
Re: (スコア:0)
物理的に発行出来ないわけじゃなくて発行しないという取り決めに過ぎないし、
Apple製品にはAppleのルート証明書が入ってるからApple自身は好きに発行できると思う。
ルート証明書の更新を伴うアップデートでトラブってたら泣くに泣けんけど。文鎮化の一種だな。