遠隔操作ウィルス事件のコードプロファイル(メカAG)
とはいえそういう人間でも潜在的にプログラミングが好きな人間なら、自己流であれこれプログラムを作ることはあるだろう。
遠隔操作犯人が見せるアンバランスさ、ある部分異常に慎重であるかと思えば、ある部分はとんでもなくずさんという素人の自己流っぽさは、一面共通点があるともいえる。
* * *
iesys.exeのコードの質について、自動生成ツールが生成したままの変数名Form1とかをそのまま使ってたり、あちこちからコピペしている点を、「素人」「レベルが低い」と評する人達がいるけれど、これはそれほど単純ではないと思う。
また変に自分のオリジナルで作るよりも、既存のコードをそのまま使ったほうがバグも少ない(ことが多い)。なまじアマチュアだとどうしてもコードに愛着がわき、自分流にあれこれ直してしまって、かえって余計なバグを生んで墓穴をほったり。でもアマチュアの場合そういうのを含めて「楽しい」んだよね。
なのでiesys.exeのそういう部分を見て、作者のレベルを推し量ると、両極端に分かれると思う。プロが絶妙な判断で割りきって最小限の労力で必要な機能を持つコードを仕上げてるのだと言う見方もあれば、出来合いの中身もろくに理解せずにコードを継ぎ接ぎしただけの素人の作品という見方もできる。
まあ、ようするにどの側面を強調するかで、180反対の筋の通ったそれっぽい推理ができる。
* * *
「犯人は高度な技術をもっている」というそれっぽい説明もできるし、「犯人はあまり高度じゃない」というそれっぽい説明もできるということは、同様に「容疑者が犯人である」という状況証拠にも使えるし、「容疑者が犯人でない」という状況証拠にも使えるということ。
で、それを「犯人の可能性がある」という部分に力点を置くか、「犯人でない可能性がある」という部分に力点を置くかで、意見が真っ二つにわかれるわけだ。
* * *
もう一つ。容疑者が早い時期から「自分はC#の経験がない」と主張していた点。これも180度逆の見方が同時に出来る。ソフト開発に携わっている人間なら、C#の経験があるのに、経験がないとウソを付くのは難しいことがわかっているはず。たった一人でずっと開発しているならいざしらず、複数人で開発する以上は、そういう経験はそう簡単に隠せない。
つまりそれでもなお容疑者が「自分はC#の経験がない」と主張するなら、その主張を押し通せる勝算がそれなりにあるのだろう、という見方ができる。いってみれば詳しい人間ほど、「嘘をついたら簡単にバレる」とわかっているので、「嘘ではないだろう」という印象をもっても不思議ではない。
これは仕事先のPCにウィルスの開発痕跡がないという主張も同じで、痕跡というのは用意には消せないんだよね。あちこちに残る。ハードディスクをフォーマットして全部インストールし直すのでなければ、ちょっと表面的に削除しただけではいろいろなところに痕跡が残る。
んで、それでもなお「痕跡が見つかるはずがない」と容疑者が自信を持って主張するなら、本当にないんだろうと考えても不思議ではない。嘘を突き通す難しさを正しく見積もれるからこそ、逆に嘘をついていないのだろう、という推理。まあ、この点は結果的に裏目に出てしまったが。
* * *
今回の件に限らないけれど、専門家とド素人の判断がたまたま一致し、その中間層の判断だけが違うという現象は割とあると思う。下駄を投げて占った天気と気象衛星を使った予報が結果的に同じで、空模様を眺めた推理だけが違う、みたいな。
でも結論は同じでも下駄の天気占いと気象衛星の予測は、中身が違う。それをもって何億円もかけた気象衛星の価値は下駄と同じだという人はいないだろう。
また(これは冒頭の記事とは関係ないが)、ネットのあちこちで「容疑者が怪しいのは最初から明らかじゃん」という人たちがいるけれど、そりゃ怪しいか怪しくないかといえば、怪しいだろう。過去に同様の事件を起こしてるわけだし。しかし「怪しい」=「犯人だ」という安直な思考が冤罪や誤認逮捕を生んでるわけで、そういう主張をする人たちは、これからも冤罪や誤認逮捕が繰り返されていいと思ってるんですかね。
執筆:この記事はメカAGさんのブログからご寄稿いただきました。
寄稿いただいた記事は2014年06月13日時点のものです。
