Подгруппа музыкальных самоедов
🕛 01.03.2009, 11:44
В данную подгруппу входят наиболее совершенные штаммы данной группы вирусов. По-видимому, все представители данной группы играют в 17 ч мелодию "Янки Дудль Денди", поэтому их иногда называют Five o'clock (Пять часов). Штаммы, входящие в данную подгруппу, увеличивают свои функциональные возможности с возрастанием номера версии. Стиль написания вируса создает впечатление перекодировки с языка высокого уровня. Возможно, прототип был предварительно написан на Турбо Паскале, отсюда, возможно и произошло название TP. По другой версии, сообщенной В.Бончевым, ТР являются инициалами техно-крысы, написавшей данную группу. Для структуры этой подгруппы характерно наличие многочисленных подпрограмм и активное использование стека. При анализе дампов программ, зараженных штаммами данной подгруппы, обращает на себя внимание тот факт, что все они содержат группы повторяющихся символов с кодом 05. Эта особенность существенно облегчает визуальное опознавание зараженных файлов при просмотре дампа.Начиная со штамма RCE-2661 (ТР-38), в них применяется защита от обнаружения фильтрами, перехватывающими прерывание 21h. Примененный прием основан на выполнении трассировки программ, "сидящих" на прерывании 21h до попадания в "оригинальный" обработчик MS DOS, и запоминании соответствующего адреса. Кроме того, именно с этого штамма наблюдается эффект "самоизлечения" зараженной программы при попытке трассировки ее на зараженной вирусом машине.
Среди данной подгруппы впервые встречается попытка реализовать модификацию одного вируса другим вирусом. Начиная со штамма ТР-42, вирус проверяет, заражен ли компьютер, на котором он распространяется, вирусом Bx1-1C (Пинг-понг). Если да, то выполняется модификация вируса Bx1-1C в памяти таким образом, что в код вируса вводится специальный счетчик, инициализируемый значением 255. После заражения дискеты вирус уменьшает счетчик на единицу и при достижении счетчиком значения нуль перестает размножаться. Кроме того, начиная со штамма TP-44, мелодия играется не ежедневно, а с вероятностью приблизительно 1/8, что несколько затрудняет обнаружение вируса.
Наиболее распространенным представителем этой группы является штамм RCE-2885 (Five o'clock; TP-44), с которого начнем описание представителей данной группы.
5.3.3.1. Штамм RCE-2885 (TP-44, Yankee Doodle-2C - Янки дудль-2С, Five o'clock)
Вирус RСE-2885 является файловым резидентным вирусом, поражающим как файлы типа СОМ, так и файлы типа EXE. Заражение файлов происходит при запуске на выполнение соответствующих программ. Заражение COMMAND.COM происходит сразу после инсталляции вируса в верхние адреса свободной оперативной памяти, поскольку при этом затирается транзитная часть COMMAND.COM. Зараженный командный процессор имеет длину 28197 при исходной длине 25307.
Зависимость работоспособности вируса от версии MS DOS не обнаружена. Проверка номера версии в теле вируса не выполняется. Перехватывает прерывания 1, 3, 1Ch, 21h. Дата создания и атрибуты заражаемого файла остаются неизменными. Заражение выполняется однократно.
При заражении COM-файлов вирус дописывает свое тело в конец файла, вставляя в первые три байта команду перехода на начало вируса. Зараженные COM-файлы увеличиваются на 2885 (B45h) байтов (с выравниванием на границу параграфа). Заражаются COM-файлы длиной от 20h до F277h байтов. В конце зараженного файла расположена четырехбайтовая сигнатура вируса 7Fh, 39h, 2Ch, 00h.
При заражении EXE-файлов вирус также дописывает свое тело в конец файла с выравниванием начала вируса на границу параграфа. При этом размер файла увеличивается на 2881 (B41h) байт. Длина при заражении EXE-файлов не контролируется. В конце зараженного EXE-файла четырехбайтовая сигнатура отсутствует.
При инсталляции вирус узнает длину исходного файла, восстанавливает истинный стартовый адрес программы и проверяет наличие своей копии в памяти компьютера. Если компьютер не заражен или заражен более ранней версией вируса, то RCE-2885 копирует себя либо в область памяти сразу за телом программы, либо в область, выделенную функцией ALLOC (21h-48h) и, манипулируя с MCB, остается резидентным в памяти, перехватывая прерывания 21h, 1Ch и 09h.
Вирус RCE-2885 проверяет, загружается ли файл с защищенной дискеты или нет. Поэтому он не препятствует загрузке любого СОМ-файла с защищенной дискеты. Резидентная часть вируса не обнаруживается путем просмотра списка резидентных программ. При этом вирус не детектируется программой Release, а попытка запустить Release на зараженной машине приводит к выдаче сообщения о том, что Release не может стать резидентным. Вирус обходит контроль резидентных фильтров, следящих за записью в программные файлы.
Фаза проявления данного вируса состоит в проигрывании с вероятностью 1/8 мелодии "Янки Дудль Денди" в 17 ч (точнее, в 16 ч 59 мин 53 с). Никаких разрушений или манипулирований с данными вирус не выполняет.
При попытке дизассемблирования дизассемблером Sourcer, а также трассировке на зараженной машине наблюдается эффект "самовыкусывания" вируса из зараженных файлов. Этот эффект, впервые встретившийся именно в вирусах данной группы, достигается за счет контроля прерываний 1 и 3 при получении управления по прерыванию 1Ch. По умолчанию процедуры обработки этих прерываний состоят из одной команды возврата. При загрузке программы, перехватывающей данные прерывания (программа трассировки или дизассемблер типа Sourcer), вирус устанавливает для указанных прерываний собственные процедуры обработки. Последние проверяют, не произошли ли эти прерывания из кодового сегмента, в котором расположена резидентная часть вируса, и если да, запускают подпрограмму восстановления кода вируса, тем самым отключая программу трассировки. Другими словами, контроль прерываний 1 и 3 состоит в том, что, пока процедуры обработки этих прерываний состоят из одной команды возврата из прерывания, никаких действий вирусом не производится, но стоит загрузить программу, модифицирующую адреса обработчика данных прерываний (например, отладчик), как вирус установит для них собственные процедуры обработки. Аналогичным образом реализовано самоизлечение загружаемых в трассировщик зараженных файлов: резидентная часть вируса отслеживает момент загрузки программы в память без исполнения (21h-4Bh, AH=03) и проверяет, загружают в память зараженную программу или нет. В последнем случае запускается подпрограмма "выкусывания" вируса. Как уже указывалось, при заражении файлов, зараженных предыдущими версиями вируса, выполняется сначала "выкусывание", а затем заражение данным штаммом.
Исторические сведения. Впервые вирус был описан В.Бончевым под названием TP-44. Данный вирус был обнаружен в Киеве в сентябре 1989 г. Первым фагом для данного вируса были программы RVC и RVE (для COM- и EXE-файлов соответственно). Несколько позднее появилась вторая версия полифага Vdeath Ю.М.Ревзина. В настоящее время данные программы представляют только исторический интерес.
Неформальные названия. Помимо приведенных в заголовке, используются следующие названия: Янки Дудль, Музыкальный, Летучий Голландец, TP-44.
Методы и средства защиты. Зараженность программ видна при визуальном просмотре дампа (в конце файла видны характерные строки, содержащие группы повторяющихся символов с кодом 05h). Для входного контроля можно использовать любой подходящий полидетектор или полифаг (см. прил.1). Простейшие сторожа недостаточно эффективны против данного вируса. В частности, попытки записи вируса в запускаемый файл не обнаруживаются ни VirBlk, ни Anti4us2. Эффективна защита на уровне дискового драйвера (Advanced Disk Manager, Dcache и т.д.). Как уже указывалось, вирус содержит примитивные средства защиты против трассировки.
Фрагмент дампа дрозофилы, зараженной вирусом RCE-2885
100: E90E089090909090 9090909090909090 .
110: 9090040090909090 9090909090909090 .
120: 9090909090909090 9090909090909090 .
130: 9090909090909090 909090C37A3D0000 ...z=..
140: F47A2C0000003C00 BE0A909090909090 .z,...<...
150: 9090909090909090 9090909090909090 .
160: 9090909090909090 9090601479026014 .`.y.`.
170: 790256058C4253FF 00F00500B6643B13 y.V..BS...d;.
... .. .. .. .. .. .. .. .. .. .. . . . . . . . .
1F0: 2C15C4172C15C417 C51A671CC51AC417 ,...,..g..
200: 2C15EF122C15C51A 2C15EF12C7112C15 ,...,...,..,.
210: C417C711EF12E60F C711C711FFFF0505 .
220: 0505050505050505 0505090905050505 .
230: 0505050505050505 0909050505050505 .
240: 0505050505050505 0605050505050505 .
250: 06050505050909FE 067A7DFE06FB7D74 ...z}...}t
... .. .. .. .. .. .. .. .. .. .. . . . . . . . . +- начало инсталлятора вируса V
911: E800005B81EBD4 072EC6875C00FFFC .[.\...
920: 2E80BF5B00007418 BE0A0003F3BF0001 ...[..t...
930: B92000F3A40E2EFF B76400061E50EB13 . .d...P..
... .. .. .. .. .. .. .. .. .. .. . . . . . . . .
C20: 931DB0B9C6010692 375049E8D5719722 ..7PI..q."
C30: A6E64C50BE2A23BE 441DA1A66BA0E006 ..LP.*#.D...k...
C40: AA1AF62AC0022F75 99060F5B97023E64 ...*../u...[..>d
C50: 7DC8506608C4FA92 8E64751BA61BB932 }.Pf..du.2
C60: BD0B3E616DE0C4B9 29CA9C170821EAEE ..>am...).!..
C70: 7E85B1632AC37171 2CA0F28B590DF9D5 ~..c*.qq,...Y...
C80: 00F47A2C00 ..z,. +-+ сигнатура
5.3.3.2. Вирус RCE-2680 (ТР-33, Yankee Doodle-21 - Янки дудль-21)
Этот штамм, по-видимому, является первым представителем подгруппы самоедов. Именно в нем была добавлена часть, обеспечивающая восстановление оригинального кода вируса при изменении до 16 последовательных байтов (с помощью самокорректирующегося кода Хемминга). Вирус играет мелодию "Янки Дудль Денди" в 17 ч.
Исторические сведения. Данный вирус распространялся на вирусной дискете В.Бончева в файле TP33VIR.COM, датированном 17 февраля 1989 г.
Фрагмент дампа дрозофилы, зараженной вирусом RCE-2680
100: E99F069090909090 9090909090909090 .
110: 9090909090909090 9090909090909090 .
120: 9090909090909090 9090909090909090 .
130: 9090909090909090 90909090909090C3 .
140: 4D0800AF00000000 0000000000000000 M...
150: 6002FD1660147402 5605631353FF00F0 `...`.t.V.c.S...
160: 20000500BB916A13 0000C60052002EC6 ..j..R...
170: 5C077000558B5C07 7000010001909090 \.p.U.\.p.
180: 9090909090909090 90909087DB87DB90 .
190: 6402C711C711E60F 280EC711280EE60F d.(...(...
... .. .. .. .. .. .. .. .. .. .. . . . . . . . .
1F0: 2C15EF12C7112C15 C417C711EF12E60F ,..,...
200: C711C711FFFF0505 0505050505050505 .
210: 0505090905050505 0505050505050505 .
220: 0909050505050505 0505050505050505 .
230: 0605050505050505 0605050505090950 ...P
240: 53B800008EC026C4 1C895D028C450426 S..&...]..E.&
250: 803FCF740A268B07 890526C707CD1C5B .?.t.&.&.[
... .. .. .. .. .. .. .. .. .. .. . . . . . . . . +- начало инсталлятора вируса V
7A2: E800005B81EB 65065053BB2100F8 C.[..e.PS.!..
7B0: B803C5CD215B7223 83FCF0721E2E8B97 .![r#...r.
7C0: 0300428CD903D18E C28BF38BFEB9780A ..B..x.
... .. .. .. .. .. .. .. .. .. .. . . . . . . . .
B90: 4390CFD2EF3B32E9 5F393E674E4B471B C.;2._9>gNKG.
BA0: D22B7A58EC6C90D9 E60A21B50D5FB446 .+zX.l.!.._.F
BB0: 40009391F47A2190 @.z! +-+ сигнатура
5.3.3.3. Вирус RCE-2568 (ТР-34, Yankee Doodle-22 - Янки дудль-22)
Фрагмент дампа дрозофилы, зараженной вирусом RCE-2568
100: E98F069090909090 9090909090909090 .
110: 9090909090909090 9090909090909090 .
120: 9090909090909090 9090909090909090 .
130: 9090909090909090 90909090909090C3 .
140: 6002FD1660147402 5605233C53FF00F0 `...`.t.V.#<S...
150: 2000050093916A13 0000B60042002EA3 ..j..B...
160: 5C07700087EC5C07 7000010001909090 \.p...\.p.
170: 9090909090909090 90909087DB87DB90 .
... .. .. .. .. .. .. .. .. .. .. . . . . . . . .
1E0: 2C15EF12C7112C15 C417C711EF12E60F ,..,...
1F0: C711C711FFFF0505 0505050505050505 .
200: 0505090905050505 0505050505050505 .
210: 0909050505050505 0505050505050505 .
220: 0605050505050505 0605050505090950 ...P
230: 53B800008EC026C4 1C895D028C450426 S..&...]..E.&
240: 803FCF740A268B07 890526C707CD1C5B .?.t.&.&.[
... .. .. .. .. .. .. .. .. .. .. .. . . . . . . . . +- начало инсталлятора вируса V
792: E800005B81EB 55065053BB2200F8 C.[..U.PS."..
7A0: B803C5CD215B7203 E9AE00598CC88ED8 .![r.Y.
7B0: 8EC02E8A87070A2E A200018BC18B8F02 .
... .. .. .. .. .. .. .. .. .. .. . . . . . . . .
B10: 46A9D1AE675742D9 6A5B8E0E1F21D50A F...gWB.j[...!..
B20: 4FFC427B17B1F9F2 684532D06EF9DDA4 O.B{.hE2.n...
B30: DC014D1AFC655125 DD88256102BD0D0C ..M..eQ%..%a.
B40: 40009391F47A2290 @.z" +-+ сигнатура
5.3.3.4. Вирус RCE-2756 (ТР-38, Yankee Doodle-26 - Янки дудль-26)
В данном штамме добавлена логика, обеспечивающая обход фильтров, перехватывающих прерывание 21h. Примененный прием основан на выполнении трассировки программ, "сидящих" на прерывании 21h до попадания в "оригинальный" обработчик MS DOS и запоминании соответствующего адреса. Кроме того, именно с этой версии наблюдается эффект "самоизлечения" зараженной программы при попытке трассировки ее на зараженной вирусом машине.
Исторические сведения. Данный вирус распространялся на вирусной дискете В.Бончева в файле TP38VIR.COM, датированном 28 февраля 1989 г.
Фрагмент дампа дрозофилы, зараженной вирусом RCE-2756
100: E9DB079090909090 9090909090909090 .
*** Последующие строки идентичны предыдущей ***
120: 9090909090909090 9090909090909090 .
130: 9090909090909090 90909090909090C3 .
140: F47A260000004000 400A909090909090 .z&...@.@.
150: 9090909090909090 9090909090909090 .
160: 9090909090909090 9090720EA0196014 .r...`.
170: 74025605D656E008 A01920000500FABB t.V..V... ..
180: 28140000DC006800 2EA35C07700087EC (..h...\.p...
... .. .. .. .. .. .. .. .. .. .. . . . . . . . .
200: EF122C15C51A2C15 EF12C7112C15C417 ..,...,..,...
210: C711EF12E60FC711 C711FFFF05050505 .
220: 0505050505050505 0909050505050505 .
230: 0505050505050909 0505050505050505 .
240: 0505050505050605 0505050505050605 .
250: 0505050909505333 C08EC026C41C895D ..PS3...&...]
260: 028C450426803FCF 740A268B07890526 ..E.&.?.t.&.&
270: C707CD1C5B58C356 57BE0400BF4800E8 .[X.VW.H..
... .. .. .. .. .. .. .. .. .. .. . . . . . . . . начало инсталлятора вируса -+ V
8DE: E800 ..U..t...R.QC...
8E0: 005B81EBA107FC2E 80BF5600007418BE .[..V..t..
8F0: 0A0003F3BF0001B9 2000F3A40E2EFFB7 . .
... .. .. .. .. .. .. .. .. .. .. . . . . . . . .
BC0: F0435C6B7478F6AE 05B22AD44954519F .C\ktx.*.ITQ.
BD0: DD99113FEAE02D2E 6DCC95C81233C43E .?.-.m.3.>
BE0: 5A2B8B33E11C3E88 C4806AC3DEFF6F33 Z+.3..>...j...o3
BF0: 44223341E9BC133D CA1B92C402A0D2FD D"3A...=..
C00:|F47A2600 .z& +-+ сигнатура
5.3.3.5. Вирус RCE-2901 (ТР-45, Yankee Doodle-2D - Янки дудль-2D)
Данный вирус отличается от TP-44 лишь незначительными деталями.
Исторические сведения. Вирус распространялся на вирусной дискете В.Бончева в файле COMMAND.VIR. По-видимому, вирус разработан весной 1989 г.
Фрагмент дампа дрозофилы, зараженной вирусом RCE-2901
000: E906089090909090 9090909090909090 .
... .. .. .. .. .. .. .. .. .. .. . . . . . . . .
030: F47A2D0000003000 C60A909090909090 .z-...0...
040: 9090909090909090 9090909090909090 .
050: 9090909090909090 9090390398146014 .9...`.
... .. .. .. .. .. .. .. .. .. .. . . . . . . . .
100: C417C711EF12E60F C711C711FFFF0505 .
110: 0505050505050505 0505090905050505 .
120: 0505050505050505 0909050505050505 .
130: 0505050505050505 0605050505050505 .
140: 06050505050909FE 067A7DFE06FB7D74 ...z}...}t
150: 05EA007C0000FC33 C08EC0BE2A7DBF4C ...|...3.*}.L
... .. .. .. .. .. .. .. .. .. .. . . . . . . . .
B60: DBDB30252E0A0049 34C355356A362F79 ..0%...I4.U5j6/y
B70: 2B8E340D1D0D0629 F94636B8AD18F6AA +.4.).F6..
B80: 00F47A2D00 ..z-. +-+ B-сигнатура
5.3.3.6. Вирус RCE-2932 (ТР-41, Yankee Doodle-29 - Янки дудль-29)
Разрушение или модификация данных в вирусе не предусмотрена. Длина вируса составляет 2932 (B74h) байтов. Заражаются COM-файлы длиной от 20h до F247h байт и EXE-файлы любой длины. Код вируса отличается от кода RCE-2885 лишь меньшей степенью отработанности (не выделены некоторые подпрограммы, поэтому длина вируса больше). Отличия в проявлениях сводятся к тому, что в 17 ч мелодия играется всегда.
Фрагмент дампа дрозофилы, зараженной вирусом RCE-2932
000: E92F089090909090 9090909090909090 ./..
... .. .. .. .. .. .. .. .. . . . . . . . .
030: F47A290000003000 EE0A909090909090 .z)...0...
... .. .. .. .. .. .. .. .. . . . . . . . .
110: 0505050505050505 0505090905050505 .
120: 0505050505050505 0909050505050505 .
130: 0505050505050505 0605050505050505 .
... .. .. .. .. .. .. .. .. . . . . . . . .
B60: 419EBF488A06A7BA 0A8993557831908F A..H.Ux1..
B70: B0BAA467FDFB369D F825859828EEBB8E ...g..6..%..(...
B80: A4276E3D35E3DC9E 472D3C7C5AE5D407 .'n=5...G-<|Z...
B90: 805C01401F4CBCFC 3DC3E86DA14C4554 .\.@.L..=..m.LET
BA0: F47A2900 .z). +-+ сигнатура