Деобфускатор VBA / Очиститель макросов
Деобфусцируйте макросы VBA, декодируя цепочки конкатенации Chr(), данные, закодированные через StrConv(), последовательности hex-экранирования и массивы кодов символов. Форматируйте код VBA с единообразным оформлением, удаляйте внедрённый мёртвый код и декодируйте скрытые строки из обфусцированных макросов Office — всё автоматически с сопоставлением строк исходника и оценкой уверенности. Бесплатно, конфиденциально и без регистрации.
Deobfuscate VBA macros by decoding Chr() concatenation, StrConv() encoding, hex escapes, and char code arrays. Beautify and remove dead code for readable analysis. All processing runs locally in your browser - no signup required.
Paste obfuscated VBA macro code above and click Analyze & Deobfuscate to decode hidden strings, detect StrConv() payloads, resolve hex escapes, and remove dead code. Toggle individual detection techniques on or off using the buttons above. Try loading an example to see how it works!
Зачем использовать наш деобфускатор VBA / очиститель макросов?
- Мгновенное декодирование строк VBA: декодируйте обфусцированные строки VBA мгновенно в вашем браузере. Обнаруживает цепочки конкатенации Chr() (декодирует 3+ подряд идущих ASCII-значения в читаемые символы), преобразования StrConv + vbUnicode, строки, закодированные в hex, и собственные шаблоны кодов символов. Вставьте обфусцированный макрос VBA и получите чистый, читаемый вывод.
- Безопасный и приватный анализ макросов: вся деобфускация макросов VBA, декодирование строк и форматирование кода происходят полностью в вашем браузере. Ваш код VBA, декодированные строки и результаты анализа никогда не покидают устройство. Никакие данные не загружаются на сервер, без отслеживания, без регистрации.
- Очиститель макросов VBA онлайн — без установки: используйте деобфускатор VBA / очиститель макросов прямо в любом современном браузере без загрузок, приложений и плагинов. Включает 5 техник декодирования, удаление мёртвого кода, автоформатирование с единообразными отступами и сравнение оригинала с очищенным рядом.
- 5 техник деобфускации с автоопределением: автоматически обнаруживает и обращает 5 техник обфускации VBA: конкатенацию символов Chr(), кодирование StrConv(), строки с hex-экранированием, массивы кодов символов и внедрение мёртвого кода. Показывает декодированные значения с сопоставлением строк исходника, оценками уверенности и просмотром кода до и после.
Что такое обфускация макросов VBA?
Обфускация макросов VBA — это практика намеренного сокрытия или кодирования строк, имён переменных и потока управления в коде Visual Basic for Applications, чтобы обойти обнаружение антивирусами, сканерами электронной почты и аналитиками безопасности. Самая распространённая техника обфускации VBA — конкатенация Chr(), где отдельные символы строятся из их ASCII-кодов (например, Chr(104)&Chr(116)&Chr(116)&Chr(112) декодируется в "http"). Другие техники включают кодирование StrConv() (преобразование строк, похожее на Base64, с vbUnicode), строки с hex-экранированием, массивы кодов символов и внедрение мёртвого кода (бессмысленные присваивания, пустые условия) для запутывания инструментов анализа.
Как работает наш деобфускатор VBA / очиститель макросов
- 1. Вставьте код VBA: вставьте обфусцированный код макроса VBA в поле ввода. Инструмент поддерживает любой код VBA, включая полное содержимое модулей из документов Office, и автоматически проверяет его на 5 техник обфускации. Примеры-заготовки демонстрируют распространённые шаблоны обфускации из реального макровируса.
- 2. Анализ и декодирование: инструмент проверяет код VBA с помощью регулярных выражений с сопоставлением шаблонов для каждой техники. Цепочки Chr() декодируются в читаемые строки из ASCII-значений. Строки, закодированные StrConv, обнаруживаются и помечаются. Hex-экранирования и шаблоны кодов символов преобразуются. Мёртвый код выявляется и представляется для удаления. Каждое обнаружение включает номера строк исходника, оценки уверенности и цветные метки техник.
- 3. Скопируйте очищенный код: просматривайте деобфусцированный код VBA рядом с оригиналом для удобного сравнения. Выбирайте, какие техники применить (декодирование Chr, разрешение StrConv, hex-декодирование, форматирование, удаление мёртвого кода). Скопируйте очищенный код в буфер обмена и включайте или отключайте отдельные проходы деобфускации.
Обнаруживаемые техники обфускации VBA
- Конкатенация Chr(): обнаруживает 3+ подряд идущих вызова Chr(), соединённых оператором & (например, Chr(104)&Chr(116)&Chr(116)&Chr(112)). Собирает все ASCII-значения и преобразует их в читаемые символы с помощью ChrW или прямого ASCII-декодирования. Это самая распространённая техника обфускации VBA.
- Кодирование StrConv(): обнаруживает вызовы StrConv() с массивами байтов или закодированными строковыми входами. StrConv с vbUnicode или vbFromUnicode часто используется для кодирования/декодирования данных. Инструмент идентифицирует эти шаблоны и показывает закодированные данные для ручного или программного декодирования.
- Строки с hex-экранированием: обнаруживает строки VBA, содержащие последовательности hex-экранирования, и преобразует их в читаемые символы. Включает обнаружение встроенных шестнадцатеричных значений внутри строковых литералов, представляющих скрытые символьные данные.
- Обнаружение мёртвого кода: выявляет распространённые шаблоны мёртвого кода, используемые для раздувания макросов и запутывания анализа: фиктивные переменные, которым присваивают значения, но никогда не читают, пустые блоки If/End If, неиспользуемые вызовы функций и бессмысленные арифметические операции, добавленные исключительно для обфускации.
Конфиденциальность, безопасность и доступность
Деобфускатор VBA / Очиститель макросов на 100% бесплатен и не требует регистрации. Весь анализ кода VBA, декодирование строк и форматирование выполняются локально в вашем браузере — ваши макросы VBA, декодированные строки и результаты анализа никогда не покидают устройство. Нет ограничений на использование. Инструмент поддерживает 5 техник обнаружения с автоматической проверкой, сопоставлением строк исходника, оценкой уверенности для каждой декодированной строки, примерами-заготовками VBA и копированием очищенного кода одним кликом. Используйте его столько раз, сколько нужно для исследований безопасности, анализа вредоносного ПО или образовательных целей.
Часто задаваемые вопросы
Инструмент обнаруживает 5 распространённых техник обфускации VBA: цепочки конкатенации Chr() (3+ подряд идущих вызова Chr(), собирающих строки из ASCII-значений), кодирование StrConv() (преобразования vbUnicode/vbFromUnicode), строки с hex-экранированием (hex-значения в строковых литералах VBA), массивы кодов символов и шаблоны мёртвого кода (неиспользуемые переменные, пустые блоки If, фиктивные присваивания). Каждое обнаружение включает номера строк исходника и оценки уверенности.
Конкатенация Chr() — самая распространённая техника обфускации VBA. Каждый символ представляется своим номером ASCII-кода, обёрнутым в вызов Chr(), затем соединяется оператором &. Например, Chr(104)&Chr(116)&Chr(116)&Chr(112)&Chr(58) декодируется в "http:". Длинные строки могут использовать 50+ вызовов Chr(). Инструмент извлекает все числа и преобразует их обратно в читаемый текст.
Инструмент выполняет один проход обнаружения для каждой техники. При глубоко вложенной обфускации, когда декодированные строки содержат ещё больше закодированного содержимого, может потребоваться скопировать очищенный вывод и снова прогнать его через инструмент. Данные, закодированные через StrConv() и требующие выполнения во время работы VBA, идентифицируются и помечаются, но не могут быть декодированы без среды выполнения VBA.
StrConv() — это функция VBA, преобразующая строки между разными форматами. Авторы вредоносного ПО используют StrConv с массивами байтов и флагами vbUnicode/vbFromUnicode для кодирования данных. Инструмент обнаруживает вызовы StrConv() и показывает закодированные байтовые данные, но полное декодирование данных StrConv требует понимания конкретного применённого преобразования, что может потребовать выполнения во время работы VBA для точного обращения.
Функция удаления мёртвого кода выявляет и опционально удаляет шаблоны кода VBA без функционального эффекта: переменные, которым присваивают значения, но никогда не читают, пустые блоки If/End If, лишние вызовы GoSub, неиспользуемые объявления функций и бессмысленные арифметические операции. Удаление мёртвого кода делает макрос короче и проще для анализа, не меняя его поведения.
Да. Инструмент включает функцию автоформатирования, которая приводит код VBA к единообразным отступам для блоков If/Else/End If, For/Next, Do/Loop, Select Case и With/End With. Он также нормализует пробелы вокруг операторов, выравнивает продолжения строк, удаляет лишние пустые строки и обеспечивает единообразный регистр ключевых слов VBA для максимальной читаемости.
Безусловно. Деобфускатор VBA / Очиститель макросов работает полностью в вашем браузере. Ваш код макроса VBA, декодированные строки, очищенный вывод и результаты анализа никогда не загружаются на сервер, не сохраняются в базе данных и не передаются по сети. Вся токенизация, сопоставление шаблонов и декодирование выполняются локально на вашем устройстве без вызовов API и сбора данных.
Да — 100% бесплатно, без регистрации, без аккаунта и без ограничений на использование. Деобфусцируйте столько макросов VBA, сколько нужно, сколько угодно раз. Все 5 техник обнаружения, форматирование, удаление мёртвого кода, сравнение рядом и копирование одним кликом доступны без ограничений. Никаких платных тарифов, скрытых платежей или ограничений по частоте.