Сейчас на форуме: zds, -Sanchez- (+9 невидимых)

 [email protected] —› Протекторы —› проблема с армой
<< . 1 . 2 . 3 .
Посл.ответ Сообщение

Ранг: 34.6 (посетитель)
Активность: 0.020
Статус: Участник

Создано: 04 января 2006 17:39
· Личное сообщение · #1

пытался сделать по туториалу Benina (PART 1: DUMP FILE Unpack Armadillo - Copymem Target: GetRight 5.0) дамп одной проги, но застрял на шаге Find Cripter Call!
там надо было прерваться по bp WriteProcessMemory и сделать F9, после чего посмотреть в списке Call Stack of main Thread и найти в этом окне декриптор.
у меня же в этом окне кроме самой функции kernel32.WriteProcessMemory нету других вызовов.
что делать в таком случае?



Ранг: 34.6 (посетитель)
Активность: 0.020
Статус: Участник

Создано: 17 января 2006 12:52 · Поправил: nobody
· Личное сообщение · #2

NIKOLA пишет:
При старте прога просит ввести пароль, это что, рег. данные или пароль админа?

да, это рег.инфа зашитая хеширующей функцией. соответственно узнать пароль не представляется возможным...благо что это уже фича самой проги а не армы! иначе вскрытие было бы бесполезно...
Я как пароль узнаю сразу тебе(и dragon'у) в личку скину!

NIKOLA пишет:
1. Improved CopyMem-II (Best protection)
2.Strategic Code Splising
3.Import Table Elimination
Наномитов вродебы нету.

КопиМем2 вроде бы трудностей пока не вызывал
а вот с пунктами 2 и 3 уже problems так как в туторах делать не получается! у них там всё очень весело: адреса какие-то не понятно откуда берут, бряки какие-то ставят! Как уже говорил Дракон - нет теории!

Smon пишет:
Кстати есть еще плагин MS-REM'а для снятия дампа армы с копимемом (дебагблокером). Единственное что, непонятно в чем польза

Польза в том, что имея восстановленую секцию кода можно сделать лоадер! По-крайней мере к этой проге он уже есть!


Smon пишет:
Просто как я не парился, всё равно приходится импорт править скриптом, который раскидывает адреса по порядку.... может всё же можно как то проще ?

Парни, я не пойму, вроде бы прога ArmInLine уже давно упростила жизнь реверсерам в плане собирания ИАТ в упорядоченную кучу?! Почему по этой теме так мало инфы??!!
К тому же она что-то делаеть с CodeSplicing'ом, но что??!!
Где Бит-Хак?! Он говорил что давно её использует!



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

Создано: 17 января 2006 13:12 · Поправил: Smon
· Личное сообщение · #3

nobody пишет:
а вот с пунктами 2 и 3 уже problems

Какие именно проблемы ?
Сначала разбираемся с импортом - находим и патчим джамп, получаем чистый импорт....потом правим адреса на упорядоченные, затем на оеп снимаем дамп и выделенный регион под кодесплитинг. Затем правим и прикручиваем импорт и регион в виде отдельной секции к файлу. Затем изменяем точку входа в файлу на пустое место и туда пишем что нить типа:
pushad
push 4
push 3000
push размер добавленной секции
push адрес по которому лежал сплитинг
call VirtualAllocA
mov edi,адрес секции
mov esi,адрес по которому лежал сплитинг
mov ecx, размер секции
rep movsb
popad
jmp oep
Сплитинг чаще всего лежит одним регионом где нить ближе к концу до системных библиотек, его адрес можно выяснить, запустив распаченный файл без прикрученного к нему дампа сплитинга - дамп упадет и покажет на доступе к какому адресу. Этот адрес лежит в регионе сплитинга.
ЗЫ: Можно конечно расчистить сплитинг от мусора и восстановить спертые байты, но это довольно муторно, для эстетов

-----
"Пусть видят, что мы не шутим. Стволы для понта, ножи для дела" Lock, Stock & Two Smoking Barrels





Ранг: 500.6 (!), 7thx
Активность: 0.260
Статус: Участник

Создано: 17 января 2006 14:03 · Поправил: NIKOLA
· Личное сообщение · #4

Smon пишет:
Сначала разбираемся с импортом


Лучше с коде сплисингом, а пото с иат.

Smon пишет:
затем на оеп снимаем дамп и выделенный регион под кодесплитинг


В этой проге, дамп можно снять и не доходя до оеп и не надо делать дамп региона с коде сплисингом,
лучше его перенаправидь в эксешник.




Ранг: 500.6 (!), 7thx
Активность: 0.260
Статус: Участник

Создано: 17 января 2006 14:04
· Личное сообщение · #5

nobody пишет:
Я как пароль узнаю сразу тебе(и dragon'у) в личку скину!


Не надо. Прога и без пароля запускается.



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

Создано: 17 января 2006 14:15 · Поправил: Smon
· Личное сообщение · #6

NIKOLA пишет:
Лучше с коде сплисингом, а пото с иат.


NIKOLA пишет:
надо делать дамп региона с коде сплисингом,
лучше его перенаправидь в эксешник.


ИМХО тут разницы большой нет... А я дал только общие рекомендации....

ЗЫ: Кстати я не разбирал, обязатно ли адрес выделять такой же как и арма выделяет для сплитинга или можно просто все адреса на сплитинг в дампе переправить на прилепленную секцию =) В любом случае искать и переправлять джампы в дампе файла и сплитинга геморней чем выделять память

-----
"Пусть видят, что мы не шутим. Стволы для понта, ножи для дела" Lock, Stock & Two Smoking Barrels





Ранг: 500.6 (!), 7thx
Активность: 0.260
Статус: Участник

Создано: 17 января 2006 15:53
· Личное сообщение · #7

nobody

Распакованный эксешник нужен или нет?
Хотелось бы ещё знать, какие ограничения в проге (которую ты дал мне, я так понимаю, это не весь дистрибутив).



Ранг: 34.6 (посетитель)
Активность: 0.020
Статус: Участник

Создано: 17 января 2006 18:55
· Личное сообщение · #8

NIKOLA
а ты уже распаковал??!! брат, расскажи как ты это сделал? у тебя есть ICQ? отпиши в личку плиззз
а так в проге ограничений никаких, только зашиврованная рег.инфа которую уже расшифровал , имея дамп кода, один отличный специалист!
в общем там хитро, я уже говорил что пароль на запуск проги лежит в виде хеша и мы решили, что по хеширующей функции сгенерим свой пароль и заменим его родным.
В общем после снятия армы следующим этапом будет подмена рег.инфы(имя владельца копии)

NIKOLA пишет:
Распакованный эксешник нужен или нет?

да, если можно
но так как это не весь дистрибутив(осталась ещё серверная и клиентская часть), остальное я очень хочу сделать сам! Поэтому, NIKOLA, если тебе не сложно объясни как ты ковырял арму
Наномиты кстати были?



Ранг: 37.7 (посетитель)
Активность: 0.020
Статус: Участник

Создано: 18 января 2006 05:43 · Поправил: sLime
· Личное сообщение · #9

nobody пишет:
к тому же это надо мне и ещё паре сотен людей

Я-то догадываюсь что это за прога, но откуда столько людей-то набралось?
Во-вторых если ты хочешь "помочь" этой паре сотен, то что? Ты для каждого будешь арму распаковывать? Раньше-то она была UPX-ом запакована и процесс можно было автоматизировать,
но с армой... Надорвешся ИМХО
P.S.: Если интересно то пиши в личку.



Ранг: 34.6 (посетитель)
Активность: 0.020
Статус: Участник

Создано: 18 января 2006 12:46
· Личное сообщение · #10

sLime пишет:
Я-то догадываюсь что это за прога, но откуда столько людей-то набралось?

как правило это "бедные" админы маленьких клубов по всему СНГ(Украина, Казахстан, Россия, даже Польша, Литва и Латвия!!)

sLime пишет:
Во-вторых если ты хочешь "помочь" этой паре сотен, то что? Ты для каждого будешь арму распаковывать?

Суть в том чтоб снять арму с одной копии и перебить рег.инфу! В таком виде прогу не опасно(для реального хозяина копии) давать кому-нибудь!
sLime пишет:
Раньше-то она была UPX-ом запакована и процесс можно было автоматизировать,

и был автоматизирован! Спасибо SWR'у! Он и сейчас не остается безучастным!!!
sLime пишет:
но с армой... Надорвешся ИМХО

только один дистриб приведет нас к победе!))
sLime пишет:
P.S.: Если интересно то пиши в личку.

уже пишу




Ранг: 332.0 (мудрец)
Активность: 0.180
Статус: Участник
•Pr0tEcToRs KiLLeR•

Создано: 18 января 2006 23:14
· Личное сообщение · #11

dragon пишет:
Значит буду копать в этом направлении и искать таблицу, это даст гарантию 100% восстановления.

ну 100% даёт и асм вставка в цикл в котором арма правит секцию кода (тоесть обращения к иат в ней), и кста в этот момент секция кода полностью расшифрованная лежит в памяти...

Smon пишет:
ИМХО тут разницы большой нет... А я дал только общие рекомендации....

не, в твоём способе приходится дописывать код в exe, а это уже лениво ;) тем более что в иат exe может не оказаться VirtualAlloc (легко исправить, но всё же...) и нет гарантии что адрес не будет занят чем-нить другим при загрузке на другой (да и иногда на своей) машине. Лучше всё-таки один раз перенаправить (подставить всего одну цифру) и арма сама всё построит как надо ;) А то что собирается сделать dragon - это сложнее и того и другого, но значительно лучше т.к. будет оригинал секции кода, без левых переходов и мусора.



Ранг: 34.6 (посетитель)
Активность: 0.020
Статус: Участник

Создано: 19 января 2006 22:57
· Личное сообщение · #12

NIKOLA, а почему распакованная прога весит меньше чем с армой?
странно, те дампы которые получал я, весят в два раза больше чем с армой!




Ранг: 500.6 (!), 7thx
Активность: 0.260
Статус: Участник

Создано: 19 января 2006 23:58
· Личное сообщение · #13

nobody пишет:
а почему распакованная прога весит меньше чем с армой?


Я лишние и не нужные секции обрезал. Запакуй дамп Аспаком, дамп будет весить 800 К.б с копейками.



Ранг: 34.6 (посетитель)
Активность: 0.020
Статус: Участник

Создано: 20 января 2006 01:15 · Поправил: nobody
· Личное сообщение · #14

NIKOLA пишет:
Я лишние и не нужные секции обрезал.

не знал что так можно
NIKOLA пишет:
Запакуй дамп Аспаком, дамп будет весить 800 К.б с копейками.

Хорошо! так и сделаю!

Mario555 пишет:
Лучше всё-таки один раз перенаправить (подставить всего одну цифру) и арма сама всё построит как надо ;)

не понял что ты имеешь ввиду?

кстати, тема ещё не закрыта, т.к. все ждут метод Дракона по снятию армы!
к тому же я для себя тему ещё не раскрыл и наверно будут вопросы по ходу работы...



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

Создано: 20 января 2006 11:04
· Личное сообщение · #15

nobody
Я так понимаю, он имеет в виду - перенаправление сплитинга в файл при выделении памяти под него =)
т.е. ищем пустое место в файле где нить под конец, и при выделении памяти под сплитинг меняем адрес на место в нашем файлу

-----
"Пусть видят, что мы не шутим. Стволы для понта, ножи для дела" Lock, Stock & Two Smoking Barrels




Ранг: 34.6 (посетитель)
Активность: 0.020
Статус: Участник

Создано: 22 января 2006 13:53
· Личное сообщение · #16

В туторе PIMOne используется скрипт arm_getmodule
может кто знает где он лежит?



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

Создано: 01 марта 2006 12:39
· Личное сообщение · #17

Вот тут:
hXXp://www.fileh.com/whynotbar/arm_getmodule.txt


<< . 1 . 2 . 3 .
 [email protected] —› Протекторы —› проблема с армой
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


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