Wenn die eigene Windows-App als Virus gemeldet wird — Umgang mit Fehlalarmen von Microsoft Defender und den Auswirkungen auf die Leistung
· Go Komura · Microsoft Defender, Antivirus, Fehlalarm, Codesignierung, SmartScreen, App-Bereitstellung, Sicherheit, C#, .NET, Windows-Entwicklung, Technische Beratung
„Unsere App wurde auf dem Rechner des Kunden als Virus gemeldet und gelöscht.“ Wer intern entwickelte oder in Auftrag gegebene Windows-Apps verteilt, bekommt diesen Anruf früher oder später. Eine Business-App, die gestern noch klaglos lief, landet in dem Moment in Quarantäne, in dem ein Defender-Definitionsupdate eintrifft. Auf der eigenen Entwicklungsmaschine passiert nichts, doch nur in der Umgebung des Kunden schlägt es Alarm. Und geschrieben haben Sie mit Sicherheit keine Malware.
Das ist kein seltener Unfall. Moderne Antivirus-Software schätzt „Verdächtigkeit“ nicht nur durch Abgleich mit bekannter Malware ein, sondern durch maschinelles Lernen, Verhaltensanalyse und Cloud-Reputation, was bedeutet: Dass ein legitimes Binary ohne Leistungsnachweis in Verdacht gerät, ist konstruktionsbedingt unvermeidlich. Und wenn es um den Umgang mit einem Fehlalarm geht, gibt es eine klare Trennlinie zwischen dem, was Sie tun sollten (den Fehlalarm bei Microsoft melden, eine eng gefasste Ausnahme anwenden), und dem, was Sie nie tun sollten (den Virenschutz deaktivieren, eine breite Ausnahme anwenden).
Dieser Artikel ordnet aus Entwicklersicht, wie Fehlalarme entstehen, was Sie vor der Verteilung tun können, um sie zu verhindern, das korrekte Verfahren nach einer Erkennung, Ausnahmen als Notmaßnahme in einer Kundenumgebung samt ihrer Risiken und den Umgang mit der anderen Dauerbeschwerde: „Defender (MsMpEng.exe) bremst alles aus.“
1. Das Ergebnis zuerst
- Auch eine legitime App kann einen Fehlalarm auslösen. Seit 2015 ist Defender von einer statisch-signaturzentrierten Engine zu einem prädiktiven Modell gewechselt, das maschinelles Lernen und Cloud-Schutz nutzt, sodass eine unbekannte Datei allein aufgrund von „Verdächtigkeit“ gemeldet werden kann, selbst ohne mit bekannter Malware übereinzustimmen.12
- Der korrekte, dauerhafte Weg ist, die Datei bei Microsoft einzureichen (eine Fehlalarmmeldung). Reichen Sie als Entwickler über das Sample-Einreichungsportal von Microsoft Security Intelligence ein und verfolgen Sie die Beurteilung. Sind Sie mit der Beurteilung nicht einverstanden, können Sie über das Entwicklerkontaktformular eine erneute Untersuchung anfordern.34
- Eine unter Quarantäne gestellte Datei lässt sich wiederherstellen. Holen Sie sie über den Schutzverlauf von Windows-Sicherheit zurück, oder über die Befehlszeile mit
MpCmdRun.exe -Restore.5 - Eine Ausnahme ist eine Notlösung, bis Ihre Meldung zurückkommt. Eine Ausnahme ist eine Schutzlücke, und Microsoft erklärt ausdrücklich, dass sie sparsam, nur für ein konkretes Problem und mit regelmäßiger Überprüfung eingesetzt werden sollte. Fügen Sie eine hinzu, grenzen Sie sie über einen vollständigen Pfad so eng wie möglich ein und führen Sie Buch darüber.6
- Konsequente Codesignierung ist die Säule der Prävention. Microsoft hat kein Vorregistrierungsprogramm zur Fehlalarm-Vermeidung; der offiziell empfohlene Weg, die Herkunftsidentifikation zu beschleunigen und auf die Positivliste zu gelangen, ist konsequentes Signieren mit einem Zertifikat einer vertrauenswürdigen Stamm-CA.4
- Ein selbst durchgeführter Scan vor der Veröffentlichung und eine vorausschauende Einreichung reduzieren Ihr „Kein-Leistungsnachweis“-Problem. Sie können Ihre Verteilungsdateien mit dem benutzerdefinierten Scan von
MpCmdRun.exeprüfen, und Microsoft selbst weist darauf hin, dass das Einreichen einer unbekannten Datei als Sample ein Weg ist, ihre Reputation aufzubauen.78 - „Defender ist langsam“ beginnt mit dem Messen. Nutzen Sie den Performance-Analyzer (
New-MpPerformanceRecording/Get-MpPerformanceReport), um zu identifizieren, welche Dateien oder Prozesse im Zentrum der Scan-Last stehen, bevor Sie an eine Lösung denken. Auch hier ist eine Ausnahme das letzte Mittel.910
2. Warum eine legitime App als Virus behandelt wird
Wer Antivirus-Software noch als „etwas, das gegen bekannte Virenmuster (Signaturen) abgleicht“ versteht, für den wirkt ein Fehlalarm unerklärlich. Doch das moderne Defender ist das nicht. Microsoft stellt unmissverständlich fest, dass man 2015 von einer statisch-signaturbasierten Engine zu einem Modell gewechselt ist, das prädiktive Technologien nutzt — maschinelles Lernen, angewandte Wissenschaft und KI.1
Die Erkennung erfolgt in mehreren Schichten. Auf dem Gerät laufen zuerst leichtgewichtige Machine-Learning-Modelle, Verhaltensanalyse und Heuristiken; eine Datei, bei der sich das Gerät nicht selbst entscheiden kann, hat ihre Metadaten an einen Cloud-Schutzdienst gesendet, der in den meisten Fällen innerhalb von Millisekunden eine Beurteilung zurückliefert. Kann selbst das nicht entscheiden, fordert das System eine Sample der Datei an und lässt sie durch Cloud-seitiges Scannen, Detonation (Ausführung in einer isolierten Umgebung) und Big-Data-Analyse laufen. In Umgebungen, in denen „Block at First Sight“ aktiviert ist, kann das Öffnen einer Datei sogar vorübergehend zurückgehalten werden, bis eine Cloud-Beurteilung eintrifft.211
Die Implikation dieses Designs ist klar: Die für eine Beurteilung herangezogene Evidenz umfasst nicht nur „eine Übereinstimmung mit etwas Bösartigem“, sondern auch „einen Leistungsnachweis, harmlos zu sein“. Microsofts Klassifizierungskriterien enthalten ausdrücklich eine Kategorie „Unbekannt (nicht erkannte Software)“, und Warnungen vor unbekannten Programmen mit geringer Download-Historie sind als Frühwarnsystem für noch nicht erkannte Malware positioniert. Nicht jedes seltene Programm ist bösartig, aber das Risiko der Kategorie Unbekannt ist für den durchschnittlichen Nutzer hoch — so die offizielle Einordnung.8
Mit anderen Worten: Eine frisch veröffentlichte interne App sieht aus Sicht der Windows-Sicherheitsmechanik wie „ein Binary mit null Leistungsnachweis, das noch niemand auf der Welt je ausgeführt hat“ aus. Und obendrein verstärkt sich der Verdacht, sobald folgende Merkmale zusammenkommen.
- Eine Struktur, die die wahre Substanz des Codes verbirgt. Microsofts Malware-Klassifizierung enthält eine Kategorie „Obfuscator“ — Code und Absicht verborgen, um die Erkennung zu erschweren —, und Software, die aktiv versucht, der Erkennung durch Sicherheitsprodukte zu entgehen, wird ebenfalls als potenziell unerwünschte Anwendung (PUA) klassifiziert. Verschleierungswerkzeuge, selbstextrahierende Formate und Verpackungen, die eine Runtime in eine einzige exe bündeln, sind allesamt strukturell schwer von Mustern zu unterscheiden, die Malware intensiv nutzt, und es ist ein Bereich, in dem selbst legitime Apps leicht Verdacht auf sich ziehen.8
- Keine Signatur, kein Hinweis zur Rückverfolgung der Herkunft. Wie im nächsten Kapitel besprochen, ist konsequentes Signieren der Hauptanhaltspunkt, den Untersucher zur Herkunftsbestimmung nutzen.4
- Der Installer bündelt andere Software. Ein Installer, der anbietet, Software eines anderen Herausgebers zu installieren, oder Software, die für den Betrieb der App nicht nötig ist, wird unter „Bundling Software“ als PUA klassifiziert.8
Noch etwas: Die blaue Warnung „Windows hat Ihren PC geschützt“, die direkt nach einem Download erscheint, ist ein separater Mechanismus von der Antivirus-Erkennung von Defender (Microsoft Defender SmartScreen). Microsofts eigene Entwickler-FAQ stellt unmissverständlich fest, dass SmartScreen nichts mit der Antivirus-Funktion von Defender zu tun hat.4 Wir haben SmartScreen und Reputation ausführlich in Warum Windows „Windows hat Ihren PC geschützt“ anzeigt behandelt — finden Sie also zunächst heraus, welche der beiden Warnungsarten Sie tatsächlich vor sich haben.
3. Prävention, die Sie vor der Verteilung leisten können
3.1 Konsequente Codesignierung — es gibt kein Vorregistrierungsprogramm
Es ist ein naheliegender Gedanke zu fragen: „Kann ich mich vorab auf einer Microsoft-Whitelist registrieren, damit meine App nie gemeldet wird?“ Die Antwort lautet nein. Microsoft nimmt keine Anträge von Entwicklern für eine Positivlisten-Registrierung oder ein Fehlalarm-Vermeidungsprogramm entgegen. Stattdessen lautet die Empfehlung der offiziellen FAQ, die Dateien Ihres Programms konsequent mit einem Zertifikat einer vertrauenswürdigen Stammzertifizierungsstelle zu signieren. Mit konsequenter Signierung kann das Untersuchungsteam die Herkunft des Programms schnell identifizieren und bereits vorhandenes Wissen anwenden, was die Aufnahme des Programms in die Positivliste beschleunigen kann — und, wenn auch seltener, sogar dazu führen kann, dass das Zertifikat selbst auf die Liste vertrauenswürdiger Herausgeber gelangt.4
Anders ausgedrückt: Was Signieren eigentlich bewirkt, ist, den „Leistungsnachweis pro Datei“ zu einem „Leistungsnachweis pro Herausgeber“ zu bündeln. Eine ausführbare Datei, deren Hash sich mit jedem Build ändert, ist Datei für Datei jedes Mal eine „nie zuvor gesehene Datei“, aber ist sie mit demselben Zertifikat signiert, bleibt ihre Herkunft durchgängig nachvollziehbar. Für die praktische Mechanik des Signierens (Zertifikatstypen, Azure Artifact Signing, Zeitstempelung) siehe den obigen SmartScreen-Artikel und Eine Mindest-Sicherheitscheckliste für die Windows-App-Entwicklung.
3.2 Vor der Veröffentlichung selbst scannen
Die eigene Build-Ausgabe im Rahmen des Release-Gates zu scannen, ist weit günstiger, als von einer Erkennung erst zu erfahren, nachdem sie bereits die Umgebung eines Kunden getroffen hat. Defender wird mit dem Befehlszeilenwerkzeug MpCmdRun.exe ausgeliefert, das Sie über ein Skript oder eine geplante Aufgabe automatisieren können. Es steht standardmäßig nicht im PATH, wechseln Sie also vor der Ausführung in das Verzeichnis %ProgramData%\Microsoft\Windows Defender\Platform\<Version> (oder %ProgramFiles%\Windows Defender, falls dieser Pfad nicht existiert).7
rem In einer erhöhten Eingabeaufforderung ausführen
cd /d "C:\ProgramData\Microsoft\Windows Defender\Platform\<neuester Versionsordner>"
rem Benutzerdefinierter Scan des Release-Ordners (-ScanType 3)
rem -DisableRemediation: bei Erkennung nicht in Quarantäne verschieben o. Ä. -- Ergebnis nur in der Befehlsausgabe anzeigen
MpCmdRun.exe -Scan -ScanType 3 -File "C:\Release\MyApp" -DisableRemediation
Die Rückgabecodes 0 und 2 sind definiert, aber was bei der Nutzung als Gate leicht übersehen wird: 0 deckt nicht nur „nichts erkannt“ ab, sondern auch „erkannt, und Behebung erfolgreich“. Mit einem einfachen -Scan können Sie in die denkbar schlechteste Kombination geraten: Defender erkennt etwas in Ihrer Release-Ausgabe, verschiebt es in Quarantäne, und der Rückgabecode ist trotzdem 0 — „sauber“ — und rutscht direkt durch die Pipeline. Fügen Sie bei einem benutzerdefinierten Scan -DisableRemediation hinzu, damit bei einer Erkennung nichts behoben wird (das Erkennungsergebnis erscheint stattdessen in der Befehlsausgabe), und lassen Sie Ihr Gate mehr tun als nur „bei Rückgabe von 2 das Release stoppen und untersuchen“ — prüfen Sie auch die Befehlsausgabe darauf, ob etwas erkannt wurde, und bestätigen Sie, dass keine der Ausgabedateien fehlt.7
3.3 Unbekannte Dateien vorab einreichen
Microsoft stellt unmissverständlich fest, dass das Einreichen einer Sample unbekannter oder verdächtiger Software „hilft, sie vom System scannen zu lassen und eine Reputation aufzubauen“.8 Mit anderen Worten: Das Sample-Einreichungsportal ist nicht nur ein letztes Mittel, zu dem Sie nach einer Erkennung greifen — es ist auch ein präventives Werkzeug, um einem neuen Binary ohne Leistungsnachweis seinen ersten Leistungsnachweis zu verschaffen. Für ein größeres Release — eine Hauptversion, eine Änderung der Verpackungsmethode, die Einführung eines Verschleierungswerkzeugs oder jeden anderen Punkt, an dem sich die äußere Form der App wesentlich ändert — lohnt es sich, vor Beginn der Verteilung eine Sample einzureichen.
4. Der korrekte Reaktionsweg nach einer Meldung
4.1 Zuerst die Fakten bestätigen — Schutzverlauf und Ereignisprotokoll
Bestätigen Sie zunächst, ob eine Meldung „es ist verschwunden“ oder „es startet nicht mehr“ tatsächlich durch eine Defender-Erkennung verursacht wurde. In der GUI führt Windows-Sicherheit unter Viren- & Bedrohungsschutz → Schutzverlauf ein Protokoll von Erkennungen und Quarantänen, und Sie können die Ansicht auf unter Quarantäne stehende Elemente filtern.5
Wollen Sie es als Protokoll oder müssen Sie remote prüfen, nutzen Sie das Ereignisprotokoll. Defenders Ereignisse werden unter Anwendungs- und Dienstprotokolle → Microsoft → Windows → Windows Defender → Betriebsbereit aufgezeichnet, und Sie können sie auch mit PowerShells Get-WinEvent abrufen.12 Die Erkennung selbst wird als Ereignis-ID 1116 protokolliert (Malware oder unerwünschte Software erkannt), die daraus resultierende Aktion — Quarantäne und so weiter — als ID 1117.13
# Defenders Erkennungs- (1116) und Aktionsereignisse (1117) prüfen, neueste zuerst
Get-WinEvent -LogName 'Microsoft-Windows-Windows Defender/Operational' |
Where-Object { $_.Id -in 1116, 1117 } |
Select-Object TimeCreated, Id, Message -First 10
Halten Sie an dieser Stelle den Bedrohungsnamen fest (einen Erkennungsnamen wie Trojan:Win32/Wacatac.B!ml) zusammen mit Pfad und Version der gemeldeten Datei. Sowohl Ihre Einreichung bei Microsoft als auch Ihre Erklärung gegenüber dem Kunden beginnen mit diesen beiden Informationen. Die Struktur eines Erkennungsnamens (Typ/Plattform/Familienname) folgt der CARO-Malware-Namenskonvention, und ein Suffix wie das abschließende !ml kann manchmal einen Hinweis darauf geben, woher die Erkennung stammt.14
4.2 Den Fehlalarm bei Microsoft melden
Das ist Ihre dauerhafte Lösung. Reichen Sie die fälschlich gemeldete Datei über das Sample-Einreichungsportal von Microsoft Security Intelligence ein (microsoft.com/wdsi/filesubmission). Für die Einreichung ist eine Anmeldung erforderlich, und nach der Anmeldung können Sie den Beurteilungsstatus Ihrer Einreichung verfolgen. Samples werden nicht per E-Mail entgegengenommen.3
Reichen Sie als Entwickler die Datei als Softwareentwickler ein. Warten Sie, bis die Beurteilung abgeschlossen ist, und falls Sie nicht einverstanden sind, können Sie Microsoft über das dem Einreichungsergebnis beigefügte Entwicklerkontaktformular kontaktieren und eine erneute Untersuchung anfordern.4 Eine eingereichte Datei wird zunächst sofort von einem automatisierten System gescannt, und wenn die Datei bereits an anderer Stelle verarbeitet wurde, kommt eine Beurteilung schnell zurück. Für noch nicht verarbeitete Einreichungen priorisiert die Analyse Dateien mit breiter Auswirkung sowie Einreichungen von Unternehmenskunden mit einer Software-Assurance-ID.15
Sobald Microsoft die Definitionen aktualisiert, um eine Fehlalarm-Beurteilung widerzuspiegeln, wird diese Datei ab diesem Zeitpunkt nicht mehr erkannt. Umgekehrt formuliert: Solange Sie es nicht melden, tritt die Erkennung in jeder anderen Kundenumgebung weiter auf, ganz gleich, wie viele Ausnahmen Sie darüberkleben. Es gibt auch einen Weg für eine verhaltensbasierte Erkennung, die keine Datei hinterlässt: Reichen Sie die von MpCmdRun.exe -GetFiles erzeugte Diagnosedatei (MpSupportFiles.cab) ein und fordern Sie eine Analyse dazu an.157
Hat die Organisation des Kunden Microsoft Defender for Endpoint (EDR) im Einsatz, gibt es auch einen Administratorweg: Der Sicherheitsadministrator des Kunden reicht über die Seite „Einreichungen“ im Microsoft-Defender-Portal ein und unterdrückt daneben mit einem „Zulassen“-Indikator den Fehlalarm organisationsweit.15 In diesem Fall versuchen Sie nicht, das vollständig allein zu erledigen — stimmen Sie sich mit der IT-Abteilung des Kunden ab.
4.3 Eine unter Quarantäne stehende Datei wiederherstellen
Eine Datei, bei der Sie sich sicher sind, dass es sich um einen Fehlalarm handelt, kann aus der Quarantäne wiederhergestellt werden. Wählen Sie in der GUI das Element aus dem Schutzverlauf aus und wählen Sie „Wiederherstellen“. Über die Befehlszeile nutzen Sie MpCmdRun.exe.5
rem Unter Quarantäne stehende Elemente auflisten
MpCmdRun.exe -Restore -ListAll
rem An den ursprünglichen Ort wiederherstellen, indem der Pfad der unter Quarantäne stehenden Datei angegeben wird
MpCmdRun.exe -Restore -FilePath "C:\Program Files\Contoso\ContosoApp\ContosoApp.exe"
Sie können auch die Option -Path nutzen, um in einen anderen Ordner wiederherzustellen (in diesem Fall bleibt das Element außerdem in Quarantäne).7 Allerdings birgt eine Wiederherstellung vor der Aktualisierung der Definitionen offensichtlich das Risiko einer erneuten Erkennung, sodass es in der Praxis sicherer ist, in dieser Reihenfolge vorzugehen: Fehlalarmmeldung → bei Bedarf eine vorübergehende Ausnahme → Wiederherstellung.
4.4 Falls es von einem Drittanbieter-Antivirusprodukt erkannt wird
Eine Erkennung durch ein EDR oder ein Drittanbieter-Antivirusprodukt statt Defender wird nicht durch eine Meldung an Microsoft gelöst. Sie müssen separat über den eigenen Fehlalarm-Einreichungskanal des jeweiligen Anbieters für das Produkt einreichen, das den Alarm ausgelöst hat. Die meisten Anbieter stellen ein eigenes Formular bereit — suchen Sie nach „
5. Notfallreaktion in einer Kundenumgebung — Ausnahmen und ihre Risiken
5.1 Wo Ausnahmen hinpassen — keine dauerhafte Lösung
In einer Situation, in der der Geschäftsbetrieb des Kunden zum Stillstand kommt, während auf die Beurteilung der Fehlalarmmeldung gewartet wird, wird eine Defender-Ausnahme zur Notmaßnahme. Sie dürfen aber nicht missverstehen, was das ist. Wie Microsoft selbst wiederholt warnt, ist eine Ausnahme technisch eine Schutzlücke, und die offiziellen Prinzipien lauten: (1) sparsam einsetzen, (2) nur für ein konkretes Problem wie ein Leistungs- oder Kompatibilitätsproblem einsetzen, und (3) festhalten, warum die Ausnahme nötig war, und sie regelmäßig überprüfen.6 Beachten Sie, dass die hier beschriebene Ausnahme speziell eine Ausnahme vom Antivirus-Scan von Defender (geplant, bei Bedarf und Echtzeitschutz) ist. In einer Umgebung mit Microsoft Defender for Endpoint können EDR-Warnungen und andere Erkennungen selbst für eine ausgenommene Datei weiterhin auslösen.16 „Ich habe eine Ausnahme hinzugefügt, bekomme aber weiterhin Warnungen“ ist bei diesem Design erwartetes Verhalten, keine Fehlfunktion.
Und selbst wenn Sie eine Ausnahme hinzufügen, kommt es nicht infrage, einem Kunden vorzuschlagen, den Echtzeitschutz selbst oder Defender vollständig zu deaktivieren. Die Verteidigung dieser Maschine sinkt insgesamt, auch gegen Bedrohungen, die mit Ihrer App nichts zu tun haben. Jemals einen Kunden gebeten zu haben, im Namen der Behebung eines Fehlalarms eine Sicherheitsfunktion zu deaktivieren, taucht garantiert als Feststellung in einem späteren Sicherheitsaudit wieder auf.
5.2 Wie man sie korrekt hinzufügt — vollständiger Pfad, engster Umfang
Sie können eine Ausnahme auch über die GUI von Windows-Sicherheit hinzufügen (Viren- & Bedrohungsschutz-Einstellungen → Ausnahmen), aber wenn Sie das in ein Runbook aufnehmen, ist PowerShell die zuverlässige Option. Verwalten Sie die Ausnahmeliste mit Add-MpPreference (hinzufügen), Remove-MpPreference (entfernen) und Set-MpPreference (die gesamte Liste ersetzen). Set-MpPreference überschreibt die bestehende Ausnahmeliste, verwenden Sie beim Hinzufügen eines Eintrags also immer Add-MpPreference, um zu vermeiden, dass bereits in der Kundenumgebung vorhandene Ausnahmen gelöscht werden.16
# In erhöhtem PowerShell ausführen
# Ausnahme pro Datei (engster Umfang -- der vollständige Pfad zur ausführbaren Datei, nicht ein Ordner)
Add-MpPreference -ExclusionPath "C:\Program Files\Contoso\ContosoApp\ContosoApp.exe"
# Aktuelle Ausnahmeeinstellungen prüfen
Get-MpPreference | Select-Object ExclusionPath, ExclusionProcess, ExclusionExtension
# Nach Behebung des Fehlalarms entfernen
Remove-MpPreference -ExclusionPath "C:\Program Files\Contoso\ContosoApp\ContosoApp.exe"
-ExclusionPath kann sowohl auf eine einzelne Datei als auch auf einen ganzen Ordner zielen, aber ein Ordner zieht auch jeden darunterliegenden Unterordner hinein — erwägen Sie daher zuerst eine Ausnahme pro Datei.16 Die andere Option, -ExclusionProcess, lässt sich vom Namen her leicht missverstehen: Sie schließt nicht den angegebenen Prozess selbst aus — sie schließt die Dateien, die dieser Prozess öffnet, vom Scan aus. Die offizielle Anleitung besagt, dass Sie stattdessen -ExclusionPath verwenden sollten, wenn Sie die ausführbare Datei des Prozesses selbst ausschließen möchten.17 Verwenden Sie -ExclusionProcess, wenn Erkennungen oder Leistungsprobleme daher rühren, dass eine App eine große Zahl von Datendateien öffnet, und -ExclusionPath, wenn die ausführbare Datei selbst falsch identifiziert wird.
Sie können mit MpCmdRun.exe -CheckExclusion -Path <Pfad> überprüfen, ob eine Ausnahme wie beabsichtigt gegriffen hat.7 In einer verwalteten Umgebung wird angenommen, dass Sie Ausnahmen zentral über Intune oder Gruppenrichtlinie (Computerkonfiguration → Administrative Vorlagen → Windows-Komponenten → Microsoft Defender Antivirus → Ausnahmen) verwalten, statt sie an jedem Endpunkt manuell zu setzen. Microsoft empfiehlt, Intune zum Definieren und Bearbeiten von Ausnahmen zu verwenden.1615
5.3 Ausnahmen, die Sie niemals hinzufügen dürfen
Ein ausgenommener Ordner ist auch ein Ort, den Angreifer als „irgendwo, wo Defender nicht hinschaut“ ausnutzen können. Microsoft listet ausdrücklich Elemente, die „nicht ausgeschlossen werden sollten, selbst wenn Sie ihnen vertrauen, nicht bösartig zu sein“.18
- Einen generischen Ordner ausschließen, wie
C:\,C:\Temp,C:\Users\oder%Windir%\Temp. Einen ganzen Temp-Ordner wegen der eigenen App auszuschließen, verschafft jeder Malware eine Sicherheitszone. - Nach Erweiterung ausschließen, wie
.exe,.dll,.tmpoder.zip. - Einen generischen Prozess ausschließen, wie
cmd.exe,powershell.exe,msbuild.exeoderjava.exe. - Nach bloßem Dateinamen ohne Pfad ausschließen (z. B.
ContosoApp.exe). Malware mit demselben Namen wird ausgeschlossen, egal wo sie platziert wird — geben Sie daher immer den vollständigen Pfad an.
Zusammengefasst: Eine Ausnahme sollte vollständigen Pfad, engsten Umfang, Dokumentation und zeitliche Begrenzung haben. Teilen Sie die Tatsache, dass Sie eine Ausnahme hinzugefügt haben, und warum, mit dem IT-Administrator des Kunden, und entfernen Sie sie, sobald bestätigt ist, dass die Beurteilung Ihrer Fehlalarmmeldung eingetroffen ist und die Erkennung aufgehört hat.
6. Mit den Leistungsauswirkungen leben — „MsMpEng.exe bremst alles aus“
Direkt neben Fehlalarmen ist die Leistung die andere Dauerbeschwerde. Symptome: MsMpEng.exe (der Antimalware Service Executable) frisst im Task-Manager CPU, oder die Dateiausgabe oder Builds Ihrer App sind langsam. MsMpEng.exe ist der Kerndienst der Defender-Antivirus-Funktion, und das Standardverhalten des Echtzeitschutzes besteht darin, in dem Moment synchron zu scannen, in dem eine Datei geöffnet wird („jetzt öffnen, jetzt scannen“).19 Das bedeutet, dass eine Arbeitslast, die eine große Zahl kleiner Dateien öffnet und schließt — Builds, feingranulare Log-Schreibvorgänge, intensive Nutzung von Temp-Dateien —, mehr Scans auslöst, und ihre Struktur macht sie besonders anfällig für die Auswirkung.
6.1 Zuerst messen — Performance-Analyzer
Bevor Sie direkt von „es ist langsam“ zu „ausschließen“ springen, messen Sie, was tatsächlich im Zentrum der Scan-Last steht. Defender verfügt über einen eigenen Performance-Analyzer: Erfassen Sie eine Scan-Leistungsaufzeichnung (ETL) mit PowerShells New-MpPerformanceRecording und aggregieren Sie sie mit Get-MpPerformanceReport.9
# In erhöhtem PowerShell ausführen
# Aufzeichnung starten, den lastintensiven Vorgang reproduzieren (einen Build, Batch-Verarbeitung usw.), dann Enter drücken zum Stoppen
New-MpPerformanceRecording -RecordTo .\Defender-scans.etl
# Die Top-Dateien nach Scanzeit und die Scan-Aufschlüsselung für jede dieser Dateien anzeigen
Get-MpPerformanceReport -Path .\Defender-scans.etl -TopFiles 3 -TopScansPerFile 10
Neben -TopFiles / -TopScansPerFile können Sie auch nach Prozess und Erweiterung aggregieren, sodass Sie genau feststellen können, welche Dateizugriffe Ihrer eigenen App Scans auslösen. Eine Warnung: Die offizielle Dokumentation selbst weist sorgfältig darauf hin, dass dieses Werkzeug dazu dient, Einblick in problematische Dateien zu gewinnen — es ist nicht dazu gedacht, Ausnahmen vorzuschlagen.10
6.2 Was Sie app-seitig tun können, bevor Sie zu einer Ausnahme greifen
Zeigt die Messung, dass die große Menge an Temp-Dateien, die Ihre eigene App schreibt, im Zentrum des Scannens steht, gibt es Spielraum, das Schreibverhalten der App zu überdenken, bevor Sie zu einer Ausnahme greifen. Da der Echtzeitschutz beim Öffnen einer Datei auslöst19, reduzieren Designänderungen wie die folgenden die Anzahl der Scans selbst.
- Einen Prozess, der Tausende kleiner Zwischendateien öffnet und schließt, zu Anhängen an eine Handvoll Dateien oder zu In-Memory-Verarbeitung konsolidieren
- Das Muster reduzieren, eine Temp-Datei wiederholt zu schreiben und dann umzubenennen oder zu löschen
- Aufhören, das Log für jede einzelne Zeile zu öffnen und zu schließen, und stattdessen mit offen gehaltenem Stream schreiben
Um tatsächlich zu messen, welcher Prozess mit welcher Frequenz auf welche Datei zugreift, funktioniert Process Monitor unverändert. Die Schritte dazu behandelt Der praktische Process-Monitor-(ProcMon)-Leitfaden.
6.3 Auf einer Entwicklungsmaschine den Performance-Modus von Dev Drive nutzen
Im Kontext eines langsamen Builds auf der Entwicklungsmaschine ist Windows 11s Dev Drive plus Performance-Modus das erste, wonach Sie greifen sollten. Auf einem Dev Drive (einem ReFS-basierten Volume für die Entwicklung) läuft der Echtzeitschutz von Defender in einem asynchronen „Performance-Modus“. Statt synchron zu scannen, wenn eine Datei geöffnet wird, nutzt er einen Ansatz „jetzt öffnen, später scannen“, der mit Verzögerung nach dem Abschluss des Öffnens scannt, und Microsoft positioniert das als Leistungsverbesserung bei substanziell stärkerem Schutz als bei einer Technik wie einer Ordnerausnahme, die das Scannen vollständig stoppt.19 Der Standardschritt ist, Ihren Quellbaum, Paket-Cache und Build-Ausgabe auf ein Dev Drive zu verschieben.20
Allerdings funktioniert der Performance-Modus nur auf einem Dev Drive, und er setzt voraus, dass der Echtzeitschutz aktiviert ist. Auch adressiert er nicht das Symptom „die CPU- oder Speichernutzung von MsMpEng.exe ist hoch“ — der Performance-Modus ist dafür nicht gebaut; die offizielle Anleitung lautet in diesem Fall, den heißen Prozess und Pfad mit dem oben behandelten Performance-Analyzer einzugrenzen.19
Noch etwas Wissenswertes: Werden bedarfsgesteuerte Scans (ein geplanter Vollscan usw.) während der Geschäftszeiten belastend, hat MpCmdRun.exe -Scan einen Schalter -CpuThrottling. Ihn zu aktivieren, legt eine Obergrenze (standardmäßig 50 %) für die CPU-Nutzung des Scans fest.7 Es ist allerdings kein Format, bei dem Sie dem Schalter eine Zahl übergeben, um einen beliebigen Prozentsatz zu wählen. Die Obergrenze selbst wird über eine Richtlinieneinstellung (ScanAvgCPULoadFactor) konfiguriert, und dieser Wert ist keine harte Grenze — er ist ein an die Scan-Engine übergebener Zielwert, der bedeutet: „diesen Prozentsatz im Durchschnitt nicht überschreiten“.21
7. Entscheidungstabelle — Maßnahmen nach Symptom
| Situation | Zuerst dies tun | Dauerhafte Lösung |
|---|---|---|
| Erkennung direkt nach dem eigenen Build, auf einer Entwicklungsmaschine oder in CI | Erkennungsname und Pfad im Schutzverlauf oder Ereignisprotokoll prüfen (1116/1117)13. Prüfen, was sich am Build geändert hat (Verschleierung, ein Packer, gebündelter Inhalt) | Über das Sample-Einreichungsportal als Entwickler einreichen3. Die Signierungs-Einrichtung überprüfen. Einen Vor-Release-Scan in CI einbauen |
| Erkennung und Quarantäne in einer Kundenumgebung | Erkennungsname, Datei und ob es Defender oder ein Drittanbieterprodukt ist prüfen. Die Fehlalarmmeldung einreichen, und bei schwerer Geschäftsunterbrechung, mit Zustimmung der IT-Abteilung des Kunden, eine Ausnahme mit vollständigem Pfad hinzufügen und die Datei wiederherstellen5 | Nach Bestätigung von Beurteilung und Definitionsaktualisierung die Ausnahme entfernen. Bei Kunden mit EDR auch den Administratorweg nutzen (Portal-Einreichung, Zulassen-Indikator)15 |
| Erkennung durch ein Drittanbieter-Antivirusprodukt | Produktname, Version und Erkennungsname vom Kunden erhalten | Über den eigenen Fehlalarm-Einreichungskanal dieses Anbieters einreichen. Bei Meldung durch mehrere Produkte einen Faktor auf der Build-Seite vermuten |
| „Windows hat Ihren PC geschützt“ (SmartScreen) erscheint | Bestätigen, dass es keine Viruserkennung ist (ein von Defenders Erkennung getrennter Mechanismus)4 | Codesignierung und den Verteilungsweg in Ordnung bringen (siehe den SmartScreen-Artikel) |
| Defender (MsMpEng.exe) ist langsam / I/O ist langsam | Mit dem Performance-Analyzer messen und die heißen Dateien/Prozesse identifizieren9 | Das Schreibverhalten der App verbessern. Auf Entwicklungsmaschinen Dev Drive plus Performance-Modus nutzen19. Eine Ausnahme als letztes Mittel behandeln, so eng wie möglich gehalten6 |
Allen Fällen gemeinsam sind drei Dinge: zuerst die Fakten festnageln (der Erkennungsname, das Ziel, welches Produkt erkannt hat); immer die dauerhafte Lösung der Meldung durchführen; und eine Ausnahme oder Wiederherstellung als vorübergehende, auf engsten Umfang beschränkte Maßnahme behandeln.
8. Zusammenfassung
- Das moderne Defender beurteilt Dateien nicht per Signaturabgleich, sondern durch maschinelles Lernen, Cloud-Schutz und Leistungsnachweis (Reputation). Dass ein neues Binary ohne Leistungsnachweis in Verdacht gerät, ist eine inhärente Folge des Designs, und eine Struktur, die „ihre Substanz verbirgt“ — Verschleierung, Selbstextraktion —, zieht noch mehr Verdacht auf sich.
- Die Säule der Prävention ist konsequente Codesignierung mit einem Zertifikat einer vertrauenswürdigen Zertifizierungsstelle. Es gibt kein Vorregistrierungsprogramm zur Fehlalarm-Vermeidung. Ein selbst durchgeführter Scan mit
MpCmdRun.exevor der Veröffentlichung und eine vorausschauende Sample-Einreichung für ein Release, dessen äußere Form sich wesentlich ändert, sind ebenfalls wirksam. - Nach einer Erkennung den Erkennungsnamen und das Ziel mithilfe von Schutzverlauf und Ereignisprotokoll (IDs 1116/1117) festnageln und über das Sample-Einreichungsportal von Microsoft Security Intelligence als Entwickler einreichen. Eine unter Quarantäne stehende Datei lässt sich über den Schutzverlauf oder mit
MpCmdRun.exe -Restorewiederherstellen. - Eine Ausnahme ist eine vorübergehende Maßnahme, bis Ihre Meldung mit einer Beurteilung zurückkommt. Vollständiger Pfad, engster Umfang, Dokumentation führen und nach Behebung entfernen. Einen Temp-Ordner, eine Erweiterung oder einen generischen Prozess auszuschließen ist strikt verboten, da es ein Versteck für Malware schafft.
- Bei einem Leistungsproblem zuerst mit dem Performance-Analyzer messen, eine Verbesserung des Schreibverhaltens der App und den Performance-Modus von Dev Drive erwägen, und erst danach, falls weiterhin nötig, an eine eng gefasste Ausnahme denken. Einen Kunden zu bitten, den Echtzeitschutz zu deaktivieren, kommt nicht infrage.
Verwandte Artikel
- Warum Windows „Windows hat Ihren PC geschützt“ anzeigt
- Sicheres Auto-Update gestalten — Warum HTTPS allein nicht ausreicht
- Eine Mindest-Sicherheitscheckliste für die Windows-App-Entwicklung
- Eine Methode zur Windows-App-Bereitstellung wählen — MSI / MSIX / ClickOnce / xcopy / ein eigener Updater
- Der praktische Process-Monitor-(ProcMon)-Leitfaden — „Einstellungen werden nicht geladen“ und „ACCESS DENIED“ in 10 Minuten eingrenzen
Verwandte Beratungsbereiche
Die KomuraSoft LLC (合同会社小村ソフト) übernimmt Beratung zur Festlegung einer Reaktionsrichtlinie für Fehlalarme und SmartScreen-Warnungen bei verteilten Apps, das Design einer Verteilungs- und Update-Einrichtung einschließlich Codesignierung sowie das Messen und Diagnostizieren von durch Antivirus-Software verursachten Leistungsproblemen.
Referenzlinks
-
Microsoft Learn, Microsoft Defender Antivirus in Windows Overview. Dazu, dass man 2015 von einer statisch-signaturbasierten Engine zu einem prädiktiven Modell mit maschinellem Lernen, angewandter Wissenschaft und KI gewechselt ist, sowie zu Anomalieerkennung und verhaltensbasiertem Schutz. ↩ ↩2
-
Microsoft Learn, Cloud protection and sample submission at Microsoft Defender Antivirus. Zu geräteseitigen Machine-Learning-Modellen, Verhaltensanalyse und Heuristiken; dem Senden von Metadaten an den Cloud-Schutz (der oft innerhalb von Millisekunden eine Beurteilung zurückgibt); und der mehrschichtigen Struktur aus Sample-Einreichung, Detonation und Big-Data-Analyse. ↩ ↩2
-
Microsoft Learn, Submit files for analysis. Dazu, dass eine fälschlich gemeldete Datei über das Sample-Einreichungsportal (microsoft.com/wdsi/filesubmission) eingereicht werden kann, dass die Einreichung eine Anmeldung mit nachverfolgbarem Status erfordert, und dass Samples nicht per E-Mail entgegengenommen werden. ↩ ↩2 ↩3
-
Microsoft Learn, Software developer FAQ. Dazu, dass es keine Positivlisten-Registrierung oder ein Fehlalarm-Vermeidungsprogramm gibt, dass konsequentes Signieren mit einem Zertifikat einer vertrauenswürdigen Stamm-CA die Herkunftsidentifikation und die Aufnahme in die Positivliste beschleunigt, dass als Entwickler eingereicht und eine Beurteilung über das Entwicklerkontaktformular angefochten werden kann, und dass SmartScreen ein von der Defender-Antivirus-Funktion getrennter Mechanismus ist. ↩ ↩2 ↩3 ↩4 ↩5 ↩6 ↩7
-
Microsoft Learn, Restore quarantined files in Microsoft Defender Antivirus. Dazu, unter Quarantäne stehende Elemente über den Schutzverlauf von Windows-Sicherheit zu prüfen und wiederherzustellen, sowie zum Verfahren, Quarantäne mit MpCmdRun aufzulisten und wiederherzustellen. ↩ ↩2 ↩3 ↩4
-
Microsoft Learn, Configure custom exclusions for Microsoft Defender Antivirus. Dazu, dass eine Ausnahme eine Schutzlücke ist, die sparsam eingesetzt werden sollte, nur für ein konkretes Problem statt vorbeugend hinzugefügt werden sollte, und deren Begründung dokumentiert und regelmäßig überprüft werden muss. ↩ ↩2 ↩3
-
Microsoft Learn, Configure and manage Microsoft Defender Antivirus with the MpCmdRun command-line tool. Zum Speicherort von MpCmdRun.exe und der Anforderung von Administratorrechten; zu -Scan (ein benutzerdefinierter Scan über -ScanType 3, die Option -File, Rückgabecode 0, der sowohl „nichts erkannt“ als auch „erkannt, aber erfolgreich behoben“ abdeckt, und 2, das „erkannt, nicht behoben / Benutzeraktion nötig / Scanfehler“ bedeutet; -DisableRemediation, das die Behebung bei Erkennung überspringt und das Ergebnis in der Befehlsausgabe anzeigt; den Standardwert 50 von -CpuThrottling); zu -Restore (-ListAll/-Name/-FilePath/-Path); zu -CheckExclusion; und zu -GetFiles. ↩ ↩2 ↩3 ↩4 ↩5 ↩6 ↩7
-
Microsoft Learn, How Microsoft identifies malware and potentially unwanted applications. Dazu, dass Warnungen für „Unbekannt (nicht erkannte Software)“ als Frühwarnsystem für nicht erkannte Malware positioniert sind, dass eine Sample-Einreichung hilft, eine Reputation aufzubauen, und zu den Klassifizierungen Obfuscator, Evasion Software und Bundling Software. ↩ ↩2 ↩3 ↩4 ↩5
-
Microsoft Learn, Performance analyzer for Microsoft Defender Antivirus. Zum Erfassen einer Aufzeichnung mit New-MpPerformanceRecording, zum Reproduzieren des Vorgangs und zum Analyseverfahren mit -TopFiles/-TopScansPerFile und ähnlichen Optionen von Get-MpPerformanceReport. ↩ ↩2 ↩3
-
Microsoft Learn, Microsoft Defender Antivirus Performance Analyzer reference. Dazu, dass der Performance-Analyzer ein Werkzeug ist, um Einblick in problematische Dateien zu gewinnen, statt Ausnahmen vorzuschlagen, dass Ausnahmen sorgfältig definiert werden müssen, weil sie den Schutz senken, und zur Anforderung von Administratorrechten. ↩ ↩2
-
Microsoft Learn, Turn on block at first sight. Dazu, dass das Cloud-Backend unbekannte, verdächtige Dateien durch Heuristiken, maschinelles Lernen und automatisierte Analyse beurteilt, um sie innerhalb von Sekunden zu blockieren, und dass das Öffnen einer Datei zurückgehalten werden kann, bis die Beurteilung eintrifft. ↩
-
Microsoft Learn, Troubleshoot Microsoft Defender Antivirus scan issues. Zum Speicherort von Defenders Ereignisprotokoll (Anwendungs- und Dienstprotokolle → Microsoft → Windows → Windows Defender → Betriebsbereit) und zum Abrufen mit Get-WinEvent. ↩
-
Microsoft Learn, Review event logs and error codes to troubleshoot issues with Microsoft Defender Antivirus. Zur Liste der Defender-Ereignis-IDs, einschließlich Ereignis-ID 1116 (Erkennung) und 1117 (eine Aktion wie Quarantäne oder Löschung). ↩ ↩2
-
Microsoft Learn, Malware names. Dazu, dass Erkennungsnamen der CARO-Namenskonvention folgen (Typ/Plattform/Familienname usw.). ↩
-
Microsoft Learn, Address false positives/negatives in Microsoft Defender for Endpoint. Dazu, dass eine eingereichte Datei zunächst sofort von einem automatisierten System gescannt wird, dass Einreichungen von Dateien mit breiter Auswirkung oder von Inhabern einer Software-Assurance-ID priorisiert werden, dass MpSupportFiles.cab für eine verhaltensbasierte Erkennung eingereicht werden kann, zur Administrator-Einreichung und dem „Zulassen“-Indikator, und dass Intune zum Definieren von Ausnahmen empfohlen wird. ↩ ↩2 ↩3 ↩4 ↩5
-
Microsoft Learn, Configure and validate exclusions based on file extension and folder location. Zu den unterschiedlichen Rollen von Set-MpPreference (überschreibt die Liste), Add-MpPreference (fügt hinzu) und Remove-MpPreference (entfernt); dazu, dass ExclusionPath auf Datei- oder Ordnerebene (einschließlich Unterordner) angegeben werden kann; zur Konfiguration über Gruppenrichtlinie, Intune und ähnliche Werkzeuge; zum Überprüfen einer Ausnahme mit MpCmdRun; und dazu, dass EDR-Warnungen und andere Erkennungen für eine Datei auch nach ihrem Ausschluss vom Antivirus-Scan weiterhin auslösen können. ↩ ↩2 ↩3 ↩4
-
Microsoft Learn, Configure exclusions for files opened by processes. Dazu, dass ExclusionProcess „Dateien, die der angegebene Prozess öffnet“ ausschließt, und dazu, eine Dateiausnahme (ExclusionPath) zu verwenden, um den Prozess selbst auszuschließen. ↩
-
Microsoft Learn, Common mistakes to avoid when defining exclusions. Dazu, C:\ oder Temp-artige Ordner, Erweiterungen wie .exe/.dll/.tmp, generische Prozesse wie cmd.exe/powershell.exe/msbuild.exe oder einen bloßen Dateinamen ohne Pfad nicht auszuschließen, und dazu, dass ein ausgeschlossenes Element zu einem Versteck für eine Bedrohung werden kann. ↩
-
Microsoft Learn, Protect Dev Drive using performance mode. Dazu, dass das Standardverhalten des Echtzeitschutzes synchrones „jetzt öffnen, jetzt scannen“ ist, dass der Performance-Modus durch asynchrones „jetzt öffnen, später scannen“ substanziell stärkeren Schutz als eine Ordnerausnahme bietet, dass er nur auf einem Dev Drive und nur bei aktiviertem Echtzeitschutz funktioniert, und zur Nutzung von Performance Analyzer zur Fehlerbehebung bei hoher CPU-/Speichernutzung durch MsMpEng.exe (WinDefend, den Antimalware Service Executable). ↩ ↩2 ↩3 ↩4 ↩5
-
Microsoft Learn, Set up a Dev Drive on Windows 11. Dazu, dass Dev Drive ein ReFS-basiertes Volume für die Entwicklung ist, dass empfohlen wird, Projektcode, Paket-Cache und Build-Ausgabe darauf zu verschieben, und dass der Performance-Modus auf einem vertrauenswürdigen Dev Drive standardmäßig aktiv ist. ↩
-
Microsoft Learn, Microsoft Defender Antivirus full scan considerations and best practices. Dazu, dass die CPU-Obergrenze des Scans (ScanAvgCPULoadFactor) keine harte Grenze ist, sondern ein an die Scan-Engine übergebener Zielwert, diesen Wert im Durchschnitt nicht zu überschreiten, und dass sie standardmäßig für geplante Scans gilt (optional auch für benutzerdefinierte Scans). ↩
Verwandte Artikel
Aktuelle Artikel mit denselben Schlagwörtern führen zu verwandten Themen weiter.
Energiesparmodus, Ruhezustand, Modern Standby und lang laufende Anwendungen ── Design gegen „über Nacht stehengeblieben“
Warum eine lang laufende Windows-Anwendung morgens beim Nachsehen „stehengeblieben“ sein kann, aufgearbeitet anhand der Unterschiede zwis...
Laufen Business-Anwendungen unter Windows on Arm? ── Die Realität von x64-Emulation (Prism) und nativen DLLs/COM
Eine Antwort für Entwicklerinnen, Entwickler und IT-Verantwortliche auf die Frage „Läuft unsere Business-Anwendung unter Windows on Arm?“...
MAX_PATH und die Fallstricke von Windows-Pfaden und Dateinamen ── Das 260-Zeichen-Limit, reservierte Namen, abschließende Punkte und Groß-/Kleinschreibung
Ein Überblick über die Pfad- und Dateinamensbeschränkungen hinter dem klassischen Fehler „Datei nicht gefunden“. Behandelt werden die Zus...
Die Fallstricke von Netzlaufwerken und UNC-Pfaden ── Fileserver (Freigabeordner) in Business-Anwendungen richtig einsetzen
Dieser Artikel ordnet die klassischen Probleme, die auftreten, wenn eine Business-Anwendung in einen Freigabeordner schreibt oder ihn übe...
Infobereich-Symbole und Toast-Benachrichtigungen in Windows-Apps — Fallstricke von NotifyIcon und die richtige AppNotification-Wahl
Ein praktischer Leitfaden dafür, eine geschäftliche Windows-Anwendung im Infobereich (System Tray) resident zu halten und den Benutzer üb...
Verwandte Themen
Diese Seiten ordnen den Artikel in einen größeren Leistungs- und Entscheidungskontext ein.
Technische Windows-Themen
Portal zu Windows-Entwicklung, Fehleranalyse und der Nutzung bestehender Assets.
Leistungen zu diesem Thema
Dieser Artikel ist direkt mit den folgenden Leistungen verbunden.
Windows-App-Entwicklung
Geschäftsanwendungen, Geräteintegration und Kommunikationstools von den Anforderungen bis zur Umsetzung.
Häufige Fragen
Fragen, die in Beratungen zu diesem Artikelthema häufig gestellt werden.
- Die eigene App wurde von Microsoft Defender als Virus gemeldet. Was ist zu tun?
- Zunächst nicht in Panik geraten und sofort zu einer Ausnahme oder zum Deaktivieren von Defender greifen. Der korrekte, dauerhafte Weg ist, die Datei über das Microsoft Security Intelligence-Portal zur Dateieinreichung (Sample-Einreichung) als Softwareentwickler einzureichen. Nach der Anmeldung lässt sich der Status der Einreichung verfolgen; wird sie als Fehlalarm eingestuft, stoppt eine Definitionsaktualisierung die Erkennung ab diesem Zeitpunkt. Eine bereits in Quarantäne verschobene Datei lässt sich über den Schutzverlauf von Windows-Sicherheit oder mit MpCmdRun.exe -Restore wiederherstellen.
- Wie melde ich einen Fehlalarm an Microsoft?
- Reichen Sie die Datei über das Sample-Einreichungsportal von Microsoft Security Intelligence ein (microsoft.com/wdsi/filesubmission). Für die Einreichung ist eine Anmeldung erforderlich, und nach der Einreichung lässt sich der Beurteilungsstatus im Portal verfolgen. Eine eingereichte Datei wird zunächst sofort von einem automatisierten System gescannt, und bei Bedarf prüft ein Analyst weiter. Reichen Sie als Entwickler ein, und falls Sie mit der Beurteilung nicht einverstanden sind, können Sie über das dem Einreichungsergebnis beigefügte Entwicklerkontaktformular eine erneute Untersuchung anfordern.
- Ist es in Ordnung, in der Umgebung eines Kunden Ausnahmen einzurichten?
- Als vorübergehende Maßnahme bis zur Rückmeldung Ihrer Fehlalarmmeldung kann das eine Option sein, es darf aber niemals zur dauerhaften Lösung werden. Eine Ausnahme ist eine Einstellung, die ein Loch in den Schutz von Defender reißt, und Microsoft selbst erklärt ausdrücklich, dass sie sparsam, nur für ein konkretes Problem und mit regelmäßiger Überprüfung eingesetzt werden sollte. Fügen Sie eine hinzu, grenzen Sie sie so eng wie möglich ein — den vollständigen Pfad zur ausführbaren Datei, nicht einen ganzen Ordner —, führen Sie Buch darüber, wer sie warum und bis wann hinzugefügt hat, und entfernen Sie sie, sobald der Fehlalarm behoben ist. Breite Ausnahmen wie ein ganzer Ordner, C:\Temp oder eine Erweiterung wie .exe kommen dem Einrichten eines Verstecks für Malware gleich.
- Beseitigt Codesignierung Fehlalarme?
- Es gibt keine Garantie, aber der Effekt ist groß. Microsoft bietet kein Programm zur Fehlalarm-Vermeidung an, bei dem man sich vorab auf einer Positivliste registrieren lässt; stattdessen lautet die Empfehlung, konsequent mit einem Zertifikat einer vertrauenswürdigen Stammzertifizierungsstelle zu signieren. Konsequentes Signieren erlaubt es dem Untersuchungsteam, die Herkunft eines Programms schnell zu identifizieren, was die Aufnahme in die Positivliste beschleunigen kann. Umgekehrt gerät ein unsigniertes Binary — eines, das von Build zu Build keinen Hinweis auf seine Herkunft bietet — jedes Mal von Neuem in Verdacht, als unbekannte Datei ohne Leistungsnachweis.
Autorenprofil
Profilseite des Artikelautors.
Go Komura
Geschäftsführer von KomuraSoft LLC
Spezialisiert auf Windows-Softwareentwicklung, technische Beratung und Fehleranalyse, insbesondere bei bestehenden Systemen und schwer reproduzierbaren Störungen.