Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Блоги > Автокомплит

Как что-то сделать, при этом ничего не делая
Оценить эту запись

Мания чисел

Запись от gloomyBrain размещена 08.12.2010 в 22:47
Обновил(-а) gloomyBrain 09.12.2010 в 02:28

Вообще я опечатался. Хотел сначала "магия" написать. Но вроде и так ничего =)
Сразу оговорюсь, что ничего сверхъестественного ниже не написано.

Суть и предыстория, коротко и по пунктам:
- мы делали игрушку
- мы постарались защитить ее от взлома
- мы даже писали нечитаемый код (да-да, пусть враги боятся =))
...
- пришел Вася и все сломал через ArtMoney или что-то подобное.

Просто подменил значения в памяти и стал молодцом. Ну, Вы же знаете как это работает - запускаем программку, выбираем процесс (в случае с Firefox это будет PluginContainer), и сканируем память, выделенную этому процессу, на предмет интересующего числа (ну или строки, что, вообще-то, экзотика). Далее несколько раз фильтруем и находим нужный нам адрес. Далее просто подменяем значение по этому адресу - и вот мы чемпионы!

По сути дела, защититься от подмены значений в адресе памяти можно только одним способом - это не хранить это значение в памяти.

Epic fail, скажете Вы? - а вот и нет.
Первое же что пришло в голову - это хранить 2 левых значения, сумма или разность которых в итоге даст нам значение, которое мы хотим спрятать. Таким образом на свет появились 3 класса:
- HiddenInt
- HiddenUint
- HiddenNumber

Можно создать новый объект-хранилище (например HiddenInt) и по необходимости задавать/получать значение через геттер-сеттер. Само значение в памяти не хранится. Смысл работы, я думаю, всем понятен, если интересует реализация - милости прошу заглянуть во вложения.

ЗЫ
Туда же закинул битовую маску - ну просто так, чтобы не скучно было. Мало ли Вам захочется хранить 32 булевых переменных в одном числе =)
Вложения
Тип файла: zip numbers.zip (2.9 Кб, 236 просмотров)
Размещено в flash.utils
Комментарии 55 Отправить другу ссылку на эту запись
Всего комментариев 55

Комментарии

Старый 10.12.2010 23:46 Zebestov вне форума
Zebestov
 
Аватар для Zebestov
ну это если запрос не защищен каким-то ключом. иначе только ломать.
Старый 11.12.2010 01:33 Котяра вне форума
Котяра
 
Аватар для Котяра
Ну про 1% я косвенно упомянул)
Старый 16.12.2010 02:47 Sintesis вне форума
Sintesis
 
Аватар для Sintesis
Но с помошью таких программ как Art Money нельзя взламывать сетевые игры, или вы здесь только о настольных?
Старый 16.12.2010 08:28 udaaff вне форума
udaaff
Не только о настольных. =)
Старый 16.12.2010 21:55 Sintesis вне форума
Sintesis
 
Аватар для Sintesis
Хаха)) не, я имел ввиду локальные, то-есть те которые можно разместить на рабочем столе Windows.
Если-б с помошью Art Money можно было-б такие настольные игры взламывать - это было-б вообще круто!
 

 


Часовой пояс GMT +4, время: 19:41.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.