anchor
Mac買ったらこれだけはやっておけ!〜Macのセキュリティ、アンチウイルス、11の設定
これもWindowsからMacに乗り換えた時のシリーズかな。
最近やっぱり
「長年Windowsを使ってきましたが、Macのかっこよさが気になり、iPhoneとの相性もいいと聞いていますのでMacを使ってみたいと思っています」
という人が増えている。
そしてそういう人の質問はこう続く。
「アップルストアで聞いたら、Macにはウイルスが全くないのでウイルスソフトは必要ないといわれました。
Windowsを使ってきた感覚だとすごく違和感があるのですが、セキュリティのためにファイアウォールとかウイルス対策ソフトとか必要ないのでしょうか?」
これも過去に何回も書いてきたことなのだが、
「Macにはウイルスが無いからウイルス対策ソフトは必要ない」なんてデタラメを垂れ流すな
とまた強調しておきたい。
確かに現状Macにアクティブに感染するウイルスは見当たらないが、Macだって孤立しているわけではなくWindowsともファイルやメールのやり取りをするわけだし、Windowsのウイルスをノーチェックで渡していると立派な感染の媒介になってしまうのだ。
それにこれまで安全だったから、これからも未来永劫安全だと考えているようじゃ、福島の原発を批判する資格は無い。
Windowsの世界で流行したウイルスの傾向を見て、そこからどうMacを運用すればより安全になるかを学んでこそ、よりセキュアなシステムの運用といえるのだ。
さらにセキュリティリスクはウイルスだけではない。
そういう様々な状況への備えを考えると、残念ながらMacにだって脆弱性の原因になりかねない欠点がないわけではない。
そこでウイルス対策ソフトのことも含めて、Macを購入したら最初にやっておくべきセキュリティ向上の設定ということで、私が必ずやっていることを紹介する。
1)初級編〜自動ログインしないようにする
まずはいじるならここからが基本
システム環境設定はドックからアクセスできる
あるいは本体はアプリケーションフォルダの中のユーティリティフォルダの中にある
まずは「セキュリティ」に入る
これはモバイル必須、デスクトップ機でもやっておくべき設定
自動ログインを禁止することで紛失、盗難に遭った時に個人情報が漏洩することを防げる
実はパスワードはリセットできるというのは先日も取り上げたがそれでもこれは意味がある
世の中の98%の人はパスワードリセットができるスキルなんか持っていない
2)アカウントログインの設定
先の「セキュリティ」で自動ログインを禁止したのは複数アカウントにも対応するため
ここでは「入力メニューを表示」にもチェックを入れる
ログイン画面で英数文字が入力できなくなった時にこれで救われるケースがある
3)ファイアウォールの設定
市販のソフトをインストールする手もあるがOSXのシステムの
ファイアウォールもそれなりの機能を持っている
全ての接続をブロックすれば安全性は高いがいろいろ
ネットアプリを使いたい人は不便かもしれない
「署名されたソフト受信接続を自動的に許可」にチェックを入れて
その都度許可を出していくのが実用性が高いと思う
4)不要な共有などを閉じる
これも「直ちに危険性がおよぶ」わけではないがファイル共有、プリンタ共有など
必要としないものはできるだけ閉じておいた方がいい
特にリモートなどはパスワードの強度も含めて意識して運用した方がいい
5)Safariの問題ある設定を修正
Safariには7年ほど前に脆弱性が指摘された問題がある
この「安全なファイルを開く」設定のチェックがデフォルトで入っている
これでURIの脆弱性を攻撃するスクリプトを自動ダウンロードさせられるとアウトだ
URI脆弱性は解決したということかもしれないがやはりこの設定は外した方がいい
百害あって一利なし、ダウンロードしたファイルが
自動で開いて便利だと思ったことなんか一度も無いからだ
またフォームにパスワード、アカウント名を自動入力するこの設定は
パスワードを抜かれるスクリプトの餌食になるので外しておいた方がいい
あちこちのアカウントに自動ログインできて便利だがリスクはある
パスワードの自動入力を有効にしておきたいなら「詳細」でそのリストを管理する
銀行などダメージが大きいところは外した方がいい
またクッキーについてはデフォルトでそうなっているが
何でもかんでも吸い込まない設定にするのがいい
6)ウイルス対策ソフトを入れる
ウイルス対策ソフトについては散々これまでも書いてきたが
個人がMacを使うならフリーウエアのClamXavで充分だと思う
付属のClamXav Sentryが指定したディレクトリのウイルスを監視する
指定した領域の全域スキャンもできる
以前会社のネットワークと繋いでいた時にはNorton Anti Virusとふたつ起動していたが
個人使用ならこのClamXavだけで充分だ
「お薦めのウイルス対策ソフトは?」とたまに聞かれるが
アンチウイルスにあまり過大な期待を持たない方がいい
ならば実績もあるフリーウエアで充分だ
7)中・上級編〜ネットワークを監視する
ここからはできればやったらいいというセキュリティ
LittleSnitchをインストールしてネットワークを監視する
ファイアウォールは外から入ってくる接続しか監視できない
これで中から外に接続する不審な通信もあぶり出せる
見かけは取っ付きにくそうだがこのソフトは意外に分かりやすい
新規の接続を見つけると許可していいか聞いてくる
今回のみ許可するか今後ずっと許可するか許可しないかを選んでやる
また今通信を使っているアプリをリスト表示して
どのアプリが通信しているかもリアルタイムに監視できる
こういうものがあればスパイウエアなどを見つけることができる
見たこともないものが接続を求めてきたら疑ってかかればいい
8)Terminalを悪用するコードを実行させない
これは心得がある人にだけお薦めの設定
コマンドをTerminalで自動実行させないための設定法はここに書いた
さきのSafariのダウンロードしたファイルを開く機能と組み合わせて
悪意あるコマンドを実行されるリスクが相変わらずゼロではないと思う
保険のようなものだがやっておけば安心だ
2011年4月10日
anchor
Mac買ったらこれだけはやっておけ!(追記)〜Terminalが勝手に起動しない設定を日本語化した(追記あり)
先日取り上げた、
『Macのセキュリティ、アンチウイルス、8つの設定』
の話題で最後に取り上げたTerminalが勝手に起動されないために起動するか確認をする設定を日本語化した。
これを設定する方法はこちらの記事を参照願いたい。
Terminalを自動起動して悪意あるコードを実行されるリスクを回避するコード
基本的にはbashrcに以下の文字列をコピペするだけだ。
# keep my playground secure
echo "############################################################";
echo "## ##";
echo "## ターミナルが起動した理由に心当たりがないのなら以下の ##";
echo "## 質問に'n'をタイプしてください。'y'をタイプすれば通常 ##";
echo "## 通りターミナルを使えます... ##";
echo "## ##";
echo "############################################################";
echo "ターミナルを起動しますか? (y/n)";
read -r -t 15 -e OpenTerminal
if [ "$OpenTerminal" == "" ] || [ "$OpenTerminal" == "n" ]; then
exit 1;
fi;
if [ "$OpenTerminal" != "y" ]; then
LastCommand="$OpenTerminal";
echo "Open Terminal.app now (y/n)";
read -r -t 15 -e OpenTerminal
if [ "$OpenTerminal" == "y" ];then
echo "This was the command that started Terminal.app:";
echo $LastCommand;
else
exit 1;
fi;
fi;
上のコードをbashrcにコピペしてTerminalを起動すると
このように起動確認の質問が日本語になる
なんとなく回りくどい言い回しがUNIX的ではないですか?
MainMenu等を使って不可視ファイルを表示する
そして"/private/etc/bashrc"にあるbashrcを
テキストエディタで開き上記の文字列をコピペする
<追記>
このコードはTerminalでは正常に表示できるが、シングルユーザモードでログインすると、文字化けする。
bashは日本語を表示できるが、シングルユーザモードのシェルは日本語が表示できないからだ。
シングルユーザモードでも表示が止まったところで「y」キーを叩けば正常に使えるが、気持ち悪いと感じられる方はやはり英語で使い続けられることをお勧めする。
月に一度のメンテナンスの時くらいしかSUMは使わないから良いんだという気にしない方のみにお勧めできる設定だ。
2011年4月15日
9)中級編〜マルウエア対策で拡張子を表示せよ
先日「Mac買ったらこれだけはやっておけ!〜Macのセキュリティ、アンチウイルス、8つの設定」という話題を取り上げたが、一つ忘れていたので追記するので「9つの設定」になる。
今後も何か思い出したら随時増える。
最終的なまとめはTipsのページに置くつもり。
それで拡張子を表示する設定をする方法から解説。
これはシンプルにFinderの「環境設定」から「詳細」に入る。
拡張子を表示する設定はFinderの設定から
「すべてのファイル名拡張子を表示」にチェックを入れる
これでファイル、アプリなどの拡張子が表示される
「拡張子」が何かかわからないという方もいるかもしれない。なぜこの表示がセキュリティ上必要なのかも説明する。
拡張子というのはファイル名の後にドットを介して3文字〜数文字で表示される記号のこのドット以下の部分のことをいう。
例えば、
Macオンラインウエアのテスト記録.txt
というファイル名があると、このファイルは「Macオンラインウエアのテスト記録」というタイトルのテキストファイルであることがわかる。
Macの場合.txtの拡張子ならデフォルトでテキストエディタで開くのではないかということまでわかる。
かつては旧OSの時代、Macは拡張子とは違うデータフォーク(ファイルの本体)とは別の付属品でファイルの種類を認識していた。
しかしUNIXベースのOSXになってからMacでもUNIXの標準に従ってファイルの種別は拡張子を見るということになった。
しばらくはクリエーター識別と拡張子が同居していたが、段々拡張子に絞り込みつつあるようだ。
ところでこの拡張子によるファイル識別はWindowsも同じで、Windowsはクリエーター識別は拡張子しかなかった。
かつては拡張子が剥き出しだったWindowsは、見えない付属品で識別しているスマートっぽく見えるMacと見た目を同じにするために拡張子を隠すのが標準になってしまった。
その結果何が起きたかというと、ファイルの種類を詐称した偽ファイルのウイルス、トロイの木馬が流行する羽目になってしまった。
UNIXベースになったMacでも何をトチ狂ったのか、このWindowsのスタイルに準じてデフォルトで拡張子を隠すようになってしまった。
以下のようなケースがあるのでMacでもWindowsでも拡張子は表示しておくのをスタンダードにしておきたい。
ここにどこかからダウンロードしてきた「01 Highway Star」というmp3とおぼしきファイルがある
ところがこれをクリックすると時計が起動した
からくりはこういうことだ
これは「拡張子を表示する」設定にしてみると
「.app」つまりアプリケーションだということがわかる
ところがそれらしいファイル名にしてmp3のアイコンを貼付けるとmp3に見えてしまう
このようにして偽装して実行ファイルをユーザにクリックさせるということが可能になる
だからクリックする前に常に拡張子を確認する習慣をつけるべきなのだ
これで拡張子の表示と、常にクリックする前に拡張子を確認する習慣が重要だということがおわかりいただけただろうか。
このファイル種別の偽装はWindows世界ではほぼ日常的にウイルスなどのマルウエアで常用されている手口だ。
Macにはウイルスは無いから関係無いなんていっていないで、そういう手口から学んでMacでも是非気をつけてもらいたい。
この設定のことを思い出したので追記しておく。
2011年4月16日
anchor
Mac買ったらこれだけはやっておけ!(追記3)〜個人情報は暗号化して保存せよ
10)中級編〜個人情報は暗号化して保存せよ
先日「Mac買ったらこれだけはやっておけ!〜Macのセキュリティ、アンチウイルス、8つの設定」という記事を書いたところいろいろ反響をいただいた。
そのなかでログインパスワードを設定して、個人情報を守れという話を書いたところ
「File VaultとOpenFirmware Passwordが必要なのでは?」
というコメントがあった。
実は前にもこういうテーマを取り上げた時に同じ話題になった。
まずOpenFirmware Passwordについてはこちらでも取り上げた。
OSXのrootパスワードはシステムディスクがなくてもリセットできる2〜じゃオープンファームウエアパスワードなら安全なのか!?〜セキュリティのシチュエーションを整理してみた
ログインパスワードは実はリセットできてしまう。
ここにも取り上げた通り、システムインストールディスクが手許になくてもリセットできてしまう。
しかもその手順は再起動して、シングルユーザモードで簡単なコマンドを打ち込むというものでさほど難しくもない。
そういうことができてしまうと、ログインパスワードではやはり個人情報は守れないのではないか、
それならば昔からのMacユーザには知られているオープンファームウエアパスワードが、実は今のMacでもまだ有効なので、こちらの方がいいのではないかという疑念は当然出てくる。
しかしこれはリンク先にも書いたが、結論からいうとオープンファームウエアパスワード(正確には今はFirmware Passwordというらしいが)は、これもログインパスワードとさほど変わらない強度しかない。
そのリセット方法は困難でもない。
テストしたところ、シングルユーザモードもディスクターゲットモードも無効になってしまうので、メリットよりもむしろデメリットの方が大きいと判断した。
ログインパスワードを有効にすることは勿論無意味とは思わないが、ログインパスワードやFirmware Passwordで個人情報を完全に守るということは不可能だと考えた方がいい。
ならば、実際の盗難や紛失といった事故の時にどうやって個人情報を守るか?
ここでFile Vaultということになる。
ところがこの機能は登場当初「Macにログインできなくなってしまった」というトラブルを頻繁に起こしていた。
最近はかなり信頼性が向上してきているのだという。
それでも私個人的な思いでいえば
「ユーザ領域を全域暗号化してしまうのはあまりにも危険」
と感じてしまう。
ここは主観なので、File Vaultが使えると思われる方は使っていけばいい。
私はそういうものにユーザ領域を預けてしまうのは抵抗を感じる。
それで個人的はこういうものを使っている。
各種ユーザID、パスワード、カード番号などの重要情報は
MacJournal
を使って暗号化。
個人ファイル、仕事上の機密事項を含んでいるファイルなどは
Exces
を使って暗号化。
MacJournalはメモノートアプリなのだが強力な暗号化機能がついている
ID、パスワード、カード番号などの重要な個人情報を
テキストファイルにメモって剥き出しで保存するのはいかにも危険だ
こういうメモアプリに記録してグループごと暗号化してしまう
ログインパスワードと違うパスワードを使えば安全性はさらに増す
Excesはフォルダごとディスクイメージ化するアプリ
これも強力な暗号化機能がついているので大量のファイルをフォルダごと開けなくできる
開いてディスクイメージの中を見るにはパスワードが必要だ
このようにして個人のファイルを必要な時だけ開く
システム全域暗号化するよりも安全だしOSバージョンアップして
開かなくなってしまったならTime MachineでOSを戻して
開いてバックアップを取ることも可能なので実はFile Vaultよりも安全性も高い
2011年4月16日
anchor
Mac買ったらこれだけはやっておけ!(追記4)〜ダウンロード先はデスクトップに設定せよ(記事の悪用禁止)
11)初級編〜ブラウザのダウンロード先の設定はデスクトップに
これはBBSに「edm2」さんから指摘をいただいた。
先日このシリーズで、
「拡張子を表示する設定にして、ダウンロードしてきたファイルを開く場合は拡張を確認せよ」
というセキュリティのTipsを書いた。
ところが「edm2」さんの指摘によるとMacでも拡張子の偽装は可能ということだ。
これの対策としてブラウザの設定でダウンロード先は「デスクトップ」に変更することをお勧めする。
どうやらデスクトップの表示では拡張子を偽装できないようだからだ。
以下この設定をするべき理由と検証の様子をキャプチャーで説明。
Safariに限らずFirefoxでもChromeでもデフォルトのダウンロード先設定は
「ダウンロードフォルダ」になっていると思うがこれをデスクトップに変更する
結論からいうとそういうことでその理由は以下の通り
ここにある種の実行ファイルがある
Mac用なので拡張子は例えば「.app」ということになる
AppleScriptエディタを起動してこういうスクリプトを実行する
どのファイルを書き換えるかを聞いてくるので先ほどの実行ファイルを指定する
すると例の実行ファイルはmp3ファイルと紛らわしいファイル名に変わる
しかしこれでは「.app」の拡張子は見える
選択を外してもこのファイルをデスクトップに置いている限り
Macの長いファイル名の表示の原則に従って
ファイル名の先頭と最後の拡張子を表示している
ところがFinderのウインドウで表示をするとこの通り!
本当の拡張子の「.app」が消えてmp3にしか見えないファイル名になっている
リスト表示でもこの通り
カラム表示でも本当の拡張子は見えていない
ただしプレビュー欄に「アプリケーション」と出ておりこの時点で怪しいのがわかる
それでもこれに先日の例のようにmp3アイコンを貼付けてしまうとこの通り
注意深く見ていないとこれが偽装ファイルだということはわからないかもしれない
Quicklookでプレビューしてみると本物のmp3なら
音楽の再生が始まる筈だがこういうアイコン表示のまま何も始まらない
ここまでやれば怪しいファイルだということに気がつくかもしれない
ファイルのダウンロード先をデスクトップに変更せよというのはこういうことだ
上記の通りデスクトップなら本当の拡張子が見えている
これはこういう時計アプリなのでクリックしても和んでしまうだけだが
あなたがクリックするmp3アイコンはマルウエアかもしれない
この現象を追加実験してみたい方は、「edm2」さんから教えていただいた以下のスクリプトを試してみるといい。
tell application "Finder"
set (choose file)'s name to "01 Highway Star.mp3
.app"
end tell
これのミソは「01 Highway Star.mp3」という偽装ファイル名と「.app」という本当の拡張子の間に改行コードを入れることで、通常のFinderの操作やテキストエディタからのコピペでは改行コードの挿入は不可能だが、これで改行できる。
そしてFinderのウインドウ表示では改行コード以下は表示できない。
これは非常に問題ある仕様だと思う。
こういうことができるという情報を公開すべきではないという考え方もあるが、すでにBBSで公開しちゃってるし、こういうことができることをどこかで聞いたような記憶もよみがえってきた。
そうであるなら、こういうリスクがあることをすべてのユーザに知らせる方が得策だと思うので、敢えて追試験のやり方まで解説する。
誤解しないでもらいたいのは、この手法を使えばMacユーザをカモにできるマルウエアがすぐに作れるわけではないということだ。
MacにはURI脆弱性の対策として、ダウンロードしてきたアプリや実行ファイル、バイナリ展開の時に
「◯◯は、アプリケーションで、インターネットからダウンロードされてきました。開いてもよろしいですか?」
という非常に丁寧な確認タグが表示される機能が用意されている。
Macはネットから落としてきたファイルを初めてクリックすると
それがアプリであったりスクリプトなど実行ファイルであったりした場合、
このような確認タグを表示して勝手に実行されない仕組みになっている
これは7年前にMacの管理者権限を実際に乗っ取ってみせたURIの脆弱性を攻撃するコンセプトウイルスに対する防御策の一つとして追加された。
もしこの拡張子偽装を悪用してウイルスを作るなら、この確認タグも回避する方法を確立しないとマルウエアとしては非常に威力が弱いものにしかならない。
ただ7年前のURIの脆弱性も予想外のことだったので、今後そういう安全策を回避できる新たな脆弱性が発見されないとは言い切れない。
だから、これだけに頼るのではなく拡張子を自分で確認して自衛することが重要だと思う。
もっともこうした確認タグが出ても、何が書いてあるか一切読まないで何でもかんでもOKをクリックするユーザが相手ならこの防御策も無意味だが。
そういうユーザが「拡張子を確認しろ」というTipsを読んでそれを実行するかどうかは、はなはだ心許ないが、それを実行することで安全性は格段に高まるのだから、
1)ダウンロード先をデスクトップに変更して
2)とにかくクリックの前に拡張子を見る
3)自分が開こうとしているファイルが何かだけは意識しておく
ということを励行していただければと思う。
<余談>
OS9の頃まではブラウザなどのダウンロード先はデフォルトではデスクトップだった。
ところが、デスクトップに置かれると自動的にデスクトップ上の「Macintosh HD」というフォルダを探してそこに自分のコピーを置くという機能を持ったウイルスが登場した。
このウイルスへの防御策として起動ボリュームの第1階層以外のところに
「ダウンロードフォルダ」
を作ってそこにダウンロードをする設定に変更すること、
起動ボリュームの名前を「Macintosh HD」以外の名前に変更することが推奨された時期があった。
その後OSXになってからも私の場合割と忠実にそれを守ってきていて、
ダウンロードフォルダも作っていたし起動ボリュームはMacの代が変わるごとに新しい名前にしていた。
ちなみに今の名前は
「SnoLeo500」
だ。(SnowLeopardのHD2代目で500GBなのでこの名前)
OSXはLeopardあたりからかデフォルトでダウンロードフォルダが用意され、最初からここにダウンロードする設定に変わったのは、この古いMacのウイルスに対する備えというよりも、Windowsからスイッチしてきたユーザが、デスクトップにダウンロードファイルが散らかるよりもダウンロードフォルダに格納される方が違和感がないに違いないという配慮のような気がする。
実際デスクトップとボリュームの関係はOS9とOSXではガラリと変わったのでデスクトップに置かれたファイルがフォルダ名で起動ボリュームを探すなんて動作は意味が無くなった。
(OSXではデスクトップ上に見えるボリュームはそこに視覚的に見えているだけでそこにあるわけではない。
UNIX的な表現をするなら、起動ボリュームがすべてのルートでそのパスの書き方は、起動ボリュームの名前に関係なく
「/」
という記号で表記されるし、それ以外のボリュームは
「/Volumes」
というディレクトリの中にある)
今回こういう拡張子を偽装することが可能だという情報をいただき、ダウンロード先はやはりデスクトップに戻すべきだと感じた。
デスクトップ上だけが唯一拡張子の偽装が不可能だからだ。
大量のファイルを一気にダウンロードする習慣があるユーザは、デスクトップが散らかって嫌がるかもしれないが、何の気もなしにダウンロードフォルダの中のファイルをクリックして、ウイルス感染なんてことになるよりも、その方がはるかにマシだと思う。
またこういう話題をすると必ず
「ウイルス対策ソフトを入れていれば大丈夫なんじゃないですか?」
という人もいるが、ウイルス対策ソフトはあくまで補助手段だと考えよう。
パターンファイルが間に合っていない新種のウイルスのゼロデイ攻撃に関しては、ウイルス対策ソフトはほぼ無力なのだ。
これは有料の有名なソフトだろうが同じことだ。
だからこういう自衛策が必要だと考えている。
(「そんなことはない!ヒューリスティックなウイルス対策ソフトなら大丈夫」と言い切る人達には、それじゃなぜその安全なウイルス対策ソフトがAutorunやGumblarの大流行を食い止められなかったのか、その理由を是非聞かせてもらいたいと思う)
情報をいただいた「edm2」さん、ありがとうございました。
2011年4月20日