{"id":209286,"date":"2018-09-14T15:04:29","date_gmt":"2018-09-14T13:04:29","guid":{"rendered":"https:\/\/www.borncity.com\/blog\/?p=209286"},"modified":"2022-11-13T11:34:56","modified_gmt":"2022-11-13T10:34:56","slug":"office-365-erhlt-anti-malware-scan-interface-amsi","status":"publish","type":"post","link":"https:\/\/borncity.com\/blog\/2018\/09\/14\/office-365-erhlt-anti-malware-scan-interface-amsi\/","title":{"rendered":"Office 365 erh&auml;lt Anti-Malware Scan-Interface (AMSI)"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" style=\"float: left; margin: 0px 10px 0px 0px; display: inline\" src=\"https:\/\/borncity.com\/blog\/wp-content\/uploads\/2012\/07\/Office1.jpg\" width=\"55\" align=\"left\" height=\"60\"\/>[<a href=\"https:\/\/borncity.com\/win\/2018\/09\/15\/office-365-receives-anti-malware-scan-interface-amsi\/\" target=\"_blank\" rel=\"noopener\">English<\/a>]Microsoft r\u00fcstet bei seinem Office gegen Bedrohungen durch Malware und Makro-Viren auf. Die einzelnen Module erhalten eine Schnittstelle f\u00fcr Virenscanner, um die Dokumente scannen zu lassen. <\/p>\n<p><!--more--><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" src=\"https:\/\/vg06.met.vgwort.de\/na\/4602dfa60c3d449aa717d66fc1ad8ac8\" width=\"1\" height=\"1\"\/>Ich bin bei MS Power User auf das Thema gesto\u00dfen, die <a href=\"https:\/\/mspoweruser.com\/microsoft-adds-antivirus-to-office-apps-to-tackle-macro-malware\/\" target=\"_blank\" rel=\"noopener\">hier<\/a> missverst\u00e4ndlich schreiben, dass Microsoft ein Antivirusfunktion zu Office hinzuf\u00fcge, um Makro-Malware abzuwehren. Aber das Thema als solches ist schon interessant. Im Cloud-Blog hat Microsoft einen sehr umfangreichen Artikel <a href=\"https:\/\/web.archive.org\/web\/20181223155211\/https:\/\/cloudblogs.microsoft.com\/microsoftsecure\/2018\/09\/12\/office-vba-amsi-parting-the-veil-on-malicious-macros\/\" target=\"_blank\" rel=\"noopener\">Office VBA + AMSI: Parting the veil on malicious macros<\/a> zum Thema ver\u00f6ffentlicht. <\/p>\n<h2>Reaktion auf Bedrohungen <\/h2>\n<p>Makrobasierte Bedrohungen waren schon immer ein weit verbreitetes Problem \u2013 ich kenne das, solange ich in Bezug auf Computerviren und Office-Makros denken kann. Erlebnis aus fr\u00fchen Autortagen war der Anruf eines Microsoft Press-Lektors, weil sein Virenscanner bei meinen VBA-Makro-Beispielen zu irgend einem Office-Buch zu VBA angeschlagen hatte. Dabei war im betreffenden VBA-Makro nur den Kill-Befehl zum L\u00f6schen von Dateien eingesetzt worden. Der Virenscanner hatte falschen Alarm geschlagen.<\/p>\n<p>Microsoft hat dann irgendwann den Makro-Schutz in Office eingef\u00fchrt, der nur noch Makros aus vertrauensw\u00fcrdigen Quellen zul\u00e4sst. Aber heutige Angriffe sind da wesentlich ausgefeilter als fr\u00fcher. Der VBA-Code wird verschleiert (obfuscated) oder es werden PowerShell-Module und Schadcode nachgeladen sowie Schwachstellen zum Umgehen von Sicherheitsmechanismen ausgenutzt.<\/p>\n<p><a href=\"https:\/\/web.archive.org\/web\/20210310012256\/https:\/\/cloudblogs.microsoft.com\/uploads\/prod\/sites\/13\/2018\/09\/fig1-prevalence-of-exploit-vs-macro.png\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" title=\"Office-Bedrohungen\" alt=\"Office-Bedrohungen\" src=\"https:\/\/web.archive.org\/web\/20210310012256\/https:\/\/cloudblogs.microsoft.com\/uploads\/prod\/sites\/13\/2018\/09\/fig1-prevalence-of-exploit-vs-macro.png\" width=\"625\" height=\"173\"\/><\/a><br \/>(Office-Bedrohungen, Quelle: Microsoft, Zum Vergr\u00f6\u00dfern klicken)  <\/p>\n<p>Die Bedrohungen durch Office-Exploits sind, laut der obigen Microsoft-Grafik, in den letzten Jahren stark zur\u00fcckgegangen. Aber man konnte in 2015\/2016 ein Aufflackern der Bedrohungen durch Makro-Malware beobachten. Die Angreifer haben in Social-Engineering-Angriffen, die Funktionalit\u00e4ten wie VBA-Makros missbrauchen, einen geeigneten alternativen Infektionsvektor gefunden. B\u00f6sartige Makros tauchen seither in Commodity-Malware-Kampagnen, gezielten Angriffen und in Aktivit\u00e4ten im Bereich der <a href=\"https:\/\/en.wikipedia.org\/wiki\/Red_team\" target=\"_blank\" rel=\"noopener\">Red Teams<\/a> auf.<\/p>\n<h2>Anti-Malware Scan-Interface (AMSI) f\u00fcr Office<\/h2>\n<p>Um dieser Bedrohung entgegenzuwirken, hat Microsoft, laut Blog-Beitrag, in den Aufbau besserer Erkennungsmechanismen investiert. Diese Mechanismen sollen das Makroverhalten durch Laufzeitinstrumentierung innerhalb der Microsoft Threat Protection-L\u00f6sungen in der Cloud offenlegen. Microsoft bringt diese Instrumentierung nun direkt in Office 365-Clientanwendungen ein. <\/p>\n<p>Microsoft ist es dabei wichtig, diese F\u00e4higkeit durch das Anti-Malware Scan-Interface (AMSI), eine offene Schnittstelle, offen zu legen und sie f\u00fcr jede Antivirenl\u00f6sung zug\u00e4nglich machen. Das <a href=\"https:\/\/docs.microsoft.com\/en-us\/windows\/desktop\/amsi\/antimalware-scan-interface-portal\" target=\"_blank\" rel=\"noopener\">Antimalware Scan Interface (AMSI)<\/a> ist dabei nichts neues, denn diese offene Schnittstelle wurde unter Windows 10 eingef\u00fchrt (siehe <a href=\"https:\/\/borncity.com\/blog\/2015\/09\/05\/windows-10-welche-antivirus-lsung-soll-ich-einsetzen\/\">Windows 10: Welche Antivirus-L\u00f6sung soll ich einsetzen?<\/a>). AMSI bietet f\u00fcr Anwendungen eine einheitliche Schnittstelle, um zur Laufzeit einen synchronen Scan eines Speicherpuffers durch eine installierte Antiviren- oder Sicherheitsl\u00f6sung anzufordern. Jede Anwendung kann mit AMSI zusammenarbeiten und eine \u00dcberpr\u00fcfung auf nicht vertrauensw\u00fcrdige oder verd\u00e4chtige Daten anfordern.<\/p>\n<h2>Warum das gut ist?<\/h2>\n<p>Im ersten Augenblick, als ich die Meldung las, schoss der Gedanke 'ist das notwendig' durch meinen Kopf. Jedes Office-Dokument wird ja schlie\u00dflich beim Speichern und sp\u00e4ter beim \u00d6ffnen durch Antivirus-L\u00f6sungen gescannt. Aber dann fiel mir ein: Es kann ja sein, dass Malware sich dynamisch im Speicher mittels Makro-Code oder PowerShell-Script generiert. Dann l\u00e4uft die Malware nur noch im Arbeitsspeicher. <\/p>\n<p>Microsoft schreibt denn auch: Um der Erkennung zu entgehen, muss Malware ihre Absicht verbergen. Der h\u00e4ufigste Weg, wie Angreifer dies tun, ist die Code-Verschleierung. Makro-Quellcodes sind leicht zu verdunkeln, und eine Vielzahl von kostenlosen Tools stehen Angreifern zur Verf\u00fcgung, um dies automatisch zu tun. Dies f\u00fchrt zu polymorpher Malware mit sich entwickelnden Verschleierungsmustern und mehreren verschleierten Varianten desselben b\u00f6sartigen Makros.<\/p>\n<p>Es gibt noch mehr Fallen: B\u00f6sartiger Code kann aus der Makroquelle entfernt und in anderen Dokumentenkomponenten wie Textbeschriftungen, Formularen, Excel-Zellen und anderen Elementen versteckt werden. Oder warum sich \u00fcberhaupt verstecken? Ein kleines St\u00fcck b\u00f6sartigen Codes kann irgendwo in eine riesige legitime Quelle eingebettet werden und bleibt unauff\u00e4llig. Das alles wird durch normale Virenscanner nicht erkannt.<\/p>\n<p>Genau dort setzt AMSI an und \u00fcberwacht die auszuf\u00fchrenden Makros. AMSI kann dann einen Alarm ausl\u00f6sen (die Mechanismen zur Erkennung von Schadfunktionen in PowerShell-Scripten sind <a href=\"https:\/\/web.archive.org\/web\/20190108104225\/https:\/\/cloudblogs.microsoft.com\/microsoftsecure\/2015\/06\/09\/windows-10-to-offer-application-developers-new-malware-defenses\/\" target=\"_blank\" rel=\"noopener\">hier<\/a> beschrieben). Dies erm\u00f6glicht Anwendungen, zur Laufzeit, einen synchronen Scan eines Speicherpuffers durch eine installierte Virenschutz- oder Sicherheitsl\u00f6sung anfordern. <\/p>\n<p>Jede Antivirus-L\u00f6sung kann dabei prinzipiell als AMSI-Provider agieren (wenn der Hersteller die Schnittstelle implementiert) und die von Anwendungen \u00fcber die AMSI-Schnittstelle gesendeten Daten \u00fcberpr\u00fcfen. Wenn der zur \u00dcberpr\u00fcfung eingereichte Inhalt als b\u00f6sartig erkannt wird, kann die anfragende Anwendung Ma\u00dfnahmen ergreifen, um der Bedrohung zu begegnen und die Sicherheit des Ger\u00e4ts zu gew\u00e4hrleisten (siehe <a href=\"https:\/\/docs.microsoft.com\/en-us\/windows\/desktop\/AMSI\/antimalware-scan-interface-portal\" target=\"_blank\" rel=\"noopener\">AMSI-Dokumentation<\/a>).<\/p>\n<p>AMSI l\u00e4sst sich auch in die Skript-Engines JavaScript, VBScript und PowerShell integrieren. Im Laufe der Jahre hat Microsoft die Investitionen in Sicherheitsl\u00f6sungen mit einem tieferen Einblick in skriptbasierte Bedrohungen kontinuierlich erh\u00f6ht. \u00dcber AMSI gewonnene Erkenntnisse werden von Microsofts eigenen Sicherheitsprodukten genutzt. Die neue Office- und AMSI-Integration ist eine weitere Erg\u00e4nzung des Arsenals zum Schutz vor skriptbasierter Malware. Windows Defender Advanced Threat Protection (<a href=\"https:\/\/www.microsoft.com\/en-us\/windowsforbusiness\/windows-atp?ocid=cx-blog-mmpc\" target=\"_blank\" rel=\"noopener\">Windows Defender ATP<\/a>) nutzt AMSI und maschinelles Lernen, um skriptbasierte Bedrohungen zu bek\u00e4mpfen, die au\u00dferhalb des Landes leben (<a href=\"https:\/\/web.archive.org\/web\/20180225162337\/https:\/\/cloudblogs.microsoft.com\/microsoftsecure\/2017\/12\/04\/windows-defender-atp-machine-learning-and-amsi-unearthing-script-based-attacks-that-live-off-the-land\/\" target=\"_blank\" rel=\"noopener\">siehe<\/a>).<\/p>\n<h2>Office VBA-Integration mit AMSI<\/h2>\n<p>Die Office VBA-Integration mit AMSI besteht aus drei Teilen: (a) Protokollieren des Makroverhaltens, (b) Ausl\u00f6sen einer \u00dcberpr\u00fcfung bei verd\u00e4chtigem Verhalten und (c) Stoppen eines b\u00f6sartigen Makros bei Erkennung.<\/p>\n<p><img decoding=\"async\" title=\"Laufzeit-Scanning von Makros &uuml;ber AMSI\" alt=\"Laufzeit-Scanning von Makros &uuml;ber AMSI\" src=\"https:\/\/i.imgur.com\/FeSxOj2.jpg\"\/><br \/>(Laufzeit-Scanning von Makros \u00fcber AMSI, Quelle: Microsoft)<\/p>\n<p>Die VBA-Sprache bietet Makros mit einer Vielzahl von Funktionen, die zur Schnittstelle mit dem Betriebssystem verwendet werden k\u00f6nnen, um Befehle auszuf\u00fchren, auf das Dateisystem zuzugreifen usw. Dar\u00fcber hinaus erm\u00f6glicht es die M\u00f6glichkeit, direkte Aufrufe an COM-Methoden und Win32-APIs zu senden. Die VBA-Skript-Engine verarbeitet Aufrufe von Makrocode an COM und APIs \u00fcber interne Schnittstellen, die den \u00dcbergang zwischen dem Aufrufer und dem Aufruf realisieren. Diese Schnittstellen sind so instrumentiert, dass das Verhalten eines Makros erfasst wird und alle relevanten Informationen, einschlie\u00dflich des Funktionsnamens und seiner Parameter, in einem Ringspeicher protokolliert werden.<\/p>\n<p>Wenn eine potenziell risikoreiche Funktion oder Methode (ein Ausl\u00f6ser, z.B. CreateProcess oder ShellExecute) aufgerufen wird, stoppt Office die Ausf\u00fchrung des Makros und fordert \u00fcber die AMSI-Schnittstelle einen Scan des bis dahin aufgezeichneten Makroverhaltens an. Der AMSI-Anbieter (z.B. Antivirensoftware) wird synchron aufgerufen und gibt ein Urteil dar\u00fcber ab, ob das beobachtete Verhalten sch\u00e4dlich ist oder nicht.<\/p>\n<p>Die Liste der Hochrisikofunktionen oder -trigger soll Aktionen in verschiedenen Phasen einer Angriffskette (z.B. Download der Nutzlast, Persistenz, Ausf\u00fchrung usw.) abdecken und wird aufgrund ihrer Pr\u00e4valenz unter b\u00f6sartigen und gutartigen Makros ausgew\u00e4hlt. Das \u00fcber die AMSI gesendete Verhaltensprotokoll kann Informationen wie verd\u00e4chtige URLs, von denen b\u00f6sartige Daten heruntergeladen wurden, verd\u00e4chtige Dateinamen, die bekannterma\u00dfen mit Malware in Verbindung gebracht werden, und andere enthalten. <\/p>\n<p><img loading=\"lazy\" decoding=\"async\" title=\"Makro-Warnung\" alt=\"Makro-Warnung\" src=\"https:\/\/web.archive.org\/web\/20200530072231\/https:\/\/cloudblogs.microsoft.com\/uploads\/prod\/sites\/13\/2018\/09\/fig3-malicious-macro-notification.png\" width=\"369\" height=\"251\"\/> (Quelle: Microsoft)  <\/p>\n<p>Wird ein b\u00f6sartiger Makrocode entdeckt, stoppt Office dessen Ausf\u00fchrung und benachrichtigt den Benutzer durch das obige Dialogfeld. Gleichzeitigt wird die Anwendungssitzung beendet, um weitere Sch\u00e4den zu vermeiden. Dies kann einen Angriff stoppen und das Ger\u00e4t und den Benutzer sch\u00fctzen. Erscheint mir sinnvoll, wie das in der Praxis ausschaut, wird man abwarten m\u00fcssen. Weitere Details sind dem sehr ausf\u00fchrlichen <a href=\"https:\/\/web.archive.org\/web\/20181223155211\/https:\/\/cloudblogs.microsoft.com\/microsoftsecure\/2018\/09\/12\/office-vba-amsi-parting-the-veil-on-malicious-macros\/\" target=\"_blank\" rel=\"noopener\">Microsoft-Blog-Beitrag<\/a> zu entnehmen. <\/p>\n<p><strong>\u00c4hnliche Artikel:<\/strong><br \/><a href=\"https:\/\/borncity.com\/blog\/2015\/09\/05\/windows-10-welche-antivirus-lsung-soll-ich-einsetzen\/\">Windows 10: Welche Antivirus-L\u00f6sung soll ich einsetzen?<\/a><br \/><a href=\"https:\/\/borncity.com\/blog\/2018\/02\/19\/windows10-null-zeichen-ermglichte-anti-malware-bypass\/\">Windows 10: Null-Zeichen erm\u00f6glichte Anti-Malware-Bypass<\/a><br \/><a href=\"https:\/\/borncity.com\/blog\/2018\/03\/16\/windows-defender-atp-erkennt-krypto-miner\/\">Windows Defender ATP erkennt Krypto-Miner<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>[English]Microsoft r\u00fcstet bei seinem Office gegen Bedrohungen durch Malware und Makro-Viren auf. Die einzelnen Module erhalten eine Schnittstelle f\u00fcr Virenscanner, um die Dokumente scannen zu lassen.<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[426,161],"tags":[4322,4328,4313],"class_list":["post-209286","post","type-post","status-publish","format-standard","hentry","category-sicherheit","category-virenschutz","tag-office","tag-sicherheit","tag-virenschutz"],"_links":{"self":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/posts\/209286","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/comments?post=209286"}],"version-history":[{"count":0,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/posts\/209286\/revisions"}],"wp:attachment":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/media?parent=209286"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/categories?post=209286"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/tags?post=209286"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}