- ベストアンサー
ウィルス対策ソフトの動作について
ウィルス対策ソフトが他のプロセスの実行を強制的に停止させることが良くありますけど、どのような仕組みでやってるんですか? OSの元で動く応用ソフトからは他のプロセスの実行状況やメモリの内容は見えないはずなのにどうやって監視しているのですか?
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
まったく持って不可思議な人物(質問)をみつけた。 >応用ソフト このような死語の言葉を使っている人を始めて見る。今時こんな単語をつかっている業界人はいない。これは 基本ソフト(OS) の対義語になる単語だが、テレビなどのニュースでは、よく使っている単語だが、業界ではまず使わない単語。普通、 OS と呼んでいる。又は使っている。というのも、基本ソフトとは必ずしもOSの事をさしているのはないので、まぎらわしいので使う人がいない(業務用ソフトなど、多数のアプリがパッケージでシステムとして売られていると、そのコアの部分を基本ソフトと表現する場合がある)。 >他のプロセスの実行状況やメモリの内容は見えないはずなのにどうやって 素人であれば、こんなことは知らない。 にもかかわらず、 >応用ソフトからは他のプロセスの実行状況 なんて、素人のような(パソコンなんていじった事ない方)のような話をしている。 釣りグループ(きっと振り込めさぎグループ予備軍でしょう)の一味か。 まか不思議な質問である。 まあ、それでも一応、考えられる事を上げておく。 >他のプロセスの実行状況 これは、もしできなければ、OSからみると、そのプロセスは暴走していることになる。つまり、OSのもとでは、管理できないものはないはずである(暴走していれば管理できない。だからといってOSが制御できないという事ではない)。これを防ぐように、いくつもの仕組みを、長年研究して、作りこんでいる。 この追尾できる仕組みはUNIXシステムがもっとも最初に、最も効果ある方法で昔(20年以上も前)から、研究して作りこんでいる(Windows(DOS時代も含め)はごく最近UNIXに追いついてきた)。この事をしっているのだろうか? これは「鶏と卵」、「パラドックス」、「矛と盾」の慣用句にまつわる話と一緒。OS的にセキュリティーや、プロセスの完全分離を強化を考えると、OS側からはコントロールできなくなる。しかし、コントロールするためには、追跡する必要がある。 今のOSはちゃんと両立しています。WindowsもXPぐらいのOSから、メモリーの使い方がようやく、UNIXなみになり、簡単にはOSごとハングすることがなくなった。Vista以降(Serverでは2003以降)ではまったくなくなったといっていい。 (ストレージなどの不具合に起因するハング状態と混同している方がたまにいる) これは、カーネルとの完全分離を表している。 つまり、 >OSの元で動く応用ソフトからは他のプロセスの実行状況 これは、まったくの誤解。できます。 >メモリの内容は見えないはずなのにどうやって これは、たぶんプログラム的な内容で(確保したメモリーは犯されない)、それを誤って認識しているのだろう(拡大解釈)。 これらの仕組みは、RDBMSを勉強したことのあるかたなら、簡単に理解できるはず。特Oracleなど業務系のアプリに使われるものだと、特に排他的要素、セキュリティー、などOSと似た仕組みを多くある。 例えば権限はロールという形で付与される。これはWindowsだとグループにあたるが、プロセスの実行単位だとまた違った、ロールのメンバーがある。 この実行権限は、エンドユーザーだと自動的に、付与されるばあがあるが、プログラム的には細かく指定できる。よく考えて見てください。だれが、与えているのでしょう。OSの守護者であるシステムです。 これを実社会の組織にあてはめるとよくわかる。日本の首相は、米国の大統領と違って権限が小さい(大統領令はすべてに優先する)。しかし、首相は、各大臣に命令する事ができる。大臣は、官僚に命令する事ができる。言う事を聞かなければ、罷免する事が、それぞれにできる。 つまり、官僚がだれで、だれが邪魔しているのか特定できなくても、大臣を罷免する事で、物事を推し進める事ができる(当然大臣は官僚以下を罷免する)。 て、ことはすでにわかっている名前や、行動を監視していれば、中身がわからてくてもさほど問題ではない。 よく裁判では推定無罪をかかげますが、監視、管理においては、推定有罪がもっともリスクマネジメントに適している。 ただ、メモリーにロードされるという事は、だれがロードしているんだとすれば、システムがロードしている。て、ことはOS側が盗聴できる事になる。実社会の警察より、もっと優位な立場にあるのがシステムである。システムが実行すれば、だれでも盗聴する事ができる。ただし、ユーザーモードでは、見ることができないが、それはOS側からすると、サービスとして、その情報を提供するのもOSの仕事。まさに、盾と矛の関係。
補足
ご回答ありがとうございます。不勉強であることは自覚しております。 「基本ソフト」が推奨されない理由はわかりました。 応用ソフトというのは単にアプリケーションソフトウェア(application software)の訳と理解していました。そのまま訳しただけだったのですが「アプリ」は生きていて「応用ソフト」は死語、あるいは推奨されない用語なのでしょうか? というか、私の用語が不適切でした。「応用ソフト」は 「プロセス」というべきでした。 OSがプロセスを監視できるのはもちろんですが、OS程の権限がないはずのウィルス対策ソフトなどのセキュリティソフトがなぜそれを出来るのかが知りたいのです。 OSがそのような機能、つまり、対策ソフトが要求すると思われる機能(プロセスアナウの挙動のアナウンスや、他のプロセスに割り当てられたメモリへのアクセス機能などでしょうか)、他の(自身の子孫でない)プロセスに働きかける機能を提供しているとしたら、危険ではないのですか?。ウィルスがその機能を使ってやりたい放題できそうですが。