最近の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 *
-
- EFAC23B0E6395B1178BCF7086F72344B24C04DCC
thich thong lac.jpg
{9ec60ada-a200-4159-b310-8071892ed0c3}.ocx (ShLd.dll)
- 同ファイルのコードはOceanLotusのコンポーネントと非常に類似性がある
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として振舞うスレッドを立ち上げ、デバッガーを検知した場合には、実行を中止する
また、VirtualboxやVMなどの仮想化技術上で、実行していないかのチェックも行う
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コードで難読化されている
同ファイルは暗号化されており、/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からは、以下の情報が返信されてくる
C2通信先
ESET(2019/3/20)
2019年に発見された検体として、マルウエアの改変点は以下
マルウエアの作成者は、DNSprov.dll と2バージョンの HttpProv.dllから名前(?)を取り除き(新バージョンからは含まれていない?)
さらに、利用者(攻撃者)は3つ目のdllにあたるHttpProv.dllのうちひとつをパッケージせず、残りの二つからふたつを選択するようになった
検知を免れるために、バックドアの改変が行われ、C2についても変化が見られている
ファイルを抽出する際にクラッシュを起こさないように、%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より
- 通信先ドメイン
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
参考文献
OceanLotus: macOS malware update - ESET https://www.welivesecurity.com/2019/04/09/oceanlotus-macos-malware-update/
New MacOS Backdoor Linked to OceanLotus Found - TrendMicro https://blog.trendmicro.com/trendlabs-security-intelligence/new-macos-backdoor-linked-to-oceanlotus-found/
OceanLotusの新しいダウンローダーKerrDownの追跡 -PaloAlto Unit42 https://www.paloaltonetworks.jp/company/in-the-news/2019/tracking-oceanlotus-new-downloader-kerrdown
マルウェア解析のホワイトペーパー:OceanLotusのSpyRAT https://www.cylance.com/ja_jp/blog/jp-report-the-spyrats-of-oceanlotus.html
ベトナム政府が背後にいる!? ハッカー集団「APT32」の暗躍 - The Zero One https://the01.jp/p0006390/
Fake or Fake: Keeping up with OceanLotus decoys https://www.welivesecurity.com/2019/03/20/fake-or-fake-keeping-up-with-oceanlotus-decoys/