Rambler's Top100
Российский фонд помощи
Навигация
Главная
MS ACCESS
VB
ASP
PHP
Наши друзья
Поиск
Форум
Лента новостей
Новый сайт

Online
Рассылки Subscribe.Ru
Работа с MS Access
Подписаться письмом
Реклама на сайте
 
Главная arrow MS ACCESS arrow Разблокировка проекта VBA Access
Разблокировка проекта VBA Access Печать E-mail
Автор Joss   
03.10.2019 г.
Закрытие исходного кода VBA паролем - один из способов защиты интеллектуальной собственности разработчика. Однако существуют много платных и бесплатных программ для его взлома. Но вот на сайте DEVelopers HUT я совсем недавно нашел статью Даниэля Пино о том, как можно взломать защиту VBA проекта без всяких взломщиков. Вот она. Недавно мне нужно было разблокировать проект VBA Access, для которого мой клиент потерял пароль. Я был удивлен, обнаружив, что существует невероятно простой хак, который может разблокировать любой проект VBA с защитой паролем, и я решил, что поделюсь им, если это сможет помочь другим.

Сделайте копию данной базы данных и работайте только с копией. Никогда не работайте с исходным файлом базы данных на случай, если что-то пойдет не так.

Откройте файл базы данных в любом редакторе HEX по вашему выбору.

Найдите все вхождения символьной строки DPB= и измените B на другое значение (многие учебные пособия предлагают x, но, похоже, это не имеет никакого значения)

После того, как вы заменили все вхождения, выполните команду «Сохранить как», чтобы сохранить эти изменения в новом файле.

Откройте вновь сохраненный файл в Access (как обычно), а затем перейдите в редактор VBA. Вы получите несколько сообщений об ошибках, просто пропустите их (и да, их может быть немало!).

Откройте Свойства базы данных, у которых теперь не будет указан пароль.

Введите новый пароль и подтвердите его, чтобы восстановить проект VBA с помощью известного пароля.

Сохранить проект VBA

Закрыть базу данных

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


Что касается Access, то это иллюстрирует важность распространения вашего интерфейса как mde/accde (путем преобразования db в mde/accde. В них VBA полностью недоступен) для ваших конечных пользователей, где даже незначительная угроза безопасности вызывает беспокойство (что сегодня практически повсеместно!). Поэтому потратьте дополнительные 5-10 секунд, скомпилируйте свои базы данных и распространяйте скомпилированную версию вместо исходной mdb/accdb.

Моё впечатление относительно этой истории
Весь этот опыт радикально изменил мое мнение об общей безопасности Office/Access и обеспечении проектов VBA, поскольку он кажется совершенно бесполезным! Я удивлен тем, что вопросы безопасности в 2018 году Microsoft оставляет на таком низком уровне. Вы можете разблокировать проект VBA за 30 секунд с помощью бесплатных инструментов.
Я также надеюсь, что, пролив свет на этот вопрос, возможно, Microsoft внесет необходимые изменения, чтобы начать правильно защищать информацию. Существующая защита совершенно неприемлема в 2018 году ИМХО.

Используемые материалы
Daniel Pineault 
Access – Unlocking an Access VBA Project
Просмотров: 47

  Ваш коментарий будет первым

Добавить коментарий
Имя:
E-mail
Коментарий:



Код:* Code

 
Реклама на сайте
HiProg.com - Технологии программирования
Rambler's Top100 TopList