Парсер логов GMER [версия Drongo]

Парсер логов gmer [версия drongo] 4.52 - 12.11.2016

Нет прав для скачивания

Drongo

Ассоциация VN/VIP
VIP
Сообщения
7,334
Реакции
4,771
Парсер GMER

Версия: 18.08.2013

f96b5706d9625f145b130f3c1e27d857.webp


Всем привет. :) Представляю вам утилиту, Парсер GMER. Программа предназначена для анализа логов GMER в автоматическом режиме. Не буду говорить о процентности нахождения, каждый из вас, сам составит мнение об этом, а также об использовании или неиспользования парсера в своих случаях лечения. Однако не стоит полагаться на стопроцентный результат данной программы. Каждый из различных существующих парсеров ищет\определяет вредоносность строк строго по своему алгоритму. Не исключён вариант, что вредоносная запись может быть пропущена, либо наоборот, легитимная строка попадёт в список удаления. Используйте её как первичное средство для анализа, перепроверяя найденные строки, если в чём-то сомневаетесь, вы можете не использовать Парсер GMER.

Для использования программы, перетяните файл лога gmer.log на окно программы, либо откройте лог, выделив весь текст, скопируйте в буфер обмена и в программе нажмите кнопку Вставить, скопированный текст, вставится в форму. После чего нажмите Анализировать, дождитесь окончания работы анализатора. По окончанию анализа, в нижнем окне будет сформирован итоговый скрипт с тегами оформления. Его можно скопировать нажав кнопку Копировать и вставить в форму ответов на том форуме где вы занимаетесь лечением\удалением вредоносного кода.

Внимание: Каждый лог gmer.log имеет свою уникальность, это создаёт некоторые проблемы, особенно при определении путей к именам файлов. В текущей версии есть три режима определения путей.

1. Определена - В этом случае значение %WinDir% определяется по логу и в случае нужды подстанавливается вместо строк %systemroot%. На скриншоте это выглядит так.



2. Стандартно - "Запасной" вариант для первого, в том случае, когда в логе gmer.log вообще нет значения переменной %WinDir%. Такое бывает, редко, но бывает. В этом случае подстанавливается стандартное значение C:\Windows. Поэтому будьте внимательны, если у пользователя система установлена на другом диске, не на диске C:, измените путь на правильный. Чтобы не изменять каждый путь отдельно, воспользуйтесь опцией Поиск и замена, опция доступна через контекстное меню формы результатов (нижнее окно).



3. Сопоставление - Вариант для локальных компьютеров, когда значение %WinDir% не определилось или анализ производится на компьютере, где были сделаны логи. Значение подстанавливается при выборе галочки Сопоставлять %WinDir%




Справа внизу есть кнопка Создать bat-файл, по нажатию которой, происходит сохранение найденых строк в файл cleanup.bat, который будет находиться в той же директории, из которой был запущен парсер. Если система пользователя установлена на другом диске, отличном от C:, откройте файл cleanup.bat в блокноте и исправьте на правильные значения.

Все вопросы\замечания\предложения по работе парсера, а также все "спасибы" можете оставлять в этой теме. :)

Успехов в лечении. :victory:


Отдельная особая благодарность участникам:
1.
akoK - За поддержку и ценные советы, которые были использованы при написании парсера
2. iskander-k - За моральную, дружескую поддержку, а также за умение спорить, находить истину и приводить качественные аргументы.
3. thyrex - За помощь в пояснении некоторых тонкостей при типовых заражениях и дельные советы, помогающие лучше понять структуру логов gmer, а также за хорошую подборку логов для парсера, которая помогает выявлять упущеные ошибки в парсере.
4. mirso - За терпеливую и дельную помощь в реализации решений, которые являются сердцем скорости выполнения анализа и более точное определение переменной %WinDir%. :good2: Ну и конечно же за Турбосинтетический Анализатор. ТС'А. Это вещь. ;)
5. Serrrgio - За предоставленую html-версию парсера логов gmer, которая использовалась для контрольных проверок и тестирования, результаты этого тестирования были большим подспорьем в разработке текущей версии. :good2:
6. regist - За колосальную помощь в составлении детектов по различным типам заражений. За качественную подборку актуальных логов. За конструктивные идеи изменившие парсер кардинально. За создание ParserGmer.chm шаблона готовых ответов по различным типам заражения. А также за огромное терпение к моим вопросам, уточнениям и моей забывчивости. :)
 
Последнее редактирование модератором:
А что должна делать утилита? Я так понял выдать список зараженных файлов? У меня при запуске утилиты и проверке лога выдает вот это:
Сохраните приведённый ниже текст, в файл cleanup.bat в ту же папку, где находится gmer.exe случайное имя утилиты (gmer)
Код:
gmer.exe -reboot
И запустите сохранённый пакетный файл cleanup.bat.
Внимание: Компьютер перезагрузится!
Сделайте новый лог gmer.
И все. Я так понял выдает команду только на перезагруз компа.
 
Вархаммер, Программа должна выдать список вредоносных файлов, ключей реестра, имён служб, если они имеются. Этот случай, когда утилита выдаёт только
Код:
gmer.exe -reboot
Говорит о том что лог чистый, либо не учтён случай удаления\определения. Такие случаи не исключены и об этом я говорил в первом посте.

Можешь прикрепить проблемный лог, нужно глянуть.
 
Последнее редактирование:
Итак, мы обновились. :victory: Шапка темы -> ParseGmer.rar

1. Изменена текстовка вывода информации при чистых логах. Теперь если логи чистые, парсер будет информировать следующим сообщением
Подозрительного в логах ничего не найдено...
Которое так же можно скопировать для готового ответа.
В случае обнаружения, вредных строк, вывод будет со всеми командами и тегами.

2. Добавлен режим анализа секции File и других секций. По умолчанию, режим отключен.



Используйте с осторожностью Обработку секции File, в некоторых случаях, там могут быть легитимные файлы

Примечание:
Если в секцию File попало очень большое количество файлов, например около 3 000 файлов, то парсер будет отрабатывать очень долго, около 4 минут, при этом всеми признаками говорить о подвисании приложения. Просто наберитесь терпения и дождитесь окончания анализа.
 
Последнее редактирование:
Drongo, у меня к вам несколько пожеланий.

Первое - поменяйте пожалуйста местами кнопки Копировать и Вставить и Анализировать в правильную логическую последовательность.

1. Мы Вставляем логи из буфера
2. Мы их Анализируем
3. Мы Копируем результаты анализа

Второе пожелание - сделайте у кнопок Анализировать, Копировать и Создать bat-файл отступы текста от краев чуть больше, как у кнопок Выход и Вставить. А то иногда текст режется.

Третье - перефразируйте, пожалуйста, сообщение о чистых логах и подсказки.
Гораздо приятнее для глаз, на мой взгляд, такое:
"Ничего подозрительного в логах не найдено" и "Показать (отдельно) найденные в ходе анализа руткиты, если они присутствуют в логе"
А то как магистр Йода получается :)
В подсказках напишите не от множественного числа (Копируем, Анализируем), а Скопировать, Выполнить анализ (Анализировать)....

Четвертое - пишите в О программе номер версии или дату сборки чтобы всегда можно было понять, требуется обновление или нет.

Пятое - сделайте подсказку-предупреждение для галочки обработки секции File и просто подсказку для кнопки Создать bat-файл

И вопрос: Зачем галочка Показать ROOTKIT по умолчанию неактивна? Ведь если сразу просто нажать на Анализировать она станет активной и ничего страшного не произойдет :)

Спасибо за полезную программу. Надеюсь мои пожелания и замечания окажутся полезными и вы их реализуете :)
 
Последнее редактирование:
djshkiper, Благодарю за столь содержательные замечания и предложения. :good2: Отвечу по каждому пункту.

Второе пожелание - сделайте у кнопок Анализировать, Копировать и Создать bat-файл отступы текста от краев чуть больше, как у кнопок Выход и Вставить. А то иногда текст режется.
Сделано. Так же было бы неплохо чтобы в этих случаях предоставляли скриншот, чтобы было видно насколько нужно сделать отступ. Сделал вроде с запасом, должно хватить.

Третье - перефразируйте, пожалуйста, сообщение о чистых логах и подсказки.
Гораздо приятнее для глаз, на мой взгляд, такое:
"Ничего подозрительного в логах не найдено" и "Показать (отдельно) найденные в ходе анализа руткиты, если они присутствуют в логе"
А то как магистр Йода получается
В подсказках напишите не от множественного числа (Копируем, Анализируем), а Скопировать, Выполнить анализ (Анализировать)....
Сделано.

Четвертое - пишите в О программе номер версии или дату сборки чтобы всегда можно было понять, требуется обновление или нет.
Сделано. Так же добавил в шапку темы
В архиве сборка от 24 Декабря 2009 года

Пятое - сделайте подсказку-предупреждение для галочки обработки секции File и просто подсказку для кнопки Создать bat-файл
Виноват. В предыдущей версии этих элементов не было, пока работал над алгоритмом для 4.0 версии, забыл добавить подсказки. Исправил.

И вопрос: Зачем галочка Показать ROOTKIT по умолчанию неактивна?
Чтобы не перегружать внимание пользователя программы. Ведь до анализа, нам показывать нечего, а после нажатия на кнопку Анализировать, программа подразумевает, что проверка была произведена и информирует нас сообщением и как результат, активируется доступ к списку ROOTKIT.

Первое - поменяйте пожалуйста местами кнопки Копировать и Вставить и Анализировать в правильную логическую последовательность.
1. Мы Вставляем логи из буфера
2. Мы их Анализируем
3. Мы Копируем результаты анализа
Исключено. Порядок правильный, кнопка Анализировать у нас заявлена как по умолчанию и в середине она смотреться не будет. Как вы правильно заметили, сначала - Вставляем -> Анализируем. Перескока через элементы управления нет. :)


Содержимое архива обновил согласно замечаниям - ParseGmer.rar
 
Ладно, с кнопочканми перетерплю :) Спасибо что учли пожелания и замечания. Еще хотел спросить, а что мешает путь %systemroot% оставлять без изменений (сам gmer ведь его поймет, а это главное) или если хочется использовать конкретный путь, что мешает определить простым вызовом функции системную папку? Я сам немного знаю vb, и там это легко сделать в одну строчку кода.
 
Еще хотел спросить, а что мешает путь %systemroot% оставлять без изменений
В этом случае были сложности с определением вредоносных строк, поэтому пришлось сделать прямые пути. :(

если хочется использовать конкретный путь, что мешает определить простым вызовом функции системную папку?
Да, я в курсе как это делается, вся фишка в том, что парсер запускается на машине хелпера, а не на машине потерпевшего. И программно определяя системную папку, мы по сути будет определять свою %WinDir%. ;) У конечного юзера она может быть другая. Или я не так вас понял?
 
Правильно поняли, но хелперы бывают не только удаленные. Я например вашу программу только локально использую, и в этом случае была бы очень полезна функция определения системной папки. Может добавить еще галочку, для опционального сопоставления? :)
 
Может добавить еще галочку, для опционального сопоставления?
Такая идея появилась тоже. :good2: Думаю, если ничего не помешает, завтра сделаю.

djshkiper, За вами название опции. :) Само собой, желательно не длинное. А то я не могу кратко придумать.

В голову приходит только такое, но это масло масляное и длинно слишком, не помещается.
Код:
Заменить на %WinDir% пользователя
 
Последнее редактирование:
Может поступить как с остальными галочками? То есть написать название кратко, а суть изложить в подсказке. Предлагаю назвать галочку "Сопоставлять %WinDir%" (именно сопоставлять, а не заменять, потому что замена идет по умолчанию). А текст подсказки примерно такой: Сопоставлять переменную %WinDir% папке Windows локального компьютера. Ну или как-то так :)

Завтра еще напишу пару примечаний и предоставлю интересный лог :)
 
Большая бяка происходит при изменении размеров окна в меньшую сторону :) Надо как-то править :)

И подсказка для секции файл немного неправильно пунктационною. Правильнее будет так: Включить в обработку секцию File (используйте этот режим с осторожностью).

И еще чуть-чуть. Вкладка О программе. Предлагаю такой вариант, на 2 строки:

Версия Х.Х
Сборка от хх ххххххх хххх г.

Такой порядок потому что версия главный параметр, а сборка дочерний. И поаккуратнее с буквой "г". Она сейчас "свисает"
 
Последнее редактирование:
Большая бяка происходит при изменении размеров окна в меньшую сторону
Есть такое, знаю об этом, хотя и не считаю эту "бяку" критичной, опять-таки, первостепенной важностью была разработка поиска и определения вредных строк...
Надо как-то править
Исправлено.

Сейчас отипшусь в тебе в личку и перезалью файл. Если есть ещё предложения, пиши. :)

Добавлено через 25 минут 18 секунд
Большая бяка происходит при изменении размеров окна в меньшую сторону Надо как-то править
И подсказка для секции файл немного неправильно пунктационною. Правильнее будет так: Включить в обработку секцию File (используйте этот режим с осторожностью).
И еще чуть-чуть. Вкладка О программе. Предлагаю такой вариант, на 2 строки:
Версия Х.Х
Сборка от хх ххххххх хххх г.
Сделано. ParseGmer.rar

Добавлено через 23 часа 43 минуты 41 секунду
-----------------------------------------------------------------------
Мы обновились. :)

Изменён порядок вывод записей служб, первыми удаляются все службы из ветки
Код:
HKLM\SYSTEM\[COLOR="Red"][B]CurrentControlSet[/B][/COLOR]\Services
затем удаляются службы из веток
Код:
HKLM\SYSTEM\[B][COLOR="red"]ControlSet***[/COLOR][/B]\Services
Где *** - любое значение от 001 до 999

Ну и подарок к Новому Году. :) Утилита доступна для использования всеми желающими, как участниками, так и различными конференциями, занимающиеся лечением и борьбой с вредоносным кодом. :)



С Новым Годом всех вас. ;) ParseGmer.rar

Добавлено через 1 час 35 минут 5 секунд
Исправил...
 
Последнее редактирование:
У-у-же начал праздновать Новый Год ?
Да нет, поменял местами вывод
CurrentControlSet
ControlSet***
И с ужасом заметил, что один, последний элемент из списка не выдаётся, т.е. он находится, всё ок, но на экран резульатов не хочет выводиться. Минус единицы не хватило. )))

Исправлено - ParseGmer.rar

iskander-k, С Новым Годом! Ура!

Добавлено через 19 часов 42 минуты 27 секунд
Сегодня были замечены критические и логические ошибки.

1. Исправлено обращение проверки к элементам списка при активном заражении.
2. В некоторых редких случаях, очень сильно буянит драйвер касперского - C:\WINDOWS\system32\drivers\klif.sys - "поставлен" на место.
3. Небольшая оптимизация решения отвечающего за поиск и определение вредоносов. К сожалению на глаз, не заметно. ;)

Обновились - ParseGmer.rar Продолжение следует...
 
Последнее редактирование:
Обновились до версии 4.1 - Сборка от 4 Января 2010 года - Рождественская. :good2:

Шапка темы -> ParseGmer.rar

Изменения внесены в шапку темы, а также чтобы не вспоминать, чего там изменено, пишу отдельно здесь. :)


Каждый лог gmer.log имеет свою уникальность, это создаёт некоторые проблемы, особенно при определении путей к именам файлов. В текущей версии есть три режима определения путей.

1. Определена - В этом случае значение %WinDir% определяется по логу и в случае нужды подстанавливается вместо строк %systemroot%. На скриншоте это выглядит так.



2. Стандартно - "Запасной" вариант для первого, в том случае, когда в логе gmer.log вообще нет значения переменной %WinDir%. Такое бывает, редко, но бывает. В этом случае подстанавливается стандартное значение C:\Windows. Поэтому будьте внимательны, если у пользователя система установлена на другом диске, не на диске C:, измените путь на правильный. Чтобы не изменять каждый путь отдельно, воспользуйтесь опцией Поиск и замена, опция доступна через контекстное меню формы результатов (нижнее окно).



3. Сопоставление - Вариант для локальных компьютеров, когда значение %WinDir% не определилось или анализ производится на компьютере, где были сделаны логи.
 
OKshef, Спасибо за добрые слова.

Просто потом, когда много идей будет, сложнее распределить очерёдность или приоритетность их реализации. :( Поэтому помаленьку стараюсь воплотить то, что покамест есть. Это кстати, я сделал ещё к 31 декабря, только нужно было отладить. Планировал обновить 2 января, да так тогда что-то и не дошли руки.
 
Назад
Сверху Снизу