![]() |
|
|
![]()
|
|
| Андрей |
|
|||
|
Unregistered |
Народ я человек не очень искушенный в ASM хочу узнать как мне прицепиться к железу компьютера заказчика. Я бы хотел узнать способ считывания информации между секторов винчестера, микрокода процессора, чего-нибудь монитора и MAC сетевой карты... И вообще пишите соображения по поводу защиты...
Всем спасибо ... [email protected][/EMAIL] |
|||
|
||||
| Chingachguk |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1232 Регистрация: 25.3.2002 Где: Москва Репутация: нет Всего: 18 |
Например, как читать серийный код винчестера(на асм) под '98 я писал в разделе Операционные системы ->Windows->Серийный номер винчестера. Есть вариант через динамический vxd (для 98). Скажем, тип процессора и еще кое-что можно узнать через команду cpuid.
Но надо заметить, что никаких особо премуществ именно применение ассемблера для получения таких вещей не дает: наверняка уже есть библиотеки для языков высокого уровня, позволяющие делать то же самое. Например, я почти уверен, что Vit давно выложил где-нибудь тут примеры на Дельфи. Т.е. все, чем будет отличатся программа - это оберточным кодом. В одном случае (например) это будет вызов апи(нескольких апи), а на ассемблере - прямое обращение к портам и тп. Анализ взломщика в первом случае осложняется тяжестью кода компиллятора языка высокого уровня (Дельфи/Си/...) и поиском среди многократных вызовов разных подпрограмм нужного места, в то время как в другом случае кусок на ассемблере будет висеть большим очевидным пятном (тем более, если он расположен в драйвере). Ведь если бухгалтерская программа (скажем, 1C) зачем-то загружает vxd(элементарно ловиться бряком на CreateFile), и при этом на экран выдается сообщение: "Вставте электронный ключ в порт такой-то", то ежу ясно, где будет находиться код работы с ним ... -------------------- I don't like the drugs (but the drugs like me). M.Manson. |
|||
|
||||
| FdX |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 161 Регистрация: 13.8.2002 Репутация: нет Всего: нет |
А ето вообще надо?
Самое простое: mov al,79h out 70h,al mov al,1 ;че-нибудь out 71h,al mov al,79h out 70h,al in al, 71h cmp al,1 jne not_installed Ну типа того. Последнии байты CMOS не защищаюцца контрольной суммой (обычно). На всякий случай проверь. Но вот это jne очень легко поменять на je, nop nop или ещще чето такое. Обычно в метке not_installed бует выводится MessageBox. Вот и плохо бует твоей проге. Код этот лучше расшифровывать в динамически выделенную обл. памяти и ещще почаще проверять ее CRC. Но это тоже не поможет. Ну повозится крякер полчаса и все. Если прога будет хорощая, обязательно сломают ЛЮБУЮ сис-му защиты. Можно писать в последние байты MBR, под 9х - напрямую. Было тут про запись в Flash BIOS, но это уже слишком. Чел, которому ты етто продашь, могет апгрейднуть комп, после чего потребует назад свои деньги. Лучше изучай больше способы защиты от отладчиков. На www.wasm.ru вроде есть про енто. ЗЫ. когда напишешь, дай поглядеть. Интересно, сколько времени у меня уйдет на твою сис-му защиты |
|||
|
||||
![]()
|
| Правила форума "Asm: Общие вопросы" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MAKCim. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Asm: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |