eXeLab
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
выпущен 2 августа!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

Русский / Russian English / Английский

Сейчас на форуме:
 · Начало · Статистика · Регистрация · Поиск · ПРАВИЛА ФОРУМА · Язык · RSS · SVN ·

 eXeL@B —› Вопросы новичков —› CrackMe .Net
Посл.ответ Сообщение

Ранг: 7.5 (гость)
Статус: Участник

Создано: 25 сентября 2017 02:05 · Поправил: skew New!
Цитата · Личное сообщение · #1

Добрый день. Возникла необходимость подобрать серийный номер, например к почте test@mail.ru. Программа написана на .net C#. Деобфусцировал ее частично, стало куда понятней названия переменных, но каким-то образом в ней остались нативные функции от C++, как декомпиляторы их получают я понять не могу. Попытка переписать весь функционал не увенчалась успехом, так как эти структуры вроде как на C#, а вроде как и на C++ восстановить не могу.
Все основное происходит в функции Check и событие button2_OnClick. Там создается структура в типе unsafe и с ней происходят манипуляции.
Буду благодарен если поможете разобраться. Спасибо

{ Атач доступен только для участников форума } - EasyCrackme-cleaned.exe

Ранг: 307.6 (мудрец)
Статус: Участник
ILSpector Team

Создано: 25 сентября 2017 11:28 · Поправил: Medsft New!
Цитата · Личное сообщение · #2

skew пишет:
Программа написана на .net C#
программа НЕ написана на C#. Если Вы с помощью dnSpy, или спектора меняете визуализацию это не значит что это язык на котором писал разработчик. 100% верно будет лишь то утверждение что это manadged код.

P.S. Я например считаю что разработчик написал ее на VC++.NET) и поверьте у меня больше шансов оказаться правым (хотябы глядя на структуры)))).

Ранг: 7.5 (гость)
Статус: Участник

Создано: 25 сентября 2017 17:28 New!
Цитата · Личное сообщение · #3

Medsft пишет:
и поверьте у меня больше шансов оказаться правым

Я даже спорить с вами не стану. У меня опыта в реверсинге не так много, поэтому и обратился за помощью

Ранг: 307.6 (мудрец)
Статус: Участник
ILSpector Team

Создано: 25 сентября 2017 17:43 New!
Цитата · Личное сообщение · #4

skew пишет:
Я даже ...
и это хорошо.
Представьте себе что структура которая для Вас непонятна это просто байт аррей и указатель в памяти на нее.
В режиме отладчика (dnSpy) открываете "Locals" находите struct и затем отображение ее памяти и увидите что одна это (ваша почта) другая (введенный пароль) а дальше уже станет понятно по названиям методов ))) в третьей скорее всего ключ (в открытом виде).
Как вариант поправить jz ->jzn (один байт) в методе button2_OnClick и получить "Succesful" если Вас это устроит

Ранг: 7.5 (гость)
Статус: Участник

Создано: 25 сентября 2017 23:26 · Поправил: skew New!
Цитата · Личное сообщение · #5

Нужно именно пароль достать, просто Success не устроит. Это для одного этапа тестирования задание и нужно отправить почту и сгенерированный пароль, который будет подходить

Добавлено спустя 3 часа 18 минут
Убил 3 часа, в результате понял,что под почту test@mail.ru генерируется байт-код cb69cd596f305fa5f24a998a817a160a
Вроде как до 32 байт округляет длину пароля.

По мере чекания генерируется какой-то 32-байтовый кэш
13.96.250.167.84.229.41.10.209.138.95.6.174.226.177.13.1.5.223.231.164.105.58.173.166.6.182.125.2.209.220.13
Для чего он я таки не понял.

Затем все чистится и сгенерированный в программе "валидный кэш" пытается сделать проверку не с кэшем, а с паролем, который я вводил. А генерирует он вот такой вот кэш
f6aa967ecbc9c7a4ce212d471c8c6859

В общем я совсем запутался ) Помогите чуточку, пожалуйста
 eXeL@B —› Вопросы новичков —› CrackMe .Net

Оригинальный DVD-ROM: eXeL@B DVD !

Вы находитесь на форуме сайта EXELAB.RU
Проект ReactOS