2009/09/30

configuration.com.apple

Apple が提供する有料サービスMobileMe (DotMac) を利用しているユーザはシステム環境設定の MobileMe をクリックするとAppleIDを入力することができる。私はこの有料サービスを利用していない。したがってシステム環境設定のMobileMe 内はすべて空欄になっている。

以下は私のようなMobileMeユーザでは「ない」人むけの話。

ある時、Safari が不穏な動きをしていることに気付いたらあなたはどう思うだろうか?

私が試したこと。
最初にSafari (Mac OS X 10.6.1 に付属する)の設定を下記のようにしてSafari が勝手にインターネットに出て行く行為を全て禁止する。

|一般|
新規ウィンドウを開く場合: 空のページ
新規タブを開く場合: 空のページ
ホームページ:空欄
履歴からの削除:1日
ダウンロード後”安全な..”:チェックをはずす
# "安全な"ファイルって何?といつも思う。
# 10.6 になってもデフォルトでここにチェックが入っているのは非常に残念な仕様。

|ブックマーク|
全ての項目のチェックをはずす。
MobileMeを使ってブックマークを同期:チェックなし

|RSS|
デフォルトRSS リーダー:Safari
自動アップデートする記事の登録場所: 全てOFF
アップデート後の確認:「しない」
#念のため「今すぐ削除」ボタンをクリックしておく

|自動入力|
全ての項目のチェックを入れていない。

|セキュリティ|
詐欺サイト: OFF
プラグイン: OFF
ジャバ: OFF
ジャバスクリプト: OFF
ポップアップ開かない: ON
クッキー:受け入れない

さらに
Safari メニューファイルからブックマークを書き出した後、全てのブックマークを手動で「削除」(ctr+A retrun delete key)
Safari メニューから「キャッシュを空にする」
Safari メニューから 「Safari をリセット...」
(ただしTop Site 以外. Top Site にチェックを入れると初期設定が呼び出されてしまうから)
Safari メニューから「Top Sites を表示」
1つも履歴がないことも確認する。
# もし履歴が1つでもあったら「編集」をクリックし1つ残らず削除する。

Safari を終了させておく。ターミナルを起動し

# キャッシュクリア
% rm -rf ~/Library/Cache/Metadata/Safari

# アイコンキャッシュクリアとアイコン読み込みの禁止
% defaults write com.apple.Safari WebIconDatabaseEnabled -bool false
% cd Library/Safari/
# WebIconData が存在していたら削除しておく
# ~/Library/Caches 内にマクロメディアフォルダがないことも確認


次に、システム環境設定のセキュリティのファイアウォール:入 になっているか確認する。
# ipfw のログはシステム環境設定のセキュリティのファイアウォールをオンにするとsyslog に反映する。

ターミナルから ipfw ルールを追加する。

$ su admin-user
$ sudo ipfw add 1000 deny log tcp from any to any


として TCP 使用を一時的に禁じる。
これによって
私が意識的にSafari からインターネットを閲覧せよとアプリケーションに命じたとしてもipfw はそれを許さない。
さらに
私がインターネットを閲覧せよとアプリケーションに「命じていない」にも関わらずtcp を使用したプロセスがあれば ipfw はそれを禁じる。

つまり
Safari が勝手にインターネットへ接続しようとしたら ipfw はそれをキャッチし禁止しログに残す、ようになる。

これで準備が整ったので
1, ネットワークにつなげ
2, Safari を起動する。
3, 私のSafari は設定したとおりに真っ白な空白ページを表示している。当然URL も空欄。
4, ログをみる

% syslog -w 
...
Firewall[xx] <Info>:  1000 Deny TCP xxx.xxx.xxx.xxx.:YYYYY 17.250.248.105:80 out via en1
...


5, 結果
私の期待に反して ipfw は 17.250.248.105 への接続を禁じたことを報告した。
繰り返して言うがSafari のURL は空欄である。私はどこにもアクセスして「いない」。

Safari に自動的にどこかにアクセスさせる設定もしていない。(例えば 新規ウィンドウを開いたときにつなげるページを指定していたりRSS で自動的に更新内容をとってこさせるようなこと)キャッシュもクリアしたばかりだしトップサイト履歴も全て削除してある。
にもかかわらず、Safari は私の意図に反して勝手に一意なIP に向けてTCP 80を発動した。念のため再度同じことを繰り返してみたが同様の結果だった。

Safari は起動するたびに勝手にどこかへお出かけになる。では、お出かけ先であるアドレスとは一体どこか?

% dig -x 17.250.248.105

#=>
#; <<>> DiG 9.6.0-APPLE-P2 <<>> -x 17.250.248.105
#;; global options: +cmd
#;; Got answer:
#;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 1389
#;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
#
#;; QUESTION SECTION:
#;105.248.250.17.in-addr.arpa.  IN      PTR
#
#;; ANSWER SECTION:
#105.248.250.17.in-addr.arpa. 84399 IN  PTR     configuration.apple.com.
#
#...


17.250.248.105 のドメイン名は configuration.apple.com だとわかった。
configuration.apple.com は Apple がMobile Me(DotMac) 有料サービスに提供しているサーバアドレスのようだ

以上をふまえてまとめると

わたしはApple の有料サービスであるMobileMe を利用していない。したがってシステム環境設定のMobileMe に入力すべきAppleID もパスワードももちあわせていないので全て空欄。
ネットワークに接続した後に Safari 4.03 を起動した場合 Safari は確実に configuration.apple.com へアクセスする
Safari 4.03 の設定をどのようにしようともこれを免れることができない。設定いかんとは全く無関係にふるまっているようだ...。
ただし、ネットワークに繋がる前に Safari を起動しておき、その後にネットワークに接続した場合はこの限りではなく、10分後などある程度時間経過した後にアクセスするようだ。

ちなみに、最初にこれに気付いたのは ハードウエアを初期化し 10.6 をDVD からクリーンインストールしソフトウエアアップデートを終了しSafari を起動した時だった。クリーンインストールした直後なのにもうウイルスにやられたのか?と心配になり再度クリーンインストールしたが同じ結果だった。
# アンチウイルスソフトウエア導入済み。その他の市販アプリケーションは一切インストールしていない。

これではまるで全ての OS X 10.6 user イコール Mobile Me(.DotMac) user であるという大前提にのっとって Safari.app が作られており、常に MobileMe とブックマークを同期を試みているようにみえる。 Safari の設定で MobileMe と同期の「チェックが入っていない」ことは Safari には全く反映していないかのようだ。
いったい何の必要があって非ユーザにまで有料サービスサーバにアクセスさせるのだろうか。しかも Safari 起動の度ごとに。user がSafari をいつ起動しているのか調査でもしているのだろうか?
昔 マイクロソフトの Office というアプリケーション群はこれと似たような挙動をして大問題になったことがあった。そんな話を思いだしてしまった。
いずれにせよユーザが意図していない時にインターネットへアクセスするようなものはかなり不気味だ。

... それとも あくまでもこれは私のMac OS X 10.6.1 に「だけ」でみられる極めて固有の問題なのだろうか?...

MobileMe ユーザでは「ない」人は下の「ipfw を用いたちょとしたテスト」を試してみてほしい。
そして、私と同じ結果が得られたならこの件についてぜひ自分のブログなどに書いてほしい。

+++ 「10 分でできる ipfw を用いたちょとしたテスト」+++

1) もしもネットワークにつながっていたら切断する。(AirMac 切るとか Lan ケーブル抜く)
2) Safari の設定
ブックマークを書き出し保存しておく。
Safari 設定内容は上記を参照。
必ずSafari を終了させておく

3) ファイアウォールを入にする(詳細オプション内のチェックはどこにも入れてない)
4) ターミナル(/Applications/Utilities/Terminal.app)から下記のコマンドをうつ($ で始まっている行のみ。$ は打たない。)


# 自分のid をみる-ユーザが所属しているグループがわかる。
$ id

# もしも管理者ユーザであれば  admin という文字列がみえる。
# admin という文字列がみあたらなければ 管理者ユーザになる必要ある。

# 管理ユーザになる。
$ su admin-username
# password を尋ねられる。

# 無事に管理者ユーザになったかを確認。
$ id

# 今度は admin グループに属しているので admin という文字列がみえるはず。
# あいかわらず admin という文字列がみあたらないのであれば管理者ユーザ名かパスワードが間違っている。

# 管理者ユーザになった後、FileValt を利用中の場合は Permission deny な場所にいるので
# /var/log などに移動。
$ cd /var/log

# 素 のipfw の設定を確認しておく。
$ sudo ipfw list

# ファイアウォール詳細のオプションの中のチェックは1つも入っていない状態の場合 下記のみ表示される。
# =>
# 65535 allow ip from any to any
# ファイアウォール詳細のオプションで「すべての受信接続をブロック」にチェックが入っている場合は
# =>
# 65535 allow ip from any to any
# 33300 deny log icmp from any to me in icmptypes 8
# となっている。

# ipfw に新たなルールを追加し tcp を禁じる。
$ sudo ipfw 01000 add deny log tcp from any to any

# ルールが正しく追加されたか確認する。 
$ sudo ipfw list
#=>
#01000 deny log tcp from any to any
#65535 allow ip from any to any

# もし間違えちゃった場合は間違えたipfwルールの番号を指定して取り除く。
# ここで元のルールまで削除してしまったとしても再起動すれば元通りになるので心配いらない。
# $ sudo ipfw delete 01000

# ネットワークに接続する。(システム環境設定ーネットワーク。利用しているサービスが緑色になる)

# システムログを表示させておく(管理者ユーザ と一般ユーザではこの表示は微妙に異なる場合もあることに留意)
$ syslog -w

# Safari を起動する。
# もしもここで既にSafari が起動していたら終了し起動しなおす。
# 画面は空白でありURL も空欄であることを確認。

# もしもログに下記のようなログがのこったら...
# ... Firewall[xx] <Info>:  1000 Deny TCP xxx.xxx.xxx.xxx:YYYYY 17.250.248.105:80 out via en0

# xxx.xxx.xxx.xxx は自分のローカルネットワークアドレスを意味してます。
# YYYY を使用して17.250.248.105 宛に80番で接続しようとしたのを ipfw が禁止したことを意味しています。
# via en0 はEthernetケーブル、 en1 なら AirMac を意味してます。

# ログでとらえられたアドレスを逆引きしドメイン名を確認
$ dig -x 17.250.248.105

# 一般ユーザにもどる
$ exit

# ターミナルを終了
$ exit


5) Safari を終了
6) ネットワーク切断

再起動するとipfw のルールは自動的に素の状態(ipfw コマンドを打つ前の状態)に戻る

以上。

# Safari の設定を初期化するには
% rm -rf Library/Preferences/com.apple.Safari.plist
% defaults delete com.apple.Safari WebIconDatabaseEnabled
とした後 Safari を起動。書き出しておいたブックマークを読み込む。

追記:20091011
システム環境設定->ソフトウエアアップデート->アップデートの確認はオフにしています。
# ソフトウエアアップデートが使用しているサーバアドレス
# swscan.apple.com
# 17.250.248.95

0 件のコメント: