A Microsoft irodai automatizálás újabb kiskaput a makró vírus

A Microsoft Office programcsomag - nem csak a de facto standard irodai szoftver, hanem nagyon összetett és funkciókban gazdag környezet, amely lehetővé teszi, hogy megoldások elsősorban a használata a Microsoft Office funkciók és automatizálására rutin a felhasználó tevékenységét, ha dolgozik dokumentumokat. Ez a szoftver platform, az úgynevezett objektum modell a Microsoft Office (Microsoft Office Object Model), illetve automatizálása Microsoft Office (Microsoft Office Automation) alapul COM objektum modell és egy kiterjedt osztályhoz, amely hozzáférést biztosít szinte bármilyen elemet vagy intézkedés áll a felhasználó rendelkezésére a munka Microsoft Office grafikus interfészen keresztül.


Az objektum modell a Microsoft Word (részben)

Apropó programozás Microsoft Office, gyakran járnak a „belső” program - megírt makrók VBA (Visual Basic for Applications, a végrehajtás a Visual Basic Microsoft Office), és közvetlenül illeszthetjük dokumentumokat.


Hozzon létre egy makrót a Microsoft Excel

A Microsoft irodai automatizálás újabb kiskaput a makró vírus

Ajánlat a felhasználó számára lehetővé teszi a makrók dokumentumban kártékony kódot tartalmazó

Microsoft Office lehetőség is rendelkezésre áll nem csak a makró, hanem „külső” szoftver bármilyen nyelven, amely támogatja a COM. Az utóbbi lehet összeállítani programok nyelvek, mint a C ++ vagy Delphi, az alkalmazások kezelésére Java vagy .Net, vagy szkripteket VBScript és PowerShell - COM technológia rendelkezésre áll szinte minden elvégezhető Windows alatt.

A Microsoft irodai automatizálás újabb kiskaput a makró vírus

Az épület megközelítése modell a Microsoft Office PowerShell

Microsoft Office Object Model egy Microsoft Office alkalmazás formájában COM-objektumokat. De van még arra, hogy hozzá dokumentumok és egyéb COM-objektumok - ActiveX-vezérlők, amelyek nem tartoznak a Microsoft Office, de jelen vannak az operációs rendszer. Szerepeljen a dokumentumban, ezek az elemek kölcsönhatásba léphet a kód makrókkal, vagy hajtsa végre a saját kódját, amely a dokumentum bekerül a „tulajdonságok» - objektum tulajdonságait. A képes kezében beágyazó ActiveX vezérlők is vezethet tetszőleges kód futtatására, így a legújabb változat a Microsoft Office alapértelmezett tagadta elindításaHa beágyazott ActiveX kivéve a „fehér lista” elemek. Azonban a felhasználó ebben az esetben kifejezetten futtatását teszi lehetővé, amennyiben szükséges.


Figyelmeztetés beágyazott ActiveX

A javaslat lehetővé teszi (vagy megtagadja) aktív tartalom futtatásához menjen a felhasználót, ha a dokumentum megnyitásakor a szokásos módon, a megfelelő alkalmazás. Mi történik, ha megnyitja ugyanazt a dokumentumot az objektum modellt a Microsoft Office?
Ilyen program például - a sokféle különböző nyelvek és a különféle feladatok:

Példa a VBScript

Példa a PowerShell

A tanulmány az ilyen példák csak egyszer kaptunk a kódot egy érdekes sor:

Application.AutomationSecurity Property (Excel)
...
Visszatér vagy beállít egy állandó MsoAutomationSecurity amely képviseli a biztonsági üzemmód Microsoft Excel használ, amikor a programozott fájlok megnyitásakor.
...
MsoAutomationSecurity lehet egy ilyen MsoAutomationSecurity állandók.

msoAutomationSecurityByUI. Használja a biztonsági beállítást megadva a biztonsági párbeszédpanel. |
msoAutomationSecurityForceDisable. Kikapcsolja az összes makrót minden megnyitott fájlok programozott anélkül, hogy bármilyen biztonsági figyelmeztetéseket.
msoAutomationSecurityLow. Lehetővé teszi az összes makrót. Ez az alapértelmezett érték, ha az alkalmazás indításakor.

Kiderült, hogy ha a Microsoft Office alkalmazás fut, mint egy automatizálási sejt, a makró kód a dokumentum megnyitásához lesz az alapértelmezett. Kivéve persze, nem kifejezetten a biztonsági szint módosítása a programot. Ez az alapértelmezett beállítás független a kitett felhasználó vagy rendszergazda. Ezt makrók is betölteni és végrehajtani a kódot elemeinek bármilyen ActiveX, hozzáadjuk a dokumentumot.

A Microsoft irodai automatizálás újabb kiskaput a makró vírus

A makro, ha a dokumentum megnyitásakor keresztül Automatizálás

Ez nem nyilvánvaló jellemzője, úgy tűnik, csak ritkán veszik figyelembe. Például az irodai szoftver más gyártók használják az objektum modell a Microsoft Office import és export adatok Word és Excel dokumentumok. Elég gyakran van példa az 1C:

1C, az úgynevezett „kezelések” is használja a COM-objektum modell általános és a Microsoft Office, különösen. Néhány hasznos kezelési felhasználóknak nyújtott a gyártó által, például, feldolgozása „ZagruzkaDannyhIzTablichnogoDokumenta.epf” lehetővé teszi, hogy feltölt adatokat külső adatbázis tábla dokumentumokat.

A Microsoft irodai automatizálás újabb kiskaput a makró vírus

A makro, amikor megnyitja a dokumentumot a feldolgozás 1C

Mint látható, AutomationSecurity ingatlan feledésbe merült és a programozók 1C.
Egyrészt, ez egy klasszikus példája annak, amit át kell gondolni a biztonság a folyamat a programozás, függetlenül attól, hogy milyen nyelvet használunk. Másrészt, miért kényszerítette a Microsoftot, hogy szigorúbb Microsoft Office biztonsági beállításokat hagyja védtelenül objektum modellt?

Kapcsolódó cikkek