Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
Kalim_Backdoor — カリム バックドア マルウェアレポート | Kitploit
ツール/GitHubGitHub/salaheldinfikri/kalim_backdoor
侵害指標 (IOC) 管理静的分析動的分析 (サンドボックス)永続化メカニズムマルウェア分析デジタルフォレンジックコマンド&コントロール脅威インテリジェンス学習と教育
GitHubsalaheldinfikri/kalim_backdoor

Kalim_Backdoor

カリム バックドア マルウェアレポート

435ヶ月前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有
リポジトリを見る

Kalim バックドアマルウェア分析レポート

写真

本レポートでは、Kalim バックドアマルウェアの機能について説明します。

目次:

- バックドアとは?

- 技術分析

- まとめ

- 戦術とテクニック (MITRE ATT&CK)

- IOCs

- Yara ルール

バックドアとは?

バックドアとは、通常の認証やセキュリティ制御をバイパスしてシステムにアクセスするための隠れた方法です。

技術分析:

基本静的解析:

まず、最初の分析のために VirusTotal にアップロードします。結果は、ファイルが 64 ビット DLL であり、Kalim マルウェアファミリーに属することを示しています。さらに、いくつかの検出結果は MuddyWater 脅威グループとの関連性を示唆しています。

2

また、マルウェアはドメイン moodleuni[.]com とのネットワーク通信を確立します。

1

いくつかのファイルをドロップします:

写真

次に、Die (Detect it easy) で開きます:

3

サンプルは多数の Windows API をインポートしており、パックされていないことを示しています。合計で 6 つの DLL (KERNEL32.dll、USER32.dll、ADVAPI32.dll、SHELL32.dll、ole32.dll、WININET.dll) から関数をインポートしています。

各 DLL から複数の API がインポートされていますが、マルウェアの動作において特に重要な関数がいくつかあります。

具体的には、サンプルは WININET.dll からネットワーキング関連の API をインポートして C2 サーバーとの通信を確立します。また、ole32.dll から COM 関連の関数を利用して Component Object Model (COM) オブジェクトを作成し操作します。さらに、SHELL32.dll の SHGetFolderPathW を使用して、CSIDL 値で識別されるシステムディレクトリパスを取得します。

image

高度静的解析:

DllMain では、新しいスレッドを作成するだけの処理が行われます。このスレッド内で、2 つの関数 sub_1800063A0 と StartAddress が実行されます。

image

sub_1800063A0 関数を分析すると、2 つの異なる段階で構成されていることがわかりました。第 1 段階では、マルウェアは自身のコピーを AppData\Roaming ディレクトリにドロップします。新しいサブディレクトリ Updates を作成し、その中に update.exe という実行可能ファイルを作成します。このファイルに書き込まれるバイナリペイロードは、unk_18002AA10 にある埋め込みデータから直接取得されます。その結果、最終的なファイルは次のパスに書き込まれます:“C:\Users<ユーザー名>\AppData\Roaming\Update\update.exe”。

第 2 段階では、マルウェアは RCLSID: {00021401-0000-0000-C000-000000000046}(Shell Link Object (CLSID_ShellLink) に対応)と RIID: {000214F9-0000-0000-C000-000000000046}(IShellLinkW インターフェースに対応) を使用して COM オブジェクトを初期化します。shell32.dll が実装する完全な Shell COM インターフェーステーブルを確認することで、呼び出されるメソッドを正確に特定できます。マルウェアは SetPath、SetDescription、Save、Release の 4 つの主要な COM メソッドを呼び出します。これらの関数を使用して、Windows スタートアップディレクトリ内に悪意のあるスタートアップショートカット MicrosoftUpdateSerice.lnk を作成し、感染システム上で永続化を確立します。

image

StartAddress 関数の分析

マルウェアは 3 つの異なる関数を通じてネットワーク通信ロジックを実装し、2 つの別々のスレッドを生成します。1 つのスレッドはコマンドシェルの生成と管理を担当し、もう 1 つのスレッドはマルウェアの実行完了後に収集したデータのアップロードを処理します。

3 つの関数は、感染ホストと C2 サーバー間の通信をまとめて管理し、3 つの論理層に整理されています。

第 1 層は、侵害されたシステムからホストベースのフィンガープリント情報を収集する役割を担います。第 2 層は、このデータを暗号化およびその他の操作を行い、送信に備えて処理します。第 3 層は、C2 ドメイン moodleuni[.]com とのネットワーク通信を確立し、処理されたデータを送信します。

最初の 2 つのネットワーク関連関数は、特に認証と HTTP POST リクエストの構築を担当し、リモートサーバーへの認証付きデータ送信を可能にします。

7

3 番目の関数は、C2 サーバーからコマンドを受信する役割を担います。サーバーの応答に基づいて、マルウェアは次のアクション(隠しコマンドシェルの生成、または C2 から受け取ったコマンドに基づく収集データのアップロード)を決定します。

image

2 つのスレッドを分析して、それぞれの動作を完全に理解します。

最初のスレッドでは、マルウェアはジョブオブジェクトと 2 つのパイプを作成し、それらに特定のプロパティを設定します。

次に、いくつかのプロパティを持つ CMD を作成します:

第 4 引数の値 1 は、CMD がパイプハンドルを継承できることを意味します。

第 5 引数の値 0x1000200u は、CMD が以下を持つことを意味します:

CREATE_NO_WINDOW = 0x0000000u

CREATE_NEW_PROCESS_GROUP = 0x0000200u

CREATE_UNICODE_ENVIRONMENT = 0x0000400u

いくつかのスタートアップ情報:{構造体のサイズ = 104 バイト、hStdError = hWritePipe、hStdOutput = hWritePipe、hStdInput = hReadPipe2、dwFlags |= 0x100u = STARTF_USESTDHANDLES}。最初のパイプはシェルからの出力を読み取る役割を担い、2 番目のパイプはシェルに書き込む役割を担います。

PROCESS_INFORMATION へのポインタ

シェルを作成した後、ジョブオブジェクトに割り当て、C2 からのコマンドを待機する pending 状態にします。

写真

シェルは共有メモリを介して送信される制御コマンドをチェックします:

Pending: 通常の実行。

Terminate: シェルを強制終了してクリーンアップ。シェルは完全に破棄されリセットされます。

Ctrlc: 残っている子プロセスを強制的に強制終了します。

image

通常動作では、コマンドが存在する場合、コマンドを CMD に書き込み、PeekNamedPipe を使用して出力を確認し、バッファに格納します。

写真

2 番目のスレッド

スレッドは、指定されたパスに新しいファイルを作成することから始まります。このファイルは、C2 サーバーにアップロードする前にデータを一時的に保存するために使用されます。ファイルを作成できない場合、または初期化中にエラーが発生した場合、関数は共有メモリにステータス文字列 "error" を設定して終了します。ファイルは、正当なトラフィックを模倣するためにカスタムヘッダーとセッション識別子を使用して、マルウェアの C2 サーバー(moodleuni[.]com)に HTTPS 経由で送信されます。アップロードが完了すると、関数は共有メモリを更新して成功または失敗を示します:

- "error"(アップロード失敗時)

- "done"(アップロード成功時)

10

まとめ:

Kalim バックドアマルウェアは、まず持続性を確立して被害者システムへの長期的な存在を確保することに重点を置いています。これは、スタートアップディレクトリ (CSIDL_STARTUP) 内に悪意のあるショートカットを作成することで実現します:

C:\Users<ユーザー名>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

この仕組みにより、システムが起動するたびにマルウェアが自動的に実行されることが保証されます。

持続性が確立されると、マルウェアは C2 サーバー moodleuni[.]com との通信を開始します。初期認証とシステムフィンガープリントのフェーズを実行し、ホストベースの情報を収集、処理、暗号化します。その後、マルウェアはコマンド待機状態に入り、C2 からの指示を継続的にポーリングします。

受信したコマンドに基づいて、マルウェアは次のアクション(インタラクティブ制御のための隠しコマンドシェルの生成、または収集したデータの C2 サーバーへのアップロード)を動的に決定できます。このモジュール設計により、リモートコマンド実行とデータ流出の両方が可能になり、Kalim は柔軟で持続的なバックドアとなります。

image

戦術とテクニック (MITRE ATT&CK):

IOCs:

root@kitploit:~
- ファミリー名: Kalim
- 脅威アクター: MuddyWater 
- SHA256 = 0c8071494bc155c96f2cee998200f63efffcb5a064c021de0925504271806229
- C2 = moodleuni[.]com
- MicrosoftUpdateSerice.lnk
- 150.171.27.12 (VirusTotal から)

Yara ルール:

root@kitploit:~
rule kalim{
    meta:
        description = "Kalim マルウェアを検出"
        author = "SalahEldin Fikri"

    strings:
		$m1  = "kalim.pdb" wide ascii
		
        $s1  = "UPLOAD"
        $s2  = "isHidden"
        $s3  = "/command"
        $s4  = "sleepTime"
        $s5  = "hardwareId"
        $s6  = "pending"
        $s7  = "ctrlc"
        $s8  = "terminate"
        $s9  = { 8D 01 02 04 08 10 20 40 80 1B 36 }
        $s10 = "KifHsNH6Xhgyebsr"


    condition:
        uint16(0) == 0x5A4D and 
		filesize < 500KB and
		($m1) and
		7 of ($s*)
}
ツールをダウンロード
戦術テクニック ID名称
持続性T1547.001スタートアップフォルダ
防御回避T1036.005偽装
実行T1204.002ユーザーによる実行
指揮統制 / ステージングT1105イングレスツール転送
防御回避T1559.001COM の悪用