Було запропоновано цю статтю або розділ з Поліморфіки, але, можливо, це варто додатково . Пропозиція з квітня 2018. |
Поліморфний код — це програмний код, котрий може себе змінювати, без зміни свого алгоритму. Для мутації коду може бути використаний поліморфний генератор. Код може змінюватися кожного разу під час виконання, але результат роботи ніколи не змінюється. Для прикладу є функція котра має повертати число 4, даний результат можуть повертати багато виразів: -1 + 5, 1 * 4, 7 - 3
. Ця техніка інколи використовується у комп'ютерних вірусах, у цьому випадку вони називаються поліморфні віруси. У вірусах ця технологія використовується для того щоб ускладнити знаходження вірусів антивірусними програмами.
Поліморфний комп'ютерний вірус
Це комп'ютерний вірус котрий використовує поліморфний код для ускладнення свого детектування.
Історія
Перший відомий поліморфний вірус був написаний Марком Вашберном (Mark Washburn). Вірус, котрий мав назву 1260, був створений у 1990 році. Більш відомий поліморфний вірус був створений болгарським програмістом Dark Avenger (нік) у 1992 році, він також створив MtE (Mutation Engine).
Поліморфізм у комп'ютерних вірусах
Поліморфізм у вірусах здебільшого представлений наступними категоріями:
- шифрування функцій вірусу за допомогою побайтної операції XOR.
- будь-яка інструкція замінюється на іншу котра робить те саме.
Наприклад,
add ebx, 7
може бути замінена на
sub ebx, −7
або на пару команд
add ebx, 9 sub ebx, 2
код для перенесення даних з одного регістра до іншого
mov ax, bx
може бути замінений на
push bx pop ax
- перестанова місцями інструкцій у випадку коли їх порядок ролі не має.
- додавати сміттєві команди, такі команди котрі вірусом не використовуються, а лише є для ускладнення аналізу.
Шифрування це найбільш використовуваний метод у поліморфних вірусах. Шифрування саме по собі не є поліморфізмом. Для досягання поліморфізму, програмний код мутує за допомогою шифрування та дешифрування. Ця техніка дозволяє щоб один і той самий код виглядав по різному.
Див. також
Посилання
- Raghunathan, Srinivasan (2007). Protecting anti-virus software under viral attacks. M.Sc. Thesis, Arizona State University.[1] [ 17 квітня 2012 у Wayback Machine.]
- 1260 (computer virus)[2] [ 17 серпня 2021 у Wayback Machine.]
- Wong, Wing; Stamp, M. (2006). Hunting for Metamorphic Engines. Journal in Computer Virology. Department of Computer Science, San Jose State University. [3] [ 9 серпня 2017 у Wayback Machine.]
Це незавершена стаття про програмне забезпечення. Ви можете проєкту, виправивши або дописавши її. |
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Bulo zaproponovano ob yednati cyu stattyu abo rozdil z Polimorfiki ale mozhlivo ce varto dodatkovo obgovoriti Propoziciya z kvitnya 2018 Polimorfnij kod ce programnij kod kotrij mozhe sebe zminyuvati bez zmini svogo algoritmu Dlya mutaciyi kodu mozhe buti vikoristanij polimorfnij generator Kod mozhe zminyuvatisya kozhnogo razu pid chas vikonannya ale rezultat roboti nikoli ne zminyuyetsya Dlya prikladu ye funkciya kotra maye povertati chislo 4 danij rezultat mozhut povertati bagato viraziv 1 5 1 4 7 3 Cya tehnika inkoli vikoristovuyetsya u komp yuternih virusah u comu vipadku voni nazivayutsya polimorfni virusi U virusah cya tehnologiya vikoristovuyetsya dlya togo shob uskladniti znahodzhennya virusiv antivirusnimi programami Polimorfnij komp yuternij virusCe komp yuternij virus kotrij vikoristovuye polimorfnij kod dlya uskladnennya svogo detektuvannya Istoriya Pershij vidomij polimorfnij virus buv napisanij Markom Vashbernom Mark Washburn Virus kotrij mav nazvu 1260 buv stvorenij u 1990 roci Bilsh vidomij polimorfnij virus buv stvorenij bolgarskim programistom Dark Avenger nik u 1992 roci vin takozh stvoriv MtE Mutation Engine Polimorfizm u komp yuternih virusah Polimorfizm u virusah zdebilshogo predstavlenij nastupnimi kategoriyami shifruvannya funkcij virusu za dopomogoyu pobajtnoyi operaciyi XOR bud yaka instrukciya zaminyuyetsya na inshu kotra robit te same Napriklad add ebx 7 mozhe buti zaminena nasub ebx 7 abo na paru komandadd ebx 9 sub ebx 2 kod dlya perenesennya danih z odnogo registra do inshogomov ax bx mozhe buti zaminenij napush bx pop ax perestanova miscyami instrukcij u vipadku koli yih poryadok roli ne maye dodavati smittyevi komandi taki komandi kotri virusom ne vikoristovuyutsya a lishe ye dlya uskladnennya analizu Shifruvannya ce najbilsh vikoristovuvanij metod u polimorfnih virusah Shifruvannya same po sobi ne ye polimorfizmom Dlya dosyagannya polimorfizmu programnij kod mutuye za dopomogoyu shifruvannya ta deshifruvannya Cya tehnika dozvolyaye shob odin i toj samij kod viglyadav po riznomu Div takozhDinamichne onovlennya programnogo zabezpechennya Polimorfnij generatorPosilannyaRaghunathan Srinivasan 2007 Protecting anti virus software under viral attacks M Sc Thesis Arizona State University 1 17 kvitnya 2012 u Wayback Machine 1260 computer virus 2 17 serpnya 2021 u Wayback Machine Wong Wing Stamp M 2006 Hunting for Metamorphic Engines Journal in Computer Virology Department of Computer Science San Jose State University 3 9 serpnya 2017 u Wayback Machine Ce nezavershena stattya pro programne zabezpechennya Vi mozhete dopomogti proyektu vipravivshi abo dopisavshi yiyi