Outlook 2016/2013/2010/ 2007 のセキュリティ修正プログラム 2018 年 1 月分がリリース

1/9 に Office 2016, 2013, 2010 および 2017 のセキュリティ修正プログラムがリリースされました。以下は各製品のそれぞれの KB へのリンクです。

Office 2016

Outlook 2016 のセキュリティ修正

2016 の Outlook のセキュリティ更新プログラムの説明: 2018 年 1 月 9日
1 件のセキュリティ修正と 2 件のセキュリティ以外の修正が行われています。

Office 2016 共通コンポーネントのセキュリティ修正

2016 の Office のセキュリティ更新プログラムの説明: 2018 年 1 月 9日
1 件の Outlook 2016 に関する修正が行われています。

Office 2016 共通コンポーネントの修正

2016 (KB4011625) の Office の更新プログラムを 2018 年 1 月 2日
1 件の Outlook 2016 に関する修正が行われています。

2016 (KB4011630) の Office の更新プログラムを 2018 年 1 月 2日
1 件の Outlook 2016 に関する修正が行われています。

2016 (KB4011659) の Office の更新プログラムを 2018 年 1 月 2日
1 件の Outlook 2016 に関する修正が行われています。

Word 2016 のセキュリティ修正

2016 の Word のセキュリティ更新プログラムの説明: 2018 年 1 月 9日
1 件の Outlook 2016 に関するセキュリティ修正が行われています。

Office 2013

Outlook 2013 のセキュリティ修正

Outlook 2013 のセキュリティ更新プログラムの説明: 2018 年 1 月 9日
1 件のセキュリティ修正と 2 件のセキュリティ以外の修正が行われています。

Word 2013 のセキュリティ修正

Word 2013 のセキュリティ更新プログラムの説明: 2018 年 1 月 9日
1 件の Outlook 2013 に関するセキュリティ修正が行われています。

Office 2010

Outlook 2010 のセキュリティ修正

Outlook 2010 用のセキュリティ更新プログラムの説明: 2018 年 1 月 9日
1 件のセキュリティ修正と 1 件のセキュリティ以外の修正が行われています。

Word 2010 のセキュリティ修正

Word 2010 のセキュリティ更新プログラムの説明: 2018 年 1 月 9日
1 件の Outlook 2010 に関するセキュリティ修正が行われています。

Office 2007

Outlook 2007 のセキュリティ修正

Outlook 2007 用のセキュリティ更新プログラムの説明: 2018 年 1 月 9日
1 件のセキュリティ修正が行われています。

Word 2007 のセキュリティ修正

Word 2007 セキュリティ更新プログラムの説明: 2018 年 1 月 9日
1 件の Outlook 2007 に関するセキュリティ修正が行われています。

広告

11周年

2007 年にこのブログをはじめて、11 周年になりました。

昨年も前年比で 10,000 程度微増となり、年間 100 万アクセスをキープすることができました。
今でも「Outlook マクロ」で検索するとトップで表示されており、これもひとえにコメントで様々なご要望をお寄せくださる読者の方々のおかげと感謝しております。

これからも、Outlook を活用してもらうべく、様々なマクロや Tips を紹介してまいりますので、よろしくお願いいたします。

Office 365 で TLS 1.0/1.1 が廃止された際に Outlook で必要な設定と TLS 1.2 が使用されているかを確認する方法


来年の 3 月 1 日から、Office 365 で TLS 1.2 未満のサポートが廃止されることが MC126199 として発表されました。

廃止されるまでに準備が必要というようなことも併せて発表されているのですが、具体的に何が必要なのかというのがちょっとわかりづらい内容となっています。

そこで、TLS 1.2 未満が廃止された後、Outlook で Office 365 に接続するために必要な手順をクライアント OS ごとにまとめてみました。

Windows 10 および Windows 8.1

Windows 10 と Windows 8.1 についてですが、この場合は何もする必要がありません。
これらの OS は既定で TLS 1.2 が有効化されており、サーバーが TLS 1.2 に対応していない場合に TLS 1.1 や TLS 1.0 を使用するというような動作になっています。

Windows 7

Windows 7 の既定では TLS 1.0 のみが有効化されている状態であり、Office のバージョンによってはレジストリ設定が必要となる場合があります。
また、修正プログラムの適用が必要となります。

Windows 7 の修正プログラム KB3140245

この修正プログラムは、WinHTTP というコンポーネントを使用するアプリケーションで TLS 1.1 や TLS 1.2 を使用できるようにするためのものです。
Outlook は Office 365 への接続で WinHTTP を使用しているので、この修正プログラムの適用が必要となります。
修正プログラムの提供方法などについては以下のマイクロソフト技術情報を参考にしてください。

WinHTTP が Windows での既定のセキュリティで保護されたプロトコルとして TLS 1.1 および TLS 1.2 を有効にする更新プログラム

なお、Windows Update で最新の状態にしておけば、この修正プログラムを個別に適用する必要はありません。

WinHTTP で TLS 1.1/1.2 を使用するレジストリ設定

以下の条件では TLS 1.1 と TLS 1.2 を有効にするためのレジストリ設定が必要となります。

  • Office 2010 を使用している
  • Office 2013 で、2015 年 9 月以降にリリースされた Office 2013 の共通コンポーネント (MSO.DLL) の修正プログラムを適用していない
  • Office 2016 の MSI 版を使用している
  • Office 2016 の C2R 版で Version 1601 以降の修正を適用していない

具体的には以下のいずれかのキーに DefaultSecureProtocols という名前で REG_DWORD の 0xA80 という 16 進数を追加します。

HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\WinHttp
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\WinHttp
HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Internet Settings\WinHttp

なお、上記の技術情報の中の「簡単な解決策」にある [Download] ボタンをクリックし、簡易修正ツールを実行することで、レジストリ設定が行われます。

Schannel のレジストリ設定

環境によっては、以下のキーのそれぞれに DisalbedByDefault という名前で REG_DWORD の 0 という値を追加する必要があるようです。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Client
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client

Windows 8

Windows 8 も TLS 1.1/1.2 を使用可能とするには修正プログラムの適用が必要となりますが、Windows 8 はサポートが終了しているため、修正プログラムの入手ができません。
そのため、Windows 8.1 へのアップグレードが必要となります。

TLS 1.2 が使用されているかを確認する方法

Windows 10 などでは設定が不要といっても、実際に使用されているのかが不安、という方もいるかもしれません。
残念ながら Outlook の UI などでは使用されている暗号化アルゴリズムなどはわからないため、確認するためにはパケットを採取して調査する必要があります。

以下は、マイクロソフトから無償で提供されている Microsoft Message Analyzer を使って確認する手順です。

  1. Microsoft Message Analyzer をインストールする
    インストール手順は、以下の URL を参照してください。
    https://social.technet.microsoft.com/wiki/contents/articles/26806.microsoft-message-analyzer-ja-jp.aspx
  2. Microsoft Message Analyzer を管理者権限で起動する
    パケット キャプチャを行うには管理者権限が必要なため、Message Analyzer のアイコンを右クリックして [管理者として実行] により起動します。
  3. パケット キャプチャを開始する
    パケット キャプチャを開始するには、[Start Page] にある [Start Local Trace] をクリックします。
    image
  4. Outlook を起動し、Exchange Online に接続する
  5. 接続を確認したら、パケット キャプチャを停止する
    パケット キャプチャを停止するには、ツールバーの停止ボタンをクリックします。
    image
  6. Outlook のパケットを絞り込むため、プロセス単位の表示にする
    [Layout] の [Network] にある [Process Name and Conversations] を選択すると、パケットがプロセス単位にグループ化されます。
  7. Outlook の HTTPS 接続のパケットを探す
    パケットの一覧の [ProcessName] の横に “OUTLOOK” と表示されているグループを展開し、さらに Network を展開し、Transport の右に “TCP: xxxxx – HTTPS)443)”  と表示されているグループを展開します。
  8. TLS Handshake の Client Hello を探す
    展開したパケットの [Summary] が “Records: [Handshake: [Client Hello]]” となっているパケットを探します。
    もし、7. で展開したパケットに Client Hello がなかった場合は、別の Network のグループを展開して探します。
  9. Client Hello の Details から TLS のバージョンを確認する
    Client Hello のパケットを選択したら、ウィンドウ下部の [Message Stack 1] で [TLS] を選択し、その右の [Details 1] の  “records” を展開します。
    以下のように version で TLS 1.2 と表示されれば、TLS 1.2 で通信されているということが確認できます。
    image

補足:

この記事の公開当初、Windows 8 については修正プログラムの適用が不要と記載していましたが、正しくは修正プログラムの適用が必要であるが、入手はできないということが判明しため、Windows 8.1 にアップグレードするという記載に変更しました。

Exchange 環境でほかのユーザーの予定表を参照する際の動作

コメントにて以下のご質問をいただきました。


コメント失礼します。

outlook2016‐exchange2016です。

〈ご質問したいこと〉

素朴な疑問で恐縮なのですが、outlookで組織内(同じ上司の配下です)ユーザーの予定表を参照する際、EWSって影響するのでしょうか。

〈補足〉

下の予定表問題に対してメールボックスの EWS を有効化したら直ったと言われてますがしっくり来てません。

 ー問題

ユーザXからユーザAの予定表は見えていて、ユーザBの予定表を表示しようとするとエラーになり、アイテムが1つも表示されません。

ユーザYからはA、Bの予定表は参照可能で、

X、Yの権限はA、Bに対して共にデフォルトの参照権限です。

かつ、OWAからはユーザXからユーザBの予定表を参照可能です。

OLKのプロファイル再作成は試して改善しませんでした。

エラーはうろ覚えで申し訳ありませんが、403エラー系、権限が不足している旨の表示だったと思います。

初めてお世話になりますが、どうぞよろしくお願いします。


結論から言えば、Outlook で他のユーザーの予定表を参照する際には EWS の影響を受けます。

Outlook で他のユーザーの予定表を参照する際の詳細な動作は以下の通りです。

  1. 空き時間情報の表示
    1.1. 空き時間情報の取得を行うための EWS の URL を自分のメールアドレスによる AutoDiscover で取得
    1.2. EWS により他のユーザーの空き時間情報を取得
  2. 他のユーザーのメールボックスの予定表から取得した予定アイテムをもとにした詳細表示
    2.1. 他のユーザーのメールボックスにログオンするための接続情報をそのユーザーのメールアドレスによる AutoDiscover で取得
    2.2. 取得した接続情報をもとにメールボックスにログオン
    2.3. 予定表のアクセス権がある場合、予定表フォルダーからアイテムを取得して表示

上記の 1.2. で EWS を使用して空き時間を採取するのですが、ここで失敗してしまうと 2. 以降には進みません。
そのため、EWS を有効化しない場合に表示ができないという現象が発生します。

なお、EWS が無効でも別のユーザーからは予定表が参照できていたようですが、その場合は共有フォルダーのダウンロードがオンになっていて OST にダウンロードされている予定表の表示ができていたということではないかと思います。

EWS は空き時間情報の取得だけでなく、不在時の応答の設定や、代理人設定などでも使用されるものですので、EWS は常に有効化しておくべきでしょう。

受信者のドメインに応じた署名を追加するマクロ

コメントにて以下のご要望をいただきました。


いつも勉強させていただいてます。
ありがとうございます。

新規メールの作成時、メールの返信時において、
  署名をメールの宛先のドメインに合わせて変更することは可能でしょうか。
ぜひご教示いただければ幸いです。
よろしくお願いいたします。

操作環境
Windows 7
  Outlook 2013


以下のマクロは特定のドメインへの署名をドメイン名で作成しておき、受信者のドメインに応じた署名を追加するというものです。
例えば、example.com への返信に使用したい署名はあらかじめ “example.com” という名前で署名を作成しておく必要があります。

' ここをトリプルクリックでマクロ全体を選択できます。

Public Sub ChangeSignatureByRecipients()
     Dim curItem As MailItem
     Dim strSigFolder As String
     Dim objFSO As Object ' FileSystemObject
     Dim objRec As Recipient
     Dim strRecDomain As String
     ' 表示中のアイテムを取得
     Set curItem = ActiveInspector.CurrentItem
     curItem.Display
     ' 署名が保存されているフォルダーを取得
     strSigFolder = Environ("APPDATA") & "\Microsoft\Signatures\"
     Set objFSO = CreateObject("Scripting.FileSystemObject")
     For Each objRec In curItem.Recipients
         ' 受信者のドメインを取得
         strRecDomain = objRec.Address
         strRecDomain = Mid(strRecDomain, InStr(strRecDomain, "@") + 1)
         ' ドメイン名の署名が存在した場合に署名を挿入
         If objFSO.FileExists(strSigFolder & strRecDomain & ".txt") Then
             Dim stmFile As Object ' TextStream
             ' 署名ファイルを開く
             Set stmFile = objFSO.OpenTextFile(strSigFolder & strRecDomain & ".txt", 1, False, -1)
             Dim docBody As Object ' Document
             Dim strText As String
             Set docBody = curItem.GetInspector.WordEditor
             ' 本文の先頭に署名を追加
             docBody.Parent.Selection.MoveDown
             docBody.Parent.Selection.TypeText stmFile.ReadAll()
             docBody.Parent.Selection.MoveUp 5, 99
             stmFile.Close
             ' 署名を挿入したらループを終了
             Exit For
         End If
     Next
End Sub

マクロの登録方法やメニューへの追加について

Outlook 2016/2013 の累積的な修正プログラム 2017 年 12 月分がリリース

12/5 に Outlook 2016 および Outlook 2013 の累積的な修正プログラムがリリースされました。
以下は各製品のそれぞれの KB へのリンクです。

Office 2016

Outlook 2016 の修正

2017 年 12 月 5日で、更新プログラム Outlook 2016 (KB4011570)
10 件の不具合修正が行われています。

関する不具合修正が行われています。

Office 2013

Outlook 2013 の修正

2017 年 12 月 5日は、Outlook 2013 (KB4011282) の更新します
5 件の不具合修正が行われています。

Outlook で画面の表示が乱れる現象が発生する場合の対処方法

 

Outlook を長時間 (環境によっては数時間) 使用し続けると、以下のような現象が発生する場合があります。

  • リボンなどのボタンの表示がされなくなる
  • メールの本文が空白になったり、黒く表示される
  • ナビゲーション ウィンドウのフォルダーが表示されなくなる
  • UI が四角だけで表示される

多くの場合、この現象は画面描画のためのメモリ確保が行えずに発生します。
この記事では、メモリ不足による画面描画を解消するためのいくつかの方法をご紹介します。

OST や PST から不要なアイテムを削除、移動し、使用していない PST をプロファイルから削除する

多くの場合、Outlook では OST や PST というメールを保存するためのファイルを開いています。
これらのファイルは Outlook の起動中には常に開かれた状態となっており、メールの読み書きに伴ってランダムにアクセスされます。
環境によっては一つの OST/PST のサイズが数ギガとなり、さらには複数の PST を同時に開くというようなこともあるでしょう。
そして、現在開いているフォルダーやメールのデータだけでなく、バックグラウンドで処理される動作などによりファイルのデータがメモリ上にキャッシュされ、メモリが大量に使用される動作となります。

したがって、メモリの使用量を抑えるには、普段使用している OST や PST のアイテムの量を減らし、使用していない PST はプロファイルから削除してしまうというものが考えられます。
パフォーマンス上の指標とはなりますが、以下のマイクロソフト技術情報では一つのフォルダーには 10 万アイテム、一つの PST には 500 フォルダーまでが正常な動作範囲というものがあります。

2768656 Outlook performance issues when there are too many items or folders in a Cached mode .ost or .pst file folder

一つのプロファイルあたりどのくらい PST を使えるのかという情報がちょっと見当たらないのですが、結局のところ PST の数というより、すべての PST のサイズを合計してどの程度になるのかという観点で考えたほうが良いかもしれません。

ハードウェア グラフィック アクセラレータを有効にする

Office 2013 以降の Office 製品では、DirectX によるハードウエア グラフィック アクセラレータを使用して画面描画が行われています。
これにより高速な画面描画ができるようになったのですが、一部のアクセラレータで正常な動作が行われない場合があり、[ハードウェア グラフィック アクセラレータを無効にする] をオンにしてアクセラレータを無効にするという方法が問題の対処として実施されている場合があります。
しかし、アクセラレータを無効にすると、画面描画をソフトウェアで実行するため、メモリの使用量が若干増えるようです。

Office 2013 のリリースから 4 年経過し、Office 自体やビデオドライバーの改善により問題が解消されている可能性もありますので、以前何らかの理由で [ハードウェア グラフィック アクセラレータを無効にする] をオンにしていた場合、最新の Office の修正プログラムやグラフィック カードのデバイス ドライバーを適用してアクセラレータを有効にすることで、メモリ消費を抑え、かつ高速に画面描画ができるようになるかもしれません。

高解像度のディスプレイでは DPI を 200% 以上に設定する

最近では高解像度のディスプレイを持つノート PC が普及していますが、このような環境では画面上に表示される情報量が増え、それに伴ってメモリの消費量が増える結果となります。
一例では、1600 x 1200 ピクセルのディスプレイで全画面表示した場合のメモリ消費量が 8 メガバイトあるのに対し、3840 x 2160 ピクセルのディスプレイで全画面表示した場合には 4 倍の 32 メガバイトになったというものがあります。
そのため、高解像度のディスプレイでは DPI を 200% 以上とし、画面に表示される情報量を減らすことでメモリの消費量を抑えることができます。
なお、同様の理由でマルチモニターでの使用や、ウィンドウを多数開くような使用もメモリ消費を増やす原因となりますので、このような使用方法も避けたほうがよいでしょう。

タッチでメッセージのスクロールを行わないようにする

最近のノート PC ではタッチスクリーンが当たり前のようになり、メッセージのスクロールもタッチ操作で行うことができます。
しかし、タッチ操作でスクロールを行うと、メモリの消費が多いという情報があります。
そのため、スクロールはマウスやキーボードで行ったほうが良いようです。

不要なアドインを無効化または削除する

プレインストールで Office がインストールされているような場合、同時にサードパーティ製の Outlook のアドインがインストールされていることがあります。
これらの中には便利なものもあるのですが、最初からインストールされているだけで使ったこともないというようなものもあるでしょう。
不要なアドインを無効化または削除すれば、Outlook のメモリ使用量も抑えることができ、アドインに起因するパフォーマンスの問題なども改善されるかもしれません。

なお、マイクロソフトの Outlook のアドインには以下のようなものがありますが、使用していなければこれらも無効化してかまわないでしょう。

  • Microsoft Exchange Add-in (サーバーが Microsoft Exchange や Outlook.com でなければ不要)
  • Skype Meeting Add-in for Microsoft Office 201X (Skype for Business を使用していなければ不要
  • Microsoft IME Outlook アドイン (連絡先アイテムの姓名フリガナを IME に自動登録しないなら不要)
  • Microsoft SharePoint Server Colleague Import Add-in (SharePoint の連絡先などと同期していないなら不要)
  • OneNote Notes about Outlook Items (メールを OneNote にコピーするような操作を日常的に行っていないなら不要)
  • Microsoft VBA for Outlook AddIn (Outlook のマクロを使用していないなら不要)
  • Outlook Social Connector 2016 (メールの下部に表示される人物情報ウィンドウを使っていないなら不要)

Office 2016/2013 を最新の状態に更新する

Office の共通コンポーネントや Outlook がメールの表示に使用する Word の修正には画面描画やメモリの使用に関する改善が含まれている場合があります。
したがって、Outlook だけでなく、Word や Office の最新の修正プログラムを適用することが現象改善につながるといえます。

さらに、Windows が 64 ビット版で、32 ビットの Outlook 2016 のクリック実行版を使用している場合のみの話ですが、更新チャネルを月次チャネルとして最新の状態 (Version 1709 以降) に更新すると、Outlook 2016 が使用できるメモリの量が 2 ギガバイトから 4 ギガバイトに倍増します。
これは、Windows の Large Address Aware という機能に Outlook 2016 が対応したためです。
通常、Office 2016 をインストールすると、Windows が 64 ビット版であっても、Office アプリケーションは 32 ビット版がインストールされます。
この場合、PC に 2 ギガバイトよりも多いメモリが搭載されていたとしても、32 ビット版のアプリケーションが使用できるメモリの量は最大で 2 ギガバイトに制限されます。
これは、32 ビットの環境では Windows が使用するメモリとして 2 ギガバイトが予約されていることに起因します。
しかし、Windows が 64 ビット版である場合、32 ビット環境で予約されていたメモリ空間をユーザー アプリケーションに開放する Large Address Aware というオプションがあり、Version 1709 以降の Outlook 2016 ではこれが有効となっているので 4 ギガバイトまで使用できるようになったのです。

なお、最新の状態にしても、[ファイル]-[Office アカウント] の 右側の Office ロゴの下のバージョンが 1709 以上にならない場合は、以下のマイクロソフト技術情報の [Download] をクリックして修正プログラムを実行し、更新チャネルを月次チャネルとしてください。

延期チャネルから Office 365 製品ファミリ用の現在のチャネルに切り替える方法

Office 2016 を 64 ビット版に入れ替える

前述の通り、通常は Windows が 64 ビット版であっても Office は 32 ビット版がインストールされます。
これは、アドインやマクロなどが 64 ビットに対応していない状況を考慮したものと思われます。
しかし、マクロやアドインに問題がなければ 64 ビット版にすることで、PC の搭載メモリを十分に活用した処理ができるようになります。
なお、Outlook だけを 64 ビットにするということはできないため、Office 全体をアンインストールし、64 ビット版を再インストールする必要があります。

 

参考情報:

Office 365 ProPlus 更新プログラム チャネルの概要
32-bit Outlook interface elements unexpectedly render in black, white, or blank
Large Address Aware in Outlook 2016