dll - усложнит ли она реверсеру задачу?

Any_Key

aka mad red cat
Регистрация
30 Мар 2006
Сообщения
391
Реакции
346
valekor если вы настолько переживаете, то возмите скриптовый язык с jit машиной например lua
часть логики вложите в lua скрипты, сам же движек lua может снимать опкод с процессора,
Сохраняете опкод, и отдаете с сервера в шифрованном виде, причем шифровать нужно по ключу и по сессии.
Тогда будет каждый запуск ключи будут меняться.

Что делать хакеру в данном случае?
1) Перехватить пакеты
2) Рашифровать и получить опкод
3) Написать дизасм под луа процессор (aka dezender)
4) Профиксить скрипты от привязок лицензии
5) Скопилировать
6) Упаковать и зашифровать
7) создать поддельный сервер
8) Радоватся )))

PS: более подробно пишите в личку. Метод для себя велосипедил ))) Моя же параноя сейчас зашла так далеко что в ядре перемксил определения операндов, поэтому байткод с оригинальным не совместим. Пусть ломают на здоровье. Мне плевать, пару лет никто не будет тратить на сие творение )))
 
Последнее редактирование:

valekor

Постоялец
Регистрация
3 Авг 2013
Сообщения
133
Реакции
18
valekor если вы настолько переживаете, то возмите скриптовый язык с jit машиной например lua
часть логики вложите в lua скрипты, сам же движек lua может снимать опкод с процессора,
Сохраняете опкод, и отдаете с сервера в шифрованном виде, причем шифровать нужно по ключу и по сессии.

Мне такое не потянуть :) Я только с vb.net и с# работаю, немного вот в PHP приходится вникать. Залезать еще и в lua, я тогда вообще потону в изучении и паранойи ))) Я слышал конечно, что lua не сложный, но погружаться в очередное изучение кучи информации не хочу.
А так, Вы вроде бы описали почти тоже самое, что я сейчас делаю в связке с PHP, хотя могу и ошибаться, т.к. я не знаю что такое jit машина.
 

Any_Key

aka mad red cat
Регистрация
30 Мар 2006
Сообщения
391
Реакции
346
Мне такое не потянуть :) Я только с vb.net и с# работаю, немного вот в PHP приходится вникать. Залезать еще и в lua, я тогда вообще потону в изучении и паранойи ))) Я слышал конечно, что lua не сложный, но погружаться в очередное изучение кучи информации не хочу.
А так, Вы вроде бы описали почти тоже самое, что я сейчас делаю в связке с PHP, хотя могу и ошибаться, т.к. я не знаю что такое jit машина.

Надеюсь поймете о чем в вики написано, если нет могу по пункта

Lua является имплементацией Ecma 5 но с отступлениями от спецификации, так же как и JS
Страшного в нем ничего нет))) если знаете хотя бы javascript.

Не уверен что вы делаете вычисления на клиентской машине. Скорее всего на сервере, что повышает стоимость владения. Сервер надо будет оплачивать. А если не один?
В предложенном варианте все вычисления выполняются на клиенте, только часть выполняет скриптовый движек из предкомпилированного кода, которой в последсвие будет инлайнится в машинный.
В данной схеме сам черт ногу сломит понять что откуда растет, а производительность значительно не упадет.
Хотя в кончном счете параноит Вам. Я нашел себе такой путь) И как показала практика он имеет место для существования.
 
Последнее редактирование:

FRAPS

Писатель
Регистрация
30 Июл 2014
Сообщения
7
Реакции
0
Где-то слышал об "облачном хранение", не представляju как это.
Может быть кто-нибудь объяснит подробно?
 

Ashoot

Создатель
Регистрация
2 Май 2014
Сообщения
19
Реакции
5
"Облачное" - это все что связано с арендой ресурсов у третьих лиц. Если можно конкретней что интересует? - место, вычислительные мощьности, базы данных??

З.Ы.: Для просмотра ссылки Войди или Зарегистрируйся
Для просмотра ссылки Войди или Зарегистрируйся
 

Шумадан

Хабарра!!11
Регистрация
6 Фев 2008
Сообщения
1.746
Реакции
2.208
Где-то слышал об "облачном хранение", не представляju как это.
Может быть кто-нибудь объяснит подробно?
скорее всего это так: у аппликухи отсутствуют важные части и она посылает запрос на сервер и по определённому ключу получает часть кода, который потом подгружается и может быть выполнен, после выполнения выгружается и удаляется, в следующий раз ключ меняется, на стороне облака скрипт или сервис который по определённому ключу выдаёт куски
 

valekor

Постоялец
Регистрация
3 Авг 2013
Сообщения
133
Реакции
18
скорее всего это так: у аппликухи отсутствуют важные части и она посылает запрос на сервер и по определённому ключу получает часть кода, который потом подгружается и может быть выполнен, после выполнения выгружается и удаляется, ...
Интересно. Это каким образом можно выполнить загруженный код? В виде длл такое точно не прокатит. Тогда как? Можно создать динамический массив, но он опять же будет для переменных и выполнение кода из такова массива тоже невозможно.
 

Darkness

Постоялец
Регистрация
21 Янв 2013
Сообщения
146
Реакции
76
Интересно. Это каким образом можно выполнить загруженный код? В виде длл такое точно не прокатит. Тогда как? Можно создать динамический массив, но он опять же будет для переменных и выполнение кода из такова массива тоже невозможно.
На Net/Java/LLVM такое прокатит, так как им можно подсунуть ихний собственный байткод, который уже пережован значительно, в C/C++ нет сборки или исполнения на ходу и вообще в любом компилируемом языке нет пост сборки, так как они не собираются во время исполнения, в качестве костыля может служить портативный компилятор, но это придется передавать сорцы в чистом виде или транслировать до передачи все сорцы в ASM, в случае инжекта уже собранного кода, в другой и его исполнение, что будет реализовываеться через жопу и от простой дллки будет отличатся незначительно, аля изобретение собственной длл, если хорошо копнуть, можно будет перехватить часть, которая идет с сервера в любом случае.
 

B03BPAT

Создатель
Регистрация
5 Мар 2014
Сообщения
22
Реакции
8
Все эти приемы конечно отсеивают определенную аудиторию.
Но вопрос, кто из вас потратит больше времени и сил, Вы или взломщик - остается открытым :)
Есть много standalone-софта, для которого интенсивно выходят апдейты и к тому времени как его отреверсят, билд становится не актуальным и таки приходится покупать.
Быть может стоит оплатить услуги тех кто профессионально занимается защитой.
А стандартная защита - ломается стандартно.
 

mr.eslamo

Писатель
Регистрация
18 Апр 2014
Сообщения
1
Реакции
0
Тоже интересна тема но для C#. Это ключи для чего? У msbuild и csc их нет.

p.s. Собираю msbuild
 
Сверху