Menu

ウイルス対策ソフトは必要か!?自作ウイルスでWindows Defenderとバトルして検証してみた(1)

2021年6月27日に公開(2021年6月27日に更新)

ひろゆきさんがウイルス対策ソフト不要論を出していることで、SE界隈では少し盛り上がりましたね。Windows10にはもちろん高性能なアンチウイルスソフトとして「Windows Defender」が標準装備されているので不要だという方もいれば、必要だとおっしゃる方もいるので検証してみました。
ひろゆきさんの見解については下記の切り抜きがわかりやすいです。

結論:導入を推奨します

色々な見解があると思いますので、記事の続きを読んでいただければ幸いです。

...それでは確認していきましょう

まず、検知能力について調査します。
ほかのウイルスソフトと比較した結果は下記の通りです。

引用(2021/6/23取得):https://www.av-comparatives.org/comparison/

結果はご覧の通りなのですが、Microsoftの圧勝なんですよね…
上記の図のグレー(Blocked)の部分がウイルスのサンプルを検出できたかどうかになるんですが、現在公開されている最新情報(2021/6/23確認)ではなんと100%の検出率(あくまでサンプルでの結果。このデータはあくまで検知性能の参考値として扱ってください)です。ほかのウイルス対策ソフトを圧倒しています。数年前は悪くないレベルの検出率だったのですが、猛追してきたかと思うと追い越してしまったみたいな感じです。つよつよなセキュリティ対策ソフトが欲しいひとは定期的に確認するとよいです。

これだけを見るとひろゆきさんの見解にも納得がいきます。ですが、未知のウイルスに対してはどうでしょうか?実験したいのですが、もちろん入手できませんでした…(昔はハニーポット飼ってたのでいっぱい手に入ったんですけど)

...というわけで、ウイルス作ってみた

作ってみたのはウイルス界隈ではよく聞く「キーロガー」です。たぶんスパイウェアとかの分類の方がしっくりくるかもしれません。最近スパイウェア関連で話題になったといえば、某大手オンラインゲームの話がありますね…

ウイルスの実行ファイルはこんな感じ。一見するとなんにも悪さはしなさそう。

アイコン見てわかる人もいらっしゃると思いますが、「PyInstaller」というライブラリを使いました。いわゆるスクリプト言語はコンパイルして実行可能ファイルにしないので、こういったライブラリによってEXE化します。
このライブラリは仕事で昔よく使っていて(RPAツールの配布など)付き合いが長いのですが、最近ではウイルス作成に悪用されている悲しい代物です。本当に良いライブラリなので、意義のある使い方をして応援してあげてくださいね!

Windows10 Homeのほぼ初期状態の設定、Windows Defender有効の環境でさっそく起動してみました。

・・・普通に起動しました

起動するとこんな感じでキーボードの入力情報を保存するファイルを作成します。ちなみに、実行中はバックグラウンドで潜んでるのでタスクマネージャーで見たりしない限りは見つかりません

それでは、試しにブラウザでログイン情報を入力してみますか…

そして、収集されたデータを見てみると、、、

おっと、、、パスワードである「password」が丸見えです。かなり恐怖を感じました。


・・・それでは種明かしをします

そもそも、未知のウイルスを「これはウイルスだ」と瞬時に特定することは難しいんです。技術的な詳しい話はこちらがシンプルでわかりやすいです。
下記の画像は、Googleが提供するVirus Totalという無料で使えるオンラインスキャンシステムです。不安なファイルがあったらこれでスキャンできます(情報漏洩につながるので、センシティブなファイルはアップロードしないこと!)

これで先ほどのウイルスを試してみましたが、69のウイルススキャンソフトのうち、8つのソフトのみ検出という結果。もちろん誤検知がうまく働いたり、単純なスキャン機能以外も使っているため若干の検出がされている可能性はあります。ただ、基本的に検知されないと考えてください。既知のウイルスの場合、ほぼ全部のソフトが検知するはずです。すごく優秀なんですよ…

こういった状況なので、ウイルス対策ソフトは「ふるまい検知」機能を持っています。実行するソフトの動きを見ながら、「あっ、やばいな」と感じたら動作をブロックするというものです。これはWindows10には搭載されていないものです。
下記、無料で使える「Avast」というウイルス対策ソフトでの動作キャプチャです。

スキャンでは検知されませんでしたが、

自作ウイルスを実行すると、怪しい動きをしているソフトであることを検知しました。信頼できるソフトの場合はアプリの実行を許可することで普通に使えるようになります。裏でネットワークアクセスをしようとした時とかも、警告だしてくれます…!

最後に

少し古いですが、IPAが出している情報セキュリティ白書2018によると2017年の報告されたゼロデイ攻撃は4262件なので、標的になる確率や対象の製品を使っている確率を考慮すると不安になる数ではありません。適切な知識を持って、日々欠かさずセキュリティアップデートを実施していれば、パソコンに勝手に侵入されて不正なソフトを勝手に実行されるようなことはないと思います。

しかし、検証の結果にもあるように、うっかり実行してしまったりしたら簡単に未知のウイルスには感染します。ひろゆきさんのようにパソコンを使うリテラシーが高い方は大丈夫だとは思いますが…無料のもので十分なので、ふるまい検知があるウイルス対策ソフトを使った方が安心です。

今回の検証ではキーボードの入力情報を取得するのみでした。次回はウイルスの要件定義をして、もっと作りこんだ自作ウイルスをWindows10で動かしていきます。外部へのネットワークアクセスはもちろん、昨今流行っている「Emotet」のようなランサムウェアと同じ動作をさせてみて、どこまで好き放題されてしまうのか検証してみたいと思います。

それではまたお会いしましょう!

©2023 Maya Hanada