Создание виртуального устройства не является полной эмуляцией. Правда как там обстоят дела с HASP-ом я не знаю, но виденные мной варианты эмуляторов для Guardant показывают что эмулируется не полный спектр ICOTL запросов, на которые может отвечать реальный ключ.
Так-то оно так, но что делать со старыми ключами?
К примеру у нас сейчас в районе 230 тысяч установок, нужно потратить в районе 115 миллионов рублей, чтобы купить такое-же количество Code, забрать у пользователей старые ключи, раздать новые, и в итоге на руках останется целый вагон старых ключей с которыми не понятно что делать. В итоге прямой убыток будет в районе 230 миллионов — да меня проще уволить, когда я приду к начальству с таким предложением :)
Согласен, но использование конверта (утилит автозащиты) категорически не желательно для построения более-менее стойкой защиты. Он хорош для тех, кто абсолютно не умеет или не хочет заниматься защитой ПО.
Я по этой теме выступал на семинарах компании «Актив», но не уверен в том, что я хороший лектор, поэтому особенной заинтересованности во взглядах аудитории, за исключением пары-тройки человек, я не увидел. Увы :)
Сомневаюсь в том, что это отличная идея :)
Есть множество других способов, как минимум ни один из эмуляторов (даже реализующих виртуальную шину) не воспроизводит ее поведение досконально, я уж не говорю о эмуляции целевого устройства.
Это так — ради шутки можно сказать, дабы было просто и доступно :)
Видимо очепятка — извиняюсь.
К моему большому сожалению, иногда я не слежу за составом текста, стараясь дать материал программистам и забываю при этом о вычитке, с целью правки грамматики и орфографии.
На сях я мало веду разработок (драйверы разве и чуть COM), больше дельфи и ассемблер.
Delphi было выбрано как один из основных моих инструментов, такова специфика работы.
По порядку :)
Данная статья была написана в прошлом году когда я специально проводил опрос среди комьюнити по поводу знаний возможностей отладчика :)
Опрос показал, что порядочно достаточно большой процент разработчиков (60%) банально не знают возможностей своего инструмента, а полным функционалом пользуются всего 2 процента, остальные (около 40%) знают, но не пользуются ибо не знают для чего он вообще пригодится :)
Это и была предпосылка в первой части статьи.
Вторая и третья затачивалась на достаточно квалифицированных разработчиков.
Их в принципе можно прочитать здесь: alexander-bagel.blogspot.ru/2012/11/debuger-2.html alexander-bagel.blogspot.ru/2012/11/debuger-3.html
В следующие несколько дней данные статьи так-же будут опубликованы.
Ну а по поводу минусов — ну чтож.
Я чай не мальчик уже, и за виртуальные плюсы и минусы давно уже не бьюсь. ;)
Гораздо интереснее, если материал дойдет до своего читателя :)
Но сразу хочу описать один момент, до таких монстров как ВМ ExeCryptor-а или StarForce мне очень далеко, это целое направление и им должны заниматься люди немного другой квалификации, которая у меня к сожалению отсутствует (не то образование — не математик я :)
Не оптимизацией, а скорее обфускацией (разбавление мусорными инструкиями, полиморфная перестановка, генерация и исполнение на лету).
Где-то ближе к концу года, если все будет хорошо, хочу об этом статью реализовать, но не знаю что с загрузкой будет, могу и не успеть.
Да, кстати, чуть не забыл. Некоторые антивирусы занимаются перехватом вызова данных АПИ (например симантек баловался, если не ошибаюсь) и размешают вместо первого опкода перехватчик на свой обработчик. В этом случае SDT индекс считается не верно и вызов такой API будет не успешен.
Поэтому с таким подходом нужно быть осторожным.
К примеру у нас сейчас в районе 230 тысяч установок, нужно потратить в районе 115 миллионов рублей, чтобы купить такое-же количество Code, забрать у пользователей старые ключи, раздать новые, и в итоге на руках останется целый вагон старых ключей с которыми не понятно что делать. В итоге прямой убыток будет в районе 230 миллионов — да меня проще уволить, когда я приду к начальству с таким предложением :)
Хорошо что меня так подломить не смогут — у меня всего два контакта в скайпе :)
Guardant Stealth II и ниже такого не умеет.
Я по этой теме выступал на семинарах компании «Актив», но не уверен в том, что я хороший лектор, поэтому особенной заинтересованности во взглядах аудитории, за исключением пары-тройки человек, я не увидел. Увы :)
Впрочем, я описал суть данного подхода и свои рекомендации в данной статье: alexander-bagel.blogspot.ru/2012/09/blog-post.html
Есть множество других способов, как минимум ни один из эмуляторов (даже реализующих виртуальную шину) не воспроизводит ее поведение досконально, я уж не говорю о эмуляции целевого устройства.
Это так — ради шутки можно сказать, дабы было просто и доступно :)
Хм, а ведь действительно, уже больше 10 лет веду сайт, с которого все и началось. Вот время-то летит…
Ну не по очереди-ж им заходить? :)
К моему большому сожалению, иногда я не слежу за составом текста, стараясь дать материал программистам и забываю при этом о вычитке, с целью правки грамматики и орфографии.
Спасибо :)
Delphi было выбрано как один из основных моих инструментов, такова специфика работы.
Данная статья была написана в прошлом году когда я специально проводил опрос среди комьюнити по поводу знаний возможностей отладчика :)
Опрос показал, что порядочно достаточно большой процент разработчиков (60%) банально не знают возможностей своего инструмента, а полным функционалом пользуются всего 2 процента, остальные (около 40%) знают, но не пользуются ибо не знают для чего он вообще пригодится :)
Это и была предпосылка в первой части статьи.
Вторая и третья затачивалась на достаточно квалифицированных разработчиков.
Их в принципе можно прочитать здесь:
alexander-bagel.blogspot.ru/2012/11/debuger-2.html
alexander-bagel.blogspot.ru/2012/11/debuger-3.html
В следующие несколько дней данные статьи так-же будут опубликованы.
Ну а по поводу минусов — ну чтож.
Я чай не мальчик уже, и за виртуальные плюсы и минусы давно уже не бьюсь. ;)
Гораздо интереснее, если материал дойдет до своего читателя :)
Где-то ближе к концу года, если все будет хорошо, хочу об этом статью реализовать, но не знаю что с загрузкой будет, могу и не успеть.
Поэтому с таким подходом нужно быть осторожным.
Методика применяется примерно такая: alexander-bagel.blogspot.ru/2013/01/intercept.html
(Эту статью я попозже на хабре тоже опубликую для ознакомления).