Obsidium fatality. Обходим триальную защиту популярного протектора - «Новости» » Самоучитель CSS
Меню
Наши новости
Учебник CSS

Невозможно отучить людей изучать самые ненужные предметы.

Введение в CSS
Преимущества стилей
Добавления стилей
Типы носителей
Базовый синтаксис
Значения стилевых свойств
Селекторы тегов
Классы
CSS3

Надо знать обо всем понемножку, но все о немногом.

Идентификаторы
Контекстные селекторы
Соседние селекторы
Дочерние селекторы
Селекторы атрибутов
Универсальный селектор
Псевдоклассы
Псевдоэлементы

Кто умеет, тот делает. Кто не умеет, тот учит. Кто не умеет учить - становится деканом. (Т. Мартин)

Группирование
Наследование
Каскадирование
Валидация
Идентификаторы и классы
Написание эффективного кода

Самоучитель CSS

Вёрстка
Изображения
Текст
Цвет
Линии и рамки
Углы
Списки
Ссылки
Дизайны сайтов
Формы
Таблицы
CSS3
HTML5

Новости

Блог для вебмастеров
Новости мира Интернет
Сайтостроение
Ремонт и советы
Все новости

Справочник CSS

Справочник от А до Я
HTML, CSS, JavaScript

Афоризмы

Афоризмы о учёбе
Статьи об афоризмах
Все Афоризмы

Видео Уроки


Наш опрос



Наши новости

       
9-10-2021, 00:02
Obsidium fatality. Обходим триальную защиту популярного протектора - «Новости»
Рейтинг:
Категория: Новости

Нем­ного неоче­вид­ным кажет­ся пред­назна­чение четырех полей вво­да в левой ниж­ней час­ти окна под общим заголов­ком User-defined trial counters. На самом деле, как я уже говорил, для тех при­веред­ливых поль­зовате­лей, которым мало стан­дар­тной защиты по вре­мени или количес­тву запус­ков, Obsidium пред­лага­ет набор сво­их фун­кций для интегра­ции в прог­рамму. В качес­тве одно­го из вари­антов раз­работ­чик может уста­нав­ливать собс­твен­ные три­аль­ные счет­чики, кон­тро­лиру­емые пря­мо из кода во вре­мя выпол­нения прог­раммы. Это четыре целочис­ленные 16-бит­ные перемен­ные, сох­раня­емые в сис­теме до сле­дующе­го запус­ка прог­раммы, зна­чения которых мож­но читать фун­кци­ей int obsGetTrialCounter(DWORD dwCtrIdx) и дек­ремен­тировать фун­кци­ей bool obsDecTrialCounter(DWORD dwCtrIdx, short wValue). Эту фун­кцию мож­но исполь­зовать, нап­ример, если мы хотим, что­бы прог­рамма пос­ле десяти сох­ранений бло­киро­вала фун­кцию Save и про­дол­жала даль­ше работать как ни в чем не бывало, без даль­нейшей воз­можнос­ти сох­ранить файл на диск. Этот инс­тру­мен­тарий пре­дос­тавля­ет поль­зовате­лям более гиб­кие воз­можнос­ти управле­ния три­алом.


Obsidium fatality. Обходим триальную защиту популярного протектора - «Новости»
За­щита уста­нов­лена!

Пос­ле уста­нов­ки нуж­ных парамет­ров защиты жмем вто­рую сни­зу кноп­ку в левой панели с над­писью PROTECT, затем во вклад­ке Executables выбира­ем файл защища­емой прог­раммы и, наконец, нажима­ем кноп­ку Protect All. Теперь наше при­ложе­ние под защитой демовер­сии Obsidium, о чем нам будет напоми­нать раз­дра­жающее окош­ко при каж­дом ее запус­ке.


Пот­рениро­вав­шись на кош­ках, перей­дем к взло­му при­ложе­ния. Итак, у нас име­ется три­аль­ная вер­сия прог­раммы, которую DIE иден­тифици­рует сле­дующим обра­зом:


Obsidium v1.5.4.x - [v1.6.x.x - 1.x.x ] - Obsidium Software - www.obsidium.de *ACM ,Overlay :FE4711...Nothing detected

С пер­вого взгля­да оче­вид­но, что заг­ружать такое в дизас­сем­блер совер­шенно бес­полез­но: код силь­но сжат или зашиф­рован (на самом деле и то и дру­гое). Сек­ции пус­тые, из импорта име­ются в наличии все­го четыре фун­кции. Поп­робу­ем сра­зу заг­рузить ее в отладчик.


Нем­ного неоче­вид­ным кажет­ся пред­назна­чение четырех полей вво­да в левой ниж­ней час­ти окна под общим заголов­ком User-defined trial counters. На самом деле, как я уже говорил, для тех при­веред­ливых поль­зовате­лей, которым мало стан­дар­тной защиты по вре­мени или количес­тву запус­ков, Obsidium пред­лага­ет набор сво­их фун­кций для интегра­ции в прог­рамму. В качес­тве одно­го из вари­антов раз­работ­чик может уста­нав­ливать собс­твен­ные три­аль­ные счет­чики, кон­тро­лиру­емые пря­мо из кода во вре­мя выпол­нения прог­раммы. Это четыре целочис­ленные 16-бит­ные перемен­ные, сох­раня­емые в сис­теме до сле­дующе­го запус­ка прог­раммы, зна­чения которых мож­но читать фун­кци­ей int obsGetTrialCounter(DWORD dwCtrIdx) и дек­ремен­тировать фун­кци­ей bool obsDecTrialCounter(DWORD dwCtrIdx, short wValue). Эту фун­кцию мож­но исполь­зовать, нап­ример, если мы хотим, что­бы прог­рамма пос­ле десяти сох­ранений бло­киро­вала фун­кцию Save и про­дол­жала даль­ше работать как ни в чем не бывало, без даль­нейшей воз­можнос­ти сох­ранить файл на диск. Этот инс­тру­мен­тарий пре­дос­тавля­ет поль­зовате­лям более гиб­кие воз­можнос­ти управле­ния три­алом. За­щита уста­нов­лена!Пос­ле уста­нов­ки нуж­ных парамет­ров защиты жмем вто­рую сни­зу кноп­ку в левой панели с над­писью PROTECT, затем во вклад­ке Executables выбира­ем файл защища­емой прог­раммы и, наконец, нажима­ем кноп­ку Protect All. Теперь наше при­ложе­ние под защитой демовер­сии Obsidium, о чем нам будет напоми­нать раз­дра­жающее окош­ко при каж­дом ее запус­ке. Пот­рениро­вав­шись на кош­ках, перей­дем к взло­му при­ложе­ния. Итак, у нас име­ется три­аль­ная вер­сия прог­раммы, которую DIE иден­тифици­рует сле­дующим обра­зом: Obsidium v1. 5. 4. x - _

Теги: CSS

Просмотров: 523
Комментариев: 0:   9-10-2021, 00:02
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь. Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

 
Еще новости по теме:



Другие новости по теме: