Может я уже не первый, но я вот чего думаю, ведь есть на свете мегагуру которым подсилу создать алгоритм обфускации команд которые выполняет процессор?! А значит в теории можно создать фулморфный вирь который уничтожит всё и вся?! Троянчег начал выполнение и перед копированием себя куданить проводит обфускацию исполняемого кода, тогда антивирусникам будет крайне тяжело обнаружить засцранца! Мне как мегаламусу кажется, что выдрать из PE головы смещение откудова попёрло хозяйство на выполение - не составит труда. И перебрать команды типа JP MOV итд.. забить их всяким промежуточным шлаком.. ну неужели ещё никто такого не пробывал сделать?!?!?!
Это технически очень сложная задача. Хотя бы потому, что надо помнить состояние флагов и знать, какие регистры используются в данном конкретном участке кода. Анализ такого кода - очень сложный процесс. Особенно, если код перемешан с данными. Просьба в работы зомбы носом не тыкать, ибо натравите на его морфы любой антивирус и результат увидите сами. Кроме того, детект по сигнатурам - это вчерашний день. Сейчас идет эмуляция с эвристикой. Вот банальный пример: нод сначала эмулирует код и составляет карту вызовов апи. По этой карте он и палит. Даже если обломать его эмулятор, он просто просмотрит код на порядок вызова в нем апи (в каком порядке эти вызовы находятся в коде, а не исполняются) и тоже сравнит это с готовым шаблоном. Я не говорю, что это нельзя обойти. Я просто показываю пример, что сигнатуры в топку, есть эмули. Про детект кода по наличию мусора я вообще молчу. Имхо, абсолютное большинство файлов палится не как конкретный вирус, а как подозение на зашифрованый файл. Так что найти точку входа в заголовке, как ты говоришь, далеко не самая большая проблема П.С.: вирусы, мутирующие себя описанным тобой способом уже есть - metaphor один из них. Но повторюсь, не в сигнатуре счастье