- ベストアンサー
幻のOSXマルウエアコンテストと防御技術の名称?について
http://okwave.jp/kotaeru.php3?q=1950411 ▲こちらのスレッドを拝見して、私も考えるところがありました。 なぜマッキントッシュの安全がミッションクリティカルな行政関係業務に 採用されないのか、ということについてなんですが、行政賄賂とかいう噂 話は抜きにして当該スレッドでの総意結論となった「多く使われれば狙わ れる」という大原則に私も賛成派です。 ところが、数年前、マック信奉で著名なある音楽系ソフト会社が、MacOSX が被害を受けるマルウエアが作れるものなら懸賞金をあげるから挑戦して みたまえ!とコンテストを実施して、アップル社があわてて中止要請を した、という事件がありましたよね! ここで楽器社の意図としては堅牢性の実証に一役買いたいだけだったと思 いますが、中止を要請したアップル幹部の発言で次のような趣旨の言葉が あったことに大変関心を持っています。 「MacOSXで悪意のプログラムはまず作動できないが、絶対とはいいきれ ない、だからコンテストは止めてくれ…」といった内容だったと記憶して います。(SlashDotかHotWiredで見た記憶なんですが今探してもちょっと 見つかりませんでした…) ソラリスOSの「トラステッドパス」とか、「SE Linux」の数々の装備とか、 マイクロソフトの「イントラネット封鎖」…などといった公表された防御 システムは、ああなるほど!と思えるのですが、楽器社が絶対に破れない と確信して実施したマルウエアコンテストの背景やアップル首脳が発言した 「まず無理(だが絶対ではないので)」という「MacOSXのマルウエア判別 防御システム(?)」というのは、何と言う技術だったのでしょうか? よく言われる「アップルはMSと違って当り前の仕事をきっちりこなしている だけでそれが最大の防御だ」という話とはまた別の次元のガードが施されて るようにも受けとれて、とても気になる話でした。
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
> これはデータファイルだからそうなのであって、稼動中の実行ファイルやライブラリならば、やはりどんな種類のOSでもロックされる仕様ですよね? いや特になにもしてないです。稼働中の実行ファイルの差し替えなんてサーバ管理では良く行われることですよ。ただし、実行ファイルやライブラリの所有者は(通常は)rootになっているので、一般ユーザは手が出せないようになっています。逆に言えばrootさえ乗っ取られなければ安心ということです。 ライブラリファイルのロックを気にする必要は全然無いです。それが心配されるような状況になってるということは、すでにrootが乗っ取られてるってことです。その時点でもう完全にアウトですから。
その他の回答 (5)
ファイルシステムの話ですが、その仕様は変えようがないです。理由はいくつかあります。 まず、マルチタスク・マルチユーザ・ネットワークありの世界で、一つのファイルを複数プロセスから同時に操作できないようなOSは使い物にならないということ。例えば、Webサーバを止めない限りファイル名を変更できない、という仕様ではもの凄く不便ですよね? 次に、UNIXではファイル名は「ファイル本体を参照するためのラベル」に過ぎず、複数存在することさえ許されているということです(これはエイリアスやショートカットとは違う概念です)。UNIXである以上、ファイル名とファイル本体は独立に操作できなければならないのです。 もう一つ重要なことは、OSが認識しているファイル操作と、利用者が認識しているファイル操作の期間が全然違うということです。一般的なアプリケーションは、(a)ファイルを読み込み、(b)編集して、(c)編集結果をファイルに書き込む、という動作をしますが、OSにとっては(a), (c)の瞬間だけがファイルを操作している期間で、(b)の期間はファイルを操作していない状態と見分けがつきません。この状態を特別扱いするのはOSレベルでは無理です。 以上で説明になっているでしょうか。
お礼
すごい即レスでびっくりです^^ > この状態を特別扱いするのはOSレベルでは無理です。 > > 以上で説明になっているでしょうか。 なるほど、だからアプリレベルの警告なら出せる、という訳だったんですね! すっごくよくわかりました! 「別名保存のための仕様」というのはちょっと先輩の尾ひれということみたいですね^^。 これはデータファイルだからそうなのであって、稼動中の実行ファイルやライブラリならば、やはりどんな種類のOSでもロックされる仕様ですよね? 心配なのは必要に応じて使用されたり休んだりするライブラリがロックされたりされなかったり、と断続的だと稼動中に破壊活動される可能性は考慮しておかないといけなさそうですね。 最近マンションの偽装で購入者責任の意識が指摘されていますが、どちらにしても、どのメーカーの何の品物であっても使用者は神様でなく自己責任の理論武装は必要、という社会ですね…。 どうもありがとうございました!
>MacOSXは他のUNIX一般とは違って自他を判別する特別な配慮がある、ということですよね! そんな大げさな話じゃないんですよ。 (1) MacOS Xではユーザはrootになることができない。 (2) そのかわり、それで不便にならないようにユーザインタフェースが工夫されている。例えば、root権限が必要な操作をしようとすると自動的にパスワードを聞いてくる、など。 (3) (2)は管理者属性のあるアカウントに対してだけ機能する。 ということですね。徹底してrootにさせないというのが基本戦略です。まぁ、ある程度のUNIXの知識があれば突破できますが、一般ユーザにとってはそれで十分でしょう。 > #1と2のお礼文に例として私が考えたような「シェルスクリプト」も、 > 他人が作ったスクリプトとしてはじかれる認識をされるのでしょうか? 誰が作ったかは管理してません。誰が実行したか、で判断します。ですから利用者をだまして実行させればその利用者の権限の及ぶ範囲で悪さができます。もし私が悪意のあるプログラマなら、なにか有用なアプリケーションのインストーラに成り済ましたものを作るでしょうね。これならだましてパスワードを入力させれば後はroot権限で好きに破壊操作ができます(笑)。 #この種の利用者をだまして実行させようとするマルウェアを #トロイの木馬と呼びますが、こんなのどのOSだろうが防ぎ #ようがないですよ。 > #システムファイルだけは属性変更もできない特別なフラグが設定されている、 > という理解でよいでしょうか? もうおわかりかと思いますが、システムファイルの所有者はrootなので、root以外の人は変更できないというだけの話です。タネをあかせば簡単な話でしょう?
お礼
どうもありがとうございます! おかげさまで謎が解けて来ました! > そんな大げさな話じゃないんですよ。 > (1) MacOS Xではユーザはrootになることができない。 なるほど、単純にMacではUNIXを知らない初心者も使うことが大前提なのでOSX版suコマンドは制限をつけた仕様にしているのが大きな安全弁、ということですね! 私は自分の持っているマシンがG3OS9どまりなので、PPCLinuxは使えるのですがOSXのことはデモで触らせてもらうか本で読むしか知らないので、マルウエア懸賞コンテストのニュースの時もすごく不思議で驚いたんです。 人に作ってもらったアップルスクリプトをもらって仕事でも愛用させてもらってますので、これは性善説だからいいようなものの、そうでなければ一体どんな事をされるかわかりませんので心配だったんです。 > タネをあかせば簡単な話でしょう? > #トロイの木馬 ^^全くそうですね! マルウエア懸賞コンテストは本当に実施されたら沢山応募されてえらいことになるからこそ中止されたのですね! マックも最近シェアが盛り返してくれましたので、今後は本気で性悪説に立ち向かわなければならない立場になるのは時間の問題と思って自衛の学習には努めておくのが吉ですね。 これは鬼が笑う話題なのかもしれませんが、使用中のファイルをロックせずに自由に名称変更できる仕様は、今後も親切の一環として続くんでしょうか? 私が上司に怒鳴られた時に色々な人から教わった中では、「別名ファイル保存」の一方法としてわざわざOS側で考慮されている仕様だ、という話もありました。 あとでウインドウズで試したら、同じように出来たのでMSがアップルのまねをしたのだと思いますが、拡張子が変わる時だけは一応警告が出ました。 アプリレベルでは使用中のファイルを二重に操作すると警告してくれるものが多いですが、OSとして基本的に許すのはかなり怖いですよね。
>ファンの思い入れの部分が大きいのではないかと思いますがいかがでしょうか? そうとも言えませんよ。 Windowsではアカウントに「管理者属性」があれば、何でもやりたい放題ができます。システムファイルでも他人のファイルでも簡単に削除できます。アカウントも作り放題、システム設定も変え放題です。そして利用者=管理者な人が大部分を占めています。これは大変危険です。 一方MacOS Xでは、利用者はたとえ「管理者属性」があったとしても、他人のファイルは覗けませんし、スーパーユーザの権限が必要な局面ではちゃんとパスワードを要求してきます。デフォルトでは管理者でもコンソールでrootになることができません。 これだけでも安全に対する両者の考え方が違うのがわかるでしょう。
お礼
一緒に教えていただけるとありがたいのですが、「ローカルではわざと排他制御しない親切」というのも、最新のタイガーでも貫かれていますでしょうか? 使用中であっても片っ端からファイル名が変更できてしまう親切が安全の思想とはちょっと違和感があって以前から釈然としてないところがあります。 (以前に使用中のファイルをうっかり間違えてファインダーから別名変更してしまったことがあったのですが、そんな操作をするほうが頭が悪い、と頭ごなしに言われて泣いたことがありました^^;) こういった親切設計を悪用されてファイル名を全部変えられてしまう(うっかり自分でまちがえて変えてしまう事も含めて)と、性善説が維持できないとまずそうに思うのですがどうでしょうか?
補足
どうもありがとうございます! そうするとやはり、#2では文面通りに受取ってしまったのですが、MacOSX は他のUNIX一般とは違って自他を判別する特別な配慮がある、ということですよね! 一番しりたかったのは、この点なんです。 >「管理者属性」があったとしても、他人のファイルは覗けません …というこの点の詳細をきちんとよく理解したいのですが、 #1と2のお礼文に例として私が考えたような「シェルスクリプト」も、 他人が作ったスクリプトとしてはじかれる認識をされるのでしょうか? (これがかりそめにもマルウエアコンテストを企画できた根拠となる、と 考えてよいのですよね?) もしそうだとすると、どこのモジュールで認識を実行しているか、という 確認がしたい主旨で質問投稿をしていますので、ぜひよろしくお願いします! #システムファイルだけは属性変更もできない特別なフラグが設定されている、 という理解でよいでしょうか? (それともデータファイルにも自他を判別するOSX専用フラグの附加が可能になって いるでしょうか?)
> アップル独自の「悪意の認識選別」テクノロジーがあるのだろうか? そんな技術はありません。少なくとも私は聞いたことがありません。普通に他のUNIXと同等レベルの安全性があるだけです。でも、それだけでもWindowsに比べればはるかに安全と言えるでしょう。そりゃもう全然違うと思いますよ。 アップル社の幹部が「まず無理だが」って言ったというのは「立場上」の発言でしょう。ビルゲイツがうちの製品にはバグなんか無いって言うのと同じです。真に受けてはいけません。
お礼
どうもありがとうございます! >そんな技術はありません。少なくとも私は聞いたことがありません。普通に他のUNIXと同等レベルの安全性があるだけです。 >アップル社の幹部が「まず無理だが」って言ったというのは「立場上」の発言でしょう。 >ビルゲイツがうちの製品にはバグなんか無いって言うのと同じです。真に受けてはいけません。 私がかねがね思っていた通りのご意見で、至極納得です! 「営利企業」の「経営者」が発言する、という立場では、こう発言せざるをえないのが当たり前ですもんね^^ >でも、それだけでもWindowsに比べればはるかに安全と言えるでしょう。そりゃもう全然違うと思いますよ。 しかしここだけはファンの思い入れの部分が大きいのではないかと思いますがいかがでしょうか? TRONやOS/2が安全です、というのと同じ根拠レベルの話しになってしまいますので、私も同じマックファンとしてもう少し確かな証拠ほしいなあ、といつも強く願っています… ひどい極論になると、今流通しているマルウエアがないMS-DOSは安全です、と大差がないことになってしまいますので…。 非常に技術レベルの低い自殺スクリプトでも、これが悪意に配布されて、ユーザーログインに無頓着な初心者が知らずにだまされて実行したら「マルウエアコンテスト入賞(?)」になってしまう訳ですもんね。 昔のフロッピーやパソコン通信時代にはマックもマルウエアに悩まされたそうですが、今のマック界は性善説が成立してくれていてとても幸せな世界、と受け止めて、常に気持ちだけは引き締めておいた方がよいですよね。 シャキっとして勉強したいと思います!
- nitro8500
- ベストアンサー率38% (70/182)
一意見として書きますね。 アップルもマイクロソフトもそうなのですが、悪用を恐れるのか脆弱性のメカニズムについては公開されることを恐れています。マイクロソフトでは、パッチリリースまでの期間にセキュリティ問題を指摘した方が詳細を公表しなかったことに対し、Webで謝辞を述べています。 プログラムは人が作るものであり、また、プログラムを作る開発ツールにさえも抜け穴があったりします。アップルはそれの恐ろしさが分かっていて、わざわざ脆弱性を興味本位でさらけ出すような安易な真似は謹んでほしいと思って止めたのでしょう。 保身も多少はあるかと思いますが、僕はこのことをそのように捕らえています。 ウインドウズでセキュリティ上の欠陥が多発したのは、攻撃者が多いこと以前に、セキュリティに無頓着だったのだと思っています。 マイクロソフトはネットスケープと戦うため、IEとOSを融合する作戦にでました。これの初製品がWindows98だったと思うのですが、確かに使い勝手は向上し、マイクロソフトの目的は達成されたと思っています。ただし当時セキュリティ意識が薄かった頃のソフト同士が、不用意に連携したわけです。 おそらく2000やXPでも、そうしたコンポーネントは多少の変更はあれど基本は流用されて作られたのでしょう。特にアプリ同士の連携モジュールや、ネットワーク関連のコンポーネントには大半のモジュールに不具合があります。2000,XPで良く見られるMessenger機能(ウインドウズメッセンジャーのことではない)はスパムとして悪用され、製品コンセプトからしてセキュリティ意識が欠如しているのでは?と疑うくらいです。 MacOS Xでのパッチリリースは本当に早いですよね。行き当たりばったりではなく、それだけ作るときからの意識と管理がしっかりしているのだと思います。特にアップルが凄いと思うのは、OSXの描画ルーチンです。Windowsは処理の重いときなどにウインドウの描画仮定が見えます。応答ナシのときは描画中のまま真っ白ってのも良くありますが、アップルにはこれがありません。コアはUNIXベースでも描画ルーチンはMac独自だと思うのですが、OSXとアップルの洗練度を僕はここに感じています。 ちなみにWinny問題は、開発者側でなく「利用者自身の脆弱性」問題だと思っています。
補足
どうもありがとうございます! ちょっと質問文が下手でまずかったかもしれませんので訂正補足させてください。 例えば一番原始的な例で、 rootのユーザーがファイル属性を変更してHD内の全ファイルを削除する、という「自殺」の簡単なシェルスクリプトを作るとします。 これは自分の意志で実行をする分には「マルウエア」ではありませんから普通にできてしまう訳ですが、他人の作成したスクリプトをもらった「他殺」は出来ない等々… などというようなアップル独自の「悪意の認識選別」テクノロジーがあるのだろうか? というのが質問の主旨です。 (これみよがしのMSの「悪意あるソフトウエアの除去機能」を筆頭に、もっと信用の高い所ではApple.comでも使用されているソラリスなどのトラステッド技術や、リナックスのSEチームたちは一生懸命こういった技術をアピールしますが、アップルにはどんな名称がついていて、どこに工夫がされているのか?ということが知りたかったのです^^;) 他のOSでは上位レイヤーのモジュールで工夫するしか方法がない訳ですが、 MacOSXでは特別に危険な命令の判別をカーネルのI/Oで判別してる?とか、 やはり同じように安全弁の別モジュールが用意されている?とか、 Macの場合はハードごとコントロールできる唯一のコンピューターですからアップル製のハード側に何かファームウエア的な仕掛けがある?とか、等々…? いつか破られる運命の人間の技術ですから100%でないけれども、「MacOSXマルウエアコンテスト事件」にはそういったある一定の裏づけがあって開催されたのかどうか、とても興味を持って投稿しました。 どうぞよろしくお願いします!
お礼
客観的な真実でわかりやすくたくさん教えていただき本当に感謝です!! ushi36さんのようなお心の持ち方がマックファンのデフォルト精神として普及していただければ、もっとよりよい世界が開ける、と私は確信しています! >いや特になにもしてないです。 な、なんと、UNIXではロックの概念がなかったんですか? 私のほとんど使い道なく遊んでいるLinuxでこんど自殺の実験やってみようと思います^^; 旧MacOS9以前やウインドウズ、OS/2では元のアーキテクチャがパーソナルに孤立した大前提の「所詮パソコン設計」なのでアップデート等で必ずロックファイルの再処理を目にするはめになる、という理屈ですね? 私は日曜プログラマ用のunlockコマンドを愛用しているので、すっかりロックされるのが大原則なのだと信じ込んでしまっていました^^; (MSOSでも「WindowsServer」という商品名のものだとロック無しなのかもですね?) >逆に言えばrootさえ乗っ取られなければ安心ということです。 これは理解しているつもりでしたが、「なぜrootになれない仕掛けがOSXには特別にあるのか?」=「su機能の制限」、∴マルウエアの基本であるルートキットを作ることが非常に困難である! という点が、アップル首脳の「まず無理」発言であり、楽器店の「懸賞モノの業績」としてのコンテストの動機裏づけだった、ということになりそうですね! 一般BSDと同等のsuをこっそり配布されたら途端に危なくなりそうですね。 大昔、アップル自身がAtEaseをうっかりマルウエアとして配布してしまった事件(これはアップル得意のお茶目ないたずらの一環にすぎない、という解釈もあり?と…)も聞いていますので、とにかく消費者は常に自衛、の心構えは鉄則と思っておくに越さないですよね…。 おかげさまで事件の本質と背景の理解がすっきりできました! 本当にありがとうございます! このように接していただけますと、Macをさわるのが本当に楽しくなります。 またこれからも色々教えてください(^^)/