McAfee Labsは、最新のRovnixダウンローダーにコントロールサーバーのシンクホールチェック機能が搭載されていることを確認しました(訳注:シンクホールについては下記で説明)。この比較的新しい機能により、マルウェア、特にふるまい検知システムを利用したマルウェアの検知は難しくなります。このマルウェアは、各ネットワーク通信セッションの前に自身のコントロールサーバーのシンクホールチェックを行います。ドメインネームサービス(DNS)レコードにシンクホールが行われていると判断した場合は、悪意のあるペイロードのダウンロードや実行などの活動を開始しません。さらにこのダウンローダーは、珍しい手法を使って時間チェックを行い、悪意のある活動を実行すべきかどうかを決定します。
Rovnixについて
Rovnixは2011年頃から出回っているマルウェアファミリーで、VBR(訳注:IBM PC互換機で導入されたブートセクターの1種)やNT LDR (訳注:NTLDRがWindows NT系の標準ブートローダの1つ)に感染してブートセクターをハイジャックし、標的のシステムに長い期間居座ります。このマルウェアは次のような悪意のある活動を行います。
- ブラウザプロセスに感染し、被害者の銀行情報を盗み出す。
- 被害者のシステムから他のパスワードを盗み出す。
- 標的のウォレットからビットコインを盗み出す。
Rovnixファミリーはもともとモジュール型です。このマルウェアは次のことが可能です。
- 標的のシステムを感染させた後に、自身のコントロールサーバーを更新する。
- 新しいプラグインをダウンロードし、今後の新しい悪意のある活動を実行する力を増強する。
- 対応するDLLおよびブートキット感染ドライバー/コードを使用して、32および64ビットシステムの両方に感染する。
シンクホールについて
DNSは、たとえば「www.website_name.com」のようなドメイン名を、ブラウザなどのネットワーキングアプリケーションがWebサーバーとのコンテンツの送受信に使用できるIPアドレスに変換します。ドメイン名を使用するアプリケーションでは、DNSリクエストはWebベースサーバーとの接続を確立する上での最初のステップです。コントロールサーバーとの通信にドメイン名を使用する悪質なアプリケーションはすべて、DNSサーバーにコンタクトして、コントロールサーバーのドメイン名を有効なIPアドレスに変換する必要があります。
シンクホールでは、マルウェアによるコントロールサーバーへのDNSリクエストを妨害し、有効なサーバーIPアドレスではなく、偽造アドレスで応答します。この手法によってマルウェアとコントロールサーバーとの通信が途切れ、いくつかのメリットが得られます。マルウェアは以下のことができなくなります。
- 標的のシステム上で実行するコマンドをダウンロードすること。
- 標的のシステム上で実行する新しいモジュールやマルウェアをダウンロードすること。
- 標的のシステムから盗んだデータの外部への持ち出し。
- 自身のステータスをコントロールサーバーへ提供すること(ボットネットの場合)。
- システム統計値(システムのタイプ、マルウェア対策のインストール状況など)をコントロールサーバーへ送信すること。
- コントロールサーバーから暗号化キーをダウンロードすること。これにより、標的とするファイルの暗号化を防止できます(ランサムウェアの場合)。
シンクホールは、トロイの木馬、ボットネット、ランサムウェア、その他の脅威など、非常に幅広いマルウェアの活動を阻止するために使用されています。
シンクホール検知技術
このマルウェアは、簡単ながら効果的な技術を使用し、これからコンタクトを試みるコントロールサーバーのDNSネームサーバーレコードを入手(フェッチ)します。
DNSネームサーバーを入手(フェッチ)するためのDNSQueryコール
次に、このネームサーバーの値を、コントロールサーバーのDNSネームサーバーレコードがシンクホールされたことを示すキーワードのリストと照合します。このマルウェアは、DNSネームサーバーレコード値に次のキーワードが含まれているかどうかをチェックします。
- control
- sink
- hole
- dynadot
- block
- trojan
- abuse
- virus
- malw
- hack
- black
- spam
- anti
- googl
DNSネームサーバーの値と文字列を照合
シンクホールチェックでDNSネームサーバーに問題がないと判明すると、このマルウェアは被害者のマシンから情報を盗むためにさまざまなモジュールをダウンロードします。
コンタクト先ドメイン
以下のすべてのドメインは、悪意のあるプラグイン/モジュールのダウンロードに使用されたコントロールサーバーです。マルウェアは、まずリストの最初のドメインにコンタクトを試みます。最初のサーバーにコンタクトできない場合は、リスト内の次のサーバー、その次のサーバーへと順次コンタクトを試みます。
このドメインリストは、MD5:7ce075e3063782f710d47c77ddfa1261のものです。
- transliteraturniefabriki.com:通信と追加のプラグインのダウンロードのための最初のコントロールサーバー。
- tornishineynarkkek2.org:バックアップサーバー。このドメインは、IPアドレスが変更されたことがあります。
- upmisterfliremsnk.net:バックアップサーバー。このドメインも、IPアドレスが変更されたことがあります。
- itnhi4vg6cktylw2.onion:最後のサーバー。他のコントロールサーバーにアクセスできない場合、このマルウェアはこのonionアドレスで接続を確立します。
他のRovnixダウンローダーで確認された追加のコントロールドメイン:
- lastooooomene2ie2e.com
- ecloud86.com、ecloud87.com、ecloud88.com、ecloud89.com、ecloud90.com、ecloud91.com
- srvdexpress3.com、srvdexpress4.com、srvdexpress5.com、srvdexpress6.com、srvdexpress7.com
- elorfans2.com、elorfans3.com、elorfans4.com、elorfans5.com、elorfans6.com
- tornishineynarkkek.org、tornishineynarkkek3.org
- mediacontent.us、mediacontent2.us、mediacontent3.us
- romnsiebabanahujtr.org、romnsiebabanahujtr2.org、romnsiebabanahujtr3.org
- pg7iuaqu5b7fq36o.onion
- j7t4lg23tdhag3fn.onion
- c2bbagrsvbs2v6a7.onion
- hbs63zj7mwj5g6w7.onion
ドメインをホスティングするIPアドレス
このコントロールサーバーリストの複数のドメインは、同一のIPアドレスを共有しています。これは、悪意のある攻撃者がドメインをホストするIPを制御していることを意味しています。たとえば、次のドメインは同一のIPを共有しています。
- lastooooomene2ie2e.comとtransliteraturniefabriki.com
- tornishineynarkkek.org、tornishineynarkkek2.orgおよびupmisterfliremsnk.net
- ecloud88.comとecloud89.com
- srvdexpress3.com、srvdexpress4.comおよびsrvdexpress5.com
- elorfans3.comとelorfans4.com
時間チェック
このマルウェアは、標準のNetwork Time Protocol(NTP)サーバーを使用して時間チェックも行い、悪意のある活動を実行するかどうかを判断します。このチェックでは、コントロールサーバーから受信した時間と公開タイムサーバーから受信した時間を比較します。経過時間が特定のしきい値を超過した場合、このマルウェアはスリープ状態で一定の時間を過ごしてからもう一度時間をチェックします。多くのマルウェア分析システムは、マルウェアに悪意のあるコードを実行させるためにローカルのシステム時間を偽装することがあるため、タイムスタンプは公開NTPサーバーから入手(フェッチ)されているようです。
標的
このダウンローダーは、主に米国、カナダ、日本およびヨーロッパの一部で発生しています。
次の地図は、Rovnixダウンローダーの地理的分布を示しています。
Rovnixダウンローダー感染の地理的分布
まとめ
最新のRovnixダウンローダーには、DNSシンクホールを検知する新しい手法が搭載されています。この手法により、このマルウェアはコントロールサーバーがシンクホールされている場合には悪意のあるコードの実行を回避して自身を保護できます。単一のIPで複数のサーバードメインがホストされていることから、1人の攻撃者がこれらのサーバーを制御していることもわかりました。
公開NTPサーバーを使用した時間チェックは、比較的新しい機能です。この機能は、多くの動的なマルウェア検知システムで使用されているローカルシステム時間の偽装に対抗するものです。
MD5サム
7ce075e3063782f710d47c77ddfa1261
11f61c60ce548e2148c2f7a2e5f7103c
e8a94f1df66587abd7c91bfcbe5af5d5
fdef7dd0b7cece42042a7baca3859e41
b7d63dcb586ec9a54a91379990dcd804
7123a117c44e8c454f482b675544d1a9
5ea867f5f7c24e0939013faf3ed78535
0131d46686c66e6a4c8d89c3aa03534c
b0bce8bd66a005eff775099563232e64
e0bc0503ccc831c07d6cc4c394b5a409
29ef765145f6dd76cec5cc89c75b44de
a6fd6661c6ac950263ba9a3d4fc55354
19f14a5d5610e51f4985444f3f0e59ed
Yaraルール
次のYaraルールは、Rovnixダウンローダーのサンプルの発見に使用できます。
rule rovnix_downloader
{
meta:
author=”Intel Security”
description=”Rovnix downloader with sinkhole checks”
strings:
$sink1=”control”
$sink2 = “sink”
$sink3 = “hole”
$sink4= “dynadot”
$sink5= “block”
$sink6= “malw”
$sink7= “anti”
$sink8= “googl”
$sink9= “hack”
$sink10= “trojan”
$sink11= “abuse”
$sink12= “virus”
$sink13= “black”
$sink14= “spam”
$boot= “BOOTKIT_DLL.dll”
$mz = { 4D 5A }
condition:
$mz in (0..2) and all of ($sink*) and $boot
}
謝辞
この投稿に寄与してくれたChristiaan Beek、Jonathan Chang、Sanchit Karveに感謝の意を表します。
※本ページの内容は2015年12月9日更新のMcAfee Blog の抄訳です。
原文: Rovnix Downloader Updated with SinkHole and Time Checks
著者: Asheer Malhotra