- имена файлов в unicode
удобство в мелочах
пятница, 11 апреля 2025 г.
воскресенье, 30 марта 2025 г.
Расшифровать за 100 секунд
Молодые пользователи спрашивают авторские примеры использования hiew.
Что ж, их есть у меня и сегодня будет пример использования Crypt = встроенной возможности hiew для (де)шифрования.
Напримером будет HiEW Loader 1.1 (кто не знает - легко найдет)
В архиве он тоже называется hiew32.exe, других букв уже не осталось. Что ж, переименуем в loader.exe
Начинаем стандартно:
Hiew32.exe loader.exe
enter enter ;переход в режим кода
F8 ;просмотр заголовка PE
на широких экранах сразу видно что в последней строке кнопка F11 Tls активна,
(если в этом месте встретилось незнакомое слово из трех букв, самое время пойти почитать про Tls callback), а значит есть еще исполняемый код до передачи управления в точку входа,
но для начала
F5 ;переход на точку входа
и видим мусор вместо кода.
(не знаю зачем все это пошифровано, да еще и через Tls, да еще и с проверкой "чтоб только раз наверняка", впрочем, и в самом коде загрузчика много таких "зачем?", но сейчас не об этом)
возвращаемся в заголовок PE
F8 ;просмотр заголовка PE
и смотрим чего там в Tls callback
F11 ;переход на этот самый Tls callback
разумеется, рассшифровка кода на точке входа
в регистрах esi/edi начало зашифрованного блока = точки входа
в ecx длина зашифрованного блока = 3c9
сам алгоритм шифрования - простой xor по одному байту и простой модификацией маски шифрования на каждом шаге и один-в-один переносится в хьюшный Crypt
вернемся на точку входа
3 ;переход на начало блока расшифровки
enter ;возвращаем режим кода
F3 ;режим редактирования (в hiew всегда редактировался только один экран за раз)
F7 ;вызов Crypt
и переписываем сюда код расшифровки
расшифровка идет по одному байту, поэтому размер стоит Byte (при необходимости меняется через F2. А F3 меняет направление Forward/Backward)
последняя команда loop 2 завершает цикл, возвращаясь ко второй строке, в первой была инициализация
F7 ;вышли из режима редактирования
и чтобы проверить
F7 ; расшифровываем по одному байту за раз
(да-да, и зашли через F7 и вышли через F7 и расшифровка через F7)
F7 F7 .... F7 F7
и мусор шаг за шагом на глазах превращается в корректый код
ESC ;отменяем все изменения, расшифруем все за раз
enter enter ;в режим дампа, там проще блок отмечать
* ;отмечаем начало блока
F5 +3с8 ;добавляем к текущему адресу размер зашифрованного блока,
;поскольку один байт уже отмечен будет на единицу меньше
enter ;переход на конец блока
* ;отмечаем конец блока
Alt-F3 ;Crypt для выделенного блока
было немного тренировки, crypt ip (отмечен стрелочкой) стал после полного цикла на строку 2, вернем на инициализацию:
- ;crypt ip на строку назад
F5 ;и чтоб красиво, очистить все регистры заодно
F7 ;расшифровать блок
по проявившимуся тексту сразу видно, что все рашифровалось корректно
[ ;переход на начало блока
* ;убрать пометку блока
enter ;режим кода
и вот он, оригинальный код на точке входа
Tls не нужен, убираем
F8 F10 ;просмотр PE Directory
курсором вниз до TLS и
F7 ;очистить
Теперь имеем загрузчик без всяких шифрований и ненужных Tls.
Собственно процесс рашифровки занял буквально пару минут, чего не скажешь про описание этого процесса в картинках.
Подробности о Crypt см. в документации.
понедельник, 10 марта 2025 г.
суббота, 21 декабря 2024 г.
Больше хэшей - быстрых и разных
Fernando Mercês обновил свой Hashes.hem до версии 2.00,
а FSC выдал Hash Calculator с вычислением
MD2, MD4, MD5, SHA1, SHA256, SHA384, SHA512, CRC-32/MPEG-2, parametrized CRC ("Rocksoft^tm Model CRC Algorithm")
вторник, 1 октября 2024 г.
версия 8.83
- fix(8.82): вставка из буфера обмена для F5 .xxxx считалась невалидной
- fix: кривой дамп для двухбайтовых кодовых страниц
- калькулятор: #[bwdq] как big-endian
смотрите в ящиках и спамах
вторник, 30 июля 2024 г.
Hiewix или StructLook 30 лет спустя
В StructLook был свой табличный язык для описания, в Hiewix - внешнее api.
На картинке - PE через это api.
Это начало с простыми целыми типами.
Как обычно, богатое развитие зависит от богатого финансирования.
Демо без ключевых возможностей: https://hiew.ru/files/HxDemo.zip
Предложение до 1 октября этого года:
для покупавших StructLook - бесплатно
для имеющих как минимум вторичную действующую годовую регистрацию Hiew - 3000 рублей
для владельцев действующей первичной годовой регистрации - 4000 рублей
остальные - 5000 рублей
купившие в августе этого года получат обновления в течение 16 месяцев,
купившие в сентябре этого года - в течение 15 месяцев,
но если вдруг кто-то сильно быстро решится в оставшиеся 2 дня июля - 18 месяцев.
Вопросы и получение реквизитов карты - eugenys@gmail.com с темой Hiewix
mailto:eugenys@gmail.com?subject=Hiewix
пятница, 19 июля 2024 г.
версия 8.82
- префикс 0x игнорируется при вставке из клипбоарда при редактировании чисел
- fix: шаблон поиска в ассемблерной строке может пропускать строки с комментариями
смотрите ящики и спамы
среда, 13 марта 2024 г.
версия 8.81
- tabSize в inifile
- fix: длинная строка в hem info давала некрасивый эффект
- fix: поиск '*xxxx' сломался в какой-то предыдущей версии
- минимальный HEM_FLAG_FILEMASK (since HEM SDK 0.50) как флаг для всех exe
- Shift-Ctrl-Alt: шкала с 1
смотрите почтовые ящики
четверг, 30 ноября 2023 г.
суббота, 5 августа 2023 г.
CopyAs и Hashes - два полезных HEM
понедельник, 24 июля 2023 г.
версия 8.79
- Alt-S - копировать 16 (48 для Shift+) байтов в поиск
- Shift-Up/Shift-Down в Hex-mode - сдвинуть отмеченный блок назад/вперед
рассылка завершена.
четверг, 26 января 2023 г.
версия 8.78
- FIX: опять работает под Win9x :)
- FIX: креш если нажать fastkey на пустом списке файлов
четверг, 29 сентября 2022 г.
понедельник, 30 мая 2022 г.
понедельник, 18 апреля 2022 г.
версия 8.76
- FIX: падал на редком случае с export name
- FIX: копирование теущего смещения (кнопка $) в буфер обмена без первого пробела
- F7-F10 - переход на адрес последнего незаконченного поиска который был прерван по кнопке ESC
рассылка завершена.
суббота, 25 декабря 2021 г.
версия 8.75
- FIX древний баг: неверное ассемблирование по умолчанию для 'push/pop fs/gs'
- FIX PE: потерянные имена импорта для некоторых PE
- PE: Exception Handlers table (F8-AltF4)
рассылка завершена.