Я представляю молодую компанию ReSanity. Мы недавно открыли альфа-версию нашей системы лицензирования ПО ReSanity StubIt ( http://resanity.com ).
И в связи с этим запустили конкурс (приз 3000$) для проверки ее надежности и взломоустойчивости.
т.е. вы предлагаете найти лицензионный ключ, который хранится и чекается на сервере? такие приложения взламываются не нахождением алгоритма генерации серийника, а патчем для кода, который глушит вообще обращение к серверу и всегда возвращает "ок". Или вы предлагаете взломать ваш сервер за 3000 баксов?
Re[2]: Конкурс "Укради меня, если сможешь". Приз 3000$
Здравствуйте, antropolog, Вы писали:
A>Здравствуйте, ReSanity, Вы писали:
A>т.е. вы предлагаете найти лицензионный ключ, который хранится и чекается на сервере? такие приложения взламываются не нахождением алгоритма генерации серийника, а патчем для кода, который глушит вообще обращение к серверу и всегда возвращает "ок". Или вы предлагаете взломать ваш сервер за 3000 баксов?
Как я понимаю, они выдирают промышленный код и возвращают его для выполнения только при проверке лицензии. Чтобы собрать цельный исполняемый код, надо будет выделить все походы на сервер и восстановить "выдранные участки". Для этого потребуется лишь одна легальная лицензия.
Re[3]: Конкурс "Укради меня, если сможешь". Приз 3000$
АШ>Как я понимаю, они выдирают промышленный код и возвращают его для выполнения только при проверке лицензии. Чтобы собрать цельный исполняемый код, надо будет выделить все походы на сервер и восстановить "выдранные участки". Для этого потребуется лишь одна легальная лицензия.
Не надежнее ли выполнять промышленный код с параметрами на сервере и возвращать клиенту только результаты.
Re: Конкурс "Укради меня, если сможешь". Приз 3000$
Здравствуйте, ReSanity, Вы писали:
RS>Добрый день.
RS>Я представляю молодую компанию ReSanity. Мы недавно открыли альфа-версию нашей системы лицензирования ПО ReSanity StubIt ( http://resanity.com ). RS>И в связи с этим запустили конкурс (приз 3000$) для проверки ее надежности и взломоустойчивости.
Ну вы бы еще конкурс на проверку надежности и взломоустойчивости RSA запустили. Сделать кейген невозможным — дело пары вызовов CryptApi. Усложнить создание патча гораздо менее тривиально.
Re[2]: Конкурс "Укради меня, если сможешь". Приз 3000$
Здравствуйте, antropolog, Вы писали:
A>т.е. вы предлагаете найти лицензионный ключ, который хранится и чекается на сервере? такие приложения взламываются не нахождением алгоритма генерации серийника, а патчем для кода, который глушит вообще обращение к серверу и всегда возвращает "ок". Или вы предлагаете взломать ваш сервер за 3000 баксов?
Хочу подчеркнуть, что конкурс содержит в себе две задачи на выбор ("Сапер" и "Алиса").
Так как "Сапер" подготовлен из открытых исходных кодов, то задача восстановления его полной работоспособности без серийных ключей, как вы понимаете, не ставится.
Поэтому для "Сапера" осталась только опция "необходимо предоставить не менее двух серийных ключей".
А вот задача "Алиса" как раз может быть решена через восстановление ее полной работоспособности без серийных ключей ("патчем кода", например).
Кстати, "взлом нашего сервера" тоже неисключен — все на выбор кандидата!
Re[4]: Конкурс "Укради меня, если сможешь". Приз 3000$
Здравствуйте, UA, Вы писали:
UA>Не надежнее ли выполнять промышленный код с параметрами на сервере и возвращать клиенту только результаты.
Да, Вы правы, в общих чертах в этом и есть сила технологии ReSanity StubIt — лицензированный код (вырезанные куски кода) никогда не покидает сервера ReSanity StubIt Cloud.
Только все несколько сложней — технология позволяет "вырезать" куски кода размером вплоть до одной процессорной инструкции.
Re[2]: Конкурс "Укради меня, если сможешь". Приз 3000$
Здравствуйте, bazis1, Вы писали:
B>Ну вы бы еще конкурс на проверку надежности и взломоустойчивости RSA запустили. Сделать кейген невозможным — дело пары вызовов CryptApi. Усложнить создание патча гораздо менее тривиально.
Конкурс содержит вторую задачу "Алиса", к которой кандидатам как раз и предлагается создать "патч" (восстановить ее полную работоспособность без требования серийных ключей).
Re[5]: Конкурс "Укради меня, если сможешь". Приз 3000$
RS>Да, Вы правы, в общих чертах в этом и есть сила технологии ReSanity StubIt — лицензированный код (вырезанные куски кода) никогда не покидает сервера ReSanity StubIt Cloud. RS>Только все несколько сложней — технология позволяет "вырезать" куски кода размером вплоть до одной процессорной инструкции.
Да ну? А если это инструкция push eax
Я имел ввиду нечто типа вызова вебсервиса, правда в этом случае непонятно зачем кому то на сторону это лицензировать.
Re[3]: Конкурс "Укради меня, если сможешь". Приз 3000$
Здравствуйте, ReSanity, Вы писали:
RS>Здравствуйте, bazis1, Вы писали:
B>>Ну вы бы еще конкурс на проверку надежности и взломоустойчивости RSA запустили. Сделать кейген невозможным — дело пары вызовов CryptApi. Усложнить создание патча гораздо менее тривиально.
RS>Конкурс содержит вторую задачу "Алиса", к которой кандидатам как раз и предлагается создать "патч" (восстановить ее полную работоспособность без требования серийных ключей).
полную работоспособность куска, который крутится на вашем сервере?
Re: Конкурс "Укради меня, если сможешь". Приз 3000$
Здравствуйте, ReSanity, Вы писали:
RS>Добрый день.
RS>Я представляю молодую компанию ReSanity. Мы недавно открыли альфа-версию нашей системы лицензирования ПО ReSanity StubIt ( http://resanity.com ). RS>И в связи с этим запустили конкурс (приз 3000$) для проверки ее надежности и взломоустойчивости.
так это не укради, а взломай. вот прямо щас и взломаем. делов-то. идем сюда: http://www.trademarkia.com/trademarks-search.aspx?tn=resanity
о боги! о небо! торговая марка resanity не зарегистирована ни в сша, ни в канаде, ни в прочих странах. за полтораста бакса любой желающий может поиметь ее в два клика. дальше отжимаем домен со всеми вытекающими последствиями. при этом ваш регистратор домена -- американский. это чтобы домен было отжимать удобнее? давайте попробуем? вы же сами предложили не стесняться в выборе средств.
я бы не рискнул пользоваться вашим продуктом. потому что в один прекрасный день он может ВНЕЗАПНО перестать работать только потому что кто-то пожадничал и не зарегистрировал торговую марку. но эту нычку вы конечно же можете пофиксить. я ж не садист. мог зарегать торговую марку на себя, но не стал.
я вам вот что скажу. последний год или два я очень много времени провожу, читая тексты патентов. на вскидку могу назвать десяток-другой, который по меньшей мере является поводом для судебного разбирательства и как минимум два патента принадлежат жирным патентым троллям. они будут рады такой наводке. они про вас вообще ничего не знают. а как узнают, то потребуют сильно больше трех килобаксов. три килобакса я возьму себе. за наводку. вы, вероятно, просто не представляете себе сколько есть патентов на каждый чих и какое полчище троллей они кормят.
я, разумеется, никому не скажу, но с таким отношением к бизнесу вы продержитесь до первого шторма. у вас алгорим работает на сервере и в клиентском коде просто не существует? нет проблем. приходим к вам с вежливыми людьми, изымаем сервера и терморектальным анализом восстанавливаем все пароли и явки. в рф это как раз пордяка трех килобаксов и стоит.
ЗЫ. позабавила документация. перлы в стиле: "В ходе исследования на большой группе антивирусов были выявлены некоторые особенности взаимодействия приложений, лицензированных с помощью ReSanity StubIt, с антивирусами". очередной write-only текст. не хватило силы воли и мужества духа прочесть эту страшную конструкцию, в которой антивирусы упомянуты аж два раза. видимо, из уважения к ним. ваши пользователи будут рады. защита, на которую ругаются топовые антивирусы, это лучшее средство уронить продажи ниже плинтуса. ну да ладно, это не главное...
ЗЫ.ЗЫ. чуваки, вы чего в натуре?! вы чьих будете? вы предлагаете вырезать _мой_ код и отсылать его на выполнение в _ваше_ облако?! да вы завтра разоритесь, у вас отожмут домен или рухнет дата-центр, на котором вы конечно же экономите. ладно бы с такой инициативной выступил мс. ему еще можно доверить облачное выполнение, хотя все равно ссыкотно. по хорошему нужно предоставлять пользователям вашей защиты возможность выполнения кода на своих серверах, которые они контролируют и которые не зависят от вашего благополучия и настроения. соглашаться на анальное рабство... мне трудно представить себе ваших клиентов. я бы еще понял, если бы вы предлагали распростанять чужой софт через свои каналы, обеспечивая поддержку пользоватеелей по части защиты. тогда был бы смысл обращаться к вам. а так...
ЗЫ.ЗЫ.ЗЫ. у меня вот тут есть 3Ж модем. если я куплю программу, защищенную вашей приблудой и если она нагонит мне траф, то на вас обрушиться и грех, и ярость. кстати, тут (в штатах) интернет далеко не везде и местами он жутко тормозной. у меня верайзон (это кульный провайдер) и то сидел пол-недели без иннета потому что техника ждал, чтобы сгоревшую плату заменить. вы это учитывайте. вот у мс, например, активация и онлайном, и оффлайном. не от хорошей жизни же.
americans fought a war for a freedom. another one to end slavery. so, what do some of them choose to do with their freedom? become slaves.
Re[3]: Конкурс "Укради меня, если сможешь". Приз 3000$
Здравствуйте, ReSanity, Вы писали:
RS>Здравствуйте, antropolog, Вы писали:
RS>А вот задача "Алиса" как раз может быть решена через восстановление ее полной работоспособности без серийных ключей ("патчем кода", например).
если может быть решена без серийных ключей, то вообще непонятно на хрена нам такой концерт по заявкам. на сервере можно держать базу знаний, динамически загружая на клиент те ее части, которые с той или иной вероятностью, будут затребованы в ходе беседы.
защита от "скачать всю базу целиком" зачастую возникает сама собой. если база знаний 4TБ+, то юзерам не упало качать такие объемы и хранить их. дело даже не в хранить, а в апдейтах. если вы активно работаете над программой, внося в базу множество изменений, то хакеры упарятся это выкачивать (особенно, если АПИ для скачки нет и для того, чтобы определенный контент стал доступным, нужно войти в соответствующий контекст диалога).
живым подтверждением тому являются он-лайн словари и он-лайн спелл-чекеры, учитывающие появление новых слов, терминов, торговых марок и т.д. многие из них вообще по подписке распростаняются. да что там говорить! сейчас даже он-лайновые редакторы диаграм нашли себе место под солнцем. по подписке. причем подписка стоит таких денег, что мс визио оказывается сильно дешевле, но... это уже задача для бизнеса как привлечь пользователя и как его удержать.
americans fought a war for a freedom. another one to end slavery. so, what do some of them choose to do with their freedom? become slaves.
Re[6]: Конкурс "Укради меня, если сможешь". Приз 3000$
Здравствуйте, UA, Вы писали:
UA>Да ну? А если это инструкция push eax
Конечно! Вообще любая R3-инструкция, из поддерживаемого нашей системой (на текущий момент) набора инструкций: "Intel x86 (IA-32), x64 (EMT64, Intel 64, AMD64), user-mode-инструкции: generic, FPU, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1"
UA>Я имел ввиду нечто типа вызова вебсервиса, правда в этом случае непонятно зачем кому то на сторону это лицензировать.
Нет, это не вебсервис, мы можем "вырезать" любые куски кода из бинарных модулей, используя для этого (в текущей версии):
а) map-файлы (формат MSVC) — очень удобно, быстро и просто, но не является самым эффективным способом с точки зрения устойчивости к атакам на "черный ящик"
б) метки кода — удобно, просто, но требует чуть больших усилий от разработчика, так как необходимо производить установку наших меток (макросов) в исходный код
в) указание координат регионов кода вручную — непросто, но позволяет производить самый "тонкий тюнинг" в плане устойчивости к атакам на "черный ящик"
В ближайшем будущем мы добавим еще автоматический выбор регионов кода, рекомендуемых к лицензированию, на основе профилирования приложения.
Re[4]: Конкурс "Укради меня, если сможешь". Приз 3000$
Здравствуйте, bazis1, Вы писали:
RS>>Конкурс содержит вторую задачу "Алиса", к которой кандидатам как раз и предлагается создать "патч" (восстановить ее полную работоспособность без требования серийных ключей). B>полную работоспособность куска, который крутится на вашем сервере?
Да, нескольких кусков кода.
Re[4]: Конкурс "Укради меня, если сможешь". Приз 3000$
Здравствуйте, мыщъх, Вы писали:
М>если может быть решена без серийных ключей, то вообще непонятно на хрена нам такой концерт по заявкам. на сервере можно держать базу знаний, динамически загружая на клиент те ее части, которые с той или иной вероятностью, будут затребованы в ходе беседы.
Я понимаю Ваши опасения, но могу открыто заявить, что на наших серверах ReSanity StubIt Cloud находятся только лицензированные ("вырезанные") куски кода. В доказательство этого после окончания конкурса мы опубликуем все исходные бинарные файлы, которые были инструментированы нами для конкурса с помощью ReSanity StubIt Monetization Studio.
М>живым подтверждением тому являются он-лайн словари и он-лайн спелл-чекеры, учитывающие появление новых слов, терминов, торговых марок и т.д. многие из них вообще по подписке распростаняются. да что там говорить! сейчас даже он-лайновые редакторы диаграм нашли себе место под солнцем. по подписке. причем подписка стоит таких денег, что мс визио оказывается сильно дешевле, но... это уже задача для бизнеса как привлечь пользователя и как его удержать.
Да, Вы правы. Уже давно прослеживается тенденция уходить в "онлайн". В большинстве случаев это было обусловлено именно невозможностью монетизировать (лицензировать) программное обеспечение "оффлайн". Так было раньше. Теперь есть ReSanity StubIt, которая обеспечит разработчикам полный контроль над распространением их софта. Особенно хочется подчеркнуть, что разработка "онлайн" вариантов софта весьма недешевое и долгое занятие, которое вдобавок будет требовать постоянных трат на обслуживание серверов. Лицензируя софт с помощью ReSanity StubIt, разработчик в считанные минуты получает результат без каких-либо серьезных затрат — во-первых, у нас есть выделенные ресурсы для бесплатных тестов ("мощность" заказов ограничена 100 лицензиями в 14 дней), во-вторых, разработчик может заказывать серийные ключи в любом объеме, в зависимости от своих планируемых продаж.
Re[7]: Конкурс "Укради меня, если сможешь". Приз 3000$
Здравствуйте, ReSanity, Вы писали:
RS>Здравствуйте, UA, Вы писали:
RS>Нет, это не вебсервис,
не веб-сервис? тогда это попадон-с. а если у юзера только http и больше ничего? кстати, чем вам веб не угодил? когда REST бороздит оперативные просторы...
RS>а) map-файлы (формат MSVC) — очень удобно, быстро и просто, но не является RS>самым эффективным способом с точки зрения устойчивости к атакам на "черный ящик"
видимо вы не достаточно качественно вырезаете. остаточная намагниченность межбитовых промежутков остается, да?
americans fought a war for a freedom. another one to end slavery. so, what do some of them choose to do with their freedom? become slaves.
Re[2]: Конкурс "Укради меня, если сможешь". Приз 3000$
Здравствуйте, мыщъх, Вы писали:
М>о боги! о небо! торговая марка resanity не зарегистирована ни в сша, ни в канаде, ни в прочих странах. за полтораста бакса любой желающий может поиметь ее в два клика. дальше отжимаем домен со всеми вытекающими последствиями. при этом ваш регистратор домена -- американский. это чтобы домен было отжимать удобнее? давайте попробуем? вы же сами предложили не стесняться в выборе средств.
Благодарю Вас за напоминание про регистрацию торговых марок, наши специалисты уже занимаются этим вопросом. Насчет "отжима" доменов и т.п. ресурсов — пока не понимаю, как это поможет выполнить конкурсные задачи.
М>я, разумеется, никому не скажу, но с таким отношением к бизнесу вы продержитесь до первого шторма. у вас алгорим работает на сервере и в клиентском коде просто не существует? нет проблем. приходим к вам с вежливыми людьми, изымаем сервера и терморектальным анализом восстанавливаем все пароли и явки. в рф это как раз пордяка трех килобаксов и стоит.
Насколько я понимаю, "терморектальный" анализ можно применить абсолютно к любому персонажу, но мы и не забываем, в какой стране живем. Кстати, в конкурсных условиях специально оговорено: "при решении задач допускается применение любых методов... и прочих ненасильственных методов"
М>ЗЫ. позабавила документация. перлы в стиле: "В ходе исследования на большой группе антивирусов были выявлены некоторые особенности взаимодействия приложений, лицензированных с помощью ReSanity StubIt, с антивирусами". очередной write-only текст. не хватило силы воли и мужества духа прочесть эту страшную конструкцию, в которой антивирусы упомянуты аж два раза. видимо, из уважения к ним. ваши пользователи будут рады. защита, на которую ругаются топовые антивирусы, это лучшее средство уронить продажи ниже плинтуса. ну да ладно, это не главное...
Во-первых, есть сильные сомнения, что "топовые" АВ это Bkav. Если это так, то где же в рейтинге АВ находится McAffee?
Во-вторых, абсолютно все программные модули ReSanity StubIt License Keeper подписаны нашей цифровой подписью.
В-третьих, Bkav "возбуждается" только на неподписанный инструментированный модуль, а не на наши модули. Именно по этой причине мы настоятельно рекомендуем Вендорам подписывать их цифровой подписью программные модули, инструментированные с помощью ReSanity StubIt Monetization Studio.
М>ЗЫ.ЗЫ. чуваки, вы чего в натуре?! вы чьих будете? вы предлагаете вырезать _мой_ код и отсылать его на выполнение в _ваше_ облако?! да вы завтра разоритесь, у вас отожмут домен или рухнет дата-центр, на котором вы конечно же экономите. ладно бы с такой инициативной выступил мс. ему еще можно доверить облачное выполнение, хотя все равно ссыкотно. по хорошему нужно предоставлять пользователям вашей защиты возможность выполнения кода на своих серверах, которые они контролируют и которые не зависят от вашего благополучия и настроения. соглашаться на анальное рабство... мне трудно представить себе ваших клиентов. я бы еще понял, если бы вы предлагали распростанять чужой софт через свои каналы, обеспечивая поддержку пользоватеелей по части защиты. тогда был бы смысл обращаться к вам. а так...
Мы предлагаем Вам самим решать, какой код будет исполняться на серверах ReSanity StubIt Cloud (это элементарно сделать с использованием ReSanity StubIt Monetization Studio).
И не просто решать, а лицензировать, то есть накладывать ограничения на их исполнение (например, триалки, количество запусков, параллелизм и т.п.). Причем одна и та же лицензия легко может содержать целый набор различных условий (комбинированные лицензии) для комплексных моделей лицензирования.
Вы утвержадете, что доверить выполнение лицензированных кусков кода "ссыкотно". А сейчас Вендорам "не ссыкотно" выдавать софт целиком, без вырезанных кусков кода? Ведь не пройдет и двух часов, как этот софт будет лежать на трекерах с пометкой "таблэтка вшита".
Насчет "по хорошему нужно предоставлять пользователям вашей защиты возможность выполнения кода на своих серверах" — такая модель поддерживается нами, это будет доступно крупным Вендорам.
Для них мы будем поставлять как программные, так и программно-аппаратные комплексы, которые они будут размещать на своих приватных ресурсах.
М>ЗЫ.ЗЫ.ЗЫ. у меня вот тут есть 3Ж модем. если я куплю программу, защищенную вашей приблудой и если она нагонит мне траф, то на вас обрушиться и грех, и ярость.
Количество траффика, которое порождает распределенное исполнение кода, определяется исключительно самим кодом. Большое количество траффика выльется в первую очередь во временных задержках при распределенном исполнении, что сразу станет видно при тестировании лицензированных приложений на наших тестовых ресурсах.
Мы понимаем, что задача выбора подходящих регионов кода может быть достаточно непростой для Вендора, незнакомого с нашей технологией. В таких случаях специалисты нашей компании готовы выполнить инструментацию программных модулей Вендора своими силами (после подписания NDA), а также оказывать всяческую поддержку и помощь Вендору.
Re[8]: Конкурс "Укради меня, если сможешь". Приз 3000$
Здравствуйте, мыщъх, Вы писали:
М>не веб-сервис? тогда это попадон-с. а если у юзера только http и больше ничего? кстати, чем вам веб не угодил? когда REST бороздит оперативные просторы...
Пока мы остановили свой выбор на собственном протоколе над TCP. Для домашних пользователей лицензированного софта это не будет проблемой, для корпоративных будем рекомендовать открывать нужные TCP-порты на выход. Если это станет ощутимой преградой, возможно, рассмотрим и HTTP-транспорт.
RS>>а) map-файлы (формат MSVC) — очень удобно, быстро и просто, но не является RS>>самым эффективным способом с точки зрения устойчивости к атакам на "черный ящик" М>видимо вы не достаточно качественно вырезаете. остаточная намагниченность межбитовых промежутков остается, да?
Конкурсная задача "Алиса" инструментирована с помощью map-файлов. Можете посмотреть и оценить качество "вырезки".
Re[7]: Конкурс "Укради меня, если сможешь". Приз 3000$
UA>>Да ну? А если это инструкция push eax RS>Конечно! Вообще любая R3-инструкция, из поддерживаемого нашей системой (на текущий момент) набора инструкций: "Intel x86 (IA-32), x64 (EMT64, Intel 64, AMD64), user-mode-инструкции: generic, FPU, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1"
Ну и какой смысл выполнять эту инструкцию на сервере, если стек нужен на клиенте. Я хочу сказать что не всякий код с клиента можно тупо выдернуть и выполнить на сервере без настройки окружения на сервере идентичного клиентскому. В вашем случае это должен быть явно клиенто-независимый код который можно без проблем выполнить на сервере.
Re[8]: Конкурс "Укради меня, если сможешь". Приз 3000$
Здравствуйте, UA, Вы писали:
UA>Ну и какой смысл выполнять эту инструкцию на сервере, если стек нужен на клиенте. Я хочу сказать что не всякий код с клиента можно тупо выдернуть и выполнить на сервере без настройки окружения на сервере идентичного клиентскому. В вашем случае это должен быть явно клиенто-независимый код который можно без проблем выполнить на сервере.
Технология ReSanity StubIt позволяет вырезать любые куски кода и гарантирует, что распределенное исполнение инструментированного кода будет происходить идентично исполнению целостного кода.
Будет ли практический толк в "вырезании" единственной инструкции — вряд ли. Для стойкости лицензированного приложения к атакам на "черный ящик" мы рекомендуем выбирать регионы кода суммарным размером не менее 400 байт. Безусловно, этот "минимальный" размер носит исключительно оценочный характер и будет зависеть от конкретных инструкций, которые находятся в этих регионах кода (чем больше условных и табличных инструкций, особенно вложенных и statefull, тем выше устойчивость к попыткам восстановления вырезанных кусков кода). Мы полагаем, что при суммарном размере вырезанных регионов кода > 1Кбайт (при "обычном" коде, который порождают такие компиляторы, как MSVC, Intel C++ и т.п.) атака на "черный ящик" становится невозможной в-принципе.