【2017/8/22追記】Unityのパッチを当てる方法

=====
2017/8/22追記

数日前、Unity Technologies からUnityの脆弱性報告とパッチ配布場所を知らせるメールが来ました。

この記事へのアクセス件数が多かったので、本件に関する概要を追記します。

パッチ適用方法です。

パッチ提供場所(英語)
https://unity3d.com/jp/security?utm_campaign=other_japan_information_2017-08-18-Global-Editor-Security-Notification-JP-Final&utm_content

上記HPにアクセスします。スクロールするとこのような画面が出るので、自分の使っているバージョンに合わせたものを選びます。

f:id:Takyu:20170822081536j:plain

たとえば、5.3を使っている場合、5.3.8p2を適用します。5.6.2f1を使っている場合、5.6.3p1を適用します。

つまり、5.X.Yのとき、Xが同じものを選べばよいです。

選択すると、Unityのインストーラが起動します。あとは、この記事に元々書いた内容と同一です。


なお、5.2以前はパッチ提供がありません。同じく提供されているworkaround toolというもので、今回の脆弱性を無効化できるようですが、Windowsのシステムが変更したとか、再インストールをしたとかで再度有効になる懸念もあるようです。
最新版のUnityにすることを強く推奨しています。


参考までに、公式HPからの通達の主な内容を訳しました。"()"は私の補足です。


どんな脅威なのか?

input string validation(入力時の文字列有効性チェック)に関する脆弱性により、リモートからコードが実行される

詳細は?

Unity’s responsible disclosure programの観点から、皆さんが今回のパッチ対応をした頃に改めて発表する

この脆弱性は、ビルドされたアプリにも影響するのか?

しない。Unity Editor のみ。

どのOSが対象か?

WindowsMacLinuxはこの脆弱性には影響しない。

対象となるWindowsは?

Unity が入った全てのWindowsが対象(7、8、8.1、10、Enterprise やPro版などの全てのWindowsと考えてよさそうです)

対象となるUnityのバージョンは?

全てのバージョン。

パッチを当てられるUnityのバージョンは?

5.3, 5.4, 5.5, 5.6, 2017.1. が対象。

4.x, 5.0, 5.1, 5.2.は対象外


=====


2015年7月時点でリリースされていたOculusDK2のSDK 0.6.0 betaを使うには、Unity5のパッチを当てる必要がありました。

Unityのパッチについては、Oculus系開発とは関係なく使う可能性がありますので、当てる方法をメモ代わりに残しておこうと思います。

1. Unityのパッチとは?


下記に記載があります。

正式リリースはまだだけど、新機能やバグfixを早めに使いたいというときに適用するものです。

指定されたバージョンのUnityがインストールされている状態で、インストールすると適用されます。

2. パッチの場所は?

ここにあります。

Unity - Unity QA - Patch Releases

3. どのUnityにどのパッチを当てればよい?

パッチリリースのページに、X.Y.ZpNという表示があります。

これは、X.Y.ZというバージョンのUnityに対応したN番目のパッチです、という意味です。

たとえば、

パッチ 5.1.1p3

の場合、Unity5.1.1に対応しています。

4. パッチを当てるには?

Unity5.1.1にp3を当てる場合を説明します。

パッチリリースのページからインストーラを取得します。

Windowsの場合:UnityDownloadAssistant-5.1.1p3.exe

Macの場合:UnityDownloadAssistant-5.1.1p3.dmg

あとは、これを実行すれば自動で当ててくれます。


パッチ適用が成功すると、Unityのバージョン表記が変化します。

f:id:Takyu:20150829163854p:plain



今回のOcuFesでは、Oculus Utility for Unity5 0.1.0 を使ったのですが、このときにパッチ指定があったので、Unity5.1.1p3を使いました。

以上、ご参考です。