Аудиторія
Адміністратори підприємств, що управляють комп’ютерами, які залучені до робочих процесів із використанням постійних глобальних змінних (Windows і Macintosh) або користувацьких JavaScript (лише для Windows).
Огляд
Через високу зацікавленість Adobe у безпеці періодично випускаються зміни функціональних можливостей поточних версій Acrobat і Adobe Reader для підсилення опору продукту до зловмисних атак. У рамках цих спроб у версії 10.1.1 представлено зміни до функції JavaScript, що зберігає глобальні змінні й використовує визначені користувачем сценарії.
До версії 10.1.1 кінцеві користувачі могли розміщувати файли JavaScript у папці %ApplicationData%\Adobe\(назва продукту)\(версія)\JavaScripts, і ці файли виконувалися автоматично після запуску програми. Наприклад, IT-відділ міг розмістити файл JS для зміни користувацького інтерфейсу продукту, приховуючи або додаючи елементи меню на комп’ютері з Windows XP в папці C:\Documents and Settings\(ім’я користувача)\Application Data\Adobe\Acrobat\10.0\JavaScripts. Крім цього, у папці містяться два файли, glob.js і glob.settings.js, які продукт може зчитувати й до яких він може записувати, зберігаючи глобальні змінні.
Зміни для версії 10.1.1
Процеси Acrobat навмисно не записують до папки %ApplicationData%\ Acrobat\Privileged\10.0. Крім цього, ізольовані процеси спеціально не мають права запису до цієї папки. Щоб працювати в безпеці, необхідно ввімкнути захищений перегляд в Acrobat і захищений режим у Reader, і таким чином ізолювати всі процеси. Крім цього, версія 10.1.1 має вказані нижче зміни.
- Нове розташування користувацьких JS. Папку користувацьких JavaScript переміщено з
- Vista й Windows 7: Users\(ім’я користувача)\AppData\Roaming\Adobe\Acrobat\10.0\JavaScripts to Users\(ім’я користувача)\AppData\Roaming\Adobe\Acrobat\Privileged\10.0\JavaScripts. Наприклад, новим шляхом може бути C:\Users\JoeUser\AppData\Roaming\Adobe\Acrobat\Privileged\10.0\JavaScripts
- XP: Documents and Settings\(ім’я користувача)\Application Data\Adobe\Acrobat\10.0\JavaScripts to Documents and Settings\(ім’я користувача)\Application Data\Adobe\Acrobat\Privileged\10.0\JavaScripts. Наприклад, новим шляхом може бути: C:\Documents and Settings\JoeUser\Application Data\Adobe\Acrobat\Privileged\10.0\JavaScripts
Примітка. Ця зміна стосується лише Windows. Також ця зміна не впливає на поведінку C:\Program Files\Adobe\(назва і версія продукту)\(назва продукту)\JavaScripts.
- Новий формат і розташування постійних глобальних змінних. Параметри змінних, що знаходяться в glob.settings.js і glob.js, тепер розміщено в новій папці — %ApplicationData%\Adobe\Acrobat\10.0\JSCache. Для ініціалізації постійних глобальних змінних зчитуються пари ключових значень з ASCab. У цій папці не зберігаються параметри у вигляді файлів JavaScript.
Що потрібно зробити
Якщо ви не зберігали змінні як постійні глобальні змінні або не поміщали змінені користувацькі JavaScript у папки, можете ігнорувати цю зміну. Проте, якщо ви робили щось із вищезазначеного, можна зберегти цілісність робочих процесів, виконавши вказані нижче дії.
Для проблем із глобальними змінними (Windows і Macintosh)
- Перевірте, чи glob.js і glob.settings.js не зберігають нічого крім пар ключових значень і скалярних величин. Робочі процеси, що використовують ці файли для зберігання інших методів, припинять роботу.
- Оскільки під час застосування версії 10.1.1 усі дані в glob.js і glob.setting.js буде втрачено, цілісність робочих процесів можна зберегти, виконавши вказані нижче дії.
1. Для Acrobat можна виконати таке:
- Скопіюйте JavaScript до наявних файлів glob.js і glob.setting.js зі старої папки сценаріїв JavaScript та запустіть його в консолі JavaScript під час нової сесії Acrobat. Ця дія експортує збережені глобальні змінні до нової сесії Acrobat. Або,
- Скопіюйте glob.js і glob.setting.js зі старої папки сценаріїв JavaScript до папки %Program Files%/Adobe/Reader/JavaScript, а потім видаліть оригінальні файли. Перезапустіть продукт, щоб експортувати змінні до нового формату.
Примітка. Для Adobe Reader можна використовувати лише останній спосіб, оскільки консоль JavaScript недоступна, якщо її не було ввімкнено, як описано в http://blogs.adobe.com/pdfdevjunkie/2008/10/how_to_use_the_javascript_debu.html.
2. Виконайте вручну спосіб JavaScript setPersistent на всіх глобальних змінних, щоб переконатися в їх належному перенесенні до нового формату. Наприклад, запустіть у консолі вказаний нижче сценарій JavaScript.
for (var name in global) global.setPersistent("global."+name, true);
Для проблем із користувацькими JavaScript (лише для Windows)
Скопіюйте всі користувацькі файли JavaScript з %APPDATA%\Adobe\Acrobat\10.0\JavaScripts до %APPDATA%\Adobe\Acrobat\Privileged\10.0\JavaScripts.