Re[2]: Шифрование кода – 2023
От: sergey2b ЮАР  
Дата: 01.03.23 13:05
Оценка:
Почему его автор не стал поддерживать
И продал странной личности которая тоже забила болт
Re[15]: Шифрование кода – 2023
От: rudzuk  
Дата: 01.03.23 13:20
Оценка: -1
Здравствуйте, drVanо, Вы писали:

V> R>Мне сантиметрами меряться не очень интересно. Давай я признаю, что у тебя длиннее, а ты признаешь, что написать код без релоков это не бином Ньютона?


V> Давай ты лучше признаешь, что все что ты предлагал ТС-у вместе с вантусом — это полный шлак.


Ты невнимательно читаешь. Я ТС'у ничего не предлагал. Я сказал, что контролировать целостность критически важного кода и данных не так сложно, как ты пытаешься преподнести. Поэтому — нет.
avalon/3.0.2
Re[16]: Шифрование кода – 2023
От: drVanо Россия https://vmpsoft.com
Дата: 01.03.23 13:38
Оценка:
Здравствуйте, rudzuk, Вы писали:

R>Ты невнимательно читаешь. Я ТС'у ничего не предлагал. Я сказал, что контролировать целостность критически важного кода и данных не так сложно, как ты пытаешься преподнести. Поэтому — нет.


Вот же ты сам предлагал:

Ты все усложняешь. Целостность всего образа проверять смысла нет. Достаточно проверить целостность критически важных данных и кода. Это делается проще, чем ты описываешь.


В итоге ты предлагаешь человеку самостоятельно писать PIC, чтобы потом проверять целостность участков кода. Я даже больше чем уверен, что он даже их (эти самые участки) не найдет.
К слову сказать твой открытый ключ можно подменить прямо в памяти в момент "десериализации" его в BigInteger даже не трогая код, который с ним работает, и все твои проверки на целостность будут просто бесполезны.
Re[3]: Шифрование кода – 2023
От: Sharowarsheg  
Дата: 01.03.23 13:57
Оценка: 12 (1) +1
Здравствуйте, sergey2b, Вы писали:

S>Почему его автор не стал поддерживать


Вечные лицензии, мне помнится. Деньги получаешь один раз, а поддержка навсегда. Через какое-то время проект приходится закрывать.
Re[17]: Шифрование кода – 2023
От: rudzuk  
Дата: 01.03.23 14:04
Оценка: -1
Здравствуйте, drVanо, Вы писали:

V> R>Ты невнимательно читаешь. Я ТС'у ничего не предлагал. Я сказал, что контролировать целостность критически важного кода и данных не так сложно, как ты пытаешься преподнести. Поэтому — нет.


V> Вот же ты сам предлагал:


V> Ты все усложняешь. Целостность всего образа проверять смысла нет. Достаточно проверить целостность критически важных данных и кода. Это делается проще, чем ты описываешь.


V> В итоге ты предлагаешь человеку самостоятельно писать PIC, чтобы потом проверять целостность участков кода. Я даже больше чем уверен, что он даже их (эти самые участки) не найдет.


Нет, ТС'у я ничего не предлагаю. Я сказал, отвечая совсем не ТС'у, что имеет место быть очевидное усложнение достаточно простой задачи.

V> К слову сказать твой открытый ключ можно подменить прямо в памяти в момент "десериализации" его в BigInteger даже не трогая код, который с ним работает, и все твои проверки на целостность будут просто бесполезны.


Это все фантазии на свободную тему.
avalon/3.0.2
Re[4]: Шифрование кода – 2023
От: Aquilaware  
Дата: 01.03.23 14:32
Оценка:
Здравствуйте, Sharowarsheg, Вы писали:

S>Вечные лицензии, мне помнится. Деньги получаешь один раз, а поддержка навсегда. Через какое-то время проект приходится закрывать.


Представляю себе этот ужас. Наверное есть сегменты продуктов, где практика вечных лицензий может быть оправдана, но если это что-то техническое и тем более связанное с компиляцией и кодом — шансов выжить с такой моделью нет.
Re[5]: Шифрование кода – 2023
От: JustPassingBy  
Дата: 01.03.23 16:21
Оценка:
Здравствуйте, Aquilaware, Вы писали:

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


Вечные лицензии обычно практикуются в самом начале пути, чтобы привлечь первых пользователей. Использовать такое для устоявшегося продукта смысла никакого, конечно же. Нельзя предоставлять неограниченный ресурс за ограниченные деньги.
Re[4]: Шифрование кода – 2023
От: scf  
Дата: 01.03.23 16:56
Оценка:
Здравствуйте, wantus, Вы писали:

W>1. Добавить проверку подписи собственного exe (через WinVerifyTrust).


я бы еще добавил: помимо основного метода проверки ключа (RSA) иметь несколько простых дополнительных (а-ля третий байт ключа всегда делится на 7). После загрузки ключа в память он тиражируется в десяток-другой мест в памяти и точно так же, по таймеру или событию, проверяется. Тиражирование нужно, чтобы было сложнее ставить брейкпоинты на память. Разные проверки нужны, чтобы их нельзя было обезвредить анализом кода или поведения.
Re[9]: Шифрование кода – 2023
От: wantus  
Дата: 01.03.23 17:23
Оценка:
Здравствуйте, drVanо, Вы писали:

V>Здравствуйте, wantus, Вы писали:


V>>>А откуда вы знаете что им лень, а что не лень? Вы предлагаете откровенно слабые варианты, которые может обойти даже начинающий реверсер.

W>>Я понимаю, что вы стекольщик и вам надо нагнетать,

V>Вы меня с кем-то путаете.


Вы продаете продукт для защиты от хакеров. Чем страшнее хакеры, тем лучше бизнес.

W>>но преувеличивать уж настолько сильно тоже не стоит.


V>Вы реверсингом сколько лет занимаетесь, если не секрет?


С конца 90х, но это видимо вопрос с подвохом?

V>Ну ну, вам с дивана виднее


Сlassy, factual retort. Считайте победа ваша.
Re[15]: Шифрование кода – 2023
От: wantus  
Дата: 01.03.23 17:46
Оценка:
Здравствуйте, drVanо, Вы писали:

V>Давай ты лучше признаешь, что все что ты предлагал ТС-у вместе с вантусом — это полный шлак.


Да, елки-палки.

Разговор не о том, что несложные вещи не ломаются.

Разговор о том, что их зачастую достаточно для того, чтобы по сети не плавали взломанные версии.

Да, можно всё зашифровать и с вашим коробочным решением это может сделать любой балбес, но на практике можно обойтись куда меньшей кровью.
Re[6]: Шифрование кода – 2023
От: sergey2b ЮАР  
Дата: 03.03.23 14:23
Оценка:
Здравствуйте, JustPassingBy, Вы писали:

JPB>Вечные лицензии обычно практикуются в самом начале пути, чтобы привлечь первых пользователей. Использовать такое для устоявшегося продукта смысла никакого, конечно же. Нельзя предоставлять неограниченный ресурс за ограниченные деньги.


а как же winrar or windows commander
Re[7]: Шифрование кода – 2023
От: JustPassingBy  
Дата: 04.03.23 07:45
Оценка:
Здравствуйте, sergey2b, Вы писали:

S>а как же winrar or windows commander


А что у них сейчас экономически?
Re[17]: Шифрование кода – 2023
От: K13 http://akvis.com
Дата: 04.03.23 11:44
Оценка:
Здравствуйте, drVanо, Вы писали:

V>К слову сказать твой открытый ключ можно подменить прямо в памяти в момент "десериализации" его в BigInteger даже не трогая код, который с ним работает, и все твои проверки на целостность будут просто бесполезны.


Просто публичный ключ должен вычисляться, а не лежать константой в области данных.
Re[18]: Шифрование кода – 2023
От: drVanо Россия https://vmpsoft.com
Дата: 05.03.23 12:09
Оценка:
Здравствуйте, K13, Вы писали:

K13>Просто публичный ключ должен вычисляться, а не лежать константой в области данных.


Для того чтобы понимать как защитить открытый ключ от подмены, нужно как минимум представлять как работают стандартные библиотеки, которые манипулируют большими числами. Открытый ключ это просто большое число, которое загоняется в класс BigInteger, и дальше над ним производят математические действия (внутри modpow). Дак вот перехватив любой из методов, которые используются при проверке правильности серийного номера, можно подменить открытый ключ прямо в памяти BigInteger-а (особо "умные" делают это через перехват стандартной функции выделения памяти из CRT).
Re[19]: Шифрование кода – 2023
От: rudzuk  
Дата: 05.03.23 12:50
Оценка: -1
Здравствуйте, drVanо, Вы писали:

V> K13>Просто публичный ключ должен вычисляться, а не лежать константой в области данных.


V> Для того чтобы понимать как защитить открытый ключ от подмены, нужно как минимум представлять как работают стандартные библиотеки, которые манипулируют большими числами. Открытый ключ это просто большое число, которое загоняется в класс BigInteger, и дальше над ним производят математические действия (внутри modpow). Дак вот перехватив любой из методов, которые используются при проверке правильности серийного номера, можно подменить открытый ключ прямо в памяти BigInteger-а (особо "умные" делают это через перехват стандартной функции выделения памяти из CRT).


Вот я и говорю — фантазии это, с прикольными допущениями, что будет использоваться стандартное API.
avalon/3.0.2
Re[20]: Шифрование кода – 2023
От: drVanо Россия https://vmpsoft.com
Дата: 05.03.23 15:18
Оценка:
Здравствуйте, rudzuk, Вы писали:

R>Вот я и говорю — фантазии это, с прикольными допущениями, что будет использоваться стандартное API.


Я вам уже предлагал перейти от теории к практике, но вы зассали
Автор: rudzuk
Дата: 01.03.23
. Зачем заново начинать этот разговор?
Re[21]: Шифрование кода – 2023
От: rudzuk  
Дата: 05.03.23 16:05
Оценка: -1
Здравствуйте, drVanо, Вы писали:

V> Я вам уже предлагал перейти от теории к практике, но вы зассали
Автор: rudzuk
Дата: 01.03.23
.


Да нет же, я сказал, что мне сантиметрами меряться не интересно, и что готов признать твое превосходство. У тебя удивительная способность не понимать, что тебе говорят

V> Зачем заново начинать этот разговор?


Похоже, зря я это, учитывая вышесказанное.
avalon/3.0.2
Re: Шифрование кода – 2023
От: drVanо Россия https://vmpsoft.com
Дата: 05.03.23 16:06
Оценка: +1
Здравствуйте, Khimik, Вы писали:

Безотносительно используемого протектора могу порекомендовать несколько способов, которые могут усложнить жизнь крякеру:
1. Строковые константы. Многие программисты, которые не знакомы с основами реверсинга даже не пытаются шифровать критичные строки. Многие например хранят ключи в виде base64, выдают сообщения типа "Неверный регистрационный код", по ссылкам на который можно достаточно быстро найти код функции, которая выдает это сообщение, даже не запуская дебаггер.
Для некритичных строк достаточно будет динамического создания их прямо на стеке. Самый простой способ:
const char str[] = {'M','y', ' ', 's', 't', 'r', 'i', 'n', 'g', '0'};
MessageBox(str);

А также варианты для более продвинутых пользователей.
2. Проверка CRC участков кода, используемых для проверки регистрации ключей. В большинстве случаев совершенно бесполезно, т.к. начинающие программисты даже не догадываются как и где их будут ломать. Если вы собираетесь реализовать данный функционал собственными силами, то нужно учитывать, что в отладчике крякеру достаточно будет найдет место, с помощью которого вы считаете CRC по региону кода, после этого код будет пропатчен и будет выдавать всегда "правильный" результат. Как можно этому противостоять? Для начала можно познакомиться с возможностями NtReadVirtualMemory, с помощью которого можно обойти все бряки, устанавливаемые крякером в отладчике. Следующим этапом можно порекомендовать использовать NtReadVirtualMemory напрямую через SYSCALL/SYSENTER, но для этого придется познакомиться с простейшими способами
получения номеров сервисов, в том числе как их можно вызывать из WOW64.
3. Детект отладчиков. Если вы прокачали п. 2 до уровня "бог", то можете с легкостью детектить современные юзермодные отладчики, даже при использовании специальных плагинов, которые работают через хук функций из NTDLL и физически не могут перехватывать ваши собственные вызовы SYSCALL/SYSENTER.
Re[22]: Шифрование кода – 2023
От: drVanо Россия https://vmpsoft.com
Дата: 05.03.23 16:14
Оценка:
Здравствуйте, rudzuk, Вы писали:

R>Да нет же, я сказал, что мне сантиметрами меряться не интересно, и что готов признать твое превосходство. У тебя удивительная способность не понимать, что тебе говорят


У тебя удивительная способность писать откровенную хрень
Автор: rudzuk
Дата: 05.03.23
, а потом удивляться, почему тебя никто не понимает.
Отредактировано 05.03.2023 16:15 drVanо . Предыдущая версия . Еще …
Отредактировано 05.03.2023 16:15 drVanо . Предыдущая версия .
Re[10]: Шифрование кода – 2023
От: drVanо Россия https://vmpsoft.com
Дата: 05.03.23 16:16
Оценка:
Здравствуйте, wantus, Вы писали:

W>Вы продаете продукт для защиты от хакеров. Чем страшнее хакеры, тем лучше бизнес.


И делюсь в этой ветке своим реальным опытом. Что в этом плохого?
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.