Apple公式のShellshockパッチ「OS X bash Update 1.0」をOS X 10.6 SnowLeopard以下のMacにも当てる方法。

シェアする

スポンサーリンク

 Apple公式のbashパッチをSnowLeopardなどに当てる方法です。詳細は以下から。

 先日リリースされた「OS X bash Update 1.0」はOS X 10.9 Mavericks, 10.8 Mountain Lion, 10.7 Lionまでにしか対応しておらず、SnowLeopard以下はアップデートがない状態ですがそれらのOS X にApple公式の「OS X bash Update 1.0」インストーラーを当てる方法がMacIssueに公開されています。


OS-X-SnowLeopard-OS-X-bash-Update-patch2


pkgを作る

1.まずOS X 10.7 Lion用の「OS X bash Update 1.0」をAppleのサイトからダウンロードします。


OS-X-bash-Update-1-for-Lion
[OS X bash Update 1.0 – OS X Lion]

2.dmgファイルをマウントしてpkgファイルを取り出し、新しく作ったディレクトリに展開(pkgutilコマンドのexpand)します。


BashUpdateLion-pkg-pkgutil-expand

pkgutil –expand ~/Download/BashUpdateLion.pkg ~/Download/SnowLeopard

3.展開したディレクトリ内にある「Distribution」をテキストエディタで開く。


OS-X-bash-Update-Distribution

4.「Distribution」内のInstallationCheckとVolumeCheckfunction(OSのバージョンチェック)内をreturn true;のみにし保存。


os-x-bash-update-Distribution-check

<?xml version=”1.0″ encoding=”UTF-8″ standalone=”no”?>
<installer-gui-script minSpecVersion=”1″>
<options hostArchitectures=”i386″ customize=”never”/>
<title>SU_TITLE</title>
<script>
</script>
<volume-check script=”VolumeCheck()”/>
<installation-check script=”InstallationCheck()”/>
<script>

function InstallationCheck(prefix) {

     return true;

}

function VolumeCheck(prefix) {

     return true;

}
</script>

5.pkgutilコマンドで再度pkg化して、SnowLeopardなどで使用します。


OS-X-bash-update-on-SnowLeopard

pkgutil –flatten ~/Download/SnowLeopard ~/Download/BashUpdateSnowLeopard.pkg

当ててみた

 SnowLeopardがインストールされている古いMacにパッチを当ててみた結果が以下の通り。


bashcheck-os-x-snowleopard

とりあえず、ShellshockのCritical vulnerability(CVE-2014-6271とCVE-2014-7169)は修正されますが、Appleの「OS X bash Update 1.0」は不完全という情報もあるので、まだSnowLeopardなどを使用している方は/bin/bashではないHomebrewやMacPortsのbashを使った方がいいかもしれません。

関連リンク:
Mac OS Xのbashに1行でShellShock(CVE-2014-6271 & CVE-2014-7169)脆弱性のパッチを当てる方法。b.hatena

OS XのBashで脆弱性CVE-2014-6271を修正する方法。b.hatena

MAC OS X 10.6.3 SNOW LEOPARD
アップル
2010-04-21