
テレボット
2016年12月に、TeleBotと呼ばれるサイバーグループによって実行された破壊的な攻撃の調査を公開しました。 グループは金融機関を攻撃し、 KillDisk for Linuxの破壊的なコンポーネントのバージョンを使用しました 。 さらに、TeleBotはBlackEnergyグループに関連している可能性があります。BlackEnergyグループは、エネルギー会社に対するサイバー攻撃に関連しています。
KillDiskマルウェアは、攻撃の最終段階でTeleBotsチームによって使用され、被害者のディスク上の特定の拡張子を持つファイルを上書きしました。 今後、身代金は決してこのグループの優先事項ではありませんでした。
2016年12月の攻撃の最初の波では、KillDiskはデータを暗号化するのではなく、ターゲットファイルを書き換えていました。 被害者は、攻撃者との通信のための連絡先を受け取りませんでした。悪意のあるプログラムは、シリーズ「ミスターロボット」に関する画像を表示するだけでした。

図1. 2016年12月の最初の攻撃でKillDiskが表示した画像。
攻撃の第2波では、攻撃者はKillDiskを変更し、暗号化と連絡先情報を身代金メッセージに追加して、典型的なランサムウェアプログラムのように見せました。 同時に、著者はデータ復旧のための記録的な量-222ビットコイン(現在のレートで約25万ドル)を要求しました。 これは、ハッカーが身代金を取得することに興味がなかったが、攻撃された企業に損害を与えようとしたことを示している可能性があります。

図2. KillDiskの買い戻し要求、2016年12月の攻撃の第2波のバージョン。
2017年、TeleBotsグループは攻撃を継続し、より高度になりました。 2017年1月から3月にかけて、グループはウクライナのソフトウェア会社(MEDocではない )を侵害し、VPNトンネルを使用して、いくつかの金融機関の内部ネットワークにアクセスしました。

図3. 2017年のサプライチェーン攻撃
この攻撃の間に、TeleBotsは、以前のレポートで言及した暗号化ツールの2つのサンプルと更新されたバージョンのツールで兵器庫を拡大しました。
バンドが大きく依存していた最初のバックドアは、Pythonプログラミング言語からRustに書き直されたPython / TeleBot.Aでした。 機能は変更されていません-これは、Telegram Bot APIを使用してオペレーターからコマンドを受信し、応答を送信する標準のバックドアです。

図4. Win32 / TeleBot.ABの逆アセンブルされたトロイの木馬コード。
VBSで記述され、
script2exe
プログラムを使用してパッケージ化された2番目のバックドアは非常に難読化されましたが、その機能は以前の攻撃と同じままでした。

図5. VBSバックドアの難読化されたバージョン。
今回、VBSバックドアは130.185.250 [。] 171 C&Cサーバーコマンドを使用します。 ファイアウォールのログを確認する人が接続を疑わないようにするために、攻撃者はtransfinance.com [。] Uaドメインを登録し、このIPアドレスに配置しました。 図6から
severalwdadwajunior
、
severalwdadwajunior
ネットワークで機能する
severalwdadwajunior
という名前のメールサーバーも起動されました。

図6. TeleBotsグループのサーバーに関する情報。
さらに、攻撃者は次のツールを使用しました。
- CredRaptor(パスワード盗難)
- Plainpwd(変更されたMimikatzは、メモリからWindows資格情報を回復するために使用されます)
- SysInternalsのPsExec(ネットワーク内で脅威を拡散するために使用)
前述のように、攻撃の最終段階で、TeleBotsはPsExecと盗まれたWindows資格情報を使用して暗号化プログラムを配布します。 ESETウイルス対策製品は、Win32 / Filecoder.NKHとして検出します。 実行後、マルウェアはAES-128およびRSA-1024アルゴリズムを使用してすべてのファイル(C:\ Windowsにあるものを除く)を暗号化します。 悪意のあるプログラムは、暗号化されたファイルに
.xcrypted
拡張子を追加します
暗号化が完了すると、プログラムは次の内容のreadme.txtテキストファイルを作成します。
お問い合わせください:openy0urm1nd@protonmail.ch
Windows用のマルウェアに加えて、TeleBotsグループは他のオペレーティングシステム用にLinux暗号化を使用しました。 ESETは脅威をPython / Filecoder.Rとして検出します。これはPythonで書かれています。 今回、攻撃者は
openssl
などのサードパーティのユーティリティを使用してファイルを暗号化します。 暗号化はRSA-2048およびAES-256アルゴリズムを使用して実行されます。

図7. LinuxエンコーダーのPythonコードPython / Telebotsグループが使用するFilecoder.R
Pythonスクリプトコードでは、攻撃者は次のテキストを含むコメントを残します。
フィードバック:openy0urm1nd [@]プロトンメール.ch
Win32 / Filecoder.AESNI.C
5月18日に、別の暗号化ファミリ-Win32 / Filecoder.AESNI.C(XDataとも呼ばれる) のアクティビティを記録しました 。
ランサムウェアプログラムは主にウクライナで配布され、感染の興味深い初期ベクトルに関連付けられています。 ESETのテレメトリデータによると、ウクライナの企業で広く配布されているMEDocレポートおよびドキュメント管理ソフトウェアの起動直後に、暗号化プログラムがコンピューターに表示されました。
Win32 / Filecoder.AESNI.C機能により、暗号化装置は会社のローカルネットワークに自動的に拡散しました。 特に、侵入されたコンピューターのメモリからWindowsアカウントを抽出するために、Mimikatz組み込みDLLが使用されました。 資格情報を使用して、マルウェアはPsExecユーティリティを使用してネットワーク内で広がりました。
攻撃者はこの攻撃中に目標を達成しなかったか、またはより効果的な攻撃の前にテストしたようです。 いずれにせよ、マスターキーはBleepingComputerフォーラムで公開され、AESNIソースコードが現在の作者から盗まれ、ウクライナの事件で使用されたという声明が出ました。
ESETはWin32 / Filecoder.AESNIの被害者向けのデコーダーをリリースしました。
Diskcoder.Cの流行(よりよく知られているPetya)
実際にメディアで広く取り上げられたのは、6月27日に始まったPetyaの流行でした。 悪意のあるプログラムは、ウクライナおよび海外の重要なインフラストラクチャおよび企業ネットワークの多くのシステムを侵害しています。
この攻撃で使用される暗号化プログラムは、マスターブートレコード(MBR)を独自の悪意のあるコードで置き換えることができます。 コードはWin32 / Diskcoder.Petyaランサムウェアから借用されているため、一部の研究者は脅威をExPetr、PetrWrap、Petya、またはNotPetyaと呼んでいます。 元のPetyaとは異なり、Diskcoder.Cの作成者はMBRコードを変更して、データを回復できないようにしました。 より正確には、攻撃者は復号化キーを被害者に送信できず、無効な文字が含まれているため、対応するフィールドに入力できません。
視覚的には、Diskcoder.CのMBR部分は、Petyaのわずかに変更されたバージョンのように見えます。最初に、Microsoftディスク検証ユーティリティであるCHKDSKを装ったメッセージを表示します。 偽のスキャン中に、Diskcoder.Cは実際にデータを暗号化します。

図8. Diskcoder.Cによって表示されるCHKDSK偽のメッセージ
暗号化が完了すると、MBRコードは支払いの指示とともに以下のメッセージを表示しますが、証明されているように、この情報は役に立ちません。

図9.身代金を支払うための指示を含むDiskcoder.Cメッセージ
借用したMBRに加えて、残りのコードは悪意のあるプログラムの作成者によって作成されています。 MBR暗号化ディスクに加えて使用できるファイルエンコーダーが含まれています。 マルウェアはAES-128およびRSA-2048アルゴリズムを使用します。
著者がミスを犯し、ファイルを解読する能力が低下したことは注目に値します。 たとえば、Diskcoder.Cは最初の1 MBのデータのみを暗号化し、ヘッダーとフッターは書き込まず、元の暗号化されたデータのみを書き込みます。 Malvarはファイルの名前を変更しないため、どのファイルが暗号化されており、どのファイルが暗号化されていないかを判断するのは困難です。
興味深いことに、ターゲット拡張のリストは、完全に同一ではありませんが、2016年12月の KillDisk攻撃で使用されたものと非常に似ています。

図10.ターゲットDiskcoder.C拡張機能拡張のリスト。
実行後、Diskcoder.Cは、カーネルモードのDoublePulsarバックドアを使用するEternalBlueエクスプロイトのカバレッジを拡大しようとします。 WannaCryptor.Dランサムウェアでもまったく同じ方法が使用されました。
Diskcoder.Cは、Win32 / Filecoder.AESNI.C(XData)から借用した方法も使用しました。Mimikatzの簡易バージョンを使用して資格情報を取得し、SysInternals PsExecを使用してローカルネットワーク上の他のマシンでマルウェアを実行します。
最後に、Diskcoder.Cの作成者は、3番目の配布方法であるWMIメカニズムを使用しました。
3つの方法はすべて、Diskcoder.Cをネットワーク内に配布するために使用されました。 WannaCryptorとは異なり、新しい暗号化プログラムはローカルネットワークのアドレス範囲内のコンピューターでのみEternalBlueエクスプロイトを使用しました。
なぜ流行はウクライナを越えたのですか? 私たちの調査では、他の国の感染企業がVPNを介してウクライナの支店またはビジネスパートナーに接続していることが示されました。
初期感染ベクター
Diskcoder.CとWin32 / Filecoder.AESNI.Cはどちらも、感染の初期ベクトルとしてサプライチェーン攻撃を使用しました。 これらのマルウェアファミリは、会計で広く使用されているMEDocレポートおよびワークフローソフトウェアを使用して送信されました。
これらの攻撃を実行するためのいくつかのオプションがあります。 MEDocには内部ドキュメントとメッセージングシステムがあるため、ハッカーはフィッシングを使用できます。 この場合、ユーザーとの対話が必要です;たぶん、ソーシャルエンジニアリングは完全ではありませんでした。 Win32 / Filecoder.AESNI.Cはあまり広まっていないため、最初にこれらの方法が関与していると判断しました。
しかし、その後のDiskcoder.Cの流行は、ハッカーがMEDocの正当なソフトウェア更新サーバーにアクセスしたことを示唆しています。 その助けを借りて、攻撃者はユーザーの介入なしに、インストールで悪意のある更新を自動的に送信することができました。 そのため、ウクライナの多くのシステムがこの攻撃に苦しんでいます。 Malvariのクリエイターは、Diskcoder.Cの拡張能力を過小評価しているようです。
ESETの研究者はこの理論の確認を発見しました。 MEDoc FTPサーバー上のディレクトリの1つにある
medoc_online.php
ファイルにPHPバックドアが見つかりました。 バックドアへのアクセスは暗号化されていましたが、HTTP経由で取得でき、攻撃者はそれを使用するためにパスワードが必要でした。

図11. FTP用のPHPバックドアを含むディレクトリ。
Diskcoder.CとWin32 / Filecoder.AESNI.Cがこのベクターを使用した唯一のマルウェアファミリではないことを示す兆候があると言わなければなりません。 優先オブジェクトに属するコンピューターネットワークに密かに侵入するために、悪意のある更新が使用されたと想定できます。
侵害されたMEDoc更新メカニズムを介して拡散したマルウェアの1つは、TeleBotsグループが使用するVBSバックドアでした。 今回、攻撃者は再び金融トピックに関連するドメイン名を使用しました: bankstat.kiev [。] Ua 。
Diskcoder.Cの流行が始まる日に、このドメインのAレコードは10.0.0.1に変更されました。
結論
TeleBots Groupが破壊的な攻撃ツールを改善 悪意のあるマクロを含むドキュメントを含むフィッシングメールを送信する代わりに、サプライチェーン攻撃として知られるより高度なスキームを使用しました。 集団発生前に、グループは主に金融セクターを攻撃しました。 最後のキャンペーンはウクライナのビジネスを狙ったものと思われますが、攻撃者は悪意のあるプログラムの可能性を過小評価しており、マルウェアは制御不能になりました。
感染インジケータ(IoC)
ESET製品による検出:
Win32/TeleBot trojan
VBS/Agent.BB trojan
VBS/Agent.BD trojan
VBS/Agent.BE trojan
Win32/PSW.Agent.ODE trojan
Win64/PSW.Agent.K trojan
Python/Filecoder.R trojan
Win32/Filecoder.AESNI.C trojan
Win32/Filecoder.NKH trojan
Win32/Diskcoder.C trojan
Win64/Riskware.Mimikatz application
Win32/RiskWare.Mimikatz application
C&C:
transfinance.com[.]ua (IP: 130.185.250.171)
bankstat.kiev[.]ua (IP: 82.221.128.27)
www.capital-investing.com[.]ua (IP: 82.221.131.52)
マルウェア作成者が使用する正当なサーバー:
api.telegram.org (IP: 149.154.167.200, 149.154.167.197, 149.154.167.198, 149.154.167.199)
VBSバックドア:
1557E59985FAAB8EE3630641378D232541A8F6F9
31098779CE95235FED873FF32BB547FFF02AC2F5
CF7B558726527551CDD94D71F7F21E2757ECD109
ミミカッツ:
91D955D6AC6264FBD4324DB2202F68D097DEB241
DCF47141069AECF6291746D4CDF10A6482F2EE2B
4CEA7E552C82FA986A8D99F9DF0EA04802C5AB5D
4134AE8F447659B465B294C131842009173A786B
698474A332580464D04162E6A75B89DE030AA768
00141A5F0B269CE182B7C4AC06C10DEA93C91664
271023936A084F52FEC50130755A41CD17D6B3B1
D7FB7927E19E483CD0F58A8AD4277686B2669831
56C03D8E43F50568741704AEE482704A4F5005AD
38E2855E11E353CEDF9A8A4F2F2747F1C5C07FCF
4EAAC7CFBAADE00BB526E6B52C43A45AA13FD82B
F4068E3528D7232CCC016975C89937B3C54AD0D1
Win32 / TeleBot:
A4F2FF043693828A46321CCB11C5513F73444E34
5251EDD77D46511100FEF7EBAE10F633C1C5FC53
Win32 / PSW.Agent.ODE(CredRaptor):
759DCDDDA26CF2CC61628611CF14CFABE4C27423
77C1C31AD4B9EBF5DB77CC8B9FE9782350294D70
EAEDC201D83328AF6A77AF3B1E7C4CAC65C05A88
EE275908790F63AFCD58E6963DC255A54FD7512A
EE9DC32621F52EDC857394E4F509C7D2559DA26B
FC68089D1A7DFB2EB4644576810068F7F451D5AA
Win32 / Filecoder.NKH:
1C69F2F7DEE471B1369BF2036B94FDC8E4EDA03E
Python / Filecoder.R:
AF07AB5950D35424B1ECCC3DD0EEBC05AE7DDB5E
Win32 / Filecoder.AESNI.C:
BDD2ECF290406B8A09EB01016C7658A283C407C3
9C694094BCBEB6E87CD8DD03B80B48AC1041ADC9
D2C8D76B1B97AE4CB57D0D8BE739586F82043DBD
Win32 / Diskcoder.C:
34F917AABA5684FBE56D3C57D48EF2A1AA7CF06D
PHPシェル:
D297281C2BF03CE2DE2359F0CE68F16317BF0A86