Вы когда-нибудь использовали виртуализацию кода или vmprotect для защиты от обратной инженерии?
Я знаю, что нет способа полностью защитить наш код.
Я также знаю, что если пользователь хочет взломать наше приложение, он или она не является пользователем, который будет покупать наше приложение.
Я также знаю, что лучше улучшить наше приложение... вместо того, чтобы бояться методов борьбы с трекингами.
Я также знаю, что нет коммерческого инструмента, который может защитить наше приложение...
Я также знаю, что....
Ok. Достаточно. Я все слышал.
Я действительно думаю, что добавление небольшой защиты не повредит.
Итак... вы когда-нибудь использовали виртуализатор кода у оранов или vmprotect?
Я слышал, что они иногда обнаруживаются как вирус некоторыми антивирусами.
Любой опыт, о котором я должен знать, прежде чем покупать его.
Я знаю, что он создает некоторые виртуальные машины и немного запутывает код, чтобы затруднить обнаружение слабых мест в наших процедурах регистрации.
Есть ли какие-либо предупреждения, которые я должен знать?
Спасибо.
Любые советы будут оценены.
Зубец
Ответы
Ответ 1
К сожалению, программное обеспечение, защищенное VM, более подвержено влиянию ложных срабатываний, чем обычное программное обеспечение для упаковки. Причина этого в том, что, поскольку защита AV настолько сложна, программное обеспечение AV часто неспособно анализировать защищенный код и может полагаться на библиотеки шаблонов или может выдавать общие предупреждения для любых файлов, защищенных системой, которую он не может проанализировать. Если ваш приоритет заключается в устранении ложных срабатываний, я предлагаю выбрать широко используемое решение защиты, например. AsProtect (хотя продукты Oreans также становятся довольно популярными).
Ответ 2
"ИМХО вам должно быть повезло или даже хотелось быть пиратским, потому что это означает, что ваш продукт успешный и популярный:)"
Это неверно. Мое программное обеспечение, над которым я работал много месяцев, было взломанным в тот момент, когда оно было выпущено. Есть организованные группы трещин, которые питают download.com канал RSS и т.д. И взломают каждое появившееся приложение. Это кусок пирога для извлечения кода для любого приложения, поэтому я ответил: а) прибегнуть к файлам ключей цифровых сертификатов, которые невозможно подделать, поскольку они подписаны закрытым ключом AES и подтверждены публичным, встроенным в приложение (см.: aquaticmac.com - я использую реализацию stl С++, которая является кросс-платформенной), а также b) отличный Code Virtualizer. Я скажу, что в тот момент, когда я начал использовать Code Virtualizer, я получал жалобы от одного или двух пользователей о сбоях приложений. Когда я удалил его из своей сборки, аварии прекратились. Тем не менее, я не уверен, была ли проблема с CV как таковой, поскольку это могло быть неясной ошибкой в моем коде, но с тех пор я перепутал свой код, и с тех пор я не слышал никаких жалоб.
После этого больше нет трещин. Некоторые люди считают, что это трещина, как положительная вещь, поскольку это бесплатный канал рекламы, но эти люди обычно не потратили месяцы/годы на идею, только чтобы найти, что вас сорвали. Довольно трудно принять.
Ответ 3
Защита программного обеспечения VM довольно популярна сегодня, особенно, поскольку она теперь доступна по доступной цене для небольших компаний и независимых разработчиков программного обеспечения. Это также требует значительных усилий для взлома по сравнению с технологиями, отличными от VM - обертки обычно имеют стандартные отладочные трюки, которые имеют другие защиты, а также защита VM. Поскольку виртуальная машина генерируется случайным образом в каждой сборке, взломщики должны будут проанализировать набор команд VM и перестроить защищенный код обратно на машинный код.
Основным недостатком защиты VM является то, что если она чрезмерно используется (используется для защиты чрезмерных частей кода), это может значительно замедлить ваше приложение - поэтому вам нужно будет защитить только критические части (регистрационные проверки и т.д.), Это также не относится к определенным типам приложений - скорее всего, это не будет работать с DLL, которые используются для инъекций, а также с драйверами устройств.
Я также слышал, что StrongBit EXECryptor - достойный пакет защиты по приемлемой цене. (Я не связан с упомянутой компанией и не гарантирую никакого качества, что-то никогда, это просто из уст в уста и стоит проверить ИМО).