「パケット警察」いじってみましたよ。
ここのところ、巷を賑わしている「遠隔操作ウイルス」による誤認逮捕。
この件をきっかけに本日(2012/10/22)「パケット警察 for Windows」というソフトウェアがリリースされました。
リリース文によると
「パケット警察」は、パソコンの通信記録やソフトウェアの起動記録を見張り、自動的にハードディスク上に蓄積するソフトウェアです。万一、遠隔操作ウイルスによってあなたのパソコンが犯罪者にリモート操作され「踏み台」となった場合に、ウイルスの起動記録や犯人の通信記録がすべてログに残りますので、あなたの無実を証明したり、真犯人を追跡したりするための有力な証拠として利用可能です。
とのことです。
twitterでもつぶやいたのですがこのあたりがやはり気になります。
(法律に詳しい方。こっそり教えてくださると嬉しいです。)
容疑がかかっている人の管理下にあったり、ウイルスや侵入による汚染の可能性のあるコンピュータ内の情報ってどれほど証拠能力があるのかどうかという点についてはボクは法律の専門家ではないのでなんとも言えません。
ただ、単純に容疑がかかっている人が自由に操作できる状態にある情報を警察がどれだけ信じてくれるのだろうか。とやはり疑問は残ります。また、技術的な観点で見ても改ざんが可能である状態にあるコンピュータ内の情報はインシデントレスポンスをするにあたり鵜呑みにはできないもの。つまり、信用に足るとは言えないのかもしれないなとは感じます。
容疑がかかっている人が犯人であったとしても、その人のコンピュータを遠隔から操るどこかの誰かが真犯人であったとしても自由に操作できる環境下にあるという意味では同じことだと思います。
あと、ログも平文で保存されており、編集可能ですので、それこそ特定の組織の人や組織内で言えば管理者レベルしか見えない、編集できない、もしくは編集したことが分かるような仕組みでもない限り証拠とするには厳しい気もします。
と。頭で考えるのも限界があるので取り留めもなく手を動かしてみました。
主に外部から侵入したことを想定して検証しています。
インストールはすごく簡単(プロミスキャスモードが必要ないのでWindPcapなども不要)なので割愛。
気になった点としてはインストール中に「ユーザ情報」を入力する画面があったことくらいです。
新たにこのソフトウェアのためのユーザが追加されるのだろうかとも思い確認しましたが追加はされていませんでした。
(これなくてもいいと思うんですけどね。)
で、インストール完了。
プロセスをタスクマネージャで確認すると「ppsvc.exe」という名前で起動されていることが確認できました。
インストールフォルダ内を見ていたら設定ファイルがあったので中身を確認したところ暗号化されたようなパスワードと共に「AdminPort」という文字列があり、気になったので確認したところ設定ファイルに書かれた番号のポートがオープンしていました。
このポートは設定を管理するためのツール「パケット警察」設定ツール(ppmgr.exe)が利用しているようで、念の為別のIPアドレスから接続を試みたところ接続することはできませんでした。(127.0.0.1でListenです。)
ざっと見たところは大体こんな感じです。
引き続き、何かしらの方法で制御を奪われた場合はどうなるか。
ということを想定しつつ手を動かしてみました。
制御を奪うには色々と方法があると思います。今回の事件のようにマルウェアをインストールさせるパターンや脆弱性を利用してアクセスしてきたブラウザ経由から制御を奪うパターンなどなど。今回は「Metasploit」を利用し、Administratorsグループの権限を奪ったという想定で検証を進めました。
試したことは、保存されているログを削除することです。
上図にように削除できませんでした。これは既にこのログファイルを「パケット警察」が開いているためですね。
ですので、今回はありませんが過去に保存した別のファイルがある場合は削除できるということになるでしょう。
ということで次に「パケット警察」(ppsvc.exe)を停止してから削除してみました。
当然ながら削除できてしまいました。
暫くするとログファイルが作成されていたので再度プロセスを確認してみると復活していました。
恐らくサービスが動作しているのでそちらが監視していて復活させているのでしょう。
アンチウイルスソフトなどでもよくあるパターンですよね。(マルウェアにもこういうのって実装されてたりしますがw)
ということでサービスを停止してみました。
これで「パケット警察」(ppsvc.exe)が復活してくることはなくなりました。
このようにこっそり止められると気付く方法は2つあるのかと思います。
①「パケット警察」設定ツール(ppmgr.exe)を起動するとサービスに接続できない旨のエラーがポップアップする。
②プロセスの監視ログに下記のような記録が残る。(パケットログと同様削除された場合はこの限りではない。)
2012-10-22 17:09:15.954 監視開始時にすでに起動していたプロセス: ID = 4092, EXE = "C:\WINDOWS\system32\cmd.exe"
2012-10-22 17:10:17.923 プロセスの起動: ID = 3840, EXE = "C:\WINDOWS\system32\cmd.exe"
2012-10-22 17:10:20.360 プロセスの起動: ID = 3660, EXE = "C:\WINDOWS\system32\net.exe"
2012-10-22 17:10:20.391 ----- 「パケット警察」の監視エンジンが正常終了しました。 -----
一度設定したらあまり触らないかもしれないので気付きにくいかもしれませんね。
と検証はここまでです。
奪取しているのは、Administrators権限なので当たり前といえば当たり前の結果なのだと思うのですが多くの方はAdministrators権限で使っているのではないでしょうか。
特に何がというわけでもないのですが興味が湧いたので取り留めもなくいじってみました。
一応のボクなりの個人的な見解を書いておきます。
予想通りではありましたが、乗っ取られしまった場合ですとこのソフトウェアによるパケットログが
「自己の無実を証明し真犯人を追跡するための重要な証拠」となり得るかどうかというと多くの場合において証拠とすることは厳しいのではないかと思います。検証にもあるとおりAdministrators権限以上(SYSTEMなども含むので)での操作が可能であれば改ざんなどの操作を行なうことが可能であるため、証拠となり得るには、このソフトウェアがインストールされているシステムに対して侵入が行なわれていないことの証明、もしくは、ログが改ざんされていないことの証明ができる必要があるのではないかと思います。事件がきっかけで世の中で情報が錯綜し、ある種の混乱をきたしている状態において、スピード感あるリリースを行なったことは本当に素晴らしいことであると思います。しかし、これをインストールしていれば大丈夫というように安易に安心してしまってはいけないとも同時に思います。
さいごに:
この話題。誤認逮捕をしてしまったこと。それに付随する明るみになってきている事象は確かに警察組織の不手際であるとボクも見ていて思います。しかし、リモートから捜査を行う際にたよりにできるものはIPアドレスくらいしかないのかもとも思います。(実際の捜査を知っているわけではないので想像になりますが。)となると現行の捜査、逮捕のプロセス自体に無理がでてきているのかもしれません。となったときに、冤罪を増やさないためにどうするか。
逮捕し容疑者と公表する前にワンクッション置くといった方法をとる?
そうなると捜査の及ぶ範囲が今よりも広げる?その場合のプライバシーはどうなる?
答えはボクにもありません。ただ言えることはこれを考え、形にしていくことが警察組織だけではなく私たちにも与えられた課題なのかもしれないということです。