Продемонстрирован способ установки вредоноса с помощью MSI-файлов

Продемонстрирован способ установки вредоноса с помощью MSI-файлов

Продемонстрирован способ установки вредоноса с помощью MSI-файлов

Специалист Sans рассказал об интересном способе доставки вредоносного содержимого посредством файлов MSI. Эксперт ссылается на то, что использование MSI предпочтительнее для киберпреступников по той причине, что они взывают больше доверия.

«За несколько дней я собрал немного образцов вредоносных файлов MSI. Расширение MSI характерно для файлов, связанных с сервисом установщика Microsoft Windows Installer, который является компонентом Windows. С помощью таких файлов злоумышленники могут обходить простые фильтры на основе расширений файлов (реагирующих на расширения com, exe, dll, js, vbs), так как MSI-файлы выглядят менее подозрительными», — пишет специалист.

Эксперт полагает, что злоумышленники используют инструмент MSI Wrapper для создания вредоносных файлов MSI. Содержимое файла MSI можно извлечь с помощью таких инструментов, как 7z. Структура всегда одна и та же, содержит следующее:

!AdminExecuteSequence:                    data
!AdvtExecuteSequence:                     data
!Binary:                                  data
!Component:                               data
!CustomAction:                            data
!Directory:                               data
!Feature:                                 data
!FeatureComponents:                       data
!InstallExecuteSequence:                  data
!Property:                                data
!_Columns:                                data
!_StringData:                             ASCII text, with very long lines, with no line terminators
!_StringPool:                             data
!_Tables:                                 data
Binary._D7D112F049BA1A655B5D9A1D0702DEE5: PE32 executable (GUI) Intel 80386, for MS Windows
[5]SummaryInformation:                    data

Начинающиеся с восклицательного знака файлы являются таблицами базы данных. Их можно прочитать с помощью основанного на COM API для работы с MSI.

Function GetMSIGenerator(ByVal file)
  Const msiOpenDatabaseModeReadOnly = 0
  Dim msi, db, view
  Set msi = CreateObject("WindowsInstaller.Installer")
  Set db = msi.OpenDataBase(file, msiOpenDatabaseModeReadOnly)
  Set view = db.OpenView("SELECT `Value` FROM `Property` WHERE `Property` = 'ProductName'")
  Call view.Execute()
  GetMSIGenerator = view.Fetch().StringData(1)
End Function
WScript.Echo(GetMSIGenerator("sample.msi")

Скрипт возвращает:

PS C:\Users\REM\Malicious> cscript.exe msi.vbs
Microsoft (R) Windows Script Host Version 5.812
Copyright (C) Microsoft Corporation. All rights reserved.

Exe to msi converter free

Однако так нелегко обрабатывать полный набор полей базы данных. Для этого исследователь предлагает использовать другой инструмент — Wix. Wix позволяет легко преобразовать MSI-файл в файл XML.

C:\Users\REM\Malicious> dark.exe -swall -x . sample.msi
dark.exe : warning DARK1108 : The command line switch 'swall' is deprecated. Please use 'sw' instead.
Windows Installer XML Toolset Decompiler version 3.11.1.2318
Copyright (c) .NET Foundation and contributors. All rights reserved.

sample.msi

Параметр «-x .» указывает, что инструменты должны выгружать двоичные файлы в указанный каталог. Далее создается файл WXS. Это обычный XML-файл, который можно открыть с помощью любимого инструмента. Пример преобразованного файла:

<?xml version="1.0" encoding="utf-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
    <Product Id="{29EF7317-DCA1-4159-97B2-C883AD400AC6}" Language="1033" Manufacturer="www.exetomsi.com" Name="Exe to msi converter free" UpgradeCode="{1630D902-D790-41C1-AE26-9D5E5D17566F}" Version="2.0.0">
        <Package InstallerVersion="100" Languages="0" Manufacturer="www.exetomsi.com" ReadOnly="no" />
        <Binary Id="_D7D112F049BA1A655B5D9A1D0702DEE5" SourceFile=".\Binary\_D7D112F049BA1A655B5D9A1D0702DEE5" />
        <CustomAction Id="DIRCA_TARGETDIR" Property="TARGETDIR" Value="[WindowsFolder]\Temp" Execute="firstSequence" />
        <CustomAction Id="_B3D13F97_1369_417D_A477_B4C42B829328" BinaryKey="_D7D112F049BA1A655B5D9A1D0702DEE5" ExeCommand="" Execute="deferred" Impersonate="no" />
        <Directory Id="TARGETDIR" Name="SourceDir">
            <Component Id="C_DefaultComponent" Guid="{4C231858-2B39-11D3-8E0D-00C04F6837D0}" KeyPath="yes">
                <Condition>0</Condition>
            </Component>
        </Directory>
        <Feature Id="DefaultFeature" ConfigurableDirectory="TARGETDIR" Level="1">
            <ComponentRef Id="C_DefaultComponent" />
        </Feature>
        <Property Id="ARPCONTACT" Value="www.exetomsi.com" />
        <Property Id="ARPNOMODIFY" Value="1" />
        <Property Id="LIMITUI" Value="1" />
        <InstallExecuteSequence>

Из этого примера увидеть, что вредоносный двоичный файл будет установлен в [WindowsFolder]\Temp.

«В принципе, мы можем извлечь интересную информацию из файла MSI без его выполнения. Вот простое правило YARA», — продолжает эксперт:

rule SuspiciousMSIFile
{
  meta:
    author = "Xavier Mertens <xmertens@isc.sans.edu>"
    info = "Search for malicious MSI installing  containing malware"
  strings:
    $s1 = "Exe to msi converter free"
    $s2 = { 54 41 52 47 45 54 44 49 52 30 43 75 73 74 6f 6d 41 63 74 69 6f 6e 53 6f 75 72 63 65 54 61 72 67 65 74 5b 57 69 6e 64 6f 77 73 46 6f 6c 64 65 72 5d 5c 54 65 6d 70 }
  condition:
    all of them
}

64% ИИ-приложений для iPhone оказались с дырой в защите

Исследователи из Wake Forest University обнаружили масштабную проблему в экосистеме iOS-приложений с искусственным интеллектом. Анализ показал, что сотни программ фактически оставляют открытыми ключи доступа к нейросетям и серверным компонентам, что позволяет злоумышленникам использовать их инфраструктуру в своих целях.

Для исследования специалисты разработали инструмент LLMKeyLens, который анализирует сетевой трафик приложений и выявляет утечки учетных данных, используемых для работы с OpenAI, Gemini, DeepSeek, Mistral и другими ИИ-сервисами.

Из более чем 38 тысяч приложений App Store исследователи отобрали 444 программы с подтверждёнными функциями на базе больших языковых моделей. Результаты оказались неприятными: у 282 приложений, или 64% выборки, были обнаружены утечки ключей доступа или других механизмов подключения к ИИ-сервисам.

 

Причем в 146 случаях проблема позволяла напрямую использовать чужие ресурсы. Некоторые приложения передавали API-ключи OpenAI и других провайдеров в открытом виде прямо в сетевых запросах. Другие скрывали ключи на сервере, но оставляли открытыми прокси-серверы, через которые любой желающий мог отправлять запросы к нейросетям.

Особенно часто проблемы встречались в приложениях для продуктивности, обучения, развлечений, здоровья и образа жизни. Лидером по доле уязвимых программ стала категория Health & Fitness.

Исследователи также обнаружили крайне небрежное отношение к защите токенов доступа. В некоторых случаях JWT-токены действовали годами, а отдельные системы выдавали их со сроком действия до 100 лет. Более того, некоторые серверы принимали даже просроченные токены.

После обнаружения проблем разработчиков всех 282 приложений уведомили об уязвимостях. Через 90 дней специалисты провели повторную проверку. Патчи выпустили только 78 приложений — это около 28% от числа уязвимых программ. Еще 66 приложений остались доступными для эксплуатации даже после уведомления.

Авторы исследования считают, что причина проблемы проста: многие разработчики стремятся максимально быстро интегрировать ИИ-функции и уделяют недостаточно внимания защите инфраструктуры.

RSS: Новости на портале Anti-Malware.ru