69
Dokumentation von Team Hahner® – Engineer of Word-Solutions Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren Version: 1.07 Autor: Dipl.-Ing. (FH) Markus Hahner Team Hahner® – Engineer of Word-Solutions www.hahner.de | www.schauen-statt-lesen.de

Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Dokumentation von Team Hahner® – Engineer of Word-Solutions

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Version: 1.07

Autor: Dipl.-Ing. (FH) Markus Hahner

Team Hahner® – Engineer of Word-Solutions

www.hahner.de | www.schauen-statt-lesen.de

Page 2: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 2 | 69

Inhaltsverzeichnis 1. Was ist ein Makro, was ist VBA? ....................................................................................................... 4 1.1 VBA als Makro-Programmiersprache .................................................................................................. 5 1.2 VBA-Editor als Programmierumgebung ............................................................................................ 6 1.3 Speicherort des VBA-Codes .................................................................................................................. 8 1.4 Aufbau des VBA-Codes ......................................................................................................................... 10 1.5 Leistungsumfang von VBA .................................................................................................................... 11 1.5.1 Befehlszeilenoptionen zur Vermeidung von Automatisierungsfunktionen ............................. 11 1.5.2 Auszug aus den Word-Events zur Automatisierung ..................................................................... 12 1.5.3 Auszug aus den Excel-Events zur Automatisierung ....................................................................... 14 1.5.4 Via VBA auf VBA zugreifen ................................................................................................................... 15 2. Makroschutz: Ungewollte Ausführung verhindern ..................................................................... 18 2.1 Makro-Viren – Schadprogramme im Office-Datei-Format ......................................................... 18 2.2 Makro-Schutzeinstellungen – was wie einstellen? .......................................................................... 19 2.3 Achtung Viren-Einfallstor: Entwicklereinstellung ............................................................................. 21 3. VBA-Code digital signieren .............................................................................................................23 3.1 Wie funktioniert ein digitales Zertifikat? ........................................................................................... 23 3.2 VBA-Code digital signieren .................................................................................................................. 24 4. Vertrauenswürdige Speicherorte und Dokumente: Auswirkungen auf die

Sicherheitseinstellungen ..................................................................................................................26 4.1 So wirken sich vertrauenswürdige Speicherorte aus..................................................................... 26 4.2 Standardeinstellungen der vertrauenswürdigen Speicherorte................................................... 29 4.2.1 Vertrauenswürdige Speicherorte in Excel ........................................................................................ 29 4.2.2 Vertrauenswürdige Speicherorte in PowerPoint ............................................................................ 36 4.2.3 Vertrauenswürdige Speicherorte in Word ........................................................................................ 41 4.3 Vertrauenswürdige Speicherorte: Benutzeranpassungen ........................................................... 45 4.4 Vertrauenswürdige Speicherorte: Anpassungen via GPOs ......................................................... 47 4.5 Praxiserfahrungen bei vertrauenswürdigen Speicherorten .......................................................... 51 4.5.1 Ausführung eigener Makros in Word & Excel wird „versehentlich“ gesperrt ......................... 51 4.5.2 Word-Startup-Add-Ins trotzt Sperrung des Startup-Ordners ausführen ............................... 53 4.5.3 Vagabundierende Word-Registerkarten bei fehlender Vertrauenswürdigkeit ...................... 54 4.6 Vertrauenswürdige Dokumente .......................................................................................................... 56 5. Übersicht der Gebietsschema-ID (LCID) ....................................................................................... 57 6. Erweiterungen/Versionen ............................................................................................................... 64 6.1 Geplante Erweiterungen dieser Dokumentation ............................................................................ 64 6.2 Versionsverlauf der Dokumentation .................................................................................................. 64

Page 3: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 3 | 69

Abbildungsverzeichnis ................................................................................................................................66 Über den Autor / Kontakt ...........................................................................................................................68 Impressum .....................................................................................................................................................69

Sämtliche Screenshots, Kommandos und Einstellungen dieser Dokumentation basieren auf Windows 10 und Office 365, gelten aber im Wesentlichen auch für Office 2019 und Office 2016 und 2013. Die Office-Versionen 2010 und 2007 sind nicht Bestandteil dieser Dokumentation, da deren Support am 13. Oktober 2020 (Office 2010) endet bzw. am 10. Oktober 2017 (Office 2007) geendet hat. Alle Pfadangaben basieren auf der zum Zeitpunkt der Veröffentlichung dieses Dokumentes (04.11.2019) aktuellen Windows-10-Pro-Version.

Page 4: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 4 | 69

1. Was ist ein Makro, was ist VBA? Was sich hinter dem Begriff Makro verbirgt, lässt sich ganz allgemein zusammenfassen:

Ein Makro ist eine Aufzeichnung von Menü-/Funktionsaufrufen und Tastatureingaben in einem Programm (heutzutage als App bezeichnet). Die Aufzeichnung kann anschließend beliebig oft wiedergegeben werden, um so immer wiederkehrende Prozesse zu automatisieren.

Makros gibt es schon seit den Anfangstagen der Microsoft-Anwendungsprogramme (sowie natürlich auch Nicht-Microsoft-Programme wie Lotus 1-2-3, WordPerfect, Harvard Graphics etc.), als die damaligen Programme immer leistungsfähiger wurden und der Wunsch von Seiten der Anwender entstand, zur Zeiteinsparung sich wiederholende Aufgaben zu automatisieren.

Bereits zu DOS-Zeiten verfügte die Textverarbeitung Word oder das damalige Microsoft-Kalkulationsprogramm Multiplan über Makro-Funktionen.

Abbildung 1: Die Makro-Sprache zu Zeiten von Word für DOS.

Die Windows-Anwendungen um Excel und später auch Word und PowerPoint wurden ebenfalls mit Makro-Funktionen erweitert. Schon bald konnten Makros auch nachbearbeitet und später dann programmiert werden. Hierzu verfügte anfangs jedes Programm über seine eigene, spezifische Scriptsprache. Diese war nicht oder nur in Teilbereichen mit anderen Programmen kompatibel, der Funktionsumfang im Vergleich zu aktuellen Programmiersprachen war eher zurückhaltend.

Page 5: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 5 | 69

Abbildung 2: Makro-Programmierung und Dialogfeld-Erstellung bei Word für Windows 2.0 aus dem Jahr 1992.

Was bedeutet dies für die aktuellen Office-Programme Excel, Outlook, PowerPoint oder Word? Alle vier Programme verfügen über die Möglichkeit, mit Makros zu arbeiten. Es lassen sich so Anweisungsfolgen anlegen, die dann komfortabel per Tastenkombination „am Stück“ ausgeführt werden.

Word und Excel verfügen über einen Makro-Rekorder, der vom Anwender ausgeführte Anweisungsfolgen aufzeichnen und dann als Makro abspeichern kann. In PowerPoint und Outlook müssen die Anweisungsfolgen hingegen manuell „programmiert“ werden.

Leider zeichnet der Makro-Rekorder in Word und in Excel nicht alle Anweisungen auf. Insbesondere die Funktionen, die ab Word 2007 und neuer hinzukamen, werden vom Makro-Rekorder nur teilweise, unvollständig oder sogar fehlerhaft aufgezeichnet.

Bei PowerPoint wurde ab der Version 2007 gänzlich auf einen Makro-Rekorder zur Aufzeichnung verzichtet, PowerPoint kann nur noch Makros wiedergeben.

1.1 VBA als Makro-Programmiersprache

Die Sprache, in der die Anweisungsfolgen, sprich Makros, programmiert werden, wird seit Office 97 als Visual Basic for Applications (manchmal auch in der deutschen Übersetzung als

Page 6: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 6 | 69

Visual Basic für Applikationen), kurz VBA, bezeichnet. Bei der Makro-Aufzeichnung werden also die Anweisungsfolgen in Form von VBA-Kommandos (= VBA-Programmcode) gespeichert.

VBA steht ausschließlich für die Windows-Versionen sowie für die Mac-Versionen von Office zur Verfügung. Unter iOS (iPad/iPhone), Android (Smartphone/Tablett) oder in den Online-Versionen der Office-Programme steht VBA nicht zur Verfügung.

Bei VBA handelt es sich um eine vollumfängliche Programmiersprache, die an Visual Basic aus der Microsoft Visual Studio-Suite angelehnt ist. VBA ist eine Interpreter-Sprache, der VBA-Programmcode wird also während der Laufzeit (= während der Ausführung des Programmcodes) vom jeweiligen Office-Programm analysiert und in vom Prozessor umsetzbaren Code, sogenannten Maschinen-Code, umgewandelt. Im Gegensatz zu Compiler-Programmiersprachen aus dem Microsoft Visual Studio, bei denen der VBA-Code direkt nach Fertigstellung in Maschinen-Code umgewandelt wird und es somit keinen zwischengeschalteten Interpreter mehr benötigt. Dennoch ist die Ausführung des VBA-Programmcodes – die fachgerechte Programmierung vorausgesetzt – sehr performant.

1.2 VBA-Editor als Programmierumgebung

Zur Bearbeitung des VBA-Codes steht in Excel, Outlook, PowerPoint und Word eine eigene Entwicklungsumgebung zur Verfügung, die als VBA-Editor bezeichnet wird. Der VBA-Editor wird in allen vier Programmen entweder über die Registerkarte Entwicklertools oder über die Tastenkombination Alt + F11 geöffnet.

Abbildung 3: Sämtliche Funktionen zum Thema VBA stehen in den Office-Programmen auf der Registerkarte Entwicklertools zur Verfügung.

Page 7: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 7 | 69

Abbildung 4: Der VBA-Editor arbeitet als eigenständige Anwendung und verfügt noch über die klassischen Menüstrukturen.

Zum Ausführen des VBA-Codes kann entweder die bei der Aufzeichnung des VBA-Codes (= Makros) zugewiesene Tastenkombination genutzt werden. Oder der Code kann über die Tastenkombination Alt + F8 sowie die anschließende Auswahl des VBA-Prozedurnamens aktiviert werden.

Abbildung 5: Das Dialogfeld dient zur Verwaltung der Makros (= VBA-Routinen) außerhalb des VBA-Editors.

Alternativ kann auch in den VBA-Editor gewechselt, die gewünschte Routine markiert und dann mit F5 gestartet werden.

Page 8: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 8 | 69

1.3 Speicherort des VBA-Codes

Die aufgezeichneten oder programmierten Makros, sprich der VBA-Code, wird je nach Office-Programm an anderen Stellen gespeichert. Dabei spielt das Dateiformat eine große Rolle.

Die hier angegebenen Pfade beziehen sich auf eine Office-Standard-Installation auf Basis des Click-to-Run-Setups (gestreamtes Setup, was beispielsweise bei der Einrichtung über das Office 365-Portal https://port.office.com oder bei der Nutzung des Office-Deployment-Tools zum Einsatz kommt).

Als Betriebssystem kommt für die Pfadangaben die jeweils aktuelle Windows 10-Version (Home, Pro, Enterprise) in der 64-Bit-Version zum Einsatz. Dokumentiert sind die tatsächlichen Pfade, die in der Eingabeaufforderung angezeigt werden; die „übersetzten“ Pfade des Datei Explorers kommen nicht zum Einsatz.

Manche Pfade sind bei einer Erstinstallation von Office noch nicht vorhanden und werden vom jeweiligen Office-Programm beim erstmaligen Zugriff auf den Pfad erst angelegt. Alternativ können sie beispielsweise über eine Softwareverteilung angelegt werden.

Sofern nicht ausdrücklich erwähnt, gelten die Office-Pfadangaben sowohl für die 32- als auch für die 64-Bit-Version von Office. Als Office-Versionen kommt Office 365/2019/2016 zum Einsatz. Zur Anpassung der Pfade an ältere Office-Versionen muss die interne Office-Versionsnummer in den Pfaden gegebenenfalls ersetzt werden: Office 365/2019/2016 Version 16 Office 2013 Version 15 Office 2010 Version 14 Office 2007 Version 12

MSI-Installationen oder Installationen aus dem Microsoft-Store nutzen teilweise andere Pfade. So fehlt bei den MSI-Installationen im Programmpfad beispielsweise der Ordner Root.

Bitte beachten: Viele der angegebenen Pfade können in den Optionen von Word oder der jeweiligen Programme bzw. via Gruppenrichtlinien geändert werden.

Word

Word kann den VBA-Code innerhalb von Dokumenten vom Typ .docm speichern. Ist die Word-Datei geladen, steht somit auch der VBA-Code zur Verfügung. Auch in Dokumentvorlagen lässt sich VBA-Code ablegen, diese tragen dann die Dateinamenerweiterung .dotm. Ein Dokument, das auf Basis einer Dokumentvorlage erzeugt wurde, erbt nicht den VBA-Code. Dieser bleibt in der Dokumentvorlage gespeichert und wird beim Öffnen des Dokumentes durch das automatische Hinzuladen der Dokumentvorlage aktiviert. Der VBA-Code ist somit nur einmal vorhanden, es gibt keine Redundanzen.

Page 9: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 9 | 69

Bei Word-Add-Ins mit VBA-Code handelt es sich um Dokumentvorlagen vom Typ .dotm; hier sorgt der Speicherort (= Startup-Ordner) dafür, dass aus der Dokumentvorlage ein Add-In wird.

Soll VBA-Code in Word immer zur Verfügung stehen, kann er in der Normal.dotm (= Standard-Dokumentvorlage von Word) abgelegt werden. Die Normal.dotm wird beim Start von Word automatisch geladen.

Standard-Pfad der Normal.dotm: %appdata%\Microsoft\Templates

Standard-Pfad für Add-Ins (User-Installation): %appdata%\Microsoft\Word\Startup

Standard-Pfad für Add-Ins (Local Machine, 32 Bit Office): C:\Program Files (x86)\Microsoft Office\Root\Office 16\Startup

Standard-Pfad für Add-Ins (Local Machine, 64 Bit Office): C:\Program Files\Microsoft Office\Root\Office 16\Startup

Excel

Soll VBA-Code in Excel-Arbeitsmappen abgelegt werden, müssen die Arbeitsmappen im Format .xlsm gespeichert werden. Bei Excel-Vorlagen mit VBA-Code muss das Format .xltm genutzt werden. Eine Arbeitsmappe, die auf Basis einer Excel-Vorlage erzeugt wurde, erbt den kompletten VBA-Code. Dieser ist somit redundant vorhanden und kann unabhängig von der Vorlage bearbeitet/genutzt werden.

Bei Excel-Add-Ins mit VBA-Code handelt es sich originär um Excel-Vorlagen, die dann als Excel-Add-In im Format .xlam gespeichert werden. Damit ein solches Excel-Add-In von Excel genutzt werden kann, muss es einmalig in Excel über die Excel-Optionen aktiviert werden.

Soll VBA-Code in Excel immer zur Verfügung stehen, kann er in der persönlichen Makroarbeitsmappe Personal.xlsb abgelegt werden.

Standard-Pfad der Personal.xlsb: %appdata%\Microsoft\Excel\XLSTART

Standard-Pfad für Add-Ins (User-Installation): %appdata%\Microsoft\AddIns

Standard-Pfad für Add-Ins (Local Machine, 32 Bit Office): C:\Program Files (x86)\Microsoft Office\Root\Office 16\AddIns

Standard-Pfad für Add-Ins (Local Machine, 64 Bit Office): C:\Program Files\Microsoft Office\Root\Office 16\AddIns

Page 10: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 10 | 69

PowerPoint

VBA-Code kann bei PowerPoint-Präsentationsdateien vom Typ .pptm gespeichert werden, und steht dann nur in dieser Datei zur Verfügung. Wird der VBA-Code in einer Präsentationsvorlage vom Typ .potm gespeichert und es wird eine neue Präsentation auf Basis dieser Präsentationsvorlage erzeugt, erbt die neue Präsentation den kompletten VBA-Code.

Bei PowerPoint-Add-Ins mit VBA-Code handelt es sich originär um Präsentationsvorlagen, die dann als PowerPoint-Add-In im Format .ppam gespeichert werden. Damit ein solches PowerPoint-Add-In von PowerPoint genutzt werden kann, muss es einmalig in PowerPoint über die PowerPoint-Optionen aktiviert werden.

Standard-Pfad für Add-Ins (User-Installation): %appdata%\Microsoft\AddIns

Standard-Pfad für Add-Ins (Local Machine, 32 Bit Office): C:\Program Files (x86)\Microsoft Office\Root\Office 16\AddIns

Standard-Pfad für Add-Ins (Local Machine, 64 Bit Office): C:\Program Files\Microsoft Office\Root\Office 16\AddIns

Outlook

In Outlook wird VBA-Code immer in einer einzigen Datei, der Datei VbaProject.otm, zentral gespeichert. Diese Datei wird beim Start von Outlook geladen, der VBA-Code steht somit sofort zur Verfügung.

Standard-Pfad der VbaProject.otm: %appdata%\Microsoft\Outlook

1.4 Aufbau des VBA-Codes

Im VBA-Editor wird – wie in klassischen Programmiersprachen – zwischen verschiedenen Bestandteilen unterschieden:

Module Der VBA-Programmcode wird in Modulen gespeichert. Die Aufteilung in mehrere, möglichst „sprechend“ bezeichnete Module dient der reinen Übersichtlichkeit und internen Variablen-Abgrenzung. Module werden für das Speichern von Routinen wie Prozeduren oder Funktionen genutzt.

Formulare Ein Dialogfeld wird als „Formular“ oder kurz „Form“ bezeichnet. Eine Form enthält beispielsweise Textfelder, Optionsfelder, Dropdown-Listenfelder und Schaltflächen – alle Elemente, die zur Benutzereingabe oder zur Ausgabe von Daten benötigt werden.

Page 11: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 11 | 69

Klassenmodul Für die objektorientierte Programmierung stehen Klassenmodule zur Verfügung, in denen wie bei jeder Hochsprache beliebige Klassen angelegt werden können, die dann von den Routinen aus den Modulen genutzt werden.

Beim VBA-Code ist zu beachten, dass die VBA-Kommandos in allen vier Programmen identisch sind. Sobald jedoch programmspezifische Funktionen genutzt werden – beispielsweis das Einfügen von Text in einem Dokument contra Einfügen in einer Tabellenzelle contra Einfügen in einem Folienplatzhalter contra Einfügen in einer E-Mail, kommen programmspezifische Kommandos zum Einsatz.

1.5 Leistungsumfang von VBA

Der Funktionsumfang von VBA beschränkt sich keineswegs nur auf die äußerst umfangreichen Standard-VBA-Kommandos oder die programmspezifischen Funktionsbibliotheken. VBA verfügt vielmehr auch über Kommandos für unzählige Systemfunktionen und kann zusätzlich via Einbindung externer Bibliotheken des Betriebssystems/von Fremdprogrammen erweitert werden. Somit hat VBA beispielsweise per API-Aufrufe Zugriff auf die komplette Windows/Mac-Umgebung.

Zur Automatisierung verfügt VBA über zahlreiche Auto-Funktionen, die beispielsweise beim Start des Office-Programms, beim Öffnen/Schließen einer bestehenden Datei oder beim Anlegen eines neuen Dokumentes/eines neuen Arbeitsblattes/einer neuen Präsentation auf Basis einer Vorlage ausgeführt werden (siehe Kapitel 1.5.1 „Befehlszeilenoptionen zur Vermeidung von Automatisierungsfunktionen“, Kapitel 1.5.2 „Auszug aus den Word-Events zur Automatisierung“ und Kapitel 1.5.3 „Auszug aus den Excel-Events zur Automatisierung“).

Neben den integrierten Auto-Funktionen lassen sich via Klassenmodule sogenannte Events aktivieren, die beim Ausführen bestimmter Programmfunktionen ausgeführt werden (Beispiel: Einfügen einer neuen Folie in PowerPoint)

Und zu guter Letzt kann VBA auch sich selbst modifizieren und den eigenen Programmcode erweitern (siehe Kapitel 1.5.4„Via VBA auf VBA zugreifen“).

1.5.1 Befehlszeilenoptionen zur Vermeidung von Automatisierungsfunktionen

Alle Office-Programme verfügen über zahlreiche Befehlszeilenoptionen („Command-Line-Parameter“), die beim Ausführen der jeweiligen Programm-EXE angegeben werden können und dann beispielsweise das Laden von Add-Ins oder das Ausführen von Makros verhindern.

Die umfangreiche Liste für alle aktuellen Office-Versionen ist unter dem folgenden Microsoft-Link zu finden:

Page 12: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 12 | 69

https://support.office.com/de-de/article/befehlszeilenoptionen-für-microsoft-office-produkte-079164cd-4ef5-4178-b235-441737deb3a6

1.5.2 Auszug aus den Word-Events zur Automatisierung

In Word stehen zahlreiche Events zur Verfügung, die zur Automatisierung genutzt werden können. So lassen sich beispielsweise Routinen beim Öffnen eines Dokumentes oder beim Laden eines Add-Ins ausführen.

Nachfolgend ein Auszug aus möglichen Events und deren Speicherort innerhalb der VBA-Editor-Code-Struktur:

Speicherort der folgenden Routinen: ThisDocument

Damit die nachfolgend aufgeführten Routinen ausgeführt werden, muss sich der Code in der jeweiligen Datei, der Dokumentvorlage oder dem Add-In befinden.

Document_Close() Funktion: Wird beim Schließen eines Dokumentes ausgeführt.

Hinweise: Alternative zum aus historischen Gründen vorhandenen AutoClose()-Event. In welcher Reihenfolge der AutoClose()-Event und der Document_Close()-Event ausgeführt werden, hängt von der Word-Version ab.

Document_New() Funktion: Wird beim Anlegen eines neuen Dokumentes auf Basis einer Dokumentvorlage ausgeführt.

Hinweise: Alternative zum aus historischen Gründen vorhandenen AutoNew()-Event. In welcher Reihenfolge der AutoNew()-Event und der Document_New()-Event ausgeführt werden, hängt von der Word-Version ab.

Document_Open() Funktion: Wird beim Öffnen eines bestehenden Dokumentes ausgeführt.

Hinweise: Alternative zum aus historischen Gründen vorhandenen AutoOpen()-Event. In welcher Reihenfolge der AutoOpen()-Event und der Document_Open()-Event ausgeführt werden, hängt von der Word-Version ab.

AutoClose() Funktion: Wird beim Schließen eines Dokumentes ausgeführt.

Hinweise: Alternative zum Document_Close()-Event. In welcher Reihenfolge der AutoClose()-Event und der Document_Close()-Event ausgeführt werden, hängt von der Word-Version ab.

Page 13: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 13 | 69

AutoNew() Funktion: Wird beim Anlegen eines neuen Dokumentes auf Basis einer Dokumentvorlage ausgeführt.

Hinweise: Alternative zum Document_New()-Event. In welcher Reihenfolge der AutoNew()-Event und der Document_New()-Event ausgeführt werden, hängt von der Word-Version ab.

AutoOpen() Funktion: Wird beim Öffnen eines bestehenden Dokumentes ausgeführt.

Hinweise: Alternative zum Document_Open()-Event. In welcher Reihenfolge der AutoOpen()-Event und der Document_Open()-Event ausgeführt werden, hängt von der Word-Version ab.

AutoExec Funktion: Wird beim Laden eines Add-Ins ausgeführt.

Hinweise: Der Event wird nur beim erstmaligen Start von Word ausgeführt. Beim Start einer weiteren Word-Instanz auf Basis der bereits geladenen Word-Version kommt der Event nicht zum Einsatz.

AutoExit Funktion: Wird beim Beenden eines Add-Ins ausgeführt.

Hinweise: Der Event wird nur beim erstmaligen Start von Word ausgeführt. Beim Start einer weiteren Word-Instanz auf Basis der bereits geladenen Word-Version kommt der Event nicht zum Einsatz.

Speicherort der folgenden Routinen: Klassenmodul

Die folgenden Routinen können „zentral“ in einem Add-In zum Einsatz kommen, um dann auf die von Dokumenten erzeugten Events zu reagieren. Voraussetzung für die folgenden Routinen ist, dass im Klassenmodul folgendes Event-Objekt erzeugt wird

Public WithEvents appWord As Word.Application

und dann in einem Code-Modul mit dem Kommando

Global wdEvent As New claEvents

die Klasse aktiviert und mit

Sub pEventHandlerActivate() Set wdEvent.appWord = Word.Application End Sub

der Event-Handler aktiviert wird.

appWord_NewDocument() Funktion: Wird beim Erstellen eines neuen Dokuments auf Basis einer Dokumentvorlage ausgeführt.

Page 14: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 14 | 69

appWord_DocumentOpen() Funktion: Wird beim Öffnen eines bestehenden Dokuments ausgeführt.

appWord_Quit() Funktion: Wird beim Schließen eines Dokuments ausgeführt.

appWord_WindowActivate() Funktion: Wird beim Wechsel eines Dokument-Fensters ausgeführt.

1.5.3 Auszug aus den Excel-Events zur Automatisierung

In Excel stehen zahlreiche Events zur Verfügung, die zur Automatisierung genutzt werden können. So lassen sich beispielsweise Routinen beim Öffnen eines Dokumentes oder beim Hinzufügen bzw. Löschen eines Arbeitsblattes anlegen.

Nachfolgend ein Auszug aus möglichen Events und deren Speicherort innerhalb der VBA-Editor-Code-Struktur:

Speicherort der folgenden Routinen: DieseArbeitsmappe

Damit die nachfolgend aufgeführten Routinen ausgeführt werden, muss sich der Code in der jeweiligen Arbeitsmappe oder der Arbeitsmappenvorlage befinden.

Workbook_BeforeClose () Funktion: Wird als letzte Funktion vor dem Schließen einer Arbeitsmappe ausgeführt.

Workbook_Open() Funktion: Wird beim Öffnen einer bestehenden Arbeitsmappe ausgeführt.

Workbook_NewSheet() Funktion: Wird beim Anlegen eines neuen Arbeitsblattes innerhalb der Arbeitsmappe ausgeführt.

Workbook_SheetBeforeDelete() Funktion: Wird als letzte Funktion vor dem Löschen eines Arbeitsblattes innerhalb der Arbeitsmappe ausgeführt.

Speicherort der folgenden Routinen: Klassenmodul

Die folgenden Routinen können „zentral“ in einem Add-In zum Einsatz kommen, um dann auf die von Arbeitsmappen erzeugten Events zu reagieren. Voraussetzung für die folgenden Routinen ist, dass im Klassenmodul folgendes Event-Objekt erzeugt wird

Public WithEvents appExcel As Excel.Application

und dann in einem Code-Modul mit dem Kommando

Global xlEvent As New claEvents

Page 15: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 15 | 69

die Klasse aktiviert und mit

Sub pEventHandlerActivate() Set xlEvent.appExcel = Excel.Application End Sub

der Event-Handler aktiviert wird.

appExcel_NewWorkbook() Funktion: Wird beim Erstellen einer neuen Arbeitsmappe auf Basis einer Arbeitsmappenvorlage ausgeführt (gilt nur für Excel-Add-Ins).

appExcel_WorkbookOpen() Funktion: Wird beim Öffnen einer bestehenden Arbeitsmappe ausgeführt.

1.5.4 Via VBA auf VBA zugreifen

Via VBA ist es möglich, den eigenen VBA-Code oder den VBA-Code einer anderen Datei zu modifizieren. Dies ist in puncto Sicherheitseinstellungen besonders kritisch, da sich so selbstmodifizierende Makro-Viren erstellen lassen.

Damit VBA sich selbst modifizieren kann, muss wie in Kapitel 2.3 „Achtung Viren-Einfallstor: Entwicklereinstellung“ beschrieben, das Kontrollkästchen Zugriff auf das VBA-Projektmodell vertrauen im Trust Center aktiv sein. Ist das Kontrollkästchen inaktiv und entsprechender Modifikationscode wird ausgeführt, erscheint die folgende Meldung und der Vorgang wird abgebrochen:

Abbildung 6: Ist keine Freigabe via Kontrollkästchen Zugriff auf das VBA-Projektmodell vertrauen vorhanden, erscheint diese Meldung beim Versuch, das VBA-Objektmodell via VBA anzusprechen.

Nachfolgend ein einfaches, unbedenkliches Code-Beispiel, das auf die VBA-Umgebung der eigenen Datei zugreift und ausgibt, welche Komponenten gefunden wurden. Damit der Code

Page 16: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 16 | 69

funktioniert, muss neben der Trust-Center-Einstellung im VBA-Editor unter Extras | Verweise der Verweis auf das Modul Microsoft Visual Basic for Applications Extensibility 5.3 gesetzt sein:

Abbildung 7: Für den VBA-Zugriff auf VBA muss der Veweis auf die Applications Extensibilty 5.3 gesetzt sein.

Sub pGetComponents() Dim objModule As VBComponent Dim strComponents As String strComponents = "" For Each objModule In ThisDocument.VBProject.VBComponents strComponents = strComponents & "Modul-Typ: " & _ fGetType(objModule.Type) & ", " & _ "Modul-Name: " & objModule.Name & _ vbNewLine & vbNewLine Next objModule MsgBox Prompt:=strComponents, _ Buttons:=vbInformation, _ Title:="Gefundene Komponenten:" End Sub

Der wichtigste Teil der obigen Routine ist die Zeile For Each objModule In ThisDocument.VBProject.VBComponents, in der in einer Collection alle VB-Komponenten der Reihe nach ermittelt werden. Um welche Komponenten es sich im Detail handelt, wird dann über die folgende Funktion ermittelt:

Page 17: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 17 | 69

Function fGetType(ByVal intvType As Integer) As String fGetType = "" Select Case intvType Case 1 fGetType = "vbext_ct_StdModule" Case 2 fGetType = "vbext_ct_ClassModule" Case 3 fGetType = "vbext_ct_MSForm" Case 11 fGetType = "vbext_ct_ActiveXDesigner" Case 100 fGetType = "vbext_ct_Document" Case Else fGetType = "Unbekannt" End Select End Function

Entsprechend des obigen Beispiels lässt sich auch gezielt VBA-Code modifizieren, hinterlegte Internetadressen zum Abruf von Schadcode anpassen, nach anderen VBA-Speicherquellen (siehe Kapitel 1.3 „Speicherort des VBA-Codes“) suchen, um sich selbst zu verteilen usw.

Page 18: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 18 | 69

2. Makroschutz: Ungewollte Ausführung verhindern Der in Kapitel 1. „Was ist ein Makro, was ist VBA?“ beschriebene Leistungsumfang lässt sich leider nicht nur für nützliche Funktionen wie die Vorlagenverwaltung, automatische Datenverarbeitung etc. nutzen. Insbesondere die in Kapitel 1.5 „Leistungsumfang von VBA“ beschriebenen Auto-Funktionen machen die VBA-Umgebung von Office für Programmierer von Schadprogrammen interessant.

2.1 Makro-Viren – Schadprogramme im Office-Datei-Format

Befindet sich beispielsweise in einer als Rechnung.docm bezeichneten, via E-Mail versendeten Word-Datei VBA-Code, ist die Wahrscheinlichkeit groß, dass die Mehrzahl der Empfänger die Datei ohne weitere Kontrolle sofort öffnet. Wird der VBA-Code via Auto-Funktion jetzt automatisch gestartet, kann er sofort – für den Anwender unsichtbar – beliebige Funktionen auf dem PC/Mac ausführen.

Solche Schadprogramme gab es in der Vergangenheit immer wieder, sie wurden unter dem Begriff „Makro-Virus“ bekannt (wenngleich es sich richtigerweise um VBA-Viren handelt). Der erste weltweit bekannte Fall war im März 1999 das Makro-Virus Melissa, das beim Öffnen einer Word-Datei sämtliche Empfänger aus Outlook ermittelt und diese angemailt hat. Der geschätzte Schaden lag weltweit bei rund 80 Millionen Dollar (Quelle: https://de.wikipedia.org/wiki/Melissa_(Computervirus)). Der bekannteste und gefährlichste aktuelle Vertreter (Stand Q2/Q3 2019) der sich der Makro-Funktion bedient, ist Emotet (siehe https://de.malwarebytes.com/emotet).

Während lange Zeit an der Makro-Viren-Front Ruhe herrschte, haben diese in den letzten drei Jahren wieder enorm zugelegt. Aktuelle Makro-Viren arbeiten jetzt deutlich filigraner und subtiler. Sie nutzen zum einen das alte Word-Binärformat .doc, bei dem am Dateinamen nicht zu erkennen ist, dass sich darin VBA-Code befindet.

Damit die Makro-Viren nicht von Schutzprogrammen erkannt werden, lädt der VBA-Code in der doc-Datei den eigentlichen Schadcode erst zu einem späteren Zeitpunkt von unterschiedlichen Internetservern nach; oft durch Ausführung von Windows-Powershell-Kommandos, denen – bei nicht ausreichender Einschränkung der Benutzerrechte – die ganze Welt erschreckend offen steht. Außerdem kopiert sich der VBA-Code von einer Word-Datei zur nächsten, sodass sich der Schadcode in Windeseile im ganzen Netzwerk verteilt.

Da der ganze Vorgang schrittweise erfolgt und das eigentliche Makro-Virus – sprich der VBA-Code in der Word-Datei – immer wieder modifiziert wird, ist es für Schutzprogramme sehr schwer, die Oberhand zu behalten.

Page 19: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 19 | 69

2.2 Makro-Schutzeinstellungen – was wie einstellen?

Das Makro-Virus im E-Mail-Postfach, auf dem USB-Stick, dem Downloadbereich des Internetservers etc. ist entsprechend solange problemlos, bis die Datei mit dem VBA-Code geöffnet wird und die VBA-Routine automatisch startet.

Bei der Auswahl der Makro-Schutzeinstellungen immer auch die in Kapitel 4 „Vertrauenswürdige Speicherorte und Dokumente: Auswirkungen auf die Sicherheitseinstellungen“ beschriebenen Zusammenhänge der Schutzeinstellungen und vertrauenswürdigen Speicherorten/Dokumenten beachten!

Dieses Problem hat Microsoft schon lange erkannt und entsprechende Schutzfunktionen in den Office-Programmen integriert. Eine Standard-Installation von Word ist beispielsweise so eingestellt, dass beim Öffnen der Datei erkannt wird, ob sich darin VBA-Code befindet. Wenn ja, wird das Ausführen des Codes automatisch geblockt und es erscheint unterhalb des Menübands eine gelbe Hinweisleiste.

Abbildung 8: Die Makro-Meldung erscheint je nach Einstellung beim Öffnen einer Datei mit VBA-Code.

Der Anwender hat jetzt die Chance, das Dokument zu Schließen und nicht auf die Schaltfläche Inhalt aktivieren bzw. Bearbeitung aktivieren zu klicken (die Bezeichnung der Schaltfläche unterscheidet sich je nach Word-Version). In diesem Fall passiert nichts, da der VBA-Code nicht ausgeführt wird.

Bestätigt der Anwender die Meldung hingegen mit einem Klick auf Inhalt aktivieren bzw. Bearbeitung aktivieren, wird die VBA-Umgebung für dieses Dokument aktiviert und eventuell vorhandene Auto-Funktionen sofort gestartet.

Page 20: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 20 | 69

Abbildung 9: Autofunktionen sorgen dafür, dass beispielsweise beim Öffnen der Datei Makros ausgeführt werden.

Da die gelbe Warnmeldung stört, stellen fatalerweise viele Admins in den Einstellungen des jeweiligen Office-Programms unter Datei | Optionen | Trust Center | Einstellungen für das Trust Center | Makroeinstellungen die Makroeinstellungen gleich auf Alle Makros aktivieren. Oft sogar via GPO, sodass der Anwender selbst die Einstellung nicht mehr ändern kann.

Abbildung 10: Makroeinstellung: Praktisch ist leider nicht gleich sicher.

Was auf den ersten Blick so ungemein praktisch erscheint, hat zur Folge, dass jetzt sämtliche Makro-Viren ungehindert ausgeführt werden. Der Anwender hat keine Chance mehr, sich vor Makro-Viren zu schützen. Außer, er öffnet generell keine Dateien mehr, die er von Dritten erhalten hat …

Page 21: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 21 | 69

Welche Einstellung ist dann richtig?

Das generelle Unterbinden der Ausführung von Makros (erste Option Alle Makros ohne Benachrichtigung deaktivieren) würde zwar für maximale Sicherheit sorgen, hat aber zur Folge, dass sich kein Anwender mehr via Makros, sprich VBA-Code, die Arbeit erleichtern kann. Dies ist – mit Ausnahme von Hochsicherheitsumgebungen – demnach keine Lösung.

Die Standard-Einstellung (zweite Option) Alle Makros mit Benachrichtigung deaktivieren ist immer dann zu wählen, wenn nicht ausschließlich digital signierte Makros zum Einsatz kommen können (siehe folgender Punkt). Sprich: Diese Einstellung ist – verbunden mit dem unterdrückten Reflex des Anwenders beim Erscheinen der gelben Warnmeldung sofort auf Inhalt aktivieren bzw. Bearbeitung aktivieren zu klicken – in der Praxis die einzig praktikable.

Sofern jeder Anwender, der sich eigene Makros erstellt, über eine Möglichkeit verfügt, diese mit einer digitalen Signatur zu versehen, kann die dritte Option Alle Makros, außer digital signierten Makros deaktivieren gewählt werden. Das hat zur Folge, dass bei Dateien mit gültigem Zertifikat keine gelbe Warnmeldung mehr erscheint, der VBA-Code in allen anderen Dateien wird ignoriert.

Die Einstellung Alle Makros aktivieren (nicht empfohlen, weil potenziell gefährlicher Code ausgeführt werden kann) ist unter allen Umständen zu vermeiden.

Wichtig: Die Makro-Schutzeinstellungen sind für jedes Office-Programm getrennt einzustellen. Sie lassen sich leider – auch nicht per GPO – für alle Office-Programme „am Stück“ festlegen!

2.3 Achtung Viren-Einfallstor: Entwicklereinstellung

Neben den Makroeinstellungen stellt noch eine weitere Einstellung eine enorme Gefahr für die Sicherheit dar: Das Kontrollkästchen Zugriff auf das VBA-Projektmodell vertrauen.

Abbildung 11: Das Kontrollkästchen öffnet Viren Tür und Tor - unbedingt prüfen!

Page 22: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 22 | 69

Ist das Kontrollkästchen aktiv, kann der VBA-Code in einer Datei entweder sich selbst modifizieren oder den VBA-Code anderer Dateien bearbeiten.

Für Makro-Viren bedeutet das Kontrollkästchen, dass – sofern es aktiv ist – das Makro-Virus die Möglichkeit hat, sich in andere Dateien zu übertragen und sich so zu verbreiten. Da auf jedem PC mit Word die Normal.dotm eine Datei mit der Möglichkeit zum Speichern von VBA-Code ist, haben Makro-Viren bei aktivem Kontrollkästchen freies Spiel und können sich ungehindert verbreiten. Ein Grund dafür, warum Makro-Viren oft im Gewand von Word-Dateien daherkommen.

Auch hier ist zu beobachten, dass viele Administratoren das Kontrollkästchen aus Unwissenheit über die Zusammenhänge aktivieren und per GPO vor Änderungen sperren. Der Anwender hat somit auch hier keine Möglichkeit, einem Makro-Virus zu entkommen. Fatal!

Die Empfehlung für die korrekte Einstellung ist ganz einfach: Das Kontrollkästchen muss ausgeschaltet sein und Änderungen daran per GPO verhindert werden. Nur dann ist sichergestellt, dass, wenn sich ein Makro-Virus einschleicht, es sich nicht mehr verbreiten kann.

Leider gibt es in der Praxis beispielsweise im SAP-Umfeld Excel-Lösungen, die nur bei aktivem Kontrollkästchen korrekt arbeiten. Diese Lösungen kopieren demnach VBA-Code und modifizieren sich selbst bzw. andere Dateien. Das ist bezüglich der Sicherheitsrichtlinien für jedes Unternehmen höchst bedenklich, da auch Schutzprogramme nicht eingreifen können (der von den Schutzprogrammen typischerweise erstellte Hashwert der Dateien mit VBA-Code ändert sich ständig – die Dateien können nicht zuverlässig geschützt werden).

Sind solche Lösungen im Unternehmen im Einsatz, muss notgedrungen fallweise auf diesen PCs das Einschalten des Kontrollkästchen für das jeweilige Programm geprüft und dann erlaubt werden.

Für alle inhouse erstellten Makros gilt: Bitte so programmieren, dass das aktive Kontrollkästchen nicht benötigt wird.

Wichtig: Das Kontrollkästchen bei den Makroeinstellungen für Entwickler ist für jedes Office-Programm getrennt einzustellen. Es lässt sich leider – auch nicht per GPO – für alle Office-Programme „am Stück“ festlegen!

Page 23: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 23 | 69

3. VBA-Code digital signieren Die höchste Schutzstufe beim Einsatz von VBA-Code ist das digitale Signieren des Codes. Dann lassen sich die Office-Programme – wie in Kapitel „2.2 Makro-Schutzeinstellungen – was wie einstellen?“ beschrieben – so einstellen, dass VBA-Code nur mit hinterlegter digitaler Signatur ausgeführt wird. Da der Erwerb einer digitalen Signatur strengen Regeln unterworfen ist, wird es für Makro-Viren-Programmierer sehr schwer, eine digitale Signatur zu erwerben und den Schadcode damit zu signieren.

Beim Einsatz von digital signiertem VBA-Code immer auch die in Kapitel 4 „Vertrauenswürdige Speicherorte und Dokumente: Auswirkungen auf die Sicherheitseinstellungen“ beschriebenen Zusammenhänge von signiertem VBA-Code und vertrauenswürdigen Speicherorten/Dokumenten beachten!

3.1 Wie funktioniert ein digitales Zertifikat?

Ein digitales Zertifikat besteht immer aus zwei Teilen: dem öffentlichen und dem privaten Schlüssel. Die Schlüssel liegen als Datei in einem fest definierten Format vor und enthalten letztlich u. A. eine vom Zertifikat abhängige Zeichenfolge.

Ein digitales Zertifikat wird von einer Zertifizierungsstelle (im Beispiel „QuoVadis“: https://www.quovadisglobal.de/) erzeugt. QuoVadis sorgt dabei als offiziell registrierter, weltweit im Einsatz befindlicher Zertifizierer für die Veröffentlichung des öffentlichen Schlüssels. Ein öffentlicher Schlüssel kann bereits fester Bestandteil jeder Windows-Installation sein und wird dann im Rahmen der Windows-Updates automatisch aktuell gehalten. Die Mehrzahl der öffentlichen Schlüssel wird beim erstmaligen Gebrauch automatisch aus dem Internet auf den PC übertragen.

Page 24: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 24 | 69

Abbildung 12: QuoVadis ist anerkannter Trust Service Provider (TSP).

Dass der öffentliche Schlüssel bereits vorhanden ist, kann – wie in der vorherigen Abbildung zu sehen – im Internet Explorer über Extras | Internetoptionen, Registerkarte Inhalte, Schaltfläche Zertifikate, Registerkarte Vertrauenswürdige Stammzertifizierungsstellen nachgeschlagen werden.

Bei der Auswahl eines Zertifizierers ist sicherzustellen, dass dieser seriös und die Hürde, ein Zertifikat zu erhalten, maximal hoch ist.

Wird ein digitales Zertifikat missbraucht, kann der Zertifizierer das Zertifikat als ungültig deklarieren, sodass es in wenigen Minuten weltweit nicht mehr nutzbar ist – ein aktiver Internetzugang auf Seiten der Clients vorausgesetzt.

Der private Schlüssel wird beispielsweise über einen E-Token vom Zertifizierer zur Verfügung gestellt. Ist ein Office-unterstützendes digitales Zertifikat vorhanden, lassen sich damit je nach Zertifikatstyp nicht nur VBA-Code, sondern auch Dokumente signieren.

3.2 VBA-Code digital signieren

Die digitale Signatur bezieht sich immer auf eine Datei mit allen bezüglich der VBA-Umgebung darin enthaltenen Formularen, Modulen etc. Das Signieren ist – sofern auf dem PC eine digitale Signatur eines entsprechenden Anbieters eingerichtet ist – in wenigen Schritten erfolgt:

1. Zuerst wird im gewünschten Office-Programm die Datei mit dem VBA-Code geladen.

Page 25: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 25 | 69

2. Jetzt wird beispielsweise mit Alt + F11 in den VBA-Editor gewechselt.

3. Im VBA-Editor wird auf der rechten Seite im Projekt-Explorer ein beliebiger Bereich der zu zertifizierenden Datei markiert.

4. Weiter geht es im VBA-Editor im Menü Extras, Befehl Digitale Signatur.

Abbildung 13: Die digitale Signatur wird im VBA-Editor zugewiesen.

5. Nun öffnet sich das Dialogfeld Digitale Signatur, in dem über die Schaltfläche Wählen die gewünschte Signatur ausgewählt und dann das Dialogfeld mit OK bestätigt wird.

Abbildung 14: Über die Schaltfläche Wählen wird die digitale Signatur festgelegt.

6. Zum Schluss muss je nach Anbieter in aller Regel das Zertifikat mit einem Passwort, Token etc. bestätigt werden.

Es ist zu beachten, dass bei jeder Änderung am VBA-Code die Gültigkeit des Zertifikats mit dem Passwort, Token etc. bestätigt werden muss. Ohne Bestätigung verfällt das Zertifikat und der VBA-Code ist nicht mehr signiert.

Page 26: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 26 | 69

4. Vertrauenswürdige Speicherorte und Dokumente: Auswirkungen auf die Sicherheitseinstellungen

Bei den Einstellungen der in Kapitel 2 „Makroschutz: Ungewollte Ausführung verhindern“ und Kapitel 3 „VBA-Code digital signieren“ beschriebenen Sicherheitsfunktionen sind immer auch die vertrauenswürdigen Speicherorte und vertrauenswürdigen Dokumente zu beachten, da diese bei nicht sachgemäßer Konfiguration die anderen Sicherheitsfunktionen vollständig torpedieren und alle Bemühungen zunichtemachen.

Eingestellt werden die vertrauenswürdigen Speicherorte und Dateien in den Office-Programmen Excel, PowerPoint und Word in den Optionen (Datei | Optionen) unter Trust Center | Einstellungen für das Trust Center | Vertrauenswürdige Speicherorte und Vertrauenswürdige Dokumente.

Abbildung 15: Vertrauenswürdige Speicherorte/Dokumente werden in den Optionen festgelegt.

4.1 So wirken sich vertrauenswürdige Speicherorte aus

Vertrauenswürdige Speicherorte haben direkten Einfluss darauf, wie die Office-Programme Excel, PowerPoint und Word mit VBA-Code in den Office-Dateien umgeht. Zu beachten ist,

Page 27: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 27 | 69

dass in den Dateien enthaltener XML-Code für die Menüband-Anpassungen immer aktiv ist (Dateien mit XML-Code können deshalb auch vom Typ .dotx sein).

Es gelten folgende Regeln:

Ist ein Speicherort als vertrauenswürdig definiert (siehe Kapitel 4.2 „Standardeinstellungen der vertrauenswürdigen Speicherorte“, Kapitel 4.3 „Vertrauenswürdige Speicherorte: Benutzeranpassungen“ und Kapitel 4.4 „Vertrauenswürdige Speicherorte: Anpassungen via GPOs“)? Befindet sich eine Datei mit VBA-Code in diesem Speicherort? Dann wird der VBA-Code immer ausgeführt – unabhängig von den anderen Sicherheitseinstellungen des Makroschutzes (siehe Kapitel 2 „Makroschutz: Ungewollte Ausführung verhindern“) oder digitalen Signaturen (siehe Kapitel 3 „VBA-Code digital signieren“).

Deshalb ist bei der Festlegung vertrauenswürdiger Speicherorte sehr genau zu prüfen, ob ein Ordner (sowie je nach Einstellung in den Optionen der vertrauenswürdigen Speicherorte auch die dazugehörigen Unterordner) tatsächlich vertrauenswürdig sein soll.

Es ist sinnlos, die Makroschutzeinstellungen auf Alle Makros ohne Benachrichtigung deaktivieren einzustellen, während der Ordner, in dem sich die Datei mit VBA-Code befindet, als vertrauenswürdig eingestuft wurde. Denn in diesem Fall wird der VBA-Code ohne Meldung/Rückfrage ausgeführt.

Ebenso ist es sinnlos, den VBA-Code digital zu signieren und die Makroschutzeinstellungen auf Alle Makros, außer digital signierten Makros deaktivieren einzustellen, wenn die Datei mit signiertem VBA-Code in einem vertrauenswürdigen Ordner abgelegt ist. Denn auch hier wird der VBA-Code ohne Meldung/Rückfrage ausgeführt.

Niemals voreilig in den Optionen eines vertrauenswürdigen Speicherorts das Kontrollkästchen Unterordner dieses Speicherorts sind ebenfalls vertrauenswürdig aktivieren (siehe Abbildung 16). Denn so werden mit nur einem Mausklick komplette Ordnerstrukturen schlagartig ungeschützt und VBA-Code kann beliebig ausgeführt werden!

Abbildung 16: Unterordner nur nach ausführlicher Prüfung und in absoluter Ausnahme freigeben.

Page 28: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 28 | 69

Ist ein Ordner nicht bei den vertrauenswürdigen Speicherorten hinterlegt, gelten für die Dateien mit VBA-Code die Makroschutz-Einstellungen und es kann in Verbindung mit der digitalen Signatur ein hoher Sicherheitsstand erreicht werden.

Resümee:

Vertrauenswürdige Speicherorte nur für die Ordner einsetzen, in denen die Umgebung auch tatsächlich geschützt ist und kein Zugriff von außen/durch Dritte möglich ist. Niemals pauschal Root-Ordner inkl. der Unterordner freigeben.

Vertrauenswürdige Speicherorte sollten ausschließlich von Seiten der IT via GPOs gepflegt werden, der Anwender sollte – schon aus reinem Selbstschutz – die Einstellungen nicht ändern können.

Die Standardvorgaben der vertrauenswürdigen Speicherorte (siehe Kapitel 4.2 „Standardeinstellungen der vertrauenswürdigen Speicherorte“) sind zu prüfen und bei Bedarf alle nicht benötigten vertrauenswürdigen Speicherorte zu entfernen.

Add-Ins auf Basis von VBA sollten möglichst im Programmordner abgelegt werden und auf den Programmordner via Domain-Integration/GPO sollten keine Schreibrechte bestehen. So wird sichergestellt, dass Add-Ins nicht kompromittiert werden können. Pfad für Excel und PowerPoint:

64-Bit Office-Version: C:\Program Files\Microsoft Office(\Root)\ Office<Version>\ADDINS\

32-Bit Office-Version: C:\Program Files (x86)\Microsoft Office(\Root)\Office<Version>\ADDINS\

Pfad für Word:

64-Bit Office-Version: C:\Program Files\Microsoft Office(\Root)\ Office<Version>\Startup\

32-Bit Office-Version: C:\Program Files (x86)\Microsoft Office(\Root)\Office<Version>\Startup\

Der Pfadbestandteil \Root gilt nur für die Click-to-Run-Installation von Office. Bei Office 2013 und 2016 Volume-License-Versionen mit MSI-Installationen ist dieser Pfadbestandteil nicht vorhanden.

Page 29: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 29 | 69

Nach dem Festlegen der vertrauenswürdigen Speicherorte mithilfe von Testdateien mit VBA-Code in jedem der drei Office-Programme verifizieren, ob die Sicherheitseinstellungen wie gewünscht arbeiten.

4.2 Standardeinstellungen der vertrauenswürdigen Speicherorte

Wird nach einer Neuinstallation von Office im Trust Center die Anzeige der Vertrauenswürdigen Speicherorte geöffnet, sind dort je nach Office-Programm unterschiedliche Einträge standardmäßig vorhanden – die auch nicht vorschnell entfernt werden sollten, da sie Auswirkungen auf die Funktionsfähigkeit der Programme haben können.

Wichtig: Vertrauenswürdige Speicherorte müssen für jedes der drei in dieser Dokumentation behandelten Office-Programme Excel, PowerPoint und Word einzeln eingestellt werden.

4.2.1 Vertrauenswürdige Speicherorte in Excel

Excel verfügt standardmäßig über sechs vertrauenswürdige Speicherorte im Bereich Speicherorte des Benutzers.

Abbildung 17: Standard-Einstellungen der vertrauenswürdigen Speicherorte in Excel.

Page 30: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 30 | 69

Folgende vertrauenswürdige Speicherorte sind in Excel standardmäßig vorhanden:

Pfad Bedeutung/Empfehlung

64-Bit Office-Version: C:\Program Files\Microsoft Office(\Root)\Templates\

32-Bit Office-Version: C:\Program Files (x86)\Microsoft Office(\Root)\Templates\

Unterordner zulässig: Ja

Laut hinterlegter Beschreibung ist dies der „Excel-Standardspeicherort: Anwendungsvorlagen“, was in der Praxis falsch ist. Denn beim Standard-Ordner für Vorlagen greift Excel zum einen bei den Benutzervorlagen auf den Vorlagen-Pfad in den Excel-Optionen zurück (Datei | Optionen | Speichern | Standardspeicherort für persönliche Vorlagen).

Für gemeinsame Vorlagen nutzt Excel den Pfad aus den Word-Optionen (Datei | Optionen | Erweitert | Dateispeicherorte | Arbeitsgruppenvorlagen). Und zusätzliche Vorlagenpfade müssen erst via GPO gesetzt werden.

Resümee:

Prüfen Sie, ob in dem Ordner tatsächlich Vorlagen abgelegt werden. Sollten sich dort – wie in fast allen Office-Installationen – nur belanglose, im Lieferumfang von Office enthaltene Vorlagen befinden (im Unterordner mit dem Language Code ID, kurz LCID (siehe Kapitel 5)? Ist keiner der Vorlagenpfade auf diesen Pfad angepasst? Dann den Eintrag aus Sicherheitsgründen entfernen. Bitte auch dann, wenn der Programmordner in Unternehmen für User beispielsweise via Domain-Anmeldung standardmäßig schreibgeschützt ist und nur Admins in den Ordner schreiben können.

Hinweise:

Der Pfadbestandteil \Root gilt nur für die Click-to-Run-Installation von Office. Bei Office 2013 und 2016 Volume-License-Versionen mit MSI-Installationen ist dieser Pfadbestandteil nicht vorhanden.

Der Ordner C:\Program Files wird im Datei Explorer der deutschen Windows-Version als C:\Programme angezeigt. In der Eingabeaufforderung sowie beim Klick in die Adressleiste im Datei Explorer erscheint hingegen der Originalname.

Page 31: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 31 | 69

Pfad Bedeutung/Empfehlung

Der Ordner C:\Program Files (x86) wird im Datei Explorer der deutschen Windows-Version als C:\Programme (x86) angezeigt. In der Eingabeaufforderung sowie beim Klick in die Adressleiste im Datei Explorer erscheint hingegen der Originalname.

C:\Users\<Benutzer>\AppData\Roaming\Microsoft\Excel\XLSTART\

Unterordner zulässig: Nein

Laut hinterlegter Beschreibung ist dies der „Excel-Standardspeicherort: Benutzer-Startup“. In diesem Ordner befinden sich alle Excel-Dateien, die beim Start von Excel automatisch geladen werden.

Da sich der Pfad im Profil des Benutzers befindet, handelt es sich um benutzerbezogene Dateien („User-Installation“) – siehe auch folgender Eintrag zum „Local Machine“-basierenden Pfad.

Dabei kann es sich sowohl um Dateien ohne VBA-Code vom Typ .xlsx/.xltx (beispielsweise Mappe.xltx und Tabelle.xltx) handeln, als auch um Dateien mit VBA-Code vom Typ .xlsm/.xltm).

In dem hier hinterlegten Ordner legt Excel standardmäßig auch die Personal.xlsb ab, also die Datei, in der aufgezeichnete „Makros“ (= VBA-Routinen), die immer zur Verfügung stehen sollen, von Excel abgelegt werden.

Resümee:

Der vertrauenswürdige Speicherort wird zwingend benötigt, da sich sonst die Anwender keine globalen Makros anlegen können.

Hinweise:

Der Ordner C:\Users wird im Datei Explorer der deutschen Windows-Version als C:\Benutzer angezeigt. In der Eingabeaufforderung sowie beim Klick in die Adressleiste im Datei Explorer erscheint hingegen der Originalname.

64-Bit Office-Version: C:\Program Files\Microsoft

Laut hinterlegter Beschreibung ist dies der „Excel-Standardspeicherort: Excel-Startup“. In diesem Ordner

Page 32: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 32 | 69

Pfad Bedeutung/Empfehlung Office(\Root\)Office<Version>\XLSTART\

32-Bit Office-Version: C:\Program Files (x86)\Microsoft Office(\Root)\Office<Version>\XLSTART\

Unterordner zulässig: Ja

befinden sich alle Excel-Dateien, die beim Start von Excel automatisch geladen werden.

Da sich der Pfad im Programmordner befindet, handelt es sich um Dateien, die für alle Benutzer dieser Umgebung gelten („Local Machine“-basierend, wie bei Terminal-Server-Umgebungen sinnvoll). Siehe auch vorheriger Eintrag zum „User-Installation“-basierenden Pfad.

Dabei kann es sich sowohl um Dateien ohne VBA-Code vom Typ .xlsx/.xltx handeln, als auch um Dateien mit VBA-Code vom Typ .xlsm/.xltm).

In dem hier hinterlegten Ordner legt Excel standardmäßig auch die Personal.xlsb ab, also die Datei, in der aufgezeichnete „Makros“ (= VBA-Routinen), die immer zur Verfügung stehen sollen, von Excel abgelegt werden.

Resümee:

Der vertrauenswürdige Speicherort wird nur dann benötigt, wenn er genutzt wird und sich darin auch Dateien vom Typ .xlsm/.xltm befinden. In Domain-basierenden Umgebungen haben die Anwender keine Schreibrechte in diesem Ordner und nur die IT kann hier Dateien ablegen, sodass die IT eindeutig klären kann, ob der Ordner vertrauenswürdig sein muss.

Hinweise:

Der Pfadbestandteil \Root gilt nur für die Click-to-Run-Installation von Office. Bei Office 2013 und 2016 Volume-License-Versionen mit MSI-Installationen ist dieser Pfadbestandteil nicht vorhanden.

Der Ordner C:\Program Files wird im Datei Explorer der deutschen Windows-Version als C:\Programme angezeigt. In der Eingabeaufforderung sowie beim Klick in die Adressleiste im Datei Explorer erscheint hingegen der Originalname.

Der Ordner C:\Program Files (x86) wird im Datei Explorer der deutschen Windows-Version als C:\Programme (x86) angezeigt. In der

Page 33: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 33 | 69

Pfad Bedeutung/Empfehlung

Eingabeaufforderung sowie beim Klick in die Adressleiste im Datei Explorer erscheint hingegen der Originalname.

<Version> ist bei Office 365/2019/2016 durch 16 und bei Office 2013 durch 15 zu ersetzen (siehe auch Kapitel 1.3 „Speicherort des VBA-Codes“).

C:\Users\<Benutzer>\AppData\Roaming\Microsoft\Templates\

Unterordner zulässig: Nein

Laut hinterlegter Beschreibung ist dies der „Excel-Standardspeicherort: Benutzervorlagen“, was in der Praxis nicht stimmen muss. Denn beim Standard-Ordner für Vorlagen greift Excel zum einen bei den Benutzervorlagen auf den Vorlagen-Pfad in den Excel-Optionen zurück (Datei | Optionen | Speichern | Standardspeicherort für persönliche Vorlagen).

Für gemeinsame Vorlagen nutzt Excel den Pfad aus den Word-Optionen (Datei | Optionen | Erweitert | Dateispeicherorte | Arbeitsgruppenvorlagen).

Resümee:

Ist der Benutzervorlagen-Pfad in den Word-Optionen mit dem hier hinterlegten Pfad identisch, kann die Einstellung für Excel bestehen bleiben. Ist in Word ein anderer Benutzervorlagen-Pfad hinterlegt, muss dieser Pfad entsprechend angepasst werden.

Werden keine Excel-Vorlagen mit VBA-Code genutzt, ist der Pfad nach entsprechender Verifikation in Excel zu löschen.

Hinweise:

Der Ordner C:\Users wird im Datei Explorer der deutschen Windows-Version als C:\Benutzer angezeigt. In der Eingabeaufforderung sowie beim Klick in die Adressleiste im Datei Explorer erscheint hingegen der Originalname.

64-Bit Office-Version: C:\Program Files\Microsoft

Laut hinterlegter Beschreibung ist dies der „Excel-Standardspeicherort: Office-Startup“.

Dieser Ordner wird für Word-Add-Ins genutzt, die als „Local Machine“-Installation für alle Benutzer des

Page 34: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 34 | 69

Pfad Bedeutung/Empfehlung Office(\Root)\Office<Version>\STARTUP\

32-Bit Office-Version: C:\Program Files (x86)\Microsoft Office(\Root)\Office<Version>\STARTUP\

Unterordner zulässig: Ja

Computers (beispielsweise bei Terminal-Server-Installationen) installiert wurde.

Resümee:

Der Ordner ist für Word reserviert und sollte für Excel nicht genutzt werden. Entsprechend ist der vertrauenswürdige Speicherort zu entfernen.

Hinweise:

Der Pfadbestandteil \Root gilt nur für die Click-to-Run-Installation von Office. Bei Office 2013 und 2016 Volume-License-Versionen mit MSI-Installationen ist dieser Pfadbestandteil nicht vorhanden.

Der Ordner C:\Program Files wird im Datei Explorer der deutschen Windows-Version als C:\Programme angezeigt. In der Eingabeaufforderung sowie beim Klick in die Adressleiste im Datei Explorer erscheint hingegen der Originalname.

Der Ordner C:\Program Files (x86) wird im Datei Explorer der deutschen Windows-Version als C:\Programme (x86) angezeigt. In der Eingabeaufforderung sowie beim Klick in die Adressleiste im Datei Explorer erscheint hingegen der Originalname.

<Version> ist bei Office 365/2019/2016 durch 16 und bei Office 2013 durch 15 zu ersetzen (siehe auch Kapitel 1.3 „Speicherort des VBA-Codes“).

64-Bit Office-Version: C:\Program Files\Microsoft Office(\Root)\Office<Version>\Library\

32-Bit Office-Version: C:\Program Files (x86)\Microsoft Office(\Root)\Office<Version>\Library\

Laut hinterlegter Beschreibung ist dies der „Excel-Standardspeicherort: Add-Ins“. Dies gilt jedoch nur für Add-Ins auf VBA-Basis, die für alle Benutzer des aktuellen Computers – sprich „Local Machine“ – installiert sind (beispielsweise in Terminal-Server-Umgebungen).

Soll ein Add-In nur für den aktuellen Benutzer („User-Installation“) installiert werden, lautet der Add-In-Pfad wie folgt:

Page 35: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 35 | 69

Pfad Bedeutung/Empfehlung

Unterordner zulässig: Ja

C:\Users\<Benutzer>\AppData\Roaming\Microsoft\Addins\

COM-Add-Ins werden in den Programmordner installiert, auf sie haben die vertrauenswürdigen Speicherorte keinen Einfluss.

Resümee:

Kommen Add-Ins zum Einsatz, die für alle Benutzer gelten („Local Machine“), wird der Pfad benötigt. Ist das Add-In nur für den aktuellen Benutzer installiert, ist hingegen der Benutzer-Pfad als vertrauenswürdiger Speicherort aufzunehmen. Werden keine Excel-Add-Ins genutzt, ist der Pfad in Excel zu löschen.

Hinweise:

Der Pfadbestandteil \Root gilt nur für die Click-to-Run-Installation von Office. Bei Office 2013 und 2016 Volume-License-Versionen mit MSI-Installationen ist dieser Pfadbestandteil nicht vorhanden.

Der Ordner C:\Program Files wird im Datei Explorer der deutschen Windows-Version als C:\Programme angezeigt. In der Eingabeaufforderung sowie beim Klick in die Adressleiste im Datei Explorer erscheint hingegen der Originalname.

Der Ordner C:\Program Files (x86) wird im Datei Explorer der deutschen Windows-Version als C:\Programme (x86) angezeigt. In der Eingabeaufforderung sowie beim Klick in die Adressleiste im Datei Explorer erscheint hingegen der Originalname.

<Version> ist bei Office 365/2019/2016 durch 16 und bei Office 2013 durch 15 zu ersetzen (siehe auch Kapitel 1.3 „Speicherort des VBA-Codes“).

Der Ordner C:\Users wird im Datei Explorer der deutschen Windows-Version als C:\Benutzer angezeigt. In der Eingabeaufforderung sowie beim

Page 36: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 36 | 69

Pfad Bedeutung/Empfehlung

Klick in die Adressleiste im Datei Explorer erscheint hingegen der Originalname.

4.2.2 Vertrauenswürdige Speicherorte in PowerPoint

PowerPoint verfügt standardmäßig über vier vertrauenswürdige Speicherorte im Bereich Speicherorte des Benutzers.

Abbildung 18: Standard-Einstellungen der vertrauenswürdigen Speicherorte in PowerPoint.

Folgende vertrauenswürdige Speicherorte sind in PowerPoint standardmäßig vorhanden:

Pfad Bedeutung/Empfehlung

64-Bit Office-Version: C:\Program Files\Microsoft Office(\Root)\Templates\

32-Bit Office-Version: C:\Program Files (x86)\Microsoft

Laut hinterlegter Beschreibung ist dies der „PowerPoint-Standardspeicherort: Anwendungsvorlagen“, was in der Praxis falsch ist. Denn beim Standard-Ordner für Vorlagen greift PowerPoint zum einen bei den Benutzervorlagen auf den Vorlagen-Pfad in den PowerPoint-Optionen zurück (Datei | Optionen | Speichern | Standardspeicherort für persönliche Vorlagen).

Page 37: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 37 | 69

Pfad Bedeutung/Empfehlung Office(\Root)\Templates\

Unterordner zulässig: Ja

Für gemeinsame Vorlagen nutzt PowerPoint den Pfad aus den Word-Optionen (Datei | Optionen | Erweitert | Dateispeicherorte | Arbeitsgruppenvorlagen). Und zusätzliche Vorlagenpfade müssen erst via GPO gesetzt werden.

Resümee:

Prüfen Sie, ob in dem Ordner tatsächlich Vorlagen abgelegt werden. Sollten sich dort – wie in fast allen Office-Installationen – nur belanglose, im Lieferumfang von Office enthaltene Vorlagen befinden (im Unterordner mit dem Language Code ID, kurz LCID (siehe Kapitel 5)? Ist keiner der Vorlagenpfade auf diesen Pfad angepasst? Dann den Eintrag aus Sicherheitsgründen entfernen. Bitte auch dann, wenn der Programmordner in Unternehmen für User beispielsweise via Domain-Anmeldung standardmäßig schreibgeschützt ist und nur Admins in den Ordner schreiben können.

Hinweise:

Der Pfadbestandteil \Root gilt nur für die Click-to-Run-Installation von Office. Bei Office 2013 und 2016 Volume-License-Versionen mit MSI-Installationen ist dieser Pfadbestandteil nicht vorhanden.

Der Ordner C:\Program Files wird im Datei Explorer der deutschen Windows-Version als C:\Programme angezeigt. In der Eingabeaufforderung sowie beim Klick in die Adressleiste im Datei Explorer erscheint hingegen der Originalname.

Der Ordner C:\Program Files (x86) wird im Datei Explorer der deutschen Windows-Version als C:\Programme (x86) angezeigt. In der Eingabeaufforderung sowie beim Klick in die Adressleiste im Datei Explorer erscheint hingegen der Originalname.

C:\Users\<Benutzer>\AppData\Roaming\Microsoft\Templates\

Laut hinterlegter Beschreibung ist dies der „PowerPoint-Standardspeicherort: Vorlagen“, was in der Praxis nicht stimmen muss. Denn beim Standard-Ordner für Vorlagen

Page 38: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 38 | 69

Pfad Bedeutung/Empfehlung

Unterordner zulässig: Ja

greift PowerPoint zum einen bei den Benutzervorlagen auf den Vorlagen-Pfad in den PowerPoint-Optionen zurück (Datei | Optionen | Speichern | Standardspeicherort für persönliche Vorlagen).

Für gemeinsame Vorlagen nutzt PowerPoint den Pfad aus den Word-Optionen (Datei | Optionen | Erweitert | Dateispeicherorte | Arbeitsgruppenvorlagen).

Der hier angegebene Pfad wird hingegen immer nur dann genutzt, wenn beispielsweise mit einer Blank.potx beim Start von PowerPoint bereits eine Standard-Präsentation geladen werden soll. In diesem Fall muss auch der Pfad Benutzervorlage in den Word-Optionen auf diesen Pfad eingestellt sein.

Resümee:

Ist der Benutzervorlagen-Pfad in den Word-Optionen mit dem hier hinterlegten Pfad identisch, kann die Einstellung für PowerPoint bestehen bleiben. Ist in Word ein anderer Benutzervorlagen-Pfad hinterlegt, muss dieser Pfad entsprechend angepasst werden.

Werden keine PowerPoint-Vorlagen mit VBA-Code genutzt, ist der Pfad nach entsprechender Verifikation in PowerPoint zu löschen.

Hinweise:

Der Ordner C:\Users wird im Datei Explorer der deutschen Windows-Version als C:\Benutzer angezeigt. In der Eingabeaufforderung sowie beim Klick in die Adressleiste im Datei Explorer erscheint hingegen der Originalname.

C:\Users\<Benutzer>\AppData\Roaming\Microsoft\Addins\

Unterordner zulässig: Nein

Laut hinterlegter Beschreibung ist dies der „PowerPoint-Standardspeicherort: Add-Ins“. Dies gilt jedoch nur für Add-Ins auf VBA-Basis, die nur für gewählte Benutzer installiert sind („User-Installation“).

Soll ein Add-In für die „Local Machine“ – sprich für alle Benutzer, die mit dem Computer arbeiten (beispielsweise

Page 39: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 39 | 69

Pfad Bedeutung/Empfehlung

in Terminal-Server-Umgebungen) installiert werden, lautet der Add-In-Pfad wie folgt:

64-Bit Office-Version: C:\Program Files\Microsoft Office(\Root)\ Office<Version>\ADDINS\

32-Bit Office-Version: C:\Program Files (x86)\Microsoft Office(\Root)\Office<Version>\ADDINS\

COM-Add-Ins werden in den Programmordner installiert, auf sie haben die vertrauenswürdigen Speicherorte keinen Einfluss.

Resümee:

Kommen benutzerspezifische Add-Ins zum Einsatz („User-Installation“), wird der Pfad benötigt. Sind Add-Ins für alle Benutzer auf dem Computer installiert, ist der Programmordner-Pfad als vertrauenswürdiger Speicherort aufzunehmen.

Werden keine PowerPoint-Add-Ins genutzt, ist der Pfad in PowerPoint zu löschen.

Hinweise:

Der Ordner C:\Users wird im Datei Explorer der deutschen Windows-Version als C:\Benutzer angezeigt. In der Eingabeaufforderung sowie beim Klick in die Adressleiste im Datei Explorer erscheint hingegen der Originalname.

Der Pfadbestandteil \Root gilt nur für die Click-to-Run-Installation von Office. Bei Office 2013 und 2016 Volume-License-Versionen mit MSI-Installationen ist dieser Pfadbestandteil nicht vorhanden.

<Version> ist bei Office 365/2019/2016 durch 16 und bei Office 2013 durch 15 zu ersetzen (siehe auch Kapitel 1.3 „Speicherort des VBA-Codes“).

Page 40: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 40 | 69

Pfad Bedeutung/Empfehlung

64-Bit Office-Version: C:\Program Files (x86)\Microsoft Office(\Root)\Document Themes <Version>\

32-Bit Office-Version: C:\Program Files\Microsoft Office(\Root)\Document Themes <Version>\

Unterordner zulässig: Ja

Laut hinterlegter Beschreibung ist dies der „PowerPoint-Standardspeicherort: Anwendungsdesigns“. Office-Designs enthalten keinen VBA-Code, sondern sind reine (gezippte) XML-Dateien.

Die Dateien der Office-Designs, die in PowerPoint auf der Registerkarte Entwurf zur Auswahl stehen, werden von PowerPoint an drei unterschiedlichen Stellen gesucht:

Im hier angegebenen Programmordner C:\Program Files (x86)\Microsoft Office(\Root)\Document Themes <Version>\. Diese Designs werden im Design-Katalog in der Rubrik Office aufgeführt.

Im Benutzervorlagen-Ordner, der in den Word-Optionen (Datei | Optionen | Erweitert | Dateispeicherorte |) bei Benutzervorlagen hinterlegt ist. Standardmäßig ist dies C:\Users\<Benutzer>\AppData\Roaming\Microsoft\Templates\Document Themes\. Diese Designs werden im Design-Katalog in der Rubrik Benutzerdefiniert aufgeführt.

Im Arbeitsgruppenvorlagen-Ordner, der in den Word-Optionen (Datei | Optionen | Erweitert | Dateispeicherorte |) bei Arbeitsgruppenvorlagen hinterlegt ist. Standardmäßig ist dieser Eintrag leer. Designs, die dort gespeichert werden, führt PowerPoint im Design-Katalog in der Rubrik Benutzerdefiniert auf.

Resümee:

Der vertrauenswürdige Speicherort kann in PowerPoint gelöscht werden.

Hinweise:

Der Pfadbestandteil \Root gilt nur für die Click-to-Run-Installation von Office. Bei Office 2013 und 2016 Volume-License-Versionen mit MSI-Installationen ist dieser Pfadbestandteil nicht vorhanden.

Page 41: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 41 | 69

Pfad Bedeutung/Empfehlung

Der Ordner C:\Program Files wird im Datei Explorer der deutschen Windows-Version als C:\Programme angezeigt. In der Eingabeaufforderung sowie beim Klick in die Adressleiste im Datei Explorer erscheint hingegen der Originalname.

Der Ordner C:\Program Files (x86) wird im Datei Explorer der deutschen Windows-Version als C:\Programme (x86) angezeigt. In der Eingabeaufforderung sowie beim Klick in die Adressleiste im Datei Explorer erscheint hingegen der Originalname.

<Version> ist bei Office 365/2019/2016 durch 16 und bei Office 2013 durch 15 zu ersetzen (siehe auch Kapitel 1.3 „Speicherort des VBA-Codes“).

4.2.3 Vertrauenswürdige Speicherorte in Word

Word verfügt standardmäßig über drei vertrauenswürdige Speicherorte im Bereich Speicherorte des Benutzers.

Abbildung 19: Standard-Einstellungen der vertrauenswürdigen Speicherorte in Word.

Page 42: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 42 | 69

Folgende vertrauenswürdige Speicherorte sind in Word standardmäßig vorhanden:

Pfad Bedeutung/Empfehlung C:\Users\<Benutzer>\AppData\Roaming\Microsoft\Templates\

Unterordner zulässig: Nein

Laut hinterlegter Beschreibung ist dies der „Word-Standardspeicherort: Benutzervorlagen“. Dies ist bezogen auf die Normal.dotm – die Standard-Dokumentvorlage von Word, auf deren Basis beim Start von Word ein neues, leeres Dokument angelegt wird – richtig; sofern in den Word-Optionen (Datei | Optionen | Erweitert | Dateispeicherorte) bei Benutzervorlagen kein anderer Pfad zugewiesen wurde.

Resümee:

Da in der Normal.dotm standardmäßig die benutzereigenen Makros gespeichert werden (auch zu erkennen an der Dateinamenerweiterung .dotm), muss der Ordner mit der Normal.dotm zwingend als vertrauenswürdiger Speicherort definiert sein.

Zu beachten ist, dass in den Word-Optionen (Datei | Optionen | Erweitert | Dateispeicherorte) bei Arbeitsgruppenvorlagen ein weiterer gemeinsamer Vorlagenordner definiert werden kann. Ist dieser Ordner definiert und es befindet sich darin beim ersten Word-Start eine Normal.dotm, legt Word im Ordner der Benutzervorlagen keine eigene Normal.dotm an, sondern nutzt die gemeinsame. Was in der Praxis dann zu Schreibzugriffen und anderen Problemen führt, wenn mehrere Benutzer den gleichen Arbeitsgruppenvorlagen-Ordner nutzen. Deshalb ist darauf zu achten, dass sich im Arbeitsgruppenvorlagen-Ordner keine Normal.dotm befindet.

Hinweise:

Der Ordner C:\Users wird im Datei Explorer der deutschen Windows-Version als C:\Benutzer angezeigt. In der Eingabeaufforderung sowie beim Klick in die Adressleiste im Datei Explorer erscheint hingegen der Originalname.

Page 43: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 43 | 69

Pfad Bedeutung/Empfehlung

64-Bit Office-Version: C:\Program Files\Microsoft Office(\Root)\Templates\

32-Bit Office-Version: C:\Program Files (x86)\Microsoft Office(\Root)\Templates\

Unterordner zulässig: Ja

Laut hinterlegter Beschreibung ist dies der „Word-Standardspeicherort: Anwendungsvorlagen“, was in der Praxis falsch ist. Denn beim Standard-Ordner für Vorlagen greift Word zum einen bei den Benutzervorlagen auf den Vorlagen-Pfad in den Word-Optionen zurück (Datei | Optionen | Speichern | Standardspeicherort für persönliche Vorlagen).

Die Normal.dotm wird hingegen in dem in den Word-Optionen (Datei | Optionen | Erweitert | Dateispeicherorte) bei Benutzervorlagen hinterlegten Pfad gesucht.

Für gemeinsame Vorlagen nutzt Word den Pfad aus den Word-Optionen (Datei | Optionen | Erweitert | Dateispeicherorte | Arbeitsgruppenvorlagen). Und zusätzliche Vorlagenpfade müssen erst via GPO gesetzt werden.

Resümee:

Prüfen Sie, ob in dem Ordner tatsächlich Vorlagen abgelegt werden. Sollten sich dort – wie in fast allen Office-Installationen – nur belanglose, im Lieferumfang von Office enthaltene Vorlagen befinden (im Unterordner mit dem Language Code ID, kurz LCID (siehe Kapitel 5)? Ist keiner der Vorlagenpfade auf diesen Pfad angepasst? Dann den Eintrag aus Sicherheitsgründen entfernen. Bitte auch dann, wenn der Programmordner in Unternehmen für User beispielsweise via Domain-Anmeldung standardmäßig schreibgeschützt ist und nur Admins in den Ordner schreiben können.

Hinweise:

Der Pfadbestandteil \Root gilt nur für die Click-to-Run-Installation von Office. Bei Office 2013 und 2016 Volume-License-Versionen mit MSI-Installationen ist dieser Pfadbestandteil nicht vorhanden.

Der Ordner C:\Program Files wird im Datei Explorer der deutschen Windows-Version als C:\Programme angezeigt. In der Eingabeaufforderung sowie beim Klick in die

Page 44: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 44 | 69

Pfad Bedeutung/Empfehlung

Adressleiste im Datei Explorer erscheint hingegen der Originalname.

Der Ordner C:\Program Files (x86) wird im Datei Explorer der deutschen Windows-Version als C:\Programme (x86) angezeigt. In der Eingabeaufforderung sowie beim Klick in die Adressleiste im Datei Explorer erscheint hingegen der Originalname.

C:\Users\<Benutzer>\AppData\Roaming\Microsoft\Word\Startup\

Unterordner zulässig: Nein

Laut hinterlegter Beschreibung ist dies der „Word-Standardspeicherort: Startup“. Alle in diesem Ordner hinterlegten Word-Dateien werden beim Word-Start als Add-In geladen – gleichgültig, ob sie VBA-Code enthalten und somit die Dateinamenerweiterung .dotm tragen oder ob nur Bausteine enthalten sind und sie die Dateinamenerweiterung .dotx tragen. Der Pfad bezieht sich auf die Dateien/Add-Ins, die nur für gewählte Benutzer installiert sind („User-Installation“).

Sollen Dateien bzw. Add-Ins für die „Local Machine“ – sprich für alle Benutzer, die mit dem Computer arbeiten (beispielsweise in Terminal-Server-Umgebungen) installiert werden, lautet der Pfad wie folgt:

64-Bit Office-Version: C:\Program Files\Microsoft Office(\Root)\ Office<Version>\Startup\

32-Bit Office-Version: C:\Program Files (x86)\Microsoft Office(\Root)\Office<Version>\Startup\

COM-Add-Ins werden in den Programmordner installiert, auf sie haben die vertrauenswürdigen Speicherorte keinen Einfluss.

Resümee:

Kommen benutzerspezifische Add-Ins zum Einsatz („User-Installation“), wird der Pfad benötigt. Sind Add-Ins für alle Benutzer auf dem Computer installiert, ist der Programmordner-Pfad als vertrauenswürdiger Speicherort aufzunehmen.

Page 45: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 45 | 69

Pfad Bedeutung/Empfehlung

Hinweise:

Der Ordner C:\Users wird im Datei Explorer der deutschen Windows-Version als C:\Benutzer angezeigt. In der Eingabeaufforderung sowie beim Klick in die Adressleiste im Datei Explorer erscheint hingegen der Originalname.

4.3 Vertrauenswürdige Speicherorte: Benutzeranpassungen

Vertrauenswürdige Speicherorte können von jedem Benutzer individuell angepasst werden. Benutzeranpassungen erscheinen in der Liste in dem Bereich Speicherorte des Benutzers (1). Also genau dort, wo die Programm-eigenen Standardeinträge auch erscheinen.

Abbildung 20: Benutzeranpassungen erscheinen immer unter Speicherorte des Benutzers (1).

Um alle Einfallstore für Schadprogramme auf VBA-Basis zu schließen, sollten Änderungen an Speicherorte des Benutzers (1) via GPO gesperrt werden.

Hierzu ist die Gruppenrichtlinie Benutzerkonfiguration | Administrative Vorlagen | Microsoft Office 2016 | Sicherheitseinstellungen | Trust Center, Eintrag Mischung aus Richtlinien und Benutzerspeicherorten zulassen auf Deaktiviert zu stellen. Dann werden

Page 46: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 46 | 69

die Speicherorte des Benutzers (1) automatisch ausgeblendet und es sind nur noch die Richtlinienspeicherorte (2) aktiv.

Die benötigten Standardeinträge aus dem Bereich Speicherorte des Benutzers (1) müssen dann den jeweiligen Programmen innerhalb der GPOs hinzugefügt werden (für Word beispielsweise unter Benutzerkonfiguration | Administrative Vorlagen | Microsoft Word 2016 | Word Optionen | Sicherheit | Trust Center | Vertrauenswürdige Speicherorte, Eintrag Vertrauenswürdiger Speicherort Nr. 1 bis Nr. 20).

Vertrauenswürdigen Speicherort hinzufügen:

Einen neuen vertrauenswürdigen Speicherort fügen Sie wie folgt hinzu (die folgende Anleitung ist für Excel, PowerPoint und Word identisch):

1. Prüfen Sie zuerst, ob sich der neue vertrauenswürdige Speicherort auf einem Netzwerklaufwerk befindet. Dann muss das Kontrollkästchen Vertrauenswürdige Speicherorte im Netzwerk zulassen (3) aktiviert werden. Andernfalls kann kein Netzwerklaufwerk ausgewählt werden.

2. Klicken Sie jetzt auf die Schaltfläche Neuen Speicherort hinzufügen (4). Daraufhin öffnet sich das Dialogfeld Vertrauenswürdiger Microsoft Office-Speicherort.

Abbildung 21: Dialogfeld zum Hinzufügen eines neuen vertrauenswürdigen Speicherorts.

3. Im Textfeld Pfad (7) wird nun der im Bereich Speicherorte des Benutzers (1) zuletzt markierte Pfad angezeigt. Tragen Sie hier den neuen Pfad ein oder wählen Sie ihn mit einem Klick auf die Schaltfläche Durchsuchen (8) aus.

4. Schalten Sie das Kontrollkästchen Unterordner dieses Speicherorts sind ebenfalls vertrauenswürdig (9) nur dann ein, wenn Sie diese zwingend benötigen. Denn so werden mit nur einem Mausklick komplette Ordnerstrukturen schlagartig ungeschützt und VBA-Code kann beliebig ausgeführt werden!

Page 47: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 47 | 69

5. Tragen Sie zum Schluss bei Beschreibung (10) eine kurze Beschreibung ein und bestätigen Sie dann mit OK (11).

6. Das Dialogfeld Vertrauenswürdiger Microsoft Office-Speicherort wird geschlossen und Sie kehren zum Trust Center zurück. Hier wird der neue Eintrag nun im Bereich Speicherorte des Benutzers (1) aufgeführt.

Vertrauenswürdigen Speicherort ändern:

Möchten Sie einen vorhandenen vertrauenswürdigen Speicherort im Bereich Speicherorte des Benutzers (1) ändern? Dann markieren Sie den Eintrag und klicken auf die Schaltfläche Ändern (6). Daraufhin öffnet sich wieder das Dialogfeld Vertrauenswürdiger Microsoft Office-Speicherort (siehe Abbildung 21). Sie können die gewünschten Änderungen vornehmen und mit OK (11) bestätigen.

Vertrauenswürdigen Speicherort löschen:

Zum Löschen eines vertrauenswürdigen Speicherorte im Bereich Speicherorte des Benutzers (1) markieren Sie den gewünschten Eintrag. Klicken Sie dann auf die Schaltfläche Entfernen (5). Der vertrauenswürdige Speicherort wird ohne weitere Rückfrage sofort im Bereich Speicherorte des Benutzers (1) gelöscht.

4.4 Vertrauenswürdige Speicherorte: Anpassungen via GPOs

Vertrauenswürdige Speicherorte haben wie in diesem Kapitel beschrieben großen Einfluss darauf, in welchem Rahmen VBA-Code ausgeführt werden kann/darf. Entsprechend sollte in Firmenumgebungen die Einstellung der vertrauenswürdigen Speicherorte nicht den Anwendern überlassen werden, sondern im Rahmen der Unternehmens-Sicherheitsrichtlinien zentral administriert werden.

Möglich machen dies Gruppenrichtlinien (Group Policies, kurz GPOs), die beispielsweise beim Einbinden des PCs in eine Domain zentral verwaltet und auf Basis von Mitgliedschaften in Gruppen oder PCs den Benutzern zugewiesen werden.

Für die vertrauenswürdigen Speicherorte sind folgende aufgeführten GPOs von Bedeutung (alle Beispiele auf Basis von Office 365 – in den GPOs nach wie vor mit der Version „2016“ bezeichnet). Dabei ist zu beachten, dass die Einstellungen einerseits für Office Allgemein, anderseits aber auch für jedes einzelne Office-Programm (Excel, PowerPoint und Word) eingestellt werden müssen.

Page 48: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 48 | 69

Hinweis: Die folgenden Bildschirmfotos wurden auf Basis des Windows-10-eigenen Editor für lokale Gruppenrichtlinien erstellt. Sie gelten unverändert auch für die aktuelle Windows-Server-Umgebungen.

Microsoft Office 2016

GPO-Zweig Bedeutung/Einstellung

Benutzerkonfiguration | Administrative Vorlagen | Microsoft Office 2016 | Sicherheitseinstellungen | Trust Center | Mischung aus Richtlinien und Benutzerspeicherorten zulassen

Erlaubt das Deaktivieren der Speicherorte des Benutzers in den vertrauenswürdigen Speicherorten. Hierzu muss die Option auf Deaktiviert gestellt werden.

Benutzerkonfiguration | Administrative Vorlagen | Microsoft Office 2016 | Sicherheitseinstellungen | Trust Center | Vertrauenswürdiger Speicherort Nr. 1 bis Vertrauenswürdiger Speicherort Nr. 20

Hier können Sie maximal 20 vertrauenswürdige Speicherorte festlegen, die für alle Office-Programme (Access, Excel, InfoPath, PowerPoint, Visio, Word) gleichermaßen gelten.

Beachten Sie, dass Sie bei den jeweiligen Programmen nochmals 20 vertrauenswürdige Speicherorte definieren können; insgesamt können so maximal 40 Speicherorte hinterlegt werden.

Microsoft Excel 2016

GPO-Zweig Bedeutung/Einstellung

Benutzerkonfiguration | Administrative Vorlagen | Microsoft Excel 2016 | Excel-Optionen | Sicherheit | Trust Center | Vertrauenswürdige Speicherorte | Vertrauenswürdige Speicherorte im Netzwerk zulassen

Legt fest, wie das gleichnamige Kontrollkästchen im Trust Center gesetzt sein soll. Wenn Sie die Option auf Deaktiviert stellen, ist das Kontrollkästchen ausgeschaltet und der komplette Befehl ausgegraut; er kann nicht mehr aktiviert werden.

Hatte der Anwender bereits Netzwerklaufwerke im Bereich Speicherorte des Benutzers hinterlegt, bleibt der Eintrag zwar bestehen, der vertrauenswürdige Speicherort wird aber ignoriert.

Benutzerkonfiguration | Administrative Vorlagen | Microsoft Excel 2016 | Excel-

Legt fest, wie das gleichnamige Kontrollkästchen im Trust Center gesetzt

Page 49: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 49 | 69

GPO-Zweig Bedeutung/Einstellung

Optionen | Sicherheit | Trust Center | Vertrauenswürdige Speicherorte | Alle vertrauenswürdigen Speicherorte deaktivieren

sein soll. Wenn Sie die Option auf Aktiviert stellen, ist das Kontrollkästchen eingeschaltet und der komplette Befehl ausgegraut; er kann nicht mehr deaktiviert werden.

Die Einstellung hat Einfluss auf alle vertrauenswürdigen Speicherorte: Sowohl die aus dem Bereich Speicherorte des Benutzers als auch auf die Richtlinienspeicherorte.

Benutzerkonfiguration | Administrative Vorlagen | Microsoft Excel 2016 | Excel-Optionen | Sicherheit | Trust Center | Vertrauenswürdige Speicherorte | Vertrauenswürdiger Speicherort Nr. 1 bis Vertrauenswürdiger Speicherort Nr. 20

Hier können Sie maximal 20 vertrauenswürdige Speicherorte festlegen, die ausschließlich für Excel gelten.

Beachten Sie, dass Sie im Office-Zweig nochmals 20 vertrauenswürdige Speicherorte definieren können; insgesamt können so maximal 40 Speicherorte hinterlegt werden.

Microsoft PowerPoint 2016

GPO-Zweig Bedeutung/Einstellung

Benutzerkonfiguration | Administrative Vorlagen | Microsoft PowerPoint 2016 | PowerPoint-Optionen | Sicherheit | Trust Center | Vertrauenswürdige Speicherorte | Vertrauenswürdige Speicherorte im Netzwerk zulassen

Legt fest, wie das gleichnamige Kontrollkästchen im Trust Center gesetzt sein soll. Wenn Sie die Option auf Deaktiviert stellen, ist das Kontrollkästchen ausgeschaltet und der komplette Befehl ausgegraut; er kann nicht mehr aktiviert werden.

Hatte der Anwender bereits Netzwerklaufwerke im Bereich Speicherorte des Benutzers hinterlegt, bleibt der Eintrag zwar bestehen, der vertrauenswürdige Speicherort wird aber ignoriert.

Benutzerkonfiguration | Administrative Vorlagen | Microsoft PowerPoint 2016 | PowerPoint-Optionen | Sicherheit | Trust Center | Vertrauenswürdige Speicherorte | Alle vertrauenswürdigen Speicherorte deaktivieren

Legt fest, wie das gleichnamige Kontrollkästchen im Trust Center gesetzt sein soll. Wenn Sie die Option auf Aktiviert stellen, ist das Kontrollkästchen eingeschaltet und der komplette Befehl ausgegraut; er kann nicht mehr deaktiviert werden.

Page 50: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 50 | 69

GPO-Zweig Bedeutung/Einstellung

Die Einstellung hat Einfluss auf alle vertrauenswürdigen Speicherorte: Sowohl die aus dem Bereich Speicherorte des Benutzers als auch die Richtlinienspeicherorte.

Benutzerkonfiguration | Administrative Vorlagen | Microsoft PowerPoint 2016 | PowerPoint-Optionen | Sicherheit | Trust Center | Vertrauenswürdige Speicherorte | Vertrauenswürdiger Speicherort Nr. 1 bis Vertrauenswürdiger Speicherort Nr. 20

Hier können Sie maximal 20 vertrauenswürdige Speicherorte festlegen, die ausschließlich für PowerPoint gelten.

Beachten Sie, dass Sie im Office-Zweig nochmals 20 vertrauenswürdige Speicherorte definieren können; insgesamt können so maximal 40 Speicherorte hinterlegt werden.

Microsoft Word 2016

GPO-Zweig Bedeutung/Einstellung

Benutzerkonfiguration | Administrative Vorlagen | Microsoft Word 2016 | Word-Optionen | Sicherheit | Trust Center | Vertrauenswürdige Speicherorte | Vertrauenswürdige Speicherorte im Netzwerk zulassen

Legt fest, wie das gleichnamige Kontrollkästchen im Trust Center gesetzt sein soll. Wenn Sie die Option auf Deaktiviert stellen, ist das Kontrollkästchen ausgeschaltet und der komplette Befehl ausgegraut; er kann nicht mehr aktiviert werden.

Hatte der Anwender bereits Netzwerklaufwerke im Bereich Speicherorte des Benutzers hinterlegt, bleibt der Eintrag zwar bestehen, der vertrauenswürdige Speicherort wird aber ignoriert.

Benutzerkonfiguration | Administrative Vorlagen | Microsoft Word 2016 | Word-Optionen | Sicherheit | Trust Center | Vertrauenswürdige Speicherorte | Alle vertrauenswürdigen Speicherorte deaktivieren

Legt fest, wie das gleichnamige Kontrollkästchen im Trust Center gesetzt sein soll. Wenn Sie die Option auf Aktiviert stellen, ist das Kontrollkästchen eingeschaltet und der komplette Befehl ausgegraut; er kann nicht mehr deaktiviert werden.

Die Einstellung hat Einfluss auf alle vertrauenswürdigen Speicherorte: Sowohl die aus dem Bereich Speicherorte des Benutzers als auch die Richtlinienspeicherorte.

Page 51: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 51 | 69

GPO-Zweig Bedeutung/Einstellung

Benutzerkonfiguration | Administrative Vorlagen | Microsoft Word 2016 | Word-Optionen | Sicherheit | Trust Center | Vertrauenswürdige Speicherorte | Vertrauenswürdiger Speicherort Nr. 1 bis Vertrauenswürdiger Speicherort Nr. 20

Hier können Sie maximal 20 vertrauenswürdige Speicherorte festlegen, die ausschließlich für Word gelten.

Beachten Sie, dass Sie im Office-Zweig nochmals 20 vertrauenswürdige Speicherorte definieren können; insgesamt können so maximal 40 Speicherorte hinterlegt werden.

4.5 Praxiserfahrungen bei vertrauenswürdigen Speicherorten

Bei der Umsetzung der vertrauenswürdigen Speicherorte treten in der Praxis immer wieder Fragen und Probleme auf. Nachfolgend deshalb eine Zusammenstellung in eklektischer Reihenfolge auf Basis von Rückmeldungen aus der Praxis.

4.5.1 Ausführung eigener Makros in Word & Excel wird „versehentlich“ gesperrt

Leider zeigt die Praxis, dass manche IT-Verantwortlichen mangels Fachwissens respektive Verständnisses bei der Planung und Umsetzung der vertrauenswürdigen Speicherorte über das Ziel hinausschießen und beispielsweise via GPO generell alle vertrauenswürdigen Speicherorte deaktivieren.

Das hat bei Word zur Folge, dass der Vorlagenordner der Normal.dotm nicht mehr vertrauenswürdig ist (siehe Kapitel 4.2.3 „Vertrauenswürdige Speicherorte in Word“). Entsprechend erhält der Anwender dann beim Start von Word je nach Word-Version die gelbe Meldungsleiste.

Abbildung 22: Bei fehlender Vertrauenswürdigkeit im Normal.dotm-Ordner erscheint beim Word-Start diese Meldung.

Nun passiert folgendes:

Wird je nach Word-Version nach dem Start sofort auf die Schaltfläche Inhalt aktivieren geklickt, lassen sich die eigenen Makros aus der Normal.dotm ausführen.

Wird hingegen zuerst ein Makro ausgeführt (beispielsweise über ein Auto-Makro in der Normal.dotm – siehe Kapitel 1.5.2 „Auszug aus den Word-Events zur Automatisierung“), erscheint die folgende Meldung. Wird anschließend auf die Schaltfläche Inhalt aktivieren geklickt, verschwindet zwar die gelbe Leiste, bei der Ausführung von Makros erscheint jedoch immer die folgende Meldung und die Makro-Ausführung ist nicht mehr möglich.

Page 52: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 52 | 69

Abbildung 23: Die Makro-Ausführung ist jetzt dauerhaft gesperrt.

In Excel ist beim Deaktivieren aller vertrauenswürdigen Speicherorte auch der Ordner der Datei Personal.xlsb betroffen. In dieser Datei legt Excel Makros ab, die arbeitsmappenübergreifend – sprich dateiübergreifend – zur Verfügung stehen (siehe Kapitel 4.2.1 „Vertrauenswürdige Speicherorte in Excel“). Diese können dann nicht mehr ausgeführt werden.

Befinden sich in der Personal.xlsb Makros, erscheint beim Start von Excel sofort die folgende Meldung und der Anwender muss auf die Schaltfläche Makros aktivieren klicken, um die spätere Ausführung von Makros zuzulassen. Dies sorgt in der Praxis in aller Regel für Verwirrung, da beim Excel-Start bereits der Ausführung zugestimmt werden muss, obwohl die Makros unter Umständen gar nicht zum Einsatz kommen werden.

Abbildung 24: Hinweis, der beim Start von Excel bei fehlendem vertrauenswürdigem Speicherort für die Personal.xlsb erscheint.

Wird die Meldung mit einem Klick auf Makros deaktivieren bestätigt und zu einem späteren Zeitpunkt versucht, in Excel ein Makro auszuführen, erhält der Anwender die folgende Meldung – in der leider kein Hinweis auf die betroffene Datei Personal.xlb zu finden ist:

Page 53: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 53 | 69

Abbildung 25: Das Ausführen von Makros ist bei der Auswahl Makros deaktivieren beim Excel-Start nicht mehr möglich.

Um die Makros dennoch ausführen zu können, hilft nur ein Neustart von Excel.

Resümee

Das Entfernen der vertrauenswürdigen Speicherorte für die Normal.dotm und Personal.xlsb sollte nur nach ausführlicher Prüfung der Unternehmens-internen Abläufe und keineswegs voreilig erfolgen. Die Gefahr, dass eingespielte, Makro-unterstützte Arbeitsabläufe torpediert werden, ist groß. Die IT-Abteilung hat nur selten detailliertes Wissen, ob und welche Makros die Anwender in Word und Excel zur Arbeitserleichterung einsetzen.

4.5.2 Word-Startup-Add-Ins trotzt Sperrung des Startup-Ordners ausführen

Der Inhalt des Word-Startup-Ordners (standardmäßig zu finden unter C:\Users\<Benutzer>\AppData\Roaming\Microsoft\Word\Startup\) wird beim Start von Word ermittelt und alle dort enthaltenen Dateien geladen. Auf diese Weise lassen sich beispielsweise VBA-Add-Ins durch reines Kopieren in den Startup-Ordner ohne zusätzliche Registrierung aktivieren.

Damit VBA-Code im Startup-Ordner ausgeführt werden kann, muss der Ordner vertrauenswürdig sein. Entsprechend ist in den Word-Standardeinstellungen der Ordner Bestandteil der vertrauenswürdigen Speicherorte (siehe Kapitel 4.2.3 „Vertrauenswürdige Speicherorte in Word“).

Wurde der vertrauenswürdige Speicherort aus Unwissenheit oder Sicherheitsbedenken deaktiviert, lassen sich keine VBA-Add-Ins mehr aktivieren. Beim Start von Word erscheint dann je nach Art und Weise der Einschränkungen eine rosafarbene Meldungsleiste und die Ausführung des Add-Ins ist vollständig deaktiviert. Oder es erscheint wie im vorherigen Kapitel 4.5.1 „Ausführung eigener Makros in Word & Excel wird „versehentlich“ gesperrt“ beschrieben eine gelbe Meldungsleiste, und der Ausführung der Makros muss bei jedem Word-Start manuell zugestimmt werden.

Ist beispielsweise die Ausführung von Makros in der Normal.dotm erlaubt, da der Ordner, in dem sich die Normal.dotm befindet, als vertrauenswürdig hinterlegt ist? Dann lassen sich mit folgendem Trick auch VBA-Add-Ins ausführen:

1. Kopieren Sie die Add-In-Datei in den Ordner, in dem sich die Normal.dotm befindet.

Page 54: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 54 | 69

2. Klicken Sie im Datei-Explorer die Add-In-Datei mit der rechten Maustaste an und wählen Sie den Befehl Senden an und dann Desktop (Verknüpfung erstellen).

3. Nun wird auf dem Desktop eine Verknüpfung zur Add-In-Datei erzeugt. Diese verschieben Sie nun in den Startup-Ordner.

Wenn Sie jetzt Word starten, liest Word den Startup-Ordner aus und erkennt, dass ein Add-In zu laden ist. Da sich der Speicherort der Add-In-Datei nicht im Startup-Ordner, sondern in einem vertrauenswürdigen Speicherort befindet, kann das Add-In fehlerfrei ausgeführt werden.

Resümee

So praktisch der Einsatz von Verknüpfungen zu Dateien in vertrauenswürdigen Speicherorten auch ist, er zeigt gleichzeitig auch die Grenzen der Standard-Sicherheitsbemühungen in Office auf. Ein vertrauenswürdiger Speicherort genügt, um das automatische Ausführen von VBA-Code zu ermöglichen. Diesen Trick können auch Schadprogramme nutzen, weshalb in besonders kritischen Umgebungen immer die Umgebung fachgerecht analysiert und dann auf zusätzliche Sicherheitseinstellungen wie digitale Signaturen oder schreibgeschützte Startup-Ordner, in die nur mit Admin-Rechten geschrieben werden kann, zu setzen ist.

4.5.3 Vagabundierende Word-Registerkarten bei fehlender Vertrauenswürdigkeit

Zur Automatisierung von Prozessen werden in Word häufig intelligente Dokumentvorlagen vom Typ .dotm genutzt. Der darin enthaltene VBA-Code dient beispielsweise zur Dokumentbearbeitung, zur Formatierung oder zum Import von externen Daten. Ob der VBA-Code ausgeführt werden kann, hängt von den in dieser Dokumentation beschriebenen Sicherheitseinstellungen ab.

Verfügt eine Dokumentvorlage vom Typ .dotm über eine eigene Registerkarte bzw. eigene Gruppen auf einer vorhandenen Registerkarte – sprich im CustomUI-XML-Part der Datei ist eine XML-Struktur zur Erweiterung/Anpassung des Word-Userinterface enthalten (siehe auch https://www.linkedin.com/learning/office-2010-menuband-programmierung) –, lässt sich über die Userinterface-Erweiterung auf den VBA-Code der Dokumentvorlage zugreifen. So lassen sich komfortable, leicht zu bedienende Lösungen erstellen.

Der Vorteil einer solchen Lösung aus technischer Sicht ist, dass die Userinterface-Erweiterung nur dann angezeigt wird, wenn ein Dokument auf Basis der Dokumentvorlage erstellt wurde. Der CustomUI-XML-Code und der VBA-Code bleibt in der Dokumentvorlage und wird von Word durch das systembedingte Zusammenspiel von Dokument und Dokumentvorlage durch das Aktivieren der Dokumentvorlage beim Öffnen des Dokumentes hinzugeladen. So ist die Kapselung des Codes und der Userinterface-Erweiterung sichergestellt.

Page 55: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 55 | 69

Probleme können dann auftreten, wenn ein neues Dokument auf Basis einer Dokumentvorlage vom Typ .dotm mit Untersinterface-Erweiterung erzeugt wird, und sich die Dokumentvorlage in einem nicht vertrauenswürdigen Speicherort befindet. In diesem Fall übernimmt Word fataler Weise den CustomUI-XML-Part aus der Dokumentvorlage auch in das Dokument .dotx – sprich die Userinterface-Erweiterung steht plötzlich doppelt zur Verfügung.

Solange die Dokumentvorlage zur Verfügung steht, funktionieren auch beide Versionen der Userinterface-Erweiterung (Version 1: Aus dem Word-Dokument; Version 2: Aus der verbundenen Dokumentvorlage). Fehlt die Dokumentvorlage jedoch – weil beispielsweise das so erzeugte Dokument via E-Mail an Dritte weitergeleitet wird, erscheint beim Empfänger die Userinterface-Erweiterung. Das Ausführen der dort enthaltenen Funktionen wird dann mit einer Fehlermeldung quittiert, da die Dokumentvorlage und somit der VBA-Code nicht vorhanden ist.

Abbildung 26: Fehlt die Dokumentvorlage, erscheint beim Ausführen einer Funktion die Makro-Fehlermeldung.

Zur Fehlerbeseitigung bleibt in diesem Fall nichts anders übrig, all den CustomUI-XML-Part aus dem Dokument .docx beispielsweise mit dem Tool Custom UI Editor fachgerecht zu entfernen.

Abbildung 27: Der fälschlicherweise übernommene CustomUI-XML-Part kann mit dem Custom UI Editor nachträglich aus der .dotx-Datei gelöscht werden.

Resümee

Dokumentvorlagen mit Userinterface-Erweiterungen müssen sich immer in vertrauenswürdigen Speicherorten befinden, da sonst die Gefahr besteht, dass die Userinterface-Erweiterung mit in das Dokument übernommen wird.

Page 56: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 56 | 69

Werden solche Dokumentvorlagen im Team genutzt, sollte der Speicherort für die Anwender auf Nur Lesen eingestellt sein und Dokumentvorlage ausschließlich von befugten (IT-) Mitarbeitern dort eingestellt werden. So sorgen Sie dafür, dass sich keine Schadprogramme in dem Ordner einnistet oder die Dokumentvorlagen selbst kompromittiert werden.

4.6 Vertrauenswürdige Dokumente

Das Kapitel ist für eine der nächsten Versionen dieser Dokumentation geplant.

Page 57: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 57 | 69

5. Übersicht der Gebietsschema-ID (LCID) Nachfolgend eine Übersicht der Gebietsschema-IDs, kurz LCID (Language Code ID). Die Tabelle enthält die LCID sowohl als Dezimal-Wert (wie die LCID beispielsweise bei Vorlagenpfaden genutzt wird (siehe Kapitel 4) als auch als Hexadezimal-Wert (wie die LCID bei den Ausschlusswörterbüchern genutzt wird).

Sprache LCID (dezimal) LCID (hexadezimal)

Afrikaans 1078 0436

Albanisch 1052 041c

Elsässisch 1156 0484

Amharisch 1118 045e

Arabisch (Ägypten) 3073 0c01

Arabisch (Algerien) 5121 1401

Arabisch (Bahrain) 15361 3c01

Arabisch (Irak) 2049 0801

Arabisch (Jemen) 9217 2401

Arabisch (Jordanien) 11265 2c01

Arabisch (Katar) 12289 3001

Arabisch (Kuwait) 4097 1001

Arabisch (Libanon) 6145 1801

Arabisch (Libyen) 8193 2001

Arabisch (Marokko) 16385 4001

Arabisch (Oman) 1025 0401

Arabisch (Saudi-Arabien) 10241 2801

Arabisch (Syrien) 7169 1c01

Arabisch (Tunesien) 14337 3801

Arabisch (Vereinigte Arabische Emirate) 9217 2401

Armenisch 1067 042b

Assamisch 1101 044d

Aserbaidschanisch (Kyrillisch) 2092 082c

Aserbaidschanisch (Lateinisch) 1068 042c

Baschkirisch 1133 046d

Baskisch 1069 042d

Belarussisch 1059 0423

Page 58: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 58 | 69

Sprache LCID (dezimal) LCID (hexadezimal)

Bengali 1093 0445

Bosnisch (Kyrillisch, Bosnien und Herzegowina) 8218 201a

Bosnisch (Lateinisch, Bosnien und Herzegowina)

5146 141a

Bretonisch 1150 047e

Bulgarisch 1026 0402

Katalanisch 1027 0403

Chinesisch (Hongkong SAR) 3076 0c04

Chinesisch (Macau SAR) 5124 1404

Chinesisch (Taiwan) 2052 0804

Chinesisch (Vereinfacht) 2052 0804

Chinesisch (VR China) 4100 1004

Dänisch 1028 0404

Chinesisch (Traditionell) 31748 7c04

Corsican 1155 0483

Kroatisch 1050 041a

Kroatisch (Bosnien und Herzegowina) 4122 101a

Tschechisch 4103 1007

Dänisch 1030 0406

Divehi 1125 0465

Niederländisch (Belgien) 2067 0813

Niederländisch (Niederlande) 1043 0413

Englisch (Australien) 3081 0c09

Englisch (Belize) 10249 2809

Englisch (Kanada) 4105 1009

Englisch (Jamaika) 9225 2409

Englisch (Indien) 16393 4009

Englisch (Kanada) 6153 1809

Englisch (Karibik) 8201 2009

Englisch (Malaysia) 17417 4409

Englisch (Neuseeland) 5129 1409

Englisch (Philippinen) 13321 3409

Englisch (Singapur) 18441 4809

Englisch (Südafrika) 7177 1c09

Page 59: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 59 | 69

Sprache LCID (dezimal) LCID (hexadezimal)

Englisch (Trinidad und Tobago) 11273 2c09

Englisch (Großbritannien) 2057 0809

Englisch (USA) 1033 0409

Englisch (Simbabwe) 12297 3009

Estnisch 1061 0425

Faröisch 1080 0438

Filipino 1124 0464

Finnisch 1035 040b

Französisch (Belgien) 2060 080c

Französisch (Kanada) 3084 0c0c

Französisch (Frankreich) 1036 040c

Französisch (Luxemburg) 5132 140c

Französisch (Monaco) 6156 180c

Französisch (Schweiz) 4108 100c

Friesisch 1122 0462

Galizisch 1110 0456

Georgisch 1079 0437

Deutsch (Österreich) 3079 0c07

Deutsch (Deutschland) 1031 0407

Hebräisch 5127 1407

Indonesisch 4103 1007

Deutsch (Schweiz) 2055 0807

Griechisch 1032 0408

Grönländisch 1135 046f

Gudscharati 1095 0447

Hausa 1128 0468

Hebräisch 1037 040d

Hindi 1081 0439

Ungarisch 1038 040e

Ibibio 1129 0469

Isländisch 1039 040f

Igbo 1136 0470

Indonesisch 1057 0421

Page 60: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 60 | 69

Sprache LCID (dezimal) LCID (hexadezimal)

Inuktitut 1117 045d

Inuktitut (Lateinisch) 2141 085d

Irisch (Irland) 2108 083c

Xhosa 1076 0434

Zulu 1077 0435

Italienisch (Italien) 1040 0410

Italienisch (Schweiz) 2064 0810

Japanisch 1041 0411

Kannada 1099 044b

Kasachisch 1087 043f

Khmer 1107 0453

K'iche' 1158 0486

Kinyarwanda 1159 0487

Konkani 1111 0457

Koreanisch 1042 0412

Kirgisisch 1088 0440

Laotisch 1108 0454

Lettisch 1062 0426

Lithuaisch 1063 0427

Niedersorbisch 2094 082e

Luxemburgisch (Luxemburg) 1134 046e

Mazedonisch (ehem. jugoslawische Republik Mazedonien)

1071 042f

Malaiisch 1086 043e

Malaiisch (Brunei Darussalam) 2110 083e

Malajalim 1100 044c

Maltesisch 1082 043a

Manipuri 1112 0458

Maori 1153 0481

Mapudungun 1146 047a

Marathi 1102 044e

Mohawk 1148 047c

Mongolisch 1104 0450

Mongolisch (Traditionell) 2128 0850

Page 61: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 61 | 69

Sprache LCID (dezimal) LCID (hexadezimal)

Nepali 1121 0461

Norwegisch (Bokmål) 1044 0414

Norwegisch (Nynorsk) 2068 0814

Okzitanisch 1154 0482

Oriya 1096 0448

Pashto 1123 0463

Persisch 1065 0429

Polnisch 1045 0415

Portugiesisch (Brasilien) 1046 0416

Portugiesisch (Portugal) 2070 0816

Punjabi 1094 0446

Quechua (Bolivien) 1131 046b

Quechua (Ecuador) 2155 086b

Quechua (Peru) 3179 0c6b

Rumänisch 1048 0418

Rumantsch (Schweiz) 1047 0417

Russisch 1049 0419

Sami (Inari, Finnland) 9275 243b

Sami (Lule, Norwegen) 4155 103b

Sami (Lule, Schweden) 5179 143b

Sami (Nord, Finnland) 3131 0c3b

Sami (Nord, Norwegen) 1083 043b

Sami (Nord, Schweden) 2107 083b

Sami (Skolt, Finnland) 8251 203b

Sami (Süd, Norwegen) 6203 183b

Sami (Süd, Schweden) 7227 1c3b

Sanskrit 1103 044f

Sepedi 1132 046c

Serbisch (Kyrillisch, Bosnien und Herzegowina) 7194 1c1a

Serbisch (Kyrillisch, Serbien) 3098 0c1a

Serbisch (Lateinisch, Bosnien und Herzegowina)

6170 181a

Serbisch (Lateinisch, Serbien) 2074 081a

Sinhala 1115 045b

Page 62: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 62 | 69

Sprache LCID (dezimal) LCID (hexadezimal)

Slowakisch 1051 041b

Slowenisch 1060 0424

Somali 1143 0477

Spanisch (Argentinien) 11274 2c0a

Spanisch (Bolivien) 16394 400a

Spanisch (Chile) 13322 340a

Spanisch (Costa Rica) 9226 240a

Spanisch (Dominikanische Republik) 5130 140a

Spanisch (Ecuador) 7178 1c0a

Spanisch (El Salvador) 12298 300a

Spanisch (Guatemala) 17418 440a

Spanisch (Honduras) 4106 100a

Spanisch (Kolumbien) 18442 480a

Spanisch (Mexico) 2058 080a

Spanisch (Nicaragua) 19466 4c0a

Spanisch (Panama) 6154 180a

Spanisch (Paraguay) 15370 3c0a

Spanisch (Peru) 10250 280a

Spanisch (Puerto Rico) 20490 500a

Spanisch (Spanien, Traditionelle Sortierung) 3082 0c0a

Spanisch (Spanien-Modern) 3082 0c0a

Spanisch (USA) 21514 540a

Spanisch (Uruguay) 14346 380a

Spanisch (Venezuela) 8202 200a

Sutu 1072 0430

Suaheli 1089 0441

Tschechisch 2077 081d

Schwedisch (Schweden) 1053 041d

Syrisch 1114 045a

Tadschikisch 1064 0428

Tamazight (Latein), Marokko 2143 085f

Tamilisch 1097 0449

Tatarisch 1092 0444

Page 63: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 63 | 69

Sprache LCID (dezimal) LCID (hexadezimal)

Telugu 1098 044a

Thai 1054 041e

Tibetanisch (VR China) 1105 0451

Tsuana 1074 0432

Türkisch 1055 041f

Turkmenisch 1090 0442

Uigurisch (VR China) 1152 0480

Ukrainisch 1058 0422

Obersorbisch 1070 042e

Urdu 1056 0420

Usbekisch (Kyrillisch) 2115 0843

Usbekisch (Lateinisch) 1091 0443

Vietnamesisch 1066 042a

Walisisch 1106 0452

Wolof 1160 0488

Jakutisch 1157 0485

Yi 1144 0478

Yoruba 1130 046a

Eine Besonderheit ist die LCID mit dem Wert 0127 (dezimal) bzw. 7F (hexadezimal): Dieser Wert wird bei den AutoKorrektur-Dateien *.acl (standardmäßig zu finden im Ordner C:\Users\<Benutzer>\AppData\Roaming\Microsoft\Office) für die mathematischen AutoKorrekturen genutzt.

Abbildung 28: Die LCIDs kommen auch bei den AutoKorrektur-Dateien zum Einsatz.

Page 64: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 64 | 69

6. Erweiterungen/Versionen Nachfolgend sind geplante Erweiterungen sowie durchgeführte Änderungen dieser Dokumentation aufgeführt.

6.1 Geplante Erweiterungen dieser Dokumentation

Folgende Erweiterungen für diese Dokumentation sind bereits in Planung/Arbeit:

Kapitel 4.6 zu vertrauenswürdigen Dokumenten in Excel, PowerPoint und Word – in Bezug auf Makros/VBA.

Kapitel zur Einschränkung von alten Dateiformaten

Kapitel zu sicherheitsrelevanten Gruppenrichtlinien und OCT-Einstellungen – in Bezug auf Makros/VBA.

Kapitel zu Office-Optionen, die für den Zugriff auf fremde Daten relevant sind.

6.2 Versionsverlauf der Dokumentation

v1.00 13.05.2019 Basisversion von Team Hahner® v1.01 07.06.2019 Erweiterungen im Kapitel 3.2 „VBA-Code digital signieren“

gemäß Leserrückmeldung v1.02 23.06.2019 Erweiterungen im Kapitel 2.1 „Makro-Viren – Schadprogramme

im Office-Datei-Format“ gemäß Leserrückmeldung v1.03 04.07.2019 Korrekturen zu Outlook im Kapitel 1.5 „Aufbau des VBA-Codes“

gemäß Leserrückmeldung Hinzufügen der Pfadangaben für die jeweiligen Speicherorte der

Dateien mit VBA-Code im Kapitel 1.3 „Speicherort des VBA-Codes“

Hinzufügen der Kapitel 1.5.1, 1.5.2 und 1.5.4 gemäß Leserrückmeldung

v1.04 07.07.2019 Anpassung Kapitel 1 „Was ist ein Makro, was ist VBA?“ gemäß Leserrückmeldung

Austausch der Bildschirmfotos mit Versionen aus der aktuellen Office-365-Version (Version 1906, Monatlicher Kanal). Hinzufügen von Bildunterschriften und einem Abbildungsverzeichnis.

Hinzufügen des Kapitels 1.5.3 „Auszug aus den Excel-Events zur Automatisierung“

v1.05 02.09.2019 Ergänzung von zusätzlicher Schaltflächen-Bezeichnung Bearbeitung aktivieren in Kapitel 2.2 „Makro-Schutzeinstellungen – was wie einstellen?“ gemäß Leserrückmeldung

Page 65: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 65 | 69

Versionshinweise mit Supportende sowie genutzte Windows-Version auf Seite 3 erweitert – gemäß Leserrückmeldung

Versionsangabe in Kapitel 1.3 „Speicherort des VBA-Codes“ erweitert – gemäß Leserrückmeldung

Neues Kapitel 4 „Vertrauenswürdige Speicherorte und Dokumente: Auswirkungen auf die Sicherheitseinstellungen“. Herzlichen Dank an meinen Kollegen Dietmar Gieringer/www.office-performance.de für das gemeinsame Erarbeiten vieler Grundlagen!

Hinweiskasten in Kapitel 2.2 „Makro-Schutzeinstellungen – was wie einstellen?“ und Kapitel 3 „VBA-Code digital signieren“ zur Beachtung der vertrauenswürdigen Speicherorte/Dateien.

Neues Kapitel 5 „Übersicht der Gebietsschema-ID (LCID)“

1.06 22.10.2019 Eindeutigere Kapitelüberschrift der Kapitel 4.2.1, 4.2.2 und 4.2.3 zur besseren Verlinkung innerhalb des Dokumentes.

Neues Kapitel 4.5 „Praxiserfahrungen bei vertrauenswürdigen Speicherorten“ initiiert durch zahlreiche Leserrückmeldungen/Workshops.

1.07 04.11.2019 Neues Kapitel 4.5.3 „Vagabundierende Word-Registerkarten bei fehlender Vertrauenswürdigkeit“

Page 66: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 66 | 69

Abbildungsverzeichnis Abbildung 1: Die Makro-Sprache zu Zeiten von Word für DOS......................................................... 4 Abbildung 2: Makro-Programmierung und Dialogfeld-Erstellung bei Word für Windows

2.0 aus dem Jahr 1992. .......................................................................................................... 5 Abbildung 3: Sämtliche Funktionen zum Thema VBA stehen in den Office-Programmen

auf der Registerkarte Entwicklertools zur Verfügung. ............................................... 6 Abbildung 4: Der VBA-Editor arbeitet als eigenständige Anwendung und verfügt noch

über die klassischen Menüstrukturen. ............................................................................... 7 Abbildung 5: Das Dialogfeld dient zur Verwaltung der Makros (= VBA-Routinen) außerhalb

des VBA-Editors. ...................................................................................................................... 7 Abbildung 6: Ist keine Freigabe via Kontrollkästchen Zugriff auf das VBA-Projektmodell

vertrauen vorhanden, erscheint diese Meldung beim Versuch, das VBA-Objektmodell via VBA anzusprechen. .............................................................................. 15

Abbildung 7: Für den VBA-Zugriff auf VBA muss der Veweis auf die Applications Extensibilty 5.3 gesetzt sein. ................................................................................................ 16

Abbildung 8: Die Makro-Meldung erscheint je nach Einstellung beim Öffnen einer Datei mit VBA-Code. ........................................................................................................................ 19

Abbildung 9: Autofunktionen sorgen dafür, dass beispielsweise beim Öffnen der Datei Makros ausgeführt werden. ............................................................................................... 20

Abbildung 10: Makroeinstellung: Praktisch ist leider nicht gleich sicher. .......................................... 20 Abbildung 11: Das Kontrollkästchen öffnet Viren Tür und Tor - unbedingt prüfen! ...................... 21 Abbildung 12: QuoVadis ist anerkannter Trust Service Provider (TSP). ............................................. 24 Abbildung 13: Die digitale Signatur wird im VBA-Editor zugewiesen. ............................................... 25 Abbildung 14: Über die Schaltfläche Wählen wird die digitale Signatur festgelegt...................... 25 Abbildung 15: Vertrauenswürdige Speicherorte/Dokumente werden in den Optionen

festgelegt. ................................................................................................................................ 26 Abbildung 16: Unterordner nur nach ausführlicher Prüfung und in absoluter Ausnahme

freigeben. ................................................................................................................................ 27 Abbildung 17: Standard-Einstellungen der vertrauenswürdigen Speicherorte in Excel................ 29 Abbildung 18: Standard-Einstellungen der vertrauenswürdigen Speicherorte in PowerPoint. .. 36 Abbildung 19: Standard-Einstellungen der vertrauenswürdigen Speicherorte in Word. .............. 41 Abbildung 20: Benutzeranpassungen erscheinen immer unter Speicherorte des

Benutzers (1). .......................................................................................................................... 45 Abbildung 21: Dialogfeld zum Hinzufügen eines neuen vertrauenswürdigen Speicherorts. ...... 46 Abbildung 22: Bei fehlender Vertrauenswürdigkeit im Normal.dotm-Ordner erscheint beim

Word-Start diese Meldung. ................................................................................................. 51 Abbildung 23: Die Makro-Ausführung ist jetzt dauerhaft gesperrt. ................................................... 52 Abbildung 24: Hinweis, der beim Start von Excel bei fehlendem vertrauenswürdigem

Speicherort für die Personal.xlsb erscheint. ................................................................... 52 Abbildung 25: Das Ausführen von Makros ist bei der Auswahl Makros deaktivieren beim

Excel-Start nicht mehr möglich. ........................................................................................ 53 Abbildung 26: Fehlt die Dokumentvorlage, erscheint beim Ausführen einer Funktion die

Makro-Fehlermeldung. ........................................................................................................ 55

Page 67: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 67 | 69

Abbildung 27: Der fälschlicherweise übernommene CustomUI-XML-Part kann mit dem Custom UI Editor nachträglich aus der .dotx-Datei gelöscht werden. ................... 55

Abbildung 28: Die LCIDs kommen auch bei den AutoKorrektur-Dateien zum Einsatz. ............... 63

Page 68: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 68 | 69

Über den Autor / Kontakt

Markus Hahner

Diplom-Ingenieur (FH)

+49 7720 810046

[email protected]

www.hahner.de | www.schauen-statt-lesen.de

Zertifizierter Office-Trainer mit den Schwerpunkten Word, VBA, XML, Office-Sicherheit und Office 365

Projekterfahrener Ingenieur für Mittelständler/Großunternehmen beim Office-Rollout

Entwickler von Vorlagen-Lösungen/Vorlagen mit vielen zehntausend Installationen

Fachbuchautor mit weltweit über 50 Büchern u. a. bei Microsoft Press; Linked In-Learning/video2brain-Trainer zu Word

Video-Blogger (schauen-statt-lesen.de) und Office-Blogger (office-kompetenz.de)

Mitglied im Team von office-kompetenz (office-kompetenz.de)

Page 69: Office sicher machen: Makro -/VBA -Einstellungen verstehen ...loesungen.schauen-statt-lesen.de/Hahner-Office-VBA-Sicherheit.pdf · Was sich hinter dem Begriff Makro verbirgt, lässt

Office sicher machen: Makro-/VBA-Einstellungen verstehen und konfigurieren

Team Hahner® – Engineer of Word-Solutions 69 | 69

Impressum © 2013 – 2019, Team Hahner® – Engineer of Word-Solutions, Dipl.-Ing. (FH) Markus Hahner

Alle Daten urheberrechtlich geschützt. Jegliches Kopieren ist verboten. All copyrights for data reserved. Unauthorized downloading or other kinds of copying prohibited. Keine Weitergabe oder Veröffentlichung in gedruckter oder elektronischer Form ohne ausdrückliche schriftliche Genehmigung von Team Hahner® – Engineer of Word-Solutions, Dipl.-Ing. (FH) Markus Hahner.

Team Hahner® – Engineer of Word-Solutions Dipl.-Ing. (FH) Markus Hahner Arndtstraße 28 78054 Villingen-Schwenningen Germany

+49 7720 810046 [email protected] www.hahner.de | www.schauen-statt-lesen.de

Mitglied im Team von office-kompetenz.de

Version: 1.07 vom 04.11.2019