Как работает сигнатурный анализ
#1
Отправлено 30 Октябрь 2009 - 14:53
Справедливо равенство: СА 1 + СА 2 + СА 3 = СА 1+2+3 ?
Под 1+2+3 понимается "склееный" файл из 1 2 3.
#2
Отправлено 30 Октябрь 2009 - 15:32
ИМХО, нет.Вопрос следующий. Есть три файла 1 2 3.
Справедливо равенство: СА 1 + СА 2 + СА 3 = СА 1+2+3 ?
Под 1+2+3 понимается "склееный" файл из 1 2 3.
Борис А. Чертенко aka Borka.
#3
Отправлено 30 Октябрь 2009 - 15:32
Объяснения о работе простого сигнатурного анализа есть тут:
http://av-school.ru/article/a-45.html
Жаль что вебовцы не делают ничего подобного ...
#4
Отправлено 30 Октябрь 2009 - 15:37
ИМХО, работа СА - часть коммерческой тайны. Меня интересует только результат.Честно сказать - вопрос не понятен, уж очень загадочно он как-то у вас описан.
Объяснения о работе простого сигнатурного анализа есть тут:
http://av-school.ru/article/a-45.html
Жаль что вебовцы не делают ничего подобного ...
#5
Отправлено 30 Октябрь 2009 - 15:39
Жаль. А почему?ИМХО, нет.Вопрос следующий. Есть три файла 1 2 3.
Справедливо равенство: СА 1 + СА 2 + СА 3 = СА 1+2+3 ?
Под 1+2+3 понимается "склееный" файл из 1 2 3.
#6
Отправлено 30 Октябрь 2009 - 16:04
ИМХО onЖаль. А почему?ИМХО, нет.Вопрос следующий. Есть три файла 1 2 3.
Справедливо равенство: СА 1 + СА 2 + СА 3 = СА 1+2+3 ?
Под 1+2+3 понимается "склееный" файл из 1 2 3.
Если я правильно понимаю, сигнатура - это определенная последовательность байтов по определенному смещению в файле. Поэтому сигнатура для маленького файла может не подойти к большому.
ИМХО off
Борис А. Чертенко aka Borka.
#7
Отправлено 30 Октябрь 2009 - 16:08
Это ещё почему? никто же не запрещает разбирать движок для поиска сигнатур вида:ИМХО, работа СА - часть коммерческой тайны.
69 73 ?? ?? 0A * 83 26 00
Другое дело - это сами сигнатуры, вот их я могу осознать что можно считать по праву интеллектуальной собственностью. А теперь вот представьте как можно искать сигнатуру в одном файле, допустим в файле СА1 она отсутсвует, в файле СА2 и СА3 есть. Теперь я не понимаю что означает "+" в вашей записи. Это значит что вы хотите склеить все 3 файла и произвести поиск?
#8
Отправлено 30 Октябрь 2009 - 16:12
Т.е. для маленького проверяется сигнатуры (С) длиной не больше длины его файла?ИМХО onЖаль. А почему?ИМХО, нет.Вопрос следующий. Есть три файла 1 2 3.
Справедливо равенство: СА 1 + СА 2 + СА 3 = СА 1+2+3 ?
Под 1+2+3 понимается "склееный" файл из 1 2 3.
Если я правильно понимаю, сигнатура - это определенная последовательность байтов по определенному смещению в файле. Поэтому сигнатура для маленького файла может не подойти к большому.
ИМХО off
Ну и что. Просто большой файл будет немножко дольше проверяться из-за большего кол. С
Меня интересует в принципе, есть ли препятствия для такого сравнения.
#9
Отправлено 30 Октябрь 2009 - 16:16
1. Я думаю логика проверки является уникальной, а не база сигнатур.Это ещё почему? никто же не запрещает разбирать движок для поиска сигнатур вида:ИМХО, работа СА - часть коммерческой тайны.
69 73 ?? ?? 0A * 83 26 00
Другое дело - это сами сигнатуры, вот их я могу осознать что можно считать по праву интеллектуальной собственностью. А теперь вот представьте как можно искать сигнатуру в одном файле, допустим в файле СА1 она отсутсвует, в файле СА2 и СА3 есть. Теперь я не понимаю что означает "+" в вашей записи. Это значит что вы хотите склеить все 3 файла и произвести поиск?
2. Если С присутствует в файле 1, то она останется в файле 1+2+3.
3. Правильно.
#10
Отправлено 30 Октябрь 2009 - 16:36
Само сканирование производится по нескольким критериям, например:
1. Соответствует ли расширение файла какому-либо формату, подпадающему под сканирование?
2. К какому формату относится файл? (PE/DLL/DOC/XLS)
Далее я пожалуй не буду расписывать о самом процессе проверки файла, поскольку об эвиристическом анализе едва ли могу что-то знать. Но например техники статического исполнения файла у DrWeb обязаны присутствовать, более подробно сдесь: http://av-school.ru/article/a-62.html
И далее допустим перед каждым вызовом эмулируемой апи функции делать сигнатурный скан по всему адресному пространству процесса. Либо для того что б ускорить - делать его только перед тем как будут вызываться какие-то определённые функции, например: ZwCreateFile, ZwDeleteFile, функции для работы с памятью, находящуюся в АП сторонних процессов ... и т.п. Тут всё очень сложно и запутано.
если это был вопрос, то ответ - да2. Если С присутствует в файле 1, то она останется в файле 1+2+3.
#11
Отправлено 30 Октябрь 2009 - 16:41
#12
Отправлено 30 Октябрь 2009 - 16:54
QUOTE (Полимер @ 30/10/2009 17:16) *
2. Если С присутствует в файле 1, то она останется в файле 1+2+3.
если это был вопрос, то ответ - да
то есть сработка будет
#13
Отправлено 30 Октябрь 2009 - 17:20
Только в том случае, если сигнатура ищется по всему файлу.Т.е. для маленького проверяется сигнатуры (С) длиной не больше длины его файла?ИМХО onЖаль. А почему?ИМХО, нет.Вопрос следующий. Есть три файла 1 2 3.
Справедливо равенство: СА 1 + СА 2 + СА 3 = СА 1+2+3 ?
Под 1+2+3 понимается "склееный" файл из 1 2 3.
Если я правильно понимаю, сигнатура - это определенная последовательность байтов по определенному смещению в файле. Поэтому сигнатура для маленького файла может не подойти к большому.
ИМХО off
Ну и что. Просто большой файл будет немножко дольше проверяться из-за большего кол. С
Борис А. Чертенко aka Borka.
#14
Отправлено 30 Октябрь 2009 - 18:51
А развеТолько в том случае, если сигнатура ищется по всему файлу.Т.е. для маленького проверяется сигнатуры (С) длиной не больше длины его файла?ИМХО onЖаль. А почему?ИМХО, нет.Вопрос следующий. Есть три файла 1 2 3.
Справедливо равенство: СА 1 + СА 2 + СА 3 = СА 1+2+3 ?
Под 1+2+3 понимается "склееный" файл из 1 2 3.
Если я правильно понимаю, сигнатура - это определенная последовательность байтов по определенному смещению в файле. Поэтому сигнатура для маленького файла может не подойти к большому.
ИМХО off
Ну и что. Просто большой файл будет немножко дольше проверяться из-за большего кол. С
-сигнатуры не ищутся в опред. месте? А разве в базе не прошито определенное место сигнатуры в exe/dll/vxd/com...для опред. вируса?
Я почему-то всегда думал что у Веба в базах прописано
-где искать
-что искать
(пока что про усеивание пятнами не беру)
Хотелось бы более подробно для общего развития
#15
Отправлено 30 Октябрь 2009 - 20:22
-сигнатуры не ищутся в опред. месте? А разве в базе не прошито определенное место сигнатуры в exe/dll/vxd/com...для опред. вируса?
Я почему-то всегда думал что у Веба в базах прописано
и правильно думали - так и есть. Но вот как он срабатывает когда в тело программы помещаешь вирусное тело, и программа его НЕ извлекает на жёсткий диск, происходит срабатывание. Остаётся только догадываться как это всё работает, если из своей программы нет обращений к данным в теле вредоносное программное обеспечениеа. Считаю это справедливой политикой безопасности для антивирусного продукта. Но как оно работает - всё-равно не знаю. Наверно всё-таки есть какой-то скан по всему телу файла / процесса только определённых сигнатур.
#16
Отправлено 30 Октябрь 2009 - 20:41
А зачем его извлекать на жёсткий диск?-сигнатуры не ищутся в опред. месте? А разве в базе не прошито определенное место сигнатуры в exe/dll/vxd/com...для опред. вируса?
Я почему-то всегда думал что у Веба в базах прописано
и правильно думали - так и есть. Но вот как он срабатывает когда в тело программы помещаешь вирусное тело, и программа его НЕ извлекает на жёсткий диск, происходит срабатывание. Остаётся только догадываться как это всё работает, если из своей программы нет обращений к данным в теле вредоносное программное обеспечениеа. Считаю это справедливой политикой безопасности для антивирусного продукта. Но как оно работает - всё-равно не знаю. Наверно всё-таки есть какой-то скан по всему телу файла / процесса только определённых сигнатур.
#17
Отправлено 30 Октябрь 2009 - 20:48
На жёсткий диск такие файлы бросают так называемые "дропперы" ... вы же всё сами прекрасно знаете. А если не бросают - значит там какой-то PE loader, но это в реальном вредоносное программное обеспечениее. А я веду речь не о вредоносное программное обеспечениее, а об абсолютно нормальной программе, просто в ресурсах которой сидит вредоносное программное обеспечение. Каким тогда макаром сигнатурный анализ даёт срабатывание? Предположим что сканер проверяет ВСЕ ресурсы в РЕ файлах, тогда делаем обман: убираем из ресурсов вредоносный код и помещаем его в секцию данных. Опять же нет никаких ссылок в коде самой программы на "нехорошие" данные. Компилируем приложение .... и оба-на - сработка. Как ? Почему ? Неужто DrWeb делает скан всего РЕ файла на наличае каких-то определённых сигнатур? Думаю что тут проход идёт допустим по самым распространённым сигнатурам, таким как pinch ... Причём подчеркну - анализ всего файла! Что затормаживает работу программы-антивируса.А зачем его извлекать на жёсткий диск? blink.gif
#18
Отправлено 30 Октябрь 2009 - 20:57
На жёсткий диск такие файлы бросают так называемые "дропперы" ... вы же всё сами прекрасно знаете.
ох ё...мы знакомы?
--------------------------------
Когда-то промелькнула инфа,в базах есть разделение на проверку "реально висящих в памяти и заразных и проч...."
может я что-то путаю....давно было....да и я кое где начитался всякой гадости...
но логически..имеет ли смысл в памяти искать никсовые вирусы в виндовой системе?Макровирус в памяти?
Сообщение было изменено mrbelyash: 30 Октябрь 2009 - 21:01
#19
Отправлено 30 Октябрь 2009 - 21:03
ну так такого и нет вроде! Нужно пробовать ...но логически..имеет ли смысл в памяти искать никсовые вирусы в виндовой системе?Макровирус в памяти?
#20
Отправлено 30 Октябрь 2009 - 21:19
Читают тему: 0
0 пользователей, 0 гостей, 0 скрытых