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

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

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

Создано: 26 мая 2011 09:21
· Личное сообщение · #1

Доброго времени !!!

Долго колупаю одну прожку - смысл в следующем:
программа в зависимости от конфигурации компьютера и ОС формирует набор цифр (5 строк по 5 символов),
которые отправляются авторам - и выдается временный ключег.

У меня на руках валидный ключ для другого компьютера:

- вопрос - каким способом можно заменить параметры компьютера и сменить Hwid?
- мануалы еще пока особо не искал - если дадите ссылки буду рад

- в WinHex видны строки: %hdd_info%, %bios_info%, %mb_info%, %cpu_info%, %osversion_info%, %distr_name% - это переменные задуманные авторами или можно подглядеть это в отладчике?

Я новичек просьба сильно не пинать...



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

Создано: 26 мая 2011 09:45
· Личное сообщение · #2

Chicago1981 пишет:
каким способом можно заменить параметры компьютера и сменить Hwid?

Есть несколько способов и один из них инлайн патч...Chicago1981 пишет:
мануалы еще пока особо не искал - если дадите ссылки буду рад

Это ты зря, для начала нужно было хотя бы погуглить с ключевыми словами "сменить Hwid" и т.п.
А если серьезно, то мануалов на эту тему полно везде, было бы желание искать.
Chicago1981 пишет:
Долго колупаю одну прожку

Определи какой протектор на твоей прожке, от этого и отталкивайся в поиске мануала, также используй слова для поиска "change Hwid", "hwid changer", "inline patch"... Заглянь на tuts4you обязательно.

-----
We do what we want because we can.




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

Создано: 26 мая 2011 09:53 · Поправил: Chicago1981
· Личное сообщение · #3

2 verdizela

По поводу протектора - программа была защищена ASprotect-ом - распаковал через личку уважаемый спец по этому делу...

Вопрос в том - можно ли и\или как брякнуться на определение Hwid

________________________________
Если не сложно можете подсказать как поставить бряк на строку - понимаю что вопрос нубский - но вроде отписался в тему для начинающих



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

Создано: 26 мая 2011 10:05
· Личное сообщение · #4

Chicago1981 пишет:
в WinHex видны строки: %hdd_info%, %bios_info%, %mb_info%, %cpu_info%, %osversion_info%, %distr_name%

ну вот и поставь в отладчике на эти строке бряк, желательно Хардварный, на доступ

-----
Наша работа во тьме, Мы делаем, что умеем. Мы отдаем, что имеем, Наша работа во тьме....


| Сообщение посчитали полезным: Chicago1981

Ранг: 222.2 (наставник), 115thx
Активность: 0.140.01
Статус: Участник

Создано: 26 мая 2011 10:42
· Личное сообщение · #5

verdizela пишет:
Есть несколько способов и один из них инлайн патч...

Вообще-то у большинства понятие "инлайн патч" ассоциируется с патчем запакованных программ.
verdizela пишет:
А если серьезно, то мануалов на эту тему полно везде, было бы желание искать.

покажите хоть один вменяемый мануал или тьютор. Нормальных туторов по хвидам до сих пор в паблике почему-то не видел(проморгал что-то?).
verdizela пишет:
Заглянь на tuts4you обязательно.

уж лучше в MSDN и по программерским форумам автору бы позаглядывать, поскольку всего тааак много...

VodoleY пишет:
ну вот и поставь в отладчике на эти строке бряк, желательно Хардварный, на доступ

не хороший совет даёте.

Chicago1981, вам прямая дорога на просмотр и изучение WinAPI функций через которые можно получить хоть сколько-нибудь приблизительные параметры аппаратной части ПК. Сначала нужно ознакомиться с тем как можно получить хоть что-то. Пример: часто в защитах программ можно увидеть что получают серийный номер жёсткого диска через апи функцию GetVolumeInformation. Можете попробовать поставить брейкпоинт на функцию GetVolumeInformationW и посмотреть получилось ли брякнуться или нет. Если да - изучите исходник из вложения (hwid.cpp) и подмените серийный номер жёсткого диска.
Скорее всего что информацию о биосе и материнской плате программа получает из каки-то параметров реестра. Возможно с %cpu_info% вам прийдётся помучаться, но ничего сложного нет: нужно будет хорошенько поискать в дизасме вызов машинной инструкции cpuid, либо альтернативные варианты получения информации о процессоре(опять же - смотри исходник из вложения)
Нечто похожее на %osversion_info% в исходнике описано в функции "GetProductInfo". Что такое %distr_name% не допёр.

c060_25.05.2011_EXELAB.rU.tgz - hwid.cpp

-----
все багрепорты - в личные сообщения


| Сообщение посчитали полезным: NikolayD

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

Создано: 26 мая 2011 11:09
· Личное сообщение · #6

HandMill

Начинаю по немного догонять - ключики реестра прекрасно видны - это касается:

- Cpu - ..\CentralProcessor\x
- берутся какие то ключи с HotFix - походу номер service Pack, разрядность, серверность и т.п.

По поводу %distr_name% - используется авторами при получение ключега по мылу

Бряк сработал на GetVolumeInformationA



Ранг: 222.2 (наставник), 115thx
Активность: 0.140.01
Статус: Участник

Создано: 26 мая 2011 11:19
· Личное сообщение · #7

Chicago1981 пишет:
%distr_name%

допустим это мажорный номер версии исследуемой программы, тогда такой параметр будет изменятся крайне редко(это можно подсмотреть запустив программу на 2х разных конфигурациях ПК: допустим на реальной машине и в виртуальной).
Если заглянете в код функции GetVolumeInformationA то увидите там чуток ниже вызов GetVolumeInformationW. И так со всеми A/W функциями. Лучше уж бряки ставить на wide-char API, поскольку они "на уровень ниже" чем ansi-char.

-----
все багрепорты - в личные сообщения




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

Создано: 26 мая 2011 12:06 · Поправил: Chicago1981
· Личное сообщение · #8

HandMill

Да действительно - по поводу A\W Вы были правы - сработал бряк на GetVolumeInformationW.
Сработал в библе kernel32 - и тут я прилип...

вот что видать в отладчике:

001278C8 7C821C8E /CALL to GetVolumeInformationW from kernel32.7C821C89
001278CC 7FFDFC00 |RootPathName = "D:"
001278D0 00000000 |VolumeNameBuffer = NULL
001278D4 00000000 |MaxVolumeNameSize = 0
001278D8 00000000 |pVolumeSerialNumber = NULL
001278DC 00127994 |pMaxFilenameLength = 00127994
001278E0 00127990 |pFileSystemFlags = 00127990
001278E4 00000000 |pFileSystemNameBuffer = NULL
001278E8 00000000 \pFileSystemNameSize = NULL

вызов идет из кернел32 - че делать дальше ХЗ...



Ранг: 222.2 (наставник), 115thx
Активность: 0.140.01
Статус: Участник

Создано: 26 мая 2011 12:19
· Личное сообщение · #9

Chicago1981, поскольку pVolumeSerialNumber = NULL тогда такой вызов стоит попробовать пропустить скорее всего(возможно какая-то апи дёрнула эту и поэтому у вас сработал бряк). Такой вызов похоже что не принимает участия в формировании HWiD'а(разве что автор программы извращенец и вяжется к флагам файловой системы, но этот вариант я бы отбросил ибо он бредовый).
За подробностями по поводу апи приучи себя ходить на MSDN

-----
все багрепорты - в личные сообщения


| Сообщение посчитали полезным: Chicago1981

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

Создано: 26 мая 2011 12:29 · Поправил: Chicago1981
· Личное сообщение · #10

Спасибо за подсказки, что-то я разогнался - привычка такой у меня не хороший, завтра пятница - посижу почитаю-поэкспериментирую.

ЗЫ по поводу листинга - просто хотел показать место использования %distr_name% и %user_request%
Больше нигде я его в проге не обнаружил...




Ранг: 681.5 (! !), 405thx
Активность: 0.420.21
Статус: Участник
ALIEN Hack Team

Создано: 26 мая 2011 13:42
· Личное сообщение · #11

Chicago1981

Вопрос абсолютно без всякой иронии, чувак, ты издеваешься? Почему дамп стека такой маленький? Надо ещё Мегабайт 10 минимум!!!

-----
Stuck to the plan, always think that we would stand up, never ran.


| Сообщение посчитали полезным: HandMill, Chicago1981

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

Создано: 26 мая 2011 17:53 · Поправил: Chicago1981
· Личное сообщение · #12

В общем программа "Интерактивный электронный учебник", в голом виде валялся пароль к архиву 7z, поставил бряк на этот пароль - и недалеко нашел пароль для остальных архивов

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


 eXeL@B —› Вопросы новичков —› Помощь Hwid
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати