Перейти к содержанию
spw

Реальный тест на эвристику "антивирусов"

Recommended Posts

Umnik
одно дело править эвристику для того, что бы избавиться от фолсов на ПО от компаний Apple или Adobe, и совсем другое дело делать это ради какой-то малоизвестной програмки да и еще и в ущерб эвристике.

При текущем подходе ПО от Ялока и Адобе просто добавляется в вайт лист, ведь они каждый день новые билды не выпускают.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Zilla

Umnik, не, я думаю они правят эвристику.. Т.к. представьте какая паника будет, если в один день выйдут обновы для их ПО, и эвристика нода их обозвёт каким-то трояном.. хотя, думаю, такое практически не возможно :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
spw
Что именно пояснить? Я не программер на дельфи, а только анализирую код.

Гуёвая юзермодовая прога хочет прописаться в системный автостарт (уже только за это нужно отправлять по рельсам навстречу бронепоезду).

Про HKLM я уже сказал. Это w9x-style, к сожалению, так делает 90% программистов.

Процедура установки (set) на основе параметра может осуществлять противоположное действие.

Это нормально. Установить запись в автозапуске или удалить ее. Например, при включении checkbox'а.

В процедуре используется какая-то левая переменная - sPath, причём в качестве имени ключа и их данных, что похоже на баг.

Похоже на баг только в Вашем восприятии. На самом деле никакого бага нет. Поищите в google интерфейс WriteString. Вот я за полминуты нашел:

http://infodelphi.ru/Help/RADStudio/en/Reg...riteString.html

Вначале имя Value, потом Data. Все правильно сделано. (В качестве Value может быть любой мусор, который нравится).

Используется смешанный подход (частично дублирующийся) к обработке ошибок и при всём при этом велика вероятность неопределённого результата работы функции.

По-моему эта часть написана "для красного словца" (не имеет смысловой нагрузке).

И никакого "неопределенного тут результата" нет.

Плюс к этому, это не функция, а процедура. У нее нет возвращаемого значения. В принципе.

А это всего лишь небольшой кусочек кода программы. Поэтому можно предположить, что вся прога представляет собой один большой "undefined behavior" и противопоказана к исполнению. :lol:

Мне кажется, что Вам стоит все же разобраться внимательно, прежде чем что-то писать и давать какие-то характеристики.

В любом случае, даже если бы это был нереально бажный г-код. Это не имеет никакого отношения к политике ESET в плане лже-детектов и их неубирания.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
dr_dizel

Хе-хе. Потешно как все набросились на меня из-за NODа. Я сам его не люблю, но я не фанатик и не собираюсь из-за нелюбви оправдывать поделие автора.

Не могли бы вы пояснить, как осуществить запуск mail агента из бутсектора?

Быть может это ваша 0day разработка?

How much?

Суть фразы была в том, что есть много мест для организации автозапуска, но сие не оправдывает неразумное их использование.

А тот же буткит давно подтвердил возможность запуска чего вам заблагорассудится с посредством бутсектора.

Если у вас так сильно чешется, то берите for free и пилите Vbootkit 2.0 open-source under GPL:

  • The use of Vbootkit in gaining access to a system without leaving traces
  • Leveraging normal programs to escalate system privileges
  • Running unsigned code in kernel
  • Remote command & Control

All this is done, without having any footprint on the HDD (everything is in memory). It also remains invisible to all existing anti-virus solutions.

Что касается кода, приведенного выше. Он очень напоминает книжные примеры конца 9x.

Это не функция, а процедура. Где переменная sPath скорее всего глобальная и

представляет собой полный путь до приложения.

Спасибо, КЭП!

Я писал в состоянии сна, но выше же видно: "Процедура установки (set) на основе параметра может осуществлять противоположное действие." Сча будем описки искать. А вот выбор пути в качестве имени параметра автозапуска - несомненно гениально и только ёжики знают что будет, если пользователь перенесёт папку с прогой или переустановит её в другую папку, если в пути будут пробелы.

В данном случае try/finally гарантирует высвобождение ресурсов в случае ошибки и по окончании выполнения блока.

UAC тут не при чем. Будет добавлен манифест, как сказал sporaw и программа априори затребует

админские права на старте. Подозреваю что детектирование (в случае проверки файла) здесь идет по строчке :)

Да не в try/finally дело (похоже да сам дельфи поощряет смешивать проверку кодов возварата и эксепшены), просто стиль автора "жжот". Также за админские права на пустом месте сегодня (а на дворе не 90-е) нужно отправлять по рельсам... но я уже писал про это. А вот что детектирование идёт только по строчке вызывает сомнения. Тогда бы NOD детектил все пишущие туда проги, а этого вроде не наблюдается. Ведь автор нашел только один кусок, на который ругается эвристик и на этом успокоился. Может там ещё идёт проверка наличия новой версии? Да мало ли что там может быть.

Довольно забавно, что не будучи судя по всему знакомым с предметной областью (Delphi) вы беретесь

комментировать чужой код.

Зачетная тема, спасибо, смешно.

Сколько кровушки попили представители этой "предметной области" со своими поделками на основе "книжные примеры конца 9x" и собственного мозга + BDE + primary key в коде и т.п. при переходе с Oracle 7 на 9. Может где-то и были нормальные дельфисты, но похоже они вымерли.

А чтобы отличать поддельные доллары от настоящих не нужно знать все подделки и как они делаются - достаточно хорошо знать оригинал.

P.S. А смешно знаете что? Как два друга-брата-акробата сначала какают в сторону каспера, а потом "прозревают" и начинают какать в обратную сторону.

Т.е. вы вирусный аналитик?...

У эвристика ESET'а нет никакой переменной sPath, нет никакого бага. О чем вы вообще?

:blink: Вы видите то, чего нет. Читаете текст и не понимаете его. Вам нужно обратиться к врачу.

  • Upvote 5

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
sww
:blink: Вы видите то, чего нет. Читаете текст и не понимаете его. Вам нужно обратиться к врачу.

Вам уже множество раз было показано то, что вы невежда. И будет еще множество раз показано. За врача - ответите.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
dr_dizel
Вам уже множество раз было показано то, что вы невежда. И будет еще множество раз показано. За врача - ответите.

Анализируют код не только вирусные аналитики. Я не писал, что переменная sPath у эвристика ESET'а. Вы зашорены.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
sww
Анализируют код не только вирусные аналитики. Я не писал, что переменная sPath у эвристика ESET'а. Вы зашорены.

Ну, оскорблять вы останавливаться не собираетесь, но всем уже все понятно :)

В процедуре используется какая-то левая переменная - sPath, причём в качестве имени ключа и их данных, что похоже на баг.

Какое отношение данное умозаключение имеет к эвристическому детектированию данного куска кода?

Подозреваю, что никакого, соотв-но это предложение - просто набор слов, а слова - просто набор букв, ибо оно не несет никакого смысла.

Используется смешанный подход (частично дублирующийся) к обработке ошибок и при всём при этом велика вероятность неопределённого результата работы функции.

Какой смешанный подход? Подход к чему? Что он дублирует? Какая тут обработка ошибок? Очередной перл, не несущий смысловой нагрузки и, что самое интересное, не имеющий никакого отношения к теме.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
dr_dizel
Какое отношение...Подозреваю, что никакого. Подход к чему?

Выше уже всё написано. Достаточно отключить "дурачка" и прочитать переписку, что велась не с вами (сюрприз?). Желательно ещё прослеживать связку: вопрос - ответ.

Ну, оскорблять вы останавливаться не собираетесь, но всем уже все понятно :)

О-ло-ло. Новое оскорбление - зашорен

Отредактировал Umnik
я ножницы нашел

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
DiabloNova

Спасибо за содержательные ответы, dr_dizel.

Потешно как все набросились на меня из-за NODа.

Вы обобщаете. Касательно моего ответа, он относился исключительно к вашему гм.. так сказать

анализу куска чужого кода. Поверьте фанатом ни NOD ни ESET, ни какого-либо другого antimalware продукта я не являюсь.

Я писал в состоянии сна, но выше же видно: \"Процедура установки (set) на основе параметра может осуществлять противоположное действие.\" Сча будем описки искать. А вот выбор пути в качестве имени параметра автозапуска - несомненно гениально и только ёжики знают что будет, если пользователь перенесёт папку с прогой или переустановит её в другую папку, если в пути будут пробелы.

Ёжики уверены, что ничего криминального (за исключением появления дублирующих записей) не произойдет, программа просто либо

запишет новое значение в реестр, либо попытается удалить несуществующее, что будет корректно обработано кодом метода DeleteValue.

Конструкция try/finally применяется также в C++ и имеет тот же смысл. Её использование подробно рассмотрено в Windows via C/C++ уважаемого Рихтера,

где приведены примеры, демонстрирующие преимущества использования try/finally.

А вот что детектирование идёт только по строчке вызывает сомнения. Тогда бы NOD детектил все пишущие туда проги, а этого вроде не наблюдается.

Вероятно здесь идет комплексное срабатывание на несколько факторов, но уверяю вас строчку он тоже посмотрел ;)

Сколько кровушки попили представители этой \"предметной области\" со своими поделками на основе \"книжные примеры конца 9x\" и собственного мозга + BDE + primary key в коде и т.п. при переходе с Oracle 7 на 9. Может где-то и были нормальные дельфисты, но похоже они вымерли.

Вы выполняете обязанности администратора базы данных, просто администратора? Описание вашего трудного детства/трудовых будней меня несколько не волнует, друг мой.

  • Upvote 5

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
priv8v
Вероятно здесь идет комплексное срабатывание на несколько факторов, но уверяю вас строчку он тоже посмотрел

Ага.

Это же как красная тряпка для быка... :)

У эвристика может быть много флагов. Пропись в HKLM на запуск может быть одной из составляющих, взводящих алерт.

да не так уж много флагов у эвристика нода при нахождении подобного куска кода и с такой открытой строкой...

В тему про эвристику приведу пару ссылок на достаточно интересные темы:

http://wasm.ru/forum/viewtopic.php?id=27843 (именно про эту строку)

http://wasm.ru/forum/viewtopic.php?id=31687 (просто похожая тема, не именно эта строка, но близко - про потенциально-частоопасный-кусок-кода - так можно назвать:) )

+ помню была статья от мыщъха про любовь с фаерволом в непристойных позах - типа того название было, туда тоже можно глянуть. Ее содержимое перекликается с содержимым второй ссылки.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Umnik

dr_dizel

sww

DiabloNova

Брек!

  • Upvote 5

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
dr_dizel
Ага.

Это же как красная тряпка для быка... :)

да не так уж много флагов у эвристика нода при нахождении подобного куска кода и с такой открытой строкой...

Не знаю, что я делаю не так, но код от автора с минимальной обвязкой не детектися нодом.

QuikOrdersDOM.zip

QuikOrdersDOM.zip

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
spw

Фанатам цыган-тивируса Avira посвящается:

Человек решил поставить софт по моему совету. Параллельно с Avira 9.

Весь код этого драйвера: xor eax, eax / ret

Больше кода в этом драйвере нет вообще. В принципе.

Вердикт:

Virus or unwanted program 'TR/Patched.Gen [trojan]'

detected in file 'D:\WINDOWS\system32\drivers\os_cfg.sys.

Action performed: Deny access

P.S. Цыган-тивирусы.

  • Upvote 10

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
dr_dizel
Весь код этого драйвера: xor eax, eax / ret

Ну а где же файл драйвера?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Umnik

Sp0Raw

Строго говоря, пользователь же от этого детекта не пострадает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
spw
Sp0Raw

Строго говоря, пользователь же от этого детекта не пострадает.

Хм, это как? Установка программы "поломалась" (ничего работать не будет). Программа не запустится. + К этому, как оказалось, пользователю подсунули "троян". Эээ? Как это не пострадает?

Ну а где же файл драйвера?

Прямо сейчас у меня его на руках нет, нужно ждать человека и пытаться файл выцепить (если Avira его не удалила, а только "заблокировала" к нему доступ). А что Вы в нем такого увидеть хотите? Весь его код я описал выше. Или Вы считаете, что я вру?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
ak_

Оригинальный файл из дистрибутива Online Solutions: http://www.virustotal.com/ru/analisis/b61b...4c64-1270319666

Возможно, сработала проверка целостности системных файлов - файл находится в директории WINDOWS\system32\drivers и при этом не имеет цифровой подписи.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
spw

Ну а вот оригинальный файл из другого дистрибутива (тот, о котором речь):

http://www.virustotal.com/ru/analisis/e1dd...65bc-1270320614

Кстати, тут уже и washer отметился. Видимо, по virustotal.

Возможно, сработала проверка целостности системных файлов - файл находится в директории WINDOWS\system32\drivers и при этом не имеет цифровой подписи.

Ох, мой компьютер, оказывается, в опасности!!! У меня таких файлов несколько десятков наберется... Что же мне делать? Наверно, нужно срочно Avira поставить! Она-то их тут же и удалит! Ведь файл без цифровой подписи, да в каталоге драйверов - это однозначно малварь. Добро пожаловать в мир г-эвристики и цыг-ан-тивирусов.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
ak_
Ох, мой компьютер, оказывается, в опасности!!! У меня таких файлов несколько десятков наберется... Что же мне делать? Наверно, нужно срочно Avira поставить! Она-то их тут же и удалит! Ведь файл без цифровой подписи, да в каталоге драйверов - это однозначно малварь. Добро пожаловать в мир г-эвристики и цыг-ан-тивирусов.

Не торопитесь устанавливать Авиру, Мелкософт уже об этом позаботился. :)

В Win 7 x64 такой драйвер не установится.

  • Upvote 5

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
spw
Не торопитесь устанавливать Авиру, Мелкософт уже об этом позаботился. :)

В Win 7 x64 такой драйвер не установится.

То есть, правильно ли я понимаю, что г-эвристика "закрылась" под x64 тем, что такое просто невозможно? А в виду того, что такое невозможно, то г-эвристика, как бы и не нужна на x64 системе. Вот такая вот логически нелогичная незадача вышла у фанатов Avira... (Если кто не понял, чуть попроще: г-эвристика-то ищет неподписанные файлы, а их там нет; делаем вывод в таком же стиле: Avira под x64 не нужна).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
ak_
То есть, правильно ли я понимаю, что г-эвристика "закрылась" под x64 тем, что такое просто невозможно? А в виду того, что такое невозможно, то г-эвристика, как бы и не нужна на x64 системе. Вот такая вот логически нелогичная незадача вышла у фанатов Avira... (Если кто не понял, чуть попроще: г-эвристика-то ищет неподписанные файлы, а их там нет; делаем вывод в таком же стиле: Avira под x64 не нужна).

Тяжелый случай. Не осилил сей продукт мозгового штурма.

Вот такая вот логически нелогичная незадача вышла у фанатов Avira...

У каких фанатов?

Как бы с подобным файлом поступил KIS или KAV? Удалось бы запустить программу?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
spw
Тяжелый случай. Не осилил сей продукт мозгового штурма.

Ну Вы пытались "съехать с темы", сказав, что под x64 это не актуально, потому что неподписанных драйверов там просто нет.

А я пояснил, что раз неподписанных драйверов там нет, то и г-эвристические технологии Avira, детектирующие trojan-patched в неподписанных драйверах, там не нужны. Логично? А раз так, то и все достоинства Avira (супер-эвристика) на этом заканчиваются. А посему - Avira под x64 не нужна. По-моему, логика та же, что исходный аргумент про x64, вместо обсуждения сути проблемы.

У каких фанатов?

Фанат - это тот, кто защищает то, что ему дорого, даже в том случае, если это "дорого" совершает очевидные ошибки. Если человек не может признать и адекватно воспринять эти ошибки, а ищет пути как бы это выставить в лучшем свете - это фанат. (Ничего личного: я просто описал свое восприятие "фанатов" -- кого я ими называю).

Как бы с подобным файлом поступил KIS или KAV? Удалось бы запустить программу?

KIS/KAV, думаю, этот файл бы не трогал. Посчитал бы нормальным. Но пусть кто-нибудь проверит на практике. Судя по VT, KIS/KAV считают его нормальным.

P.S. На всякий случай (объективности для) -- я не являюсь фанатом KL. Это Вы их здесь упомянули, я просто ответил (выразил свое мнение, основываясь на своем опыте/знаниях, том, что вижу сейчас).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
ak_

По порядку:

1. Детект TR/Patched.Gen - это ещё не вся эвристика и посему каждый пользователь сам решает чем ему пользоваться даже на х64.

2. Я не оправдываю "ошибки того, что мне дорого" :) Просто было высказано предположение, почему это произошло. Каждый продукт имеет свои плюсы и минусы. Каждый пользователь вправе выбирать для себя тот продукт, соотношение плюсов и минусов которого считает оптимальным. Идеальных нет. Я сейчас вообще пользуюсь NIS 2010 в ожидании русскоязычного релиза Avira 10. Так что, никакого фанатизма.

3. Возможно я ошибаюсь (пусть меня поправят представители ЛК, или пользователи KIS/KAV), но мне кажется, что программе не удалось бы нормально запуститься, поскольку она была бы заблокирована (или ограничена в действиях) на основе поведенческого анализа при попытке установить неподписанный драйвер.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
dr_dizel
А что Вы в нем такого увидеть хотите? Весь его код я описал выше. Или Вы считаете, что я вру?

Дело в том, что в файле не пару этих байт.

Вся суть этого случая в том, что компилятор используемый в Online Solutions не очищает выделяемую память и вкомпилирывает в бинарники куски мусора из памяти используемой машины (кстати, по которым можно много чего узнать о ней). И с каждой новой компиляцией мусор будет разный. Это даже видно по двум бинарникам с периодом компиляции в час.

Поэтому сий детект у авиры основан на данных, а не на разборе кода. Подобный фолс можно встретить и в продуктах других вендоров. Например, я столкнулся с подобным печальным детектом у вэба резервной копии схемы БД.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
K_Mikhail
Например, я столкнулся с подобным печальным детектом у вэба с лечением удалением резервной копии схемы БД.

Фолс исправлен-то?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Гость
Эта тема закрыта для публикации ответов.

  • Сообщения

    • Lavillwrone
      develosil xg-c30m, 5um купить онлайн в интернет-магазине химмед
      Tegs: anti-spata7 купить онлайн в интернет-магазине химмед
      anti-spcs1 купить онлайн в интернет-магазине химмед
      anti-spg20 купить онлайн в интернет-магазине химмед

      develosil xg-c30m, 5um купить онлайн в интернет-магазине химмед https://chimmed.ru/products/develosil-xg-c30m-5um-id=274950
    • Ego Dekker
      Домашние антивирусы для Windows были обновлены до версии 17.1.11.
    • Ego Dekker
    • PR55.RP55
      .xml  файлы taskschd.msc Могут быть подписаны  цифровой подписью. Думаю будет нелишним, если uVS будет это фиксировать. т.е. проверять не только подпись целевого файла, но и подпись самого файла\задачи. и писать в ИНфО .  
    • demkd
      ---------------------------------------------------------
       4.15.2
      ---------------------------------------------------------
       o Исправлена ошибка при работе с образом автозапуска.
         Для некоторых процессов команда unload не добавлялась в скрипт при нажатии кнопки "принять изменения".  o Добавлена плашка окна на таскбаре для окна удаленного рабочего стола.
         (при работе с удаленной системой) -----------------------------------------------------------
      Есть проблема с локализацией глюка в редких случаях приводящему к аварийному завершению uVS при активном флаге "Проверять весь HKCR".
      На основе дампов его найти не получается, нужна копия реестра системы с такой проблемой, если кому-то попадется такая проблема, то присылайте архив с копией реестра системы мне на почту.  
×