プロが教える店舗&オフィスのセキュリティ対策術

小説を今考えていてその中で疑問が湧いたので質問させていただきます。


国家機密で開発を進めている凄くレベルの高いコンピュータ(架空のものです)に携わる研究者が仲間の研究者のパソコンを自分のパソコンから遠隔操作で内部の情報を流出させるという事件が起こります。

お聞きしたい点としては、この真犯人のパソコンに遠隔操作をしたという記録は残るのか?またパソコンからその記録を消す事は可能か?という事です。


どう調べたら良いものかわからなかったものですから教えていただけるとありがたいです。
よろしくお願いします。

A 回答 (1件)

まず、自分のパソコンとなると、そのパソコンがどこにあって、どこからアクセスしたかにもよりますが、経路上のすべてのコンピュータにも何らかの記録が残ります。


実際そういった記録を犯罪捜査に役立てているようです。
最近では各国間で情報を共有し会えるようになっているようで、国をまたいでも追跡できるようです。
こういった記録はあえて保存するようにしているから保存されます。


犯人のパソコンと被害者のパソコンの双方にもログは残ります。
Windows ならイベントログに、いろいろなログが残ってます。
セキュリティを気にする人はカスタマイズして、特定の操作をを監視するようにしたりもできます。

で、いわゆる一般の研究者程度の人間が扱うパソコンとなると、たいした対策もされていないように思いますので、ログの改ざんなどは容易にできるものと推測されます。

Windows のイベントログは、セキュリティのためというよりは、管理のためなので、普通に消せます。
シャットダウン時か起動時にイベントログを消すバッチ処理でも入れておけば、次回起動したとき、ログはまっさらです。
やったことはありませんが、2時間も悩めば、もっと事細かにログを制御するプログラムは書ける気がします。

ほかにファイルへのアクセス日時(更新日時ではない)というものもあり、これもよく更新されます。
普通アクセス日時が変更されていることには気がつかないはずですが、痕跡を消すとなると、そういったものも修正してやる必要があり、けっこう手間がかかります。

正規の利用者が使っているうちに、どんどんそういった痕跡は上書きされて、いつかはなくなってしまうものと思いますが、Windowsのようにたくさんのプログラムが同時に走っているようなOSでは、直後にすべての痕跡を完全に削除するのは、よほどIQの高い人か気の回る人でないと、ほぼ不可能でしょう。

遠隔操作のプログラムはいろいろあります。
私も日常で使ってます。
Windows標準でもありますし、telnet や VNC、各種フリーソフトでもいろいろあります。
これらのログの記録形式もさまざまで、アクセス毎のすべての行動を1行のテキストにして列挙しただけのものや、それらを符号化してバイナリデータ化しデータ密度を効率化させたもので、記録する操作対象も様々でとくに統一はされていません。
VNCなどはログ機能がなかったと思うんですが、ほかのソフトウェアを組み合わせることでログをとったりはできます。

遠隔制御ですが、今は、普通に、グラフィカルに制御できます。
サーバーソフトウェアとクライアントソフトウェアがそれぞれ必要なので、サーバーソフトウェアを遠隔操作したいパソコンに事前にインストール、あるいはtelnetなどから起動できる場所に仕込んでおくか、指定時間に起動させたりとか、はたまたウィルス感染的手法をとるか、とにかくどにかして実行させる必要があります。

遠隔操作プログラムというのは、GUIなら遠隔操作される側(サーバー)から画面をキャプチャして、遠隔操作する側(クライアント)に送ります。
クライアントはその絵を見てキーボードやマウスを操作し、クライアントプログラムはそれをデータ化し、遠隔操作の対象に送り、サーバープログラム側でキーボードやマウスの「メッセージ」といわれるもにに変換し、実際のキーボードやマウスの変わりにそれをパソコンに伝えます。

一般のIT系エンジニアにも半日あれば、ある程度の痕跡の残らない遠隔操作プログラムは書けるものと思います。
(先にも述べたように細部に気がまわなければ、見落として痕跡は残るでしょう)

動作させるには、ルーターやファイアーウォールの設定が邪魔にならないようにしておく必要がありますが、遠隔操作プログラム自体に、終了時にログを削除し、ルーターとファイアウォールの設定を元に戻し、さらにアクセスしたすべてのファイルの各種タイムスタンプを元に戻し、自分自身も削除するようなプログラムを追加しておけば、痕跡も残らないと思います。

一般的な遠隔操作は、サーバープログラムが操作される側、クライアントが操作する側となっていますが、これは反転可能で、別に操作される側がクライアントとなるようなプログラムがあってもかまいません。

遠隔操作される側に、クライアントプログラムを実行させておいて、遠隔操作する側にサーバープログラムを走らせ、ある時間に、遠隔操作される側から、遠隔操作する側に接続させるようなプログラムも書けるわけです。
そのほうが、ルーターやファイアーウォールは突破しやすいと思います。

というような感じです。
    • good
    • 0
この回答へのお礼

わかりやすく大変勉強になりました。INTLINSIDEさんに回答していただいてよかったです。

本当にありがとうございます。

お礼日時:2011/01/24 09:09

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!