Это означало, что кто то для одной из программ на этом Фреймворке сделал keygen. Но, увы, поиски не увенчались успехом. Да кстати название Фреймворку Net. Dec. Также анализ библиотеки, в которой находились классы, отвечающие за проверку лицензии, показал, что част классов обфусцированы, в том числе и все пространство имен отвечающих за лицензию. Заморачиваться над деобфускацией и последующей перекомпиляцией не было желания, тем более стояла цель написать генератор лицензии или патчер. Метод, отвечающий за проверку лицензии, был найден очень быстро, нужно было только отследить обработчик нажатия на кнопку ОК в форме ввода лицензии. Для удобства анализа кода все таки пришлось искать аналог Reflector только с деобфускатором на борту. Таковым оказался Dis. Sharp. Как видно лицензия в программе является цифровой подписью на алгоритме DSA. Для создания цифровой подписи берется так называемый код компьютера так они его назвали, углубляться в генерацию данного кода не стал далее код компьютера соединяется с серийным номером, и в методе DSACrypto. Service. Provider Verify. Data сверяются с цифровой подписью. В метод в переменной text. И если первоначально консервативно настроенные бухгалтер ы а с. Электронный отчет по НДФЛ не принимается, где найти ошибку и как. Во вторых, по поводу самой программы БЭМ, гдето в начале мая 2010 г. Учебник По Биологии 8 Класс Базанова. Представляем новую бесплатную программу для бухгалтерского учета. XML строка для восстановления объекта DSA. Немного покопавшись, был найден XML файл, в котором и был объект для восстановления DSA. Первым делом был брошен взгляд на поиск приватного ключа ну чем черт не шутит, увы, естественно разработчики от него избавились. Сам XML файл был вшит в ресурсы библиотеки. Первым делом были приняты попытки сгенерировать свой объект DSA, и вшить полученный XML в ресурсы библиотеки, заменив старый. Ранее ничем подобным мне заниматься не приходилось, поэтому поиски программы для замены ресурсов результаты не дали. Да и хотелось сделать полностью автоматизированное решение для активации программы. Конечно, можно было пропатчить подобными программами эту дллку, а потом просто патчером заменять ею стандартную, но как то это не эстетично. Полностью автоматизированное решение хотелось сделать для того, чтобы отправить его на оценку разработчикам этого продукта. Поиски на тему замены ресурсов программным путем адекватного решения не дали. Руки как то отпустились. Хотя уже в принципе я доказал, что обойти лицензию можно вшив свой DSA объект в библиотеку, и на этом же объекте сделать генератор лицензий. Бэм Бухгалтерия Программа Кряк Найти' title='Бэм Бухгалтерия Программа Кряк Найти' />На время пришлось забросить в дальний ящик все это дело, и заняться работой. По прошествии некоторого времени, мне снова кто то сказал об этой программе и о ее защищенности. Снова взялся за разбор. Посидев, подумав некоторое время, вспомнив, что IL компилятор не компилирует строки, в голову пришла идея которая покажется многим очень примитивной и глупой взглянуть на внутренности библиотеки через простой блокнот. Да да прострой notepad. Бэм Бухгалтерия Программа Кряк Найти' title='Бэм Бухгалтерия Программа Кряк Найти' />Поиск по ключевому слову DSAKey. Value сразу же вывел мне XML данные DSA объекта. В голову сразу же пришла идея по регулярному выражению программно заменить этот объект на свой. Взялся за кодинг, реализовав задуманное, столкнулся с тем, что библиотека отказалась вообще работать. Ожидая подобный результат, перед полной заменой я попробовал частичную замену объекта, после чего библиотека отлично работала, только не кушала даже официальную лицензию. Предварительно я сверил длину официального объекта DSA в XML файле и своего под длиной подразумевается количество символов, размеры полностью совпадали. Далее я просто программно считал всю библиотеку в массив байтов, зафиксировал при чтении первое и последнее вхождение в xml объект dsa заменил эти байты на свои, и сохранил обратно в файл. Забыл сказать, DSA объект генерировался на лету, и при его генерации в xml строку можно указать добавлять к данным приватный ключ или нет, я установил это значение в false, в оригинальной сигнатуре его ведь нет. Сразу же когда инициализировался объект DSA, создавались цифровая подпись с серийным номером, которые сохранялись в файл лицензии. Проделав вышеописанные шаги, мой xml объект DSA должен был отражаться в рефлекторе. Оставалось только попробовать запустить программу. Прищурился и попытался запустить программу. Как и ожидалось, программа запустилась безо всяких вопросов лицензии. Спустя некоторое время я обнаружил статью на хабре, про инъекции MSIL кода в сторонние сборки по средством библиотеки Mono. Cecil. Через пару минут был сделан код, который добавляет простой return в начало метода проверки лицензии тем самым лицензия успешно подтверждаетсяInjectorstring path. В методе вызывающем метод проверку лицензии установлен обработчик исключений, если в методе проверке лицензии происходит исключение, значит лицензия неправильная или ее нет вообще, если исключений нет, то все в порядке можно стартовать. Так как все методы обфусцированы, искать метод по имени через Mono. Cecil не имеет смысла. Посмотрев в рефлекторе, я обратил внимание, что в данной библиотеки нет не у кого таких же аргументов, с таким же типом и последовательностью. Поэтому было решено выделять метод по аргументам if mp. Данная статья не коем образом не предназначалась пособием по крекингу и т. Не нужно быть гуру в программировании чтобы понять, что проделанные выше действия примитивные, а порой и смешны своей реализацией.