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

 eXeL@B —› Протекторы —› новые srm-net конверты
Посл.ответ Сообщение

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

Создано: 17 августа 2011 19:02
· Личное сообщение · #1

Попались тут в одной проге новые hasp-srm конверты на dll (я таких не видел ранее) . Особенности:
- много секций (40-50, говорят похоже на конверты сшк)
- гибриды по сути (ида определяет их как обычные приложения и как net-сборку)
- после распаковки этого конверта остается только net-dll (мож тоже под net-конвертом, не знаю, результат видел на примере, но как там и что хз).

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

пример длл если кого интересует могу выложить



Ранг: 516.1 (!), 39thx
Активность: 0.280
Статус: Участник

Создано: 18 августа 2011 09:06 · Поправил: Av0id
· Личное сообщение · #2

ида определяет их как обычные приложения и как net-сборку

имхо, исходя из этого можно предположить что это mixed сборка или просто .net загрузчик сборки, соответственно часть сборки ковыряется олей, другая часть рефлектором и отладчиком pebrowse'ом

ps. это все в теории, дел с донглами не имел




Ранг: 127.3 (ветеран), 44thx
Активность: 0.090
Статус: Участник

Создано: 18 августа 2011 10:35
· Личное сообщение · #3

Если net то наверное можно тупо сдампить сборку net дампером и всё.

ps. это все в теории, дел с донглами не имел

-----
zzz




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

Создано: 18 августа 2011 11:41
· Личное сообщение · #4

Если абстрагироваться от самого донгла, т.е не обращать внимания на работу с ключем из конверта (есть эмулятор и все запускается нормально) и сделать несколько допущений то:
1. После распаковки должна быть обычная net-длл, значит на ОЕП должен быть вызов в длл Net-обработчика.
Нашел такой переход, представим что это и есть реальное ОЕП.
Code:
  1. 0089D0AE                             -FF25 00208700    JMP DWORD PTR DS:[872000]                ; mscoree._CorDllMain


вот сама структура секций исходной длл
Code:
  1. Memory map
  2.  
  3. 00870000   00001000   x.dll  00870000 (             PE header     Imag   R         RWE
  4. 00872000   0002C000   x.dll  00870000    0000001                  Imag   R E       RWE
  5. 0089E000   00002000   x.dll  00870000    .rsrc      resources     Imag   R E       RWE
  6. 008A0000   00002000   x.dll  00870000    0000003    data          Imag   R E       RWE
  7. 008A2000   00021000   x.dll  00870000    0000004                  Imag   R E       RWE
  8. 008C4000   00002000   x.dll  00870000    0000005    imports       Imag   RW        RWE
  9. 008C6000   0002A000   x.dll  00870000    0000006    code          Imag   RW        RWE
  10. 008F0000   00002000   x.dll  00870000    0000007    code,relocat  Imag   RW        RWE
  11. 008F2000   00021000   x.dll  00870000    0000008    code          Imag   RW        RWE
  12. 00914000   00012000   x.dll  00870000    0000009    code          Imag     E       RWE
  13. 00926000   00021000   x.dll  00870000    0000010    code          Imag     E       RWE
  14. 00948000   00014000   x.dll  00870000    0000011    code          Imag     E       RWE
  15. 0095C000   00021000   x.dll  00870000    0000012    code          Imag     E       RWE
  16. 0097E000   00012000   x.dll  00870000    0000013    code          Imag     E       RWE
  17. 00990000   00001000   x.dll  00870000    0000014    code          Imag     E       RWE
  18. 00992000   00021000   x.dll  00870000    0000015    code          Imag   RW        RWE
  19. 009B4000   00016000   x.dll  00870000    0000016    code          Imag     E       RWE
  20. 009CA000   00021000   x.dll  00870000    0000017    code          Imag     E       RWE
  21. 009EC000   00012000   x.dll  00870000    0000018    code          Imag     E       RWE
  22. 009FE000   00150000   x.dll  00870000    0000019    code          Imag     E       RWE
  23. 00B4E000   00008000   x.dll  00870000    0000020                  Imag     E       RWE
  24. 00B56000   00088000   x.dll  00870000    0000021                  Imag     E       RWE
  25. 00BDE000   00021000   x.dll  00870000    0000022                  Imag     E       RWE
  26. 00C00000   00012000   x.dll  00870000    0000023                  Imag     E       RWE
  27. 00C12000   00021000   x.dll  00870000    0000024                  Imag     E       RWE
  28. 00C34000   00012000   x.dll  00870000    0000025                  Imag     E       RWE
  29. 00C46000   00021000   x.dll  00870000    0000026                  Imag     E       RWE
  30. 00C68000   00012000   x.dll  00870000    0000027                  Imag     E       RWE
  31. 00C7A000   00021000   x.dll  00870000    0000028                  Imag     E       RWE
  32. 00C9C000   00012000   x.dll  00870000    0000029                  Imag     E       RWE
  33. 00CAE000   00021000   x.dll  00870000    0000030                  Imag     E       RWE
  34. 00CD0000   00012000   x.dll  00870000    0000031                  Imag     E       RWE
  35. 00CE2000   00039000   x.dll  00870000    0000032                  Imag     E       RWE
  36. 00D1C000   00002000   x.dll  00870000    0000033                  Imag   RW        RWE
  37. 00D1E000   0003A000   x.dll  00870000    0000034                  Imag   RW        RWE
  38. 00D58000   00021000   x.dll  00870000    0000035                  Imag   RW        RWE
  39. 00D7A000   00012000   x.dll  00870000    0000036                  Imag     E       RWE
  40. 00D8C000   00021000   x.dll  00870000    0000037                  Imag     E       RWE
  41. 00DAE000   00012000   x.dll  00870000    0000038                  Imag     E       RWE
  42. 00DC0000   00021000   x.dll  00870000    0000039                  Imag     E       RWE
  43. 00DE2000   00012000   x.dll  00870000    0000040                  Imag     E       RWE
  44. 00DF4000   00021000   x.dll  00870000    0000041                  Imag     E       RWE
  45. 00E16000   00010000   x.dll  00870000    0000042                  Imag     E       RWE
  46. 00E26000   00001000   x.dll  00870000    0000043                  Imag     E       RWE
  47. 00E28000   00016000   x.dll  00870000    0000044                  Imag   RW        RWE
  48.  


вот структура длл из проги без конвертов
Code:
  1. Memory map
  2.  
  3. 00370000   00001000   x.dll               PE header              Imag   R         RWE
  4. 00372000   0001B000   x.dll    .text      code,imports           Imag   R E       RWE
  5. 0038E000   00001000   x.dll    .rsrc      data,resources         Imag   R         RWE
  6. 00390000   00001000   x.dll    .reloc     relocations            Imag   R         RWE


Найденная ОЕП лежит тоже в первых секциях и по структуре первые три секции похожи стоя на ОЕП.

Как теперь правильно сдампить только эти три секции (или чем можно сдампить только net (что за net дамер как пишет zeppe1in) ?



Ранг: 123.0 (ветеран), 10thx
Активность: 0.060
Статус: Участник

Создано: 18 августа 2011 12:59
· Личное сообщение · #5

Tolkin пишет:
что за net дамер как пишет zeppe1in

--> Link <--

-----
.[ rE! p0w4 ].




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

Создано: 18 августа 2011 16:24
· Личное сообщение · #6

Ultras
он дампит всю длл как есть, т.е никакой разницы что и с PETools дампить. Только потом все лишние секции чтоли обрезать и весь хедер руками коректить?.



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

Создано: 18 августа 2011 18:37 · Поправил: manco
· Личное сообщение · #7

Выложи длл посмотреть.
Вообще, если там действительно нет-длл, то вот в помощь Опять dotnet. После снятия дампа тебе понадобится SAE или reflector.



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

Создано: 18 августа 2011 19:08 · Поправил: Tolkin
· Личное сообщение · #8

--> Link <--
manco
приложил длл и дамп (petools) как я думаю на оеп.
На даный момент у меня задача не ковырять саму нет-длл, а снять первый конверт обычный чтоб осталась только чистая нет-длл (она походу в первых трех секциях). Но есть ли какие утили для фикса хедера после дампа или надо все руками восстанавливать? (или может я вообще не прав)



Ранг: 512.7 (!), 360thx
Активность: 0.270.03
Статус: Модератор

Создано: 18 августа 2011 19:45
· Личное сообщение · #9

Tolkin
попробуйте Universal Fixer, есть в ветке "Опять dotnet"




Ранг: 337.6 (мудрец), 224thx
Активность: 0.210.1
Статус: Участник
born to be evil

Создано: 18 августа 2011 20:20
· Личное сообщение · #10

sendersu
Фиксер за него найдет все значения хеадера?

-----
От многой мудрости много скорби, и умножающий знание умножает печаль





Ранг: 529.0 (!), 110thx
Активность: 0.290.04
Статус: Участник
5KRT

Создано: 18 августа 2011 20:51
· Личное сообщение · #11

Tolkin
Так-же были проблемы с фиксом дампа.
https://ssl.exelab.ru/f/action=vthread&forum=1&topic=16650&page=8#27
Но я так и не смог запустить эту шнягу

-----
Research For Food




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

Создано: 18 августа 2011 21:05
· Личное сообщение · #12

daFix
не, немного не та ситуация, я до net-части в длл только дошел, ее не трогал (да и не надо). На net-длл сверзу просто получается навешан обычный конверт без всякого net. Его я прошел и охота его отрезать.
Но пока пофиксить все руками чет не получается, запускаться не хочет . По сути то надо восстановить импорт (в net-длл это вроде только одна запись) , релоки для этого перехода пофиксить, и если отрезаются секции то адреса баз там кода-данных менять. вроде все, хотя итоговая длл остается как net - может еще какие ньюансы есть.



Ранг: 123.0 (ветеран), 10thx
Активность: 0.060
Статус: Участник

Создано: 18 августа 2011 22:20 · Поправил: Ultras
· Личное сообщение · #13

А почему OEP не поправлено на 42D0AE?
И где _CorDllMain (mscoree.dll) в импорте?

-----
.[ rE! p0w4 ].




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

Создано: 18 августа 2011 22:28 · Поправил: Tolkin
· Личное сообщение · #14

Ultras
это просто дамп, я там ничего не правил, просто для примера приложил по идее со всеми распакованными секциями.
а вот все остальное выходит надо добавлять вручную



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

Создано: 18 августа 2011 22:32
· Личное сообщение · #15

импорт похоже тут
Code:
  1. 0089D060  88 D0 02 00 00 00 00 00 00 00 00 00 9E D0 02 00  €Р.........ћР.
  2. 0089D070  00 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00  . ..............
  3. 0089D080  00 00 00 00 00 00 00 00 90 D0 02 00 00 00 00 00  ........ђР.....
  4. 0089D090  00 00 5F 43 6F 72 44 6C 6C 4D 61 69 6E 00 6D 73  .._CorDllMain.ms
  5. 0089D0A0  63 6F 72 65 65 2E 64 6C 6C 00 00 00 00 00 FF 25  coree.dll.....я%
  6. 0089D0B0  00 20 87 00                                      . ‡.
  7.  
  8. релоков нет, надо писать самому




Ранг: 123.0 (ветеран), 10thx
Активность: 0.060
Статус: Участник

Создано: 18 августа 2011 22:57 · Поправил: Ultras
· Личное сообщение · #16

--> Как раз твой случай (Win32 Wrapper) <--
С описанием недостатков (как обходится).

-----
.[ rE! p0w4 ].




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

Создано: 19 августа 2011 00:09 · Поправил: manco
· Личное сообщение · #17

del (бред)



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

Создано: 19 августа 2011 01:30
· Личное сообщение · #18

Ухх, всем спасибо за подсказки, получилось снять таки )
Подход верен, в цыферках напутал потом при фиксе хедера, но потом все разрешилось. )
ЗЫ. Тулсы по net рулят ))



Ранг: 123.0 (ветеран), 10thx
Активность: 0.060
Статус: Участник

Создано: 19 августа 2011 09:33
· Личное сообщение · #19

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

-----
.[ rE! p0w4 ].




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

Создано: 19 августа 2011 10:33
· Личное сообщение · #20

Ultras
при наличии ключа или эмулятора все тривиально оказалось
тормозимся на ОЕП
дампим net-дампером
в petools отрезаем все лишние секции, фиксим адреса оеп и релоков
фиксим дамп в Universal Fixer и получаем рабочую длл ))



Ранг: 123.0 (ветеран), 10thx
Активность: 0.060
Статус: Участник

Создано: 19 августа 2011 11:49
· Личное сообщение · #21

А OEP ищется как прыжок в _CorDllMain

-----
.[ rE! p0w4 ].




Ранг: 47.8 (посетитель), 16thx
Активность: 0.020.01
Статус: Участник

Создано: 21 августа 2011 13:25
· Личное сообщение · #22

Этот SRM.Net конверт - полная лажа.
Во-первых, снимается вообще без ключа.
Во-вторых, он снимается проще в 20 раз чем стандартный .Net конверт хаспа, где пакуются сами методы.
В-третьих, на выходе получается девственно чистая длл без признаков каких-либо вмешательств в код.
Но это конверт скорее всего одного вендора, а не самого аладдина, т.к. встречается только у него.
Вендор - Ascom.


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


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