Вольфрам
Интересующийся
Offline
|
|
« : 21-12-2023 21:21 » |
|
Здравствуйте! Давно меня мучает вопрос, можно ли убрать посторонний код из исполняемого файла, с сохранением работоспособности самого файла? Я помню, как на каком то форуме разбирали файл на низком уровне, находили в нём "лишнее" и обезвреживали. После этих манипуляций программа работала. К сожалению этот форум я не нахожу больше. Закладки не сохранились. но раз речь там шла о низкоуровневом разборе кода, я подумал, что будет уместно задать этот вопрос здесь. Итак: Как найти (допустим тело вируса) в исполняемом файле? Как его обезвредить с сохранением работоспособности самого файла? Какие способы и инструменты для этого нужны?
|
|
|
Записан
|
|
|
|
RXL
|
|
« Ответ #1 : 21-12-2023 23:18 » |
|
Антивирус нужен и ничего более. Альтернативный вариант подразумевает глубокие специфические знания и его не имеет смысл обсуждать на обывательском уровне.
|
|
|
Записан
|
... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
|
|
|
Вольфрам
Интересующийся
Offline
|
|
« Ответ #2 : 22-12-2023 08:49 » |
|
Антивирус нужен и ничего более.
Антивирус просто ставит всю программу в карантин или удаляет. То есть задача не решается, а снимается с повестки. Меня это не устраивает. Я хочу спасти файл, с сохранением работоспособности.
|
|
|
Записан
|
|
|
|
Вольфрам
Интересующийся
Offline
|
|
« Ответ #3 : 22-12-2023 08:57 » |
|
Альтернативный вариант подразумевает глубокие специфические знания и его не имеет смысл обсуждать на обывательском уровне.
Именно этого (Альтернативный вариант...) я и ищу. И мне бы очень помогло, если бы кто то опытный в таких вопросах набросал мне примерный алгоритм решения подобной задачи, с парой ссылок на ресурсы и с названием программ, которые понадобятся в качестве инструмента, для вскрытия и копания двоичного кода файла. P/S: Никак не ожидал, что администратор данного форума считает такую исследовательскую задачу обывательской.
|
|
|
Записан
|
|
|
|
Люсь
|
|
« Ответ #4 : 22-12-2023 10:26 » |
|
Щас бы ещё на админов наезжать А ведь он дело говорит )) Как по мне, лучше уж приобщаться к изучению нейросетей, она быстрее обучится машинному коду и найдёт изъяны, чем новичок без навыков программирования ассемблер изучит )
|
|
|
Записан
|
Посторонним просьба не беспокоить! ------------------------------------------------- O (I) Rh +
|
|
|
RXL
|
|
« Ответ #5 : 22-12-2023 10:32 » |
|
Задача гарантированно решается только заменой зараженного файла на оригинальный. Что антивирус, частично, и делает: обнаруживает и удаляет, а пользователю остается только вернуть файл из бекапа или дистрибутива и снова его проверить. Если нет ни бекапа, ни исходного файла в дистрибутиве, то задача не имеет гарантии, т.к. нужно знать, как зараженный файл используется операционкой и как вирус активируется. В простейшем случае, это exe или dll, просто доп. блок с кодом в конце файла и перехват каких-то точек исполнения в оригинальном коде (измененные несколько байт в основном коде). В сложном случае — что угодно, задача не решаемая. Кроме нативных исполняемых exe/dll могут быть еще компилируемые форматы (напр. для .net), скрипты (программы в исходном коде, например js), косвенные воздействия (определенная порча данных, обрабатывая которые, программа поведет себя нужным для злоумышленника образом). Восстановление простейшего случая сводится у убиранию лишнего кода и восстановлению кода в точке перехвата. Вот тут и нужны знания ассемблера и куча времени, чтобы понять, что же было в старом коде. Эти байты могли как быть скопированы в блок вируса, так и затерты безвозвратно. Вывод: шансов на восстановление мало, трудозатраты огромны, проще восстановить из бекапа или дистрибутива. Возвращаемся к исходной позиции: антивирус — решение проблемы.
И не задачу я назвал обывательской, а подход без нужных знаний и опыта. Потому что их надо много.
|
|
|
Записан
|
... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
|
|
|
Вольфрам
Интересующийся
Offline
|
|
« Ответ #6 : 22-12-2023 19:49 » |
|
обнаруживает и удаляет, а пользователю остается только вернуть файл из бекапа или дистрибутива и снова его проверить.
Файл уже был скачан с вирусом и мой антивирус его просто в карантин помещает и всё. Из возможностей, только разрешить на компьютере, или удалить. Лечить он не умеет. Сам файл обычный EXE-шник. Из Вами сказанного вычленяю два варианта: 1. Антивирус, который умеет лечить. Не очень верю, но согласен попробовать те антивирусы, которые умеют лечить такие файлы, а не просто закрывать их в карантине. Есть у Вас такие на примете? 2. Реверсинг, дизассемблирование, с последующим лечением ручками. Второй вариант более интересен. Какие посоветуете ресурсы по данной теме? И какие программные инструменты тут уместны? P/S: Спасибо за развёрнутый ответ. Стало немного виднее, чего ждать от данного пути.
|
|
|
Записан
|
|
|
|
Вольфрам
Интересующийся
Offline
|
|
« Ответ #7 : 22-12-2023 19:59 » |
|
И не задачу я назвал обывательской, а подход без нужных знаний и опыта. Потому что их надо много.
Ну так за этим я и пришёл на ваш продвинутый форум. Мне нужны знания и опыт. Лопату уже точу. Укажите направление, куда копать. Ну... если не жалко, конечно.
|
|
|
Записан
|
|
|
|
RXL
|
|
« Ответ #8 : 22-12-2023 21:05 » |
|
Смотрите, как именно идентифицирует антивирус заразу. Потом гуглите, может найдете больше информации по ней, это было бы полезно. У вируса есть так называемая сигнатура, по которой антивирус его и обнаруживает. Полезно было бы узнать, как она выглядит. Вооружайтесь документацией, мануалами. Смотрите, какая версия, 32-битная или 64-битная, соотв., нужна документация по системе команд IA32 или AMD64. Различные системные и библиотечные вызовы — тоже все есть в интернете, например, MSDN. И вам потребуется дизассемблер. Например, IDA. А дальше все в ваших руках.
Ну и не стоит исключать ложное срабатывание антивируса. Стоит проверить несколькими.
Запускать зараженный файл можно, но в изолированном окружении. Например, виртуальная машина. Рекомендую VirtialBox. Можно сделать одну машину, поставить винду, сделать базовые настройки и клонировать ее для эксперимента, а после копию можно удалить. Конечно, не стоит выпускать такую вирткуалку в домашнюю или другую реальную сеть.
|
|
« Последнее редактирование: 22-12-2023 21:11 от RXL »
|
Записан
|
... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
|
|
|
Вольфрам
Интересующийся
Offline
|
|
« Ответ #9 : 22-12-2023 22:06 » |
|
Ну вот! Спасибо Вам большое! Теперь поле деятельности проясняется. Пошёл рассматривать ориентиры
|
|
|
Записан
|
|
|
|
Вольфрам
Интересующийся
Offline
|
|
« Ответ #10 : 22-12-2023 22:20 » |
|
Щас бы ещё на админов наезжать Ну нет. Я ни на кого тут не наезжаю. Стараюсь общаться корректно. ... чем новичок без навыков программирования ассемблер изучит )
Навыки есть. Но не низкоуровневые. И скорее на уровне знакомства и пробы сил. Но некоторое представление имею.
|
|
|
Записан
|
|
|
|
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
|
|
« Ответ #11 : 23-12-2023 04:22 » |
|
она быстрее обучится машинному коду и найдёт изъяны, чем новичок без навыков программирования ассемблер изучит )
пока что сегодня ИИ не имеет способности к написанию программ. Умет подражать и дёргать с тырнета готовые студенческие задачки. На этом всё. И то иногда и там косячит. Чуть более сложное - многопоточность, синхронизация, и всё, не работает
|
|
|
Записан
|
|
|
|
Люсь
|
|
« Ответ #12 : 23-12-2023 16:18 » |
|
она быстрее обучится машинному коду и найдёт изъяны, чем новичок без навыков программирования ассемблер изучит )
пока что сегодня ИИ не имеет способности к написанию программ. Умет подражать и дёргать с тырнета готовые студенческие задачки. На этом всё. И то иногда и там косячит. Чуть более сложное - многопоточность, синхронизация, и всё, не работает Погоди, то ли еще будет! Это только первый год, когда ИИ наделало столько шуму!
|
|
|
Записан
|
Посторонним просьба не беспокоить! ------------------------------------------------- O (I) Rh +
|
|
|
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
|
|
« Ответ #13 : 23-12-2023 16:59 » |
|
Люсь, сомневаюсь, что шум станет сильнее. Ну, музыку прикольную делает. Рисует - прямая имитация шизофрении. С пальцами проблема Программировать не умеет
|
|
|
Записан
|
|
|
|
|