Webアプリの脆弱性を利用するボット型マルウェア「Yowai」および「Hakai」を確認

トレンドマイクロは、主に中国で利用されているWebアプリケーション開発フレームワーク「ThinkPHP」で遠隔からのコード実行(Remote Code Execution、RCE)が可能になる脆弱性が、Miraiの新しい亜種「Yowai」および「Gafgyt」の亜種「Hakai」によって利用されていることを確認しました。これらのマルウェアは初期設定の認証情報を利用した辞書攻撃や脆弱性攻撃によって侵入し、感染したデバイスをボット化して「分散型サービス拒否(distributed denial-of-service、DDoS)攻撃」に利用します。YowaiおよびHakaiによる攻撃の急増が2019年1月11日から17日にかけて確認されています。

問題の脆弱性に対処する更新プログラムは2018年12月9日に公開され、続いて12月11日には「Proof-of-Concept(PoC、概念実証型エクスプロイト)」が公開されました。このThinkPHPの脆弱性を利用する別のMirai亜種「Miori」について、本ブログでは1月8日の記事で解説しています。

■Miraiの亜種「Yowai」の解析

Yowai(「BACKDOOR.LINUX.YOWAI.A」として検出)はその他のMiraiの亜種と類似した設定テーブルを持っており、同じ手順で復号することができました。侵入に利用する既知の脆弱性の一覧にはThinkPHPの脆弱性が追加されていました。

Yowaiは実行時に図1のメッセージをコンソールに表示します。

Yowaiに感染したデバイスのコンソールに表示されるメッセージ
図 1:Yowaiに感染したデバイスのコンソールに表示されるメッセージ

次に、6番ポートを開き、コマンド&コントロール(C&C)サーバからのコマンドを待機します。受信したコマンドに応じてDDoS攻撃や他のデバイスへの拡散などの不正活動を実行します。他のデバイスに拡散するために、表1の認証情報を使用して辞書攻撃を試行します。

辞書攻撃に使用する認証情報
OxhlwSG8
defaulttlJwpbo6S2fGqNFsadmin
daemon
12345
guest
support
4321
root
vizxv
t0talc0ntr0l4!
bin
adm
synnet

表 1:Yowaiが辞書攻撃に使用する認証情報

辞書攻撃以外に、さまざまな脆弱性を利用した拡散も行います。ThinkPHPのRCE脆弱性の他に、「CVE-2014-8361」、Linksys製ルータのRCE脆弱性、「CVE-2018-10561」、監視カメラおよびデジタルビデオレコーダ(CCTV-DVR)のRCE脆弱性を利用することが確認されています。

ThinkPHPの脆弱性を利用するコード
図 2:ThinkPHPの脆弱性を利用するコード

また、感染デバイスで競合するマルウェアが実行されている場合、表2の一覧を使用して当該プロセスを停止します。

停止するプロセス
dvrhelper、mirai、light、apex、Tsunami、hoho、nikki、miori、hybrid、sora、yakuza、kalon、owari、gemini、lessie、senpai、apollo、storm、Voltage、horizon、meraki、Cayosin、Mafia、Helios、Sentinel、Furasshu、love、oblivion、lzrd、yagi、dark、blade、messiah、qbot、modz、ethereal、unix、execution、galaxy、kwari、okane、osiris、naku、demon、sythe、xova、tsunami、trinity、BUSHIDO、IZ1H9、daddyl33t、KOWAI-SAD、ggtr、QBotBladeSPOOKY、SO190Ij1X、hellsgate、sysupdater、Katrina32

表 2:Yowaiが停止するプロセスの一覧

■Gafgytの亜種「Hakai」の解析

Hakaiはルータの脆弱性を利用して「モノのインターネット(Internet of Things、IoT)」機器を感染させることが報告されているボット型マルウェアです。トレンドマイクロが解析した検体(「BACKDOOR.LINUX.HAKAI.AA」として検出)では、拡散のためにThinkPHPの脆弱性、D-Link DSL-2750Bルータの脆弱性、「CVE-2015-2051」、「CVE-2014-8361」、「CVE-2017-17215」を利用することが確認されました。感染したデバイスはさまざまなDDoS攻撃に利用されます。

Hakaiがスキャンする脆弱性
図 3:Hakaiがスキャンする脆弱性

ThinkPHPの脆弱性を利用するコード
図 4:ThinkPHPの脆弱性を利用するコード

興味深いことに、トレンドマイクロが解析した検体は、設定テーブル関連の関数をMiraiからコピーしていましたが、実際には利用していません。この設定テーブルを使用しtelnetに対して辞書攻撃を仕掛けるコードは、より検出を困難にするために意図的に取り除かれたものと考えられます。

Miraiからコピーした設定テーブル関連の関数
図 5:Miraiからコピーした設定テーブル関連の関数

Miraiからコピーした関数は使用されていない
図 6:Miraiからコピーした関数は使用されていない

通常、Miraiの亜種は競合するボット型マルウェアのプロセスを停止します。そのため、初期設定の認証情報を使用するデバイスを避けてMiraiと住み分けることには利点があると考えられます。また、脆弱性を利用した拡散はtelnetの総当たり攻撃と比較して検出が困難です。これが、Hakaiによる攻撃が急増した理由かもしれません。

■被害に遭わないためには

ThinkPHPがシンプルな機能と使いやすさによって開発者および企業の間で広く利用されているオープンソースのPHPフレームワークであることを考慮すると、容易に悪用可能な脆弱性の存在はYowaiやHakaiのようなマルウェアの影響を大きなものとする可能性があります。今後もサイバー犯罪者たちは、より多くの侵入経路を持つ競争力のある亜種の開発を継続していくでしょう。

ユーザは、デバイスの脆弱性に対処するために製造業者が提供する最新の更新プログラムを適用し、不正アクセスを防ぐために初期設定の認証情報をより強力なものに変更してください。

■トレンドマイクロの対策

組込み型ホームネットワークセキュリティ「Trend Micro Smart Home Network™」を搭載したルータをご利用のお客様は、以下のルールによって本記事で解説した脆弱性を利用する脅威から守られています。

  • 1058814 WEB Linksys WRT120N tmUnblock Buffer Overflow (EDB-31758)
  • 1059669 WEB D-Link Multiple Routers HNAP Protocol Security Bypass Vulnerability (BID-

37690)

  • 1133650 WEB Multiple CCTV-DVR Vendors Remote Code Execution
  • 1134286 WEB Realtek SDK Miniigd UPnP SOAP Command Execution (CVE-2014-8361)
  • 1134287 WEB Huawei Home Gateway SOAP Command Execution (CVE-2017-17215)
  • 1134610 WEB Dasan GPON Routers Command Injection -1.1 (CVE-2018-10561)
  • 1134677 WEB D-Link DSL-2750B OS Command Injection
  • 1135215 WEB ThinkPHP Remote Code Execution

ネットワーク挙動監視ソリューション「Deep Discovery™」をご利用のお客様は、以下のルールによって本記事で解説した脆弱性を利用する脅威から守られています。

  • 2452 Wget Commandline Injection
  • 2621 Remote Code Execution – HTTP (Request)
  • 2630 HNAP1 Remote Code Execution Exploit – HTTP (Request)
  • 2639 CVE-2018-10562 – GPON Remote Code Execution – HTTP (Request)(※CVE-2018-10562は、認証回避脆弱性CVE-2018-10561を利用したRCE脆弱性)
  • 2692 LINKSYS Unauthenticated Remote Code Execution Exploit – HTTP (Request)
  • 2707 DLINK Command Injection Exploit – HTTP (Request) – Variant 2
  • 2786 ThinkPHP 5x Remote Code Execution – HTTP (Request)

 

■侵入の痕跡(Indicators of Compromise、IoCs)

Yowai(「Backdoor.Linux.YOWAI.A」として検出)のSHA256値は以下の通りです。

  • 2e66ee1b4414fe2fb17da4372c43a826dd7767c189120eafd427773769302e35

Hakai(「Backdoor.Linux.HAKAI.AA」として検出)のSHA256値は以下の通りです。

  • 402f7be58a8165c39e95b93334a706ec13fe076a2706d2c32d6360180bba0a74
  • 76af2c3ff471916bc247e4c254c9b2affa51edb7e1a18825f36817e8c5921812
  • 7bd284f4da09d3a95472a66e0867d778eeb59ed54738f6fb6e417e93c0b6568

不正なURLは以下の通りです。

  • 185[.]244.25[.]168:52
  • 185[.]244.25[.]168/mips
  • 185[.]244.25[.]168/x86
  • 185[.]244.25[.]168/OwO/Tsunami.mips
  • 185[.]244.25[.]168/x86/mipsel
  • 185[.]244.25[.]221/bins/Yowai.mips
  • 185[.]244.25[.]221/bins/Yowai.mpsl
  • 185[.]244.25[.]221/bins/Yowai.x86
  • 185[.]244.25[.]221/Yowai.mips

参考記事:

翻訳: 澤山 高士(Core Technology Marketing, TrendLabs)