Publik
Företagsadministratörer för datorer med arbetsflöden som använder beständiga globala variabler (Windows och Macintosh) och anpassade JavaScript (endast Windows).
Översikt
Adobe månar om säkerheten och tillhandahåller därför med jämna mellanrum ändringar för aktuella funktioner i Acrobat och Adobe Reader för att programmen ska skyddas bättre mot skadliga attacker. Som ett led i detta arbete inför 10.1.1 ändringar av JavaScript-funktionen som lagrar globala variabler och kör användardefinierade skript.
Innan 10.1.1 kunde slutanvändare placera JavaScript-filer i %ApplicationData%\Adobe\(produktnamn)\(version)\JavaScripts, varav dessa filer kördes automatiskt vid programstart. IT kan exempelvis placera en JS-fil för att modifiera produktens användargränssnitt genom att dölja eller lägga till menyalternativ på en Windows XP-dator på C:\Documents and Settings\(användarnamn)\Application Data\Adobe\Acrobat\10.0\JavaScripts. Dessutom innehåller mappen glob.js och globe.settings.js – två filer som produkten kan läsa och skriva till vid lagring av globala variabler.
Ändringar i 10.1.1
Acrobat-processer skriver avsiktligt inte till mappen %ApplicationData%\ Acrobat\Privileged\10.0 . Dessutom är sandlådeprocesser uttryckligen förbjudna att skriva till den mappen. Således innefattar den säkraste operationen aktivering av Skyddad vy i Acrobat och Skyddat läge i Reader, vilket innebär att alla processer först provkörs i en sandlåda. 10.1.1 inför även följande ändringar:
- Ny JS-plats för användare: Användarens JS-mapp flyttas från
- Vista och Windows 7: Users\(användarnamn)\AppData\Roaming\Adobe\Acrobat\10.0\JavaScripts till Users\(användarnamn)\AppData\Roaming\Adobe\Acrobat\Privileged\10.0\JavaScripts. Den nya sökvägen kan till exempel vara C:\Users\JoeUser\AppData\Roaming\Adobe\Acrobat\Privileged\10.0\JavaScripts
- XP: Documents and Settings\(användarnamn)\Application Data\Adobe\Acrobat\10.0\JavaScripts till Documents and Settings\(användarnamn)\Application Data\Adobe\Acrobat\Privileged\10.0\JavaScripts. Den nya sökvägen kan till exempel vara C:\Documents and Settings\JoeUser\Application Data\Adobe\Acrobat\Privileged\10.0\JavaScripts
Obs! Denna ändring avser endast Windows. Förändringen påverkar heller inte beteendet i C:\Program Files\Adobe\(produktnamn och version)\(produktnamn)\JavaScripts.
- Nytt format och plats för beständiga globala variabler: Variabelinställningar lagras i blob.settings.js och glob.js finns nu i en ny katalog på %ApplicationData%\Adobe\Acrobat\10.0\JSCache. Nyckelvärdepar som läses från ASCab används för att initiera beständiga globala variabler. Inga inställningar sparas som JavaScript-filer i denna katalog.
Vad du bör göra
Du kan bortse från denna förändring om du inte lagrade variabler som beständiga globala variabler eller placerade anpassade JavaScript i de drabbade katalogerna. Men om du inte har gjort något av detta kan du behålla integriteten i dina arbetsflöden genom att göra följande:
För problem med globala variabler (Windows och Macintosh)
- Se till att glob.js och globe.settings.js endast lagrar nyckelvärdeparen och skalära värden. Arbetsflöden som använder dessa filer för att lagra andra metoder kommer att avbrytas.
- Eftersom alla data som finns i glob.js och glob.setting.js vid tillämpningen av 10.1.1 går förlorade kan du behålla integriteten i dina arbetsflöden genom att göra följande:
1. För Acrobat kan du välja att göra något av följande:
- Kopiera JavaScript i de befintliga filerna glob.js och glob.setting.js från den tidigare JavaScript-mappen och kör den i JavaScript-konsolen i en ny Acrobat-session. Detta kommer att exportera lagrade globala variabler till den nya Acrobat-sessionen. Eller
- Kopiera glob.js och glob.setting.js från den tidigare JavaScript-mappen till mappen %Program Files%/Adobe/Reader/JavaScript och ta bort de ursprungliga filerna. Starta om produkten för att exportera variablerna till det nya formatet.
Obs! I Adobe Reader går det bara att använda den senare metoden eftersom JavaScript-konsolen endast är tillgänglig om du har aktiverat den enligt anvisningarna på http://blogs.adobe.com/pdfdevjunkie/2008/10/how_to_use_the_javascript_debu.html.
2. Kör metoden JavaScript setPersistent manuellt på samtliga globala variabler för att säkerställa att de har överförts korrekt till det nya formatet. Kör till exempel följande JavaScript i konsolen:
for (var name in global) global.setPersistent("global."+name, true);
För användares JavaScript-problem (endast Windows)
Kopiera alla användarskapade JavaScript-filer från %APPDATA%\Adobe\Acrobat\10.0\JavaScripts till %APPDATA%\Adobe\Acrobat\Privileged\10.0\JavaScripts.