マシンのメンテナンス法として、ぜひ試したいのが“不要な常駐ソフト”が動いていないか、チェックすること。ごちゃごちゃになったタスクトレイを整理しよう。
わざわざ起動しなくても、Windowsと一緒に起動して使いたいときにすぐに利用できる常駐ソフト。ウイルスチェックソフトやメッセンジャーソフトなどだけでなく、Googleデスクトップや画像管理ソフトのメディアディテクタ(メモリカードが差し込まれると内部の画像などを見つけ出すソフト)など、Windowsの使い勝手を向上させるアプリケーションのほとんどが常駐ソフトだ。
しかもアプリケーションをインストールすると、断りもなく勝手に常駐ソフトがインストールされてしまうことも多い。使うこともあるのでアンインストールはしたくないが、常駐ソフトを常に動かしておくのはイヤだ──。そんな方も多いだろう。実際、Googleで「常駐ソフト」と検索すると、「常駐ソフト 削除」「常駐ソフト 解除」「常駐ソフト 停止」といった関連検索語が並んでいる。
しっかりとした常駐ソフトであれば、普通はタスクトレイに表示されているはずだ。タスクトレイのアイコンの上で右クリックし、表示されるメニューから「常駐を解除する」、または「設定」を選んで設定内にある常駐解除を選択する。
メッセンジャーソフトなどの場合は、アイコンをダブルクリックすればアプリケーションが立ち上がるので、そこの設定項目に「常駐の解除」が含まれていないか確認してみよう。
とはいっても、世の中には常駐しているのにタスクトレイに表示されないソフトも多い。また、タスクトレイから終了することはできるが、Windowsを起動するたびにゾンビのように復活する場合も多い。
さて、ここからが本題である。スタートアップに登録されているなら行儀がよいほうで、突然Windowsとともに起動するようになったが、どこから起動を解除すればいいか分からないソフトというのがかなりある。
ノートPCなどでメーカーがプリインストールしているソフトはほとんどがそうだ。メーカーからのメッセージやアップデートの情報を受け取るソフトが、ずっと常駐していたりするわけである。
こうしたソフトの常駐を解除するには、「スタートメニュー」−「ファイル名を指定して実行」に「msconfig」と入力して「システム構成ユーティリティ」を起動する。ここにはWindows 95時代を彷彿とさせるWin.iniやSystem.iniが編集できたり、サービスの有効、無効、スタートアップの設定が可能になっている。画面を見れば分かるように、起動を解除させたい項目のチェックマークを外せば、次から起動しなくなる。
OS内の各種サービスを起動するさいに必要なプログラム。複数起動していることが多い
ちなみにシステム構成ユーティリティでは、項目名と場所、コマンドしか情報がないため、何に使われているソフトなのか分かりにくい。実はオンラインソフトには、かなり詳細に常駐しているソフトの情報を伝えてくれるものがある。
「スタートアップチェッカー」はWindows XP〜2000用のソフトウェアで、スタートアップ項目や現在動作しているプロセスの項目、サービス項目を、解説を確認しながら無効化できるものだ。サイトでは「msconfigのスタートアップ部分機能強化版」だとうたわれている。こうしたアプリケーションをうまく使って、不必要な常駐を解除すれば、空きメモリも増えるし、マシンも安定するというものだ。
PCの調子がおかしいときに、どうするか。シマンテックが行った調査の結果をもとに、どんな手順でトラブルに対応していけばいいのかを考える。
gooランキング:「最近の若い人は」……このセリフが出たら、要注意!年上の人の行動を見て「これだからオジサン、オバサンは……」とつい思ってしまうことがあります。逆に若手の人たちは、どんな行動を“オジサン、オバサン”と見ているのでしょう。
アイデアの素を生み出すマッシュアップサイト「ポケディアノート」アイデア発想の素は情報収集から。各種CGMサイトのAPIを使って、気になる事柄の関連情報を表示する無料サービス「ポケディアノート」をコクヨが開始した。
今さら聞けないマネジメント&コーチングの基本:第4回 部下の業績はコントロールできるか?マネージャーにとって気になることの1つは、部下の業績をどうアップさせるかでしょう。果たして部下の業績をコントロールできるのでしょうか? そしてその方法は?
ITSS判定調査で、何が分かったか。スキルと収入には相関関係はあるのか、資格はあると有利か。それらの疑問に答える
「なぜオフショア?」という疑問をお持ちの皆さんへ。オフショアは目的ではなく手段。選択肢の1つとして力を発揮する状況とは?
インストールパーティを開催してみたが、回を重ねるごとに見えてくる課題と可能性。ユーザーが求めているものは一体何だろうか
モバイルPC接続でも通信コストは気にしないauの定額制データサービス、スタート!
「ほかのSNSにないものを見つけた」地域コミュニティの魅力を、駅弁王に聞くNew!
【 48】引用元 3分LifeHacking:不要な常駐ソフトを解除する - ITmedia Biz.ID
URL: http://www.itmedia.co.jp/bizid/articles/0708/29/news102.html
コンピュータの起動時に自動的に実行されるアプリケーションのことを「 常駐アプリケーション 」と呼びます。
これらの常駐アプリケーションには、コンピュータのシステムを監視していたり、影響を与えたりするものが含まれます。
以下のトラブルシュートはこの常駐アプリケーションを停止させる方法を説明しております。
常駐アプリケーションは、一般的にタスク バー右端のタスク トレイ部分にインジケータとして表示されています。
常駐アプリケーションを停止するには、以下のそれぞれの操作を実行します。
常駐ソフトウェアをはずす際に、ウィルス対策ソフトなどが機能しなくなる場合があります。
ネットワークから切断した状態で作業していただくことをお勧めいたします。
再起動を促すメッセージが表示されますので、「 はい 」をクリックしてコンピュータを再起動します。
上記の操作を実行しても一部のアプリケーションを停止できない場合があります。
この場合、コンピュータやソフトウェアのメーカーに停止方法についてご確認ください。
再度常駐させたい場合は、システム設定ユーティリティ画面で「スタートアップ グループの項目を読み込む」にチェックを入れ、再起動することで常駐されます。
常駐しないソフトに関しては、コンピュータやソフトウェアのメーカーに常駐方法についてご確認ください。
常駐ソフトウェアをはずす際に、ウィルス対策ソフトなどが機能しなくなる場合があります。
ネットワークから切断した状態で作業していただくことをお勧めいたします。
再起動を促すメッセージが表示されますので、「 はい 」をクリックしてコンピュータを再起動します。
上記の操作を実行しても一部のアプリケーションを停止できない場合があります。
この場合、コンピュータやソフトウェアのメーカーに停止方法についてご確認ください。
再度常駐させたい場合は、システム設定ユーティリティ画面で「スタートアップ グループの項目を読み込む」にチェックを入れ、再起動することで常駐されます。
常駐しないソフトに関しては、コンピュータやソフトウェアのメーカーに常駐方法についてご確認ください。
常駐ソフトウェアをはずす際に、ウィルス対策ソフトなどが機能しなくなる場合があります。
ネットワークから切断した状態で作業していただくことをお勧めいたします。
表示されたアイコンを全て選択し、デスクトップにドラッグ&ドロップします。
※「 スタートアップ 」に表示されるアイコンは、お使いのコンピュータの環境によって異なります。
コンピュータを再起動しても、いくつかのインジケータが残っている場合があります。
それぞれのインジケータを右クリックし、ショートカット メニューから「 終了 」をクリックします。
上記の操作を実行しても一部のアプリケーションを停止できない場合があります。
この場合、コンピュータやソフトウェアのメーカーに停止方法についてご確認ください。
「 スタートアップ 」にあった常駐ソフトを元に戻すには、デスクトップにドラッグ&ドロップしたアイコンを、再度スタートアップに戻します。
インジケータを右クリックメニューから終了した常駐ソフトについては、再起動することで常駐されます。
常駐しないソフトに関しては、コンピュータやソフトウェアのメーカーに常駐方法についてご確認ください。
【 49】引用元 [DI100019]常駐ソフトウェアを停止する方法
URL: http://digital-faq.olympus.co.jp/faq/1028/app/servlet/qadoc?DI100019
タスクマネージャーに任意のプログラムを列挙されないようにする方法はないだろうか? Windowsにはプロセスという概念がありアプリケーションはそれぞれプロセス単位で動作しています。プロセスは「Ctr+Alt+Del」で起動されるタスクマネージャーで確認でき、これを見ると現時点で起動しているプロセスのすべてを監視することができます。
さて、Windows上で実行されているアプリケーションはすべてOSの管理下に置かれているわけであり、よってすべてのプロセスをOSは管理していることになります。つまりは「常駐させたいプログラムをタスクマネージャーから消し去ることは難しいのでは?」と思われるかもしれません。ということで、今回は常駐プログラム隠蔽テクニックと題してお送りしたいと思います。
では最初に、タスクマネージャーに実行したプログラムがプロセスとして列挙されるところを観察してみます。test.cppをコンパイルし、タスクマネージャーを起動した後、test.exeを実行してみてください。
このプログラムが実行された直後にタスクマネージャーにtest.exeというプロセスが出現します。このプログラムはご覧のとおりOKボタンを押すと終了するので、押さないままでいると、ずっとタスクマネージャーにプロセスとして存在することになります。もちろんOKボタンを押すとプログラムは終了しますので、プロセスもタスクマネージャーから消えます。
さて、アプリケーションはプロセス単位で管理されていてプログラムが実行されればプロセスとしてタスクマネージャーに列挙されるということになります。「ではDLLの扱いはどうなるのか?」次のプログラムをみてください。
まずはこのようなDLLを作成します。このDLLは呼び出されたら新しいスレッドを生成し、そのスレッドはMessageBoxを表示して、終了するというシンプルなものです。では次にこのDLLを明示的に呼び出すtest2.cppを作成します。
では、このプログラムをコンパイルしてexeファイルの生成を確認したら、dlltest.cppをコンパイルして作成されたdlltest.dllを、exeファイルと同じフォルダに移動させて実行させてください。もちろんタスクマネージャーも起動させてください。
これはDLLの仕組みを理解しているならば当たり前のことですね。DLLはLoadLibraryを呼び出された時点で、呼び出し元のスレッドのプロセスにマッピングされるわけですから。つまりDLLはプロセスにマッピングされた直後からそのプロセスの一部となるわけであり、そこで新たにCreateThreadが呼び出されたとしても、test2.exeのプロセス内で新たにスレッドが生成されただけだからです。よって、test2.exeが終了すればそのプロセスにマッピングされているDLL(dlltest.dll)もまた終了するのは当たり前であり、DLLがプロセスとして新たにタスクマネージャーに列挙されないのも当たり前のことです。
別のプロセスのアドレス空間で稼働するスレッドを作成します。これを使えばIEXPLORE.EXEのアドレス空間にスレッドを作成できるわけです。例えばこんな風に。
指定されたプロセスの仮想アドレス空間内のメモリ領域の予約とコミットの一方または両方を行います。この関数はMEM_RESETフラグがセットされていない限り、確保されるメモリが自動的に0で初期化されます。
指定されたプロセスのメモリ領域にデータを書き込みます。書き込みたい領域全体がアクセス可能でなければなりません。さもないと、関数は失敗します。
ダイナミックリンクライブラリ(DLL)が持つ、指定されたエクスポート済み関数のアドレスを取得します。
さて、これらの知識を踏まえた上でやるべきことをまとめます。目的は別のプロセス(ここではIEXPLORE.EXE)にDLLを注入させることです。そのために必要なことはターゲットのプロセス(ここではIEXPLORE.EXE)にLoadLibraryを呼び出させることであり、それによってこちら側が用意したDLLをターゲットのプロセスにマッピングさせることです。それにより常駐させるプログラムをあらかじめDLLとして作っておけば、それをターゲットプロセスにマッピングさせることによりタスクマネージャーのプロセス空間に列挙されることなく任意のプログラム(DLL)を注入させ、実行させようということです。
以上のことをプログラムにしたのがin_dll.cppです。まずはプログラムの説明をします。
これはプロセスを開く関数です(みればわかりますが)。プロセスIDを渡せばそのプロセスを開いてくれるので、さっきProcess32Nextなどを使って検索してきたTARGET_EXE_NAMEのプロセスID(つまりDLLを注入するターゲットのプロセスID)を渡しています。戻り値はそのプロセスのハンドルです。
DLLのパスを作成しています。まずGetModuleFileNameで自分自身(つまりexeファイル)の絶対パスを取得して、その文字列の後ろから探して最初に「\」が発見されたところから以後DLLファイルの名前に置き換えています。つまり自分と同じフォルダにあるDLLの絶対パスを作成したわけです。
タスクマネージャーはプロセスを列挙します。よってIEXPLORE.EXEやexplorer.exeといったプログラムは、もちろん列挙、表示されるでしょう。しかし、マッピングされたDLLはプロセスとして列挙されません。これは当たり前のことですね。
ちなみにこの方法だと完全に隠蔽できるのか? と聞かれれば「いいえ」と答えるしかありません。実際に任意のプロセスが利用しているDLLを列挙させるプログラムなんかも作れますし、タスクマネジャー以上に高機能なプロセス管理ツールなどならすぐにバレてしまうかもしれません。あくまでもタスクマネージャーから見えなくするだけです。よって、これは常駐させたいプログラムを隠すひとつの方法だと考えてください。
これはクリップボードのログをとるDLLです。キーボードのログをとるのツールをキーロガーと言いますが、これはクリップボードのログをとるのでクリップロガーですね(ぉぃ)。これをコンパイルしてin_dll.exeと同じフォルダにいれてin_dll.exeを実行すると、このDLLがターゲットのプロセスにマッピングされるので、以後クリップボードのログが「c:\log.txt」ファイルに保存されることになります。ちなみに文字列専用ですのでクリップボード内の画像やファイルなどはロギングしません。このDLLに関しての解説はしません。これは今回の本質ではないので(^^;。
さて、いかがだったでしょうか。DLL関連のテクニックは以外に役に立つんじゃないかなと思い書いてみました。実はつい最近、実用的なキーロガーを作りまして、今回のネタはその時に使ったソースコードを流用してます(笑)。
【 50】引用元 常駐プログラム隠蔽テクニック
URL: http://ruffnex.oc.to/kenji/text/dll_inj/