みっきー申す

ITに関する興味関心のまとめ、サイバーセキュリティニュースのまとめ、Twitterで配信中の情報まとめなどを公開します。

最近のOceanLotus (別名 APT 32, Cobalt Kittyなど)まとめ

近頃、各セキュリティベンダおよびリサーチャーより Ocean Lotus に関する情報が出始めています。 自身の勉強も含め、内容を整理したので、ご活用ください。 公開情報を基に整理しており、実際に解析を行ったわけではないので、情報に誤りなどがあれば、随時教えていただけるとありがたいです。

用語の前提として、各社ベンダーがDropperと述べている検体は本ブログでは「ダウンローダー」と述べることとします。

目次

  • OceanLotusとは
  • 攻撃の概要
  • 検体の概要
  • IoC
  • 参考資料

OceanLotusとは

  • OceanLotus (別名 APT 32, APT-C-00, SeaLotus, Cobalt Kitty)

  • 人権団体やメディア、研究機関や海洋系の建設機関を対象に攻撃を行う


攻撃の概要

ESET(4/9)

  • 3月始め、MacOSに対応したOceanLotusが利用するマルウエアサンプルがVirusTotalにアップロードされた

  • かつてのMacOS対応マルウエアの亜種だと思われるが、構造が変化しており、より検知が難しくなっている

  • なお、ダウンローダとなるマルウエアが発見されていないため、攻撃者の狙いおよび被害組織は特定できていない

TrendMicro

  • 一次検体は、Eメール経由でやってくる、Word文書ファイル。名前は「2018-PHIẾU GHI DANH THAM DỰ TĨNH HỘI HMDC 2018.doc」日本語で「2018年-HDMC集会登録フォーム.doc」

  • HDMCは国家の独立や民主主義を訴えるベトナムの団体

  • Wordファイルを開こうとすると「バージョンが古く開けないので、マクロを有効にするように」といったメッセージが出力される。

  • バックドアは、タイムスタンプを変更した上で隠しファイルとして保存される上、root権限か否かで挙動が異なる

  • バックドアは隠しファイルとして指定され、タイムスタンプはランダム化される。

  • 永続化機能および事故削除機能あり

  • バックドアの機能を情報収集用と遠隔操作用で二つに分けている

ESET(3/20)

  • CVE-2017-11882 Officeの脆弱性を悪用する

  • 東南アジアを標的にしている

  • 検体(SHA-1)

    • D1357B284C951470066AAA7A8228190B88A5C7C
  • ファイル名

    • FW Report on demonstration of former CNRP in Republic of Korea.doc
  • 標的

  • 形式

    • RTFファイル
  • 文書ファイルから抽出されるシェルコードは、OceanLotusで用いられる、特徴的なシェルコードのひとつであり、今もなお使われている。

  • OceanLotusはSFXアーカイブファイルを近年使い始めているとのこと

ファイル名の例①

  • THICH-THONG-LAC-HANH-THAP-THIEN-VIET-NAM (1).EXE (meaning “FAVORITE RELATIONSHIP OF VIETNAMESE PERFORMANCE)

  • SHA-1 AC10F5B1D5ECAB22B7B418D6E98FA18E32BBDEAB

展開後

  • *{9ec60ada-a200-4159-b310-8071892ed0c3}.ocx *

  • SHA-1

    • EFAC23B0E6395B1178BCF7086F72344B24C04DCC
  • thich thong lac.jpg

  • {9ec60ada-a200-4159-b310-8071892ed0c3}.ocx (ShLd.dll)

  • db293b825dcc419ba7dc2c49fa2757ee.dll (最終的に落とされてくる検体)

ファイル名の例②

  • The New Contact Information Of Cambodia Media(New).xls.exe

  • 李建香 (个人简历).exe

    • (fake pdf document of a CV)
  • feedback, Rally in USA from July 28-29, 2018.exe

検体の概要

ESET(2019/4/9)

  • 検体(SHA-1)E615632C9998E4D3E5ACD8851864ED09B02C77D2

  • 通常、Mac版OceanLotus(実行ファイル)はUPXで圧縮される

  • UPXファイルで圧縮された場合、アンチウィルスエンジン等がうまく検知しないとのこと

  • アーカイブの解凍後、ポインタが書き換えられるため、Disassembly Toolsでも、悪性のコードが単なるデータとして表示されるように細工される

  • コードが実行されると、アンチデバックを行うWatchdogとして振舞うスレッドを立ち上げ、デバッガーを検知した場合には、実行を中止する

  • また、VirtualboxVMなどの仮想化技術上で、実行していないかのチェックも行う

  • C2への通信では、これまでの検体に比べ、より多くの情報(CPU、メモリ、ネットワーク情報、資産番号)を含んでいる

  • libcurl は使わなれなくなり、代わりに外部のライブラリを用いる

  • 外部のライブラリの取得のため、バックドアが、ゼロパディングされたキーgFjMXBgyXWULmVVVzyxyを用いてカレントディレクトリのファイルを復号する

  • 復号後は、/tmp/storeとして保存し、動的リンクを生成するdlopen機能を用いて作られたライブラリを用いて、読み込もうとする

  • なお、ESET は Github上で、フォレンジックツールを公開している https://github.com/eset/malware-research/tree/master/oceanlotus/

2018年10月22日に発見された検体の通信先

  • daff.faybilodeau[.]com

    • (Passivetotalより)185.236.202[.]195
  • sarc.onteagleroad[.]com

    • (Passivetotalより)185.236.202[.]195
  • au.charlineopkesston[.]com

    • (Passivetotalより)185.236.202[.]195

URLリソースは以下に変更 * /dp/B074WC4NHW/ref=gbps_img_m-9_62c3_750e6b35.

TrendMicro

ダウンローダ

  • マクロは10進数のASCIIコードで難読化されている

  • 難読化を解くとperlで書かれたペイロードが復号される

  • 実行の結果、バックドアダウンローダとして作用するtheme0.xml が抽出される

  • 同ファイルは暗号化されており、/tmp/system/word/theme/syslogdに抽出された後、実行される

  • setStartup() メソッドで、実行権限がrootか否かを確認し、その結果に基づき、復号化しバックドアをインストールする。

バックドア

  • 実行時のプロセス名 rootの場合→screenassistantd 一般ユーザ権限の場合→spellagentd

  • バックドアは隠しファイルとして指定され、タイムスタンプはランダム化される。

  • また実行ファイルの権限を755に変更される。u=rwx,go=rx(所有者、グループおよびその他)

  • /Library/LaunchDaemons/ もしくは ~/Library/LaunchAgents/に永続化のためのファイルが作成される

  • なお、ここで作られたファイルも隠しファイルにされ、ランダムなタイムスタンプが付与される

  • 2018年7月ごろからの検体でも偽造タイムスタンプが使われており、おそらくビルダーを使いまわしている

  • これにより、ログインのたびにバックドアがインストールされ、ダウンローダは、プロセスの終了後に自分自身を削除する

  • バックドアの持つ二つの機能

    • infoClient *OSの情報を収集しC2に送ると同時に、C2からも追加情報を受信する

    • runHandle *バックドア機能(感染端末上で遠隔操作を行う)

  • infoClientにて収集したデータは暗号化されてC2に送信される、送信時には暗号化した暗号鍵をデータとともに C2 に送信する

  • C2からは、以下の情報が返信されてくる

    • ?HandlePP::urlRequest (/appleauth/static/cssj/N252394295/widget/auth/app.css)

    • ?HandlePP::keyDecrypt

    • ?STRINGDATA::BROWSER_SESSION_ID (m_pixel_ratio)

    • ?STRINGDATA::RESOURCE_ID

  • C2通信先

    • Ssl[.]arkouthrie[.]com
    • s3[.]hiahornber[.]com
    • widget[.]shoreoa[.]com

ESET(2019/3/20)

  • 2019年に発見された検体として、マルウエアの改変点は以下

    マルウエアの作成者は、DNSprov.dll と2バージョンの HttpProv.dllから名前(?)を取り除き(新バージョンからは含まれていない?)

    さらに、利用者(攻撃者)は3つ目のdllにあたるHttpProv.dllのうちひとつをパッケージせず、残りの二つからふたつを選択するようになった

    検知を免れるために、バックドアの改変が行われ、C2についても変化が見られている

    具体的には、"AppX"レジストリキーの変更、Mutex値のエンコード用ストリング、ポート番号が変更された

  • ファイルを抽出する際にクラッシュを起こさないように、%ProgramFiles% or C:\Windowsディレクトリにおいて、windows, Microsoft, desktop, system, system32 or syswow64などのファイル名が含まれていないことを確認する

  • %ProgramFiles% もしくは %AppData% に複数のファイルをダウンロードしてくる

  • ダウンロードしたTCPSVCS.exe は リネームされた、adobeの正規ファイル(AcroTranscoder.exe)である

  • 同ファイルが悪性なDLLを読み込むことで攻撃が成立する

  • セキュリティ製品の検知を免れるために、DLLファイルのサイズを調整する工夫を行っている

  • 永続化のための手法を包含しており、linkfileの作成やレジストリへの登録、タスクスケジューラへの登録などを行っている

  • ダウンロードした .db3 はOceanLotusで使われるシェルコードです。

  • 同シェルコードにより、バックドアとなるマルウエアが抽出される

  • C2通信先

    • andreagahuvrauvin[.]com
    • byronorenstein[.]com
    • stienollmache[.]xyz

IoC

ESET(2019/4/9)より

https://www.welivesecurity.com/2019/04/09/oceanlotus-macos-malware-update/

daff.faybilodeau[.]com
(Passivetotalより)185.236.202[.]195
sarc.onteagleroad[.]com
(Passivetotalより)185.236.202[.]195
au.charlineopkesston[.]com
(Passivetotalより)185.236.202[.]195

URLリソースは以下
/dp/B074WC4NHW/ref=gbps_img_m-9_62c3_750e6b35.

TrendMicroより

https://blog.trendmicro.com/trendlabs-security-intelligence/new-macos-backdoor-linked-to-oceanlotus-found/

Ssl[.]arkouthrie[.]com 
s3[.]hiahornber[.]com 
widget[.]shoreoa[.]com 
  • ファイルハッシュ(SHA-256)
Delivery document (W2KM_OCEANLOTUS.A)
2bb855dc5d845eb5f2466d7186f150c172da737bfd9c7f6bc1804e0b8d20f22a
Dropper (OSX_OCEANLOTUS.D): 4da8365241c6b028a13b82d852c4f0155eb3d902782c6a538ac007a44a7d61b4 
Backdoor (OSX_OCEANLOTUS.D): 673ee7a57ba3c5a2384aeb17a66058e59f0a4d0cddc4f01fe32f369f6a845c8f 

ESET(2019/3/20)より

https://www.welivesecurity.com/2019/03/20/fake-or-fake-keeping-up-with-oceanlotus-decoys/ * Mutex値

{181C8480-A975-411C-AB0A-630DB8B0A221}_ (+ username)
aliexpresscn[.]net 
andreagahuvrauvin[.]com 
andreagbridge[.]com 
aol.straliaenollma[.]xyz 
beaudrysang[.]xyz 
becreybour[.]com 
byronorenstein[.]com 
chinaport[.]org 
christienoll[.]xyz 
christienollmache[.]xyz 
cloud.360cn[.]info 
dieordaunt[.]com 
dns.chinanews[.]network 
illagedrivestralia[.]xyz 
karelbecker[.]com 
karolinblair[.]com 
lauradesnoyers[.]com 
ntop.dieordaunt[.]com 
office.ourkekwiciver[.]com 
ourkekwiciver[.]com 
sophiahoule[.]com 
stienollmache[.]xyz 
straliaenollma[.]xyz 
ursulapapst[.]xyz 
D1357B284C951470066AAA7A8228190B88A5C7C3 
49DFF13500116B6C085C5CE3DE3C233C28669678 
9DF3F0D8525EDF2B88C4A150134C7699A85A1508 
50A755B30E8F3646F9476080F2C3AE1347F8F556 
BB060E5E7F7E946613A3497D58FBF026AE7C369A 
E2D949CF06842B5F7AE6B2DFFAA49771A93A00D9 
AC10F5B1D5ECAB22B7B418D6E98FA18E32BBDEAB 
7642F2181CB189965C596964D2EDF8FE50DA742B 
CD13210A142DA4BC02DA47455EB2CFE13F35804A 
377FDC842D4A721A103C32CE8CB4DAF50B49F303 
B4E6DDCD78884F64825FDF4710B35CDBEAABE8E2 
BD39591A02B4E403A25AAE502648264308085DED 
B998F1B92ED6246DED13B79D069AA91C35637DEC 
CC918F0DA51794F0174437D336E6F3EDFDD3CBE4 
83D520E8C3FDAEFB5C8B180187B45C65590DB21A 
EFAC23B0E6395B1178BCF7086F72344B24C04DCC 
8B991D4F2C108FD572C9C2059685FC574591E0BE 
B744878E150A2C254C867BAD610778852C66D50A 
3DFC3D81572E16CEAAE3D07922255EB88068B91D 
77C42F66DADF5B579F6BCD0771030ADC7AEFA97C 

参考文献