Magento公式よりMagentoの全バージョンを対象としたセキュリティパッチがリリースされました。
このセキュリティパッチは、任意のプログラムをMagento上で実行できてしまう可能性があるため、可及的速やかに適用が求められています。

脆弱性の影響を受けるシステム

基本的にApacheをHTTPサーバーとしている以下の環境が対象です。

  • RedHat Enterprise Linux 5/6
  • CentOS 5/6

ですが、他の環境であっても影響を受ける可能性があるため、念のためチェックをする必要があります。

脆弱性によって引き起こされる被害

任意のプログラムを実行できてしまうため、以下のような被害が予想されます。

  • システムの構成情報を盗み見られる
  • データベースを操作するバックドアプログラムを設置されてしまい、個人情報が盗まれる
  • Magentoのシステムファイルを改変され、他のサイトへの攻撃の踏み台にされる

攻撃者はPHPとApacheが実行できるありとあらゆることが可能になるため、放置することは非常に危険です。

脆弱性の有無の見分け方

サーバー上にtest.php.csvという名称で、以下のようなファイルを作成し、ブラウザからアクセスします。

<?php
phpinfo();
?>

もし、phpinfoの内容がブラウザに表示されるようであれば、設定の見直しが必要です。

対策方法

Apacheの設定ファイルの中で、PHPに関する設定を行っている場所を探します。

AddHandler application/x-httpd-php .php

上記の内容を、以下のように書き換えます。

<FilesMatch \.php$>
SetHandler application/x-httpd-php
</FilesMatch>

環境によっては以下のように書く必要があるかもしれません。

<FilesMatch \.php$>
SetHandler php5-script
</FilesMatch>

設定ファイルを保存したら、Apacheを再起動し、先ほどの確認作業を行います。
phpinfoの内容が出なくなれば、対策作業は完了です。

パッチについて

パッチ自体は、管理画面を対象に、2つのファイルに対する修正を行います。
ダッシュボードのグラフに関する処理を修正するのですが、データの暗号化と復号化に関する処理が見直されています。
その他の箇所には影響しないので、適用すること自体へのリスクはあまり高くないと言ってもよいでしょう。

適用作業について

まず、使用中のバージョンに適合したパッチをダウンロードします。
ダウンロード自体はMagento公式サイトから行えます。

パッチと対象バージョンの関係ですが、

バージョンパッチ
EE 1.13 または 1.14, CE 1.8 または 1.9 SUPEE-1533_EE_1.13.x_v1.patch
EE 1.12, CE 1.7 SUPEE-1533_EE_1.12.x_v1.patch
EE 1.11, CE 1.6 SUPEE-1533_EE_1.11.x_v1.patch
EE 1.10.1, CE 1.5.1 SUPEE-1533_EE_1.10.1.x_v1.patch
EE 1.10.0.1, CE 1.5.0.1 SUPEE-1533_EE_1.10.0.x_v1.patch
EE 1.9 SUPEE-1533_EE_1.9.x_v1.patch

となっています。
基本的に全バージョン対象となっていますが、Magento CE 1.4以前については、EE 1.9向けのパッチをベースにして自力で調整する必要があります。 

パッチのアップロードと適用作業の実施

パッチをMagentoのドキュメントルートにアップロードします。
その後、パッチを実行し、app/etc以下にパッチ適用結果のファイルができていることを確認します。
環境によっては、patchコマンドがインストールされていないことがありますので、その場合は適宜インストールして作業を行ってください。

パッチが適用できない環境の場合

共用レンタルサーバーなどでリモートアクセスが出来ない場合は、以下の手順で適用作業ができます。

  1. パッチをテキストエディタで開き、__PATCHFILE_FOLLOWS__と書かれている行より後ろの内容を確認する。
  2. app/code/core/Mage/Adminhtml/Block/Dashboard/Graph.phpとapp/code/core/Mage/Adminhtml/controllers/DashboardController.phpを修正する

修正する際は、パッチの中に書かれている、「-」の行の内容を「+」の行の内容で置き換え・追記すればOKです。

パッチの適用方法がわからない・不安だ、対象かどうかもわからないという方へ

弊社ではパッチの適用が自力では難しい、という方向けに、をご提供しています。
お気軽にご相談ください。