Зміна рівня захисту від макровірусів, MS Office, Програмні керівництва, статті

Починаючи з версії Office 2003 з’явилася така новизна: при спробі запустити додаток Office, Що містить макроси, З’являється повідомлення, що пропонує заблокувати «небезпечні вираження». Мова йде про можливі віруси, що містяться в макросах і модулях програми.


Microsoft пропонує такий варіант вирішення проблеми (з Help):



В Office 2003 і вище застосовуються три рівні безпеки:



Високий рівень



Підписаний макрос – Його обробка визначається його джерелом і станом підпису.
Не підписаний макрос – Макроси автоматично відключаються. Файл не відкривається.


Середній рівень



Підписаний макрос – Його обробка визначається його джерелом і станом підпису.
Не підписаний макрос – Користувачеві пропонується відкрити базу даних або скасувати дію. Якщо користувач вирішить скасувати дію, файл бази даних не відкривається.


Низький рівень



При низькому рівні безпеки всі макроси обробляються однаково, незалежно від їх походження чи статусу сертифіката. При такому рівні безпеки користувачеві не пропонується оцінювати надійність автора або сертифіката макросу. Макроси включаються автоматично. Цей параметр слід використовувати тільки якщо всі макроси в файлах отримані з надійних джерел.


Це була думка Helpa. Але ось що спадає на думку, після деякого роздуми на цю тему:



  1. Щоб запрацювала вся ця система сертифікацій, необхідно встановити Microsoft Jet 4.0 Service Pack 8 або пізнішої версії. В цьому випадку будуть виконуватися тільки макроси, які мають спеціальну цифровий підпис від «надійних виробників». Багато розроблювачів (і не тільки початківці), навряд чи коли небудь надумають «підписувати» свої модулі цифровими підписами. По перше, хакерам це навряд чи сильно зашкодить підробити підпис, а по друге, послуга ця платна, і цифровий сертифікат можна отримати лише в комерційному центрі сертифікації, такому як VeriSign Inc., або у адміністратора внутрішньої безпеки чи фахівця відділу інформаційних технологій (IT)
  2. Якщо Ви створили додаток для себе, а в себе Ви впевнені, що не будете створювати макровіруси, то можете поставити рівень безпеки «Низька» і спокійно працювати.
  3. Так само, якщо Ви створили дистрибутив програми, то при спробі запустити його у користувача, який не змінив заздалегідь рівень безпеки макросів, з’явиться повідомлення про неможливість нормальної роботи з програмою. Як варіант – запропонувати користувачеві інструкцію, яка пояснює куди зайти і що перемкнути. Але таке рішення деяким Вашим замовникам здасться надто складним. Не всі хочуть вникати в такі тонкощі, більшості потрібно лише, щоб програма «нормально працювала».

Висновок напрошується сам собою – програмно переключити блокування макросів і не морочити голову собі і Вашим клієнтам. Але тут відразу виникає проблема: щоб відключити блокування, потрібно запустити відповідну процедуру, а запустити її ми можемо лише після старту програми, яке заблоковане. Тут на допомогу прийде VBS.


VBS – це Microsoft Windows Script Technologies. Своєрідна альтернатива досовських. Bat файлів. Сценарії написані на VBScript та збережені як файли з розширенням .vbs виконуються за допомогою інструменту Windows Script Host (WSH), Який вбудований в ядро ​​Windows вже з 98 версії.


Говорячи простіше – це звичайний текстовий файл, і створюється він в простому блокноті, або в його більш просунутому варіанті – Bred, Або кому що більше подобається. Після створення файлу, вручну міняємо розширення на. Vbs і все – отримуємо виконуваний файл. Клацнемо двічі по ньому – компілятор Windows обробить текст і видасть результат. Зовсім як в. Exe файлах. До того ж, синтаксис VBS дуже схожий на VB, в чому Ви зможете переконатися трохи пізніше, і відповідно, не складе великих труднощів розібратися в коді.


Отже, розглянемо завдання, які треба вирішити:



  1. Визначити версію Access – адже при установці Office 2003 шлях до потрібного параметру реєстру (який треба змінити) буде HKEY_CURRENT_USERSoftwareMicrosoftOffice11.0AccesssecurityLevel а при установці Office 2007 – HKEY_CURRENT_USERSoftwareMicrosoftOffice12.0AccessSecurityVBAWarnings
  2. Знизити рівень безпеки
  3. Визначити шлях до MSACCESS.EXE – він власне запускає сам Access
  4. Запустити програму

Візьміть базу, яка містить макроси або модулі і перейменуйте її в db1.mdb (або в скрипті змініть ім’я бази на Вашу). Створіть папку наприклад С :/ Prog і помістіть в неї скрипт і базу. Відкрийте Access і через Сервіс – Макрос – Безпека встановіть рівень захисту «Високий». Спробуйте запустити додаток – з’явиться повідомлення про блокування. Тепер запустіть скрипт подвійним клацанням – додаток відкриється. Подивіться, який тепер став рівень захисту – низький.


Приклад для даної статті Ви можете завантажити нижче

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*