Jump to content

Полиморфный код

В вычислениях полиморфный код — это код, который использует полиморфный механизм для мутаций, сохраняя при этом исходный алгоритм нетронутым — то есть код меняется каждый раз при запуске, но функция кода (его семантика ) остается той же. Например, простые математические выражения 3+1 и 6-2 дают один и тот же результат, но выполняются с разным машинным кодом в ЦП . Этот метод иногда используется компьютерными вирусами , шеллкодами и компьютерными червями , чтобы скрыть свое присутствие. [1]

Шифрование — наиболее распространенный метод сокрытия кода. При шифровании основная часть кода (также называемая его полезной нагрузкой ) шифруется и становится бессмысленной. Чтобы код работал как раньше, в код добавляется функция расшифровки. Когда код выполняется , эта функция считывает полезную нагрузку и расшифровывает ее перед своим выполнением.

Шифрование само по себе не является полиморфизмом. Чтобы добиться полиморфного поведения, пара шифратор/дешифратор мутирует с каждой копией кода. Это позволяет использовать разные версии некоторого кода, которые функционируют одинаково. [2]

Вредоносный код

[ редактировать ]

Большинство антивирусных программ и систем обнаружения вторжений (IDS) пытаются обнаружить вредоносный код путем поиска в компьютерных файлах и пакетах данных, передаваемых по компьютерной сети . Если программное обеспечение безопасности обнаруживает шаблоны, соответствующие известным компьютерным вирусам или червям, оно предпринимает соответствующие шаги для нейтрализации угрозы. Полиморфные алгоритмы затрудняют распознавание вредоносного кода таким программным обеспечением, поскольку он постоянно мутирует.

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

Эмуляцию можно использовать для преодоления полиморфной обфускации, позволяя вредоносному ПО раскрыть себя в виртуальной среде, прежде чем использовать другие методы, такие как традиционное сканирование сигнатур. Такую виртуальную среду иногда называют песочницей . Полиморфизм не защищает вирус от такой эмуляции, если расшифрованная полезная нагрузка остается неизменной независимо от изменений в алгоритме расшифровки. Методы метаморфического кода могут использоваться для дальнейшего усложнения обнаружения, поскольку вирус может выполняться, даже не имея в памяти идентифицируемых блоков кода, которые остаются постоянными от заражения к заражению.

Первый известный полиморфный вирус был написан Марком Уошберном. Вирус, названный 1260 , был написан в 1990 году. Более известный полиморфный вирус был создан в 1992 году хакером Dark Avenger как средство уклонения от распознавания образов антивирусным программным обеспечением. Распространенным и очень вирулентным полиморфным вирусом является файловый заразитель Virut .

См. также

[ редактировать ]
  1. ^ Рагунатан, Шринивасан (2007). Защита антивирусного программного обеспечения от вирусных атак (магистр). Университет штата Аризона. CiteSeerX   10.1.1.93.796 .
  2. ^ Вонг, Винг; Штамп, М. (2006). «Охота за метаморфическими двигателями». Журнал компьютерной вирусологии . 2 (3): 211–229. CiteSeerX   10.1.1.108.3878 . дои : 10.1007/s11416-006-0028-7 . S2CID   8116065 .
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 666c1f6b9cfa64171956907c82a4f742__1720012980
URL1:https://arc.ask3.ru/arc/aa/66/42/666c1f6b9cfa64171956907c82a4f742.html
Заголовок, (Title) документа по адресу, URL1:
Polymorphic code - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)