eXeL@B —› Вопросы новичков —› Странный крекми |
Посл.ответ | Сообщение |
|
Создано: 15 апреля 2018 21:20 · Поправил: RoKZaR · Личное сообщение · #1 Добрый вечер дамы и господа)) Возникла трабла с крекми. Сразу оговорюсь делал по такому способу много раз. Крекми создает дочерний процесс который запускается через ResumeThread. Вроде все просто но есть одно но: когда я дохожу до resume thread создается два дочерних процесса. И причем ни один не дампится ни через process explorer, ни через pe tools, ни через дичпетчер задач. Как делал я: 1. запускаем крекми в отлдачике (в моем случае это x64dbg) 2. ставим бряк на Resume thread 3. тапаем F9. Тормозимся на вызове ResumeThread. 4. доходим трассировкой до вызова NtResumeThread 5. идем в process explorer и пытаемся дампить. Как то так. Может я что-то неправильно делаю... Крекми прилагается. http://rgho.st/8jRpw6YVq |
|
Создано: 15 апреля 2018 21:23 · Поправил: dosprog · Личное сообщение · #2 |
|
Создано: 15 апреля 2018 21:32 · Личное сообщение · #3 |
|
Создано: 15 апреля 2018 21:36 · Поправил: mysterio · Личное сообщение · #4 Поправил Да ты везучий - "Доступ к файлу запрещён". ... мог бы избавить от мучений с заливкой и просто дать ----- Don_t hate the cracker - hate the code. |
|
Создано: 15 апреля 2018 21:38 · Личное сообщение · #5 |
|
Создано: 15 апреля 2018 22:31 · Личное сообщение · #6 RoKZaR Всё правильно, так дампиться оно не будет и не должно. Ставим волшебные байтики EBFE на месте, где должен начать своё выполнение новый поток, потом делаем ResumeThread, потом аттачимся и байтики возвращаем. Ну или из ядра дампить через KeStackAttachProcess. ----- Stuck to the plan, always think that we would stand up, never ran. |
|
Создано: 15 апреля 2018 23:21 · Личное сообщение · #7 Что то я не догоняю. Где взять начало треда? Я сравнил вкладку потоки до и после там ничего не изменилось. Oep дочернего процесса я не знаю. Всегда делал по этому методу https://www.youtube.com/watch?v=2AtB9g5zjsg . Не реклама!!! Но в это раз что то сложно. И еще за что отвечает второй дочерний процесс?? |
|
Создано: 15 апреля 2018 23:41 · Личное сообщение · #8 ARCHANGEL > Ну или из ядра дампить через KeStackAttachProcess. Какой есчо аттачь и км апи; это крякми, понимаете. Обучалка простая. В том и смысл крякми что бы решить его самостоятельно, да и без использования спец средств, по типу ядерных отладчиков. Иначе пропадает его смысл. Добавлено спустя 10 минут RoKZaR > Что то я не догоняю. Где взять начало треда? Найдите это сами, описание механизмов будет просто глупым и бесполезным. Отладчик позволяет мониторить регионы памяти, сделайте это для системной области(ntdll) и вы найдёте стартап поточные процедуры. ----- vx |
|
Создано: 16 апреля 2018 00:01 · Поправил: RoKZaR · Личное сообщение · #9 Такс) Похоже мы о разных вещах глаголим. Распишу еще раз. Дохожу до resumethread К этому времени в processexplorer два дочерних процесса В дебагере 3 потока. Они как с начала были так в таком состоянии и остаются. Вот я и не понимаю что делать дальше. От ядерных отладчиков я пока очень далек. Не серчайте я новичок и пока сложно для меня это. |
|
Создано: 16 апреля 2018 08:49 · Личное сообщение · #10 |
|
Создано: 16 апреля 2018 09:37 · Личное сообщение · #11 |
|
Создано: 16 апреля 2018 11:00 · Поправил: mysterio · Личное сообщение · #12 То о чем говорил ARCHANGEL на видео с 1:30. Oep дочернего процесса я не знаю. Чтобы узнать oep нужно его сдампить. Запуск с правами админа - таргета и дампера. Из за таких как вы .... Открываем ----- Don_t hate the cracker - hate the code. | Сообщение посчитали полезным: Rio |
|
Создано: 16 апреля 2018 14:58 · Личное сообщение · #13 mysterio Из за таких как вы и появляются заблуждения, дамп нужен для файловой распаковки, для отладки это не нужно. Вы своими дефектными понятиями вводите в заблуждение новичков. RoKZaR Если процесс создан в саспенд состоянии, то это обычный криптовый загрузчик. Просто прицепить отладчик не получится - при этом создаётся отладочный поток, что нарушит общую логику, будет либо взаимоблокировка, либо оно отвалится. Зачем вам вообще это трогать ? Какой то не логичный ход решения. ----- vx |
|
Создано: 16 апреля 2018 15:46 · Личное сообщение · #14 |
|
Создано: 16 апреля 2018 17:07 · Личное сообщение · #15 Распаковка никогда не была моей сильной стороной, но почитав топик я ужаснулся... такого новичку насоветовали У меня алгоритм был такой: В ольке опцию брякаться на System Breakpoint, бряк на ZwContinue, чуть потрейсил, вышел на такое (похоже на выход на ОЕП): Code:
Импорт по*уйкан, выполняется через "классичечкую" прослойку с функции декрипта имени Api-функции, GetProcAddress и JMP api_addr. Code:
|
|
Создано: 16 апреля 2018 18:29 · Поправил: mysterio · Личное сообщение · #16 dsrabot1 Тоже не гуру анпака, но ..... Что "такого" посоветовал ARCHANGEL (полностью с ним согласен) или я ? Мой совет касался "Крекми создает дочерний процесс который запускается через ResumeThread" - чтобы узнать OEP этого дочернего процесса его нужно сдампить предварительно запустив в дебагере (кто конечно по "круче" может OEP прямо в памяти посмотреть, или распаковать не запуская). У меня этот анпакми не запускается. поделись логичными рассуждениями все три слова по отоношению к инде взаимоисключающие. ----- Don_t hate the cracker - hate the code. |
|
Создано: 16 апреля 2018 22:13 · Личное сообщение · #17 Вообщем у меня получилось слить полностью рабочий дамп))) dsrabot1 пишет: Распаковка никогда не была моей сильной стороной К oep пришел правильно но импорт тут не нужен потому что в дампе он целый. Это обычное получение адресов и их выполнение чтобы создать и выполнить дочерний процесс (поправьте если не так) ARCHANGEL пишет: Ставим волшебные байтики EBFE Собственно их не надо ставить. Незачем. А вот про аттач к процессу спасибо) Очень помогло. Просто до этого приаттачиться не мог потом разобрался Спасибо mysterio,ARCHANGEL ну и всем остальным! Оказалось все не так сложно! Сейчас распишу как сделал. Пусть это останется в архиве пресвященного exelab 1)Открываем закриптованный файл в отладчике и нас ждет стандартное начало aspra. Видимо просто для путаницы сделали. Code:
2)Выходим из этой процедуры и оказываемся здесь Code:
3)Проходим pushad и ставим бряк на регистр ESP. Пару раз нажимаем f9 пока не оказываемся здесь Code:
4)А в eax у нас лежит адрес oep основного процесса. Code:
5) Ставим бряк на ResumeThread и отпускаем программу не забыв снять бряк с ESP. Оказываемся в вызове процедуры ResumeThread. Доходим до call NtResumeThread но не выполняем ее Code:
6)Открываем второй отладчик и приатачиваемся ко второму дочернему процессу и нажимаем f9 7)Ставим бряк на секцию по адресу 400000 на доступ и в первом отладчике выполняем call NtResumeThread 8)Брякнемся на настоящей oep по адресу 4271b0 Code:
9)Делаем дамп pe tools (Сцилка почему то отказалась делать мне дамп) и восстанавливаем импорт (импорт целый и тут сцилка справилась нормально) 10) Profit! У нас есть рабочий дамп со снятым криптором) p.s. Ушел весь вечер чтобы понять что я делал неправильно. p.p.s. Подвел process explorer. Да и не нужен он вовсе. Еще раз всем спасибо! Если где то был неточен или неправ поправьте. |
|
Создано: 16 апреля 2018 22:49 · Личное сообщение · #18 |
|
Создано: 16 апреля 2018 23:16 · Личное сообщение · #19 |
|
Создано: 16 апреля 2018 23:41 · Личное сообщение · #20 |
eXeL@B —› Вопросы новичков —› Странный крекми |
Эта тема закрыта. Ответы больше не принимаются. |