Inwiefern stehen Antivirensoftware in Konflikt miteinander?

7257
iBug

Mir wurde beigebracht, dass ich niemals zwei Antivirus-Software (AV-Software) zusammen installieren sollte, da dies zu Konflikten führen kann. Sogar Windows Defender (seit Windows 8) deaktiviert sich bei Erkennung einer anderen AV-Software.

Ich bin gespannt, wie zwei sich widersprechen können. Das einzige Szenario, das ich derzeit herausfinden kann, ist, wenn beide das gleiche Virus erkennen und versuchen, es gleichzeitig unter Quarantäne zu stellen, was zu einer "Eroberung der Viren" führen kann. Für mich ist dies sicherlich kein überzeugender Grund, zwei AV-Software nicht zu installieren.


Ganz zu schweigen von Systemleistungsproblemen. Ich nehme an, mein Intel Kaby Lake i7 kann mit dem installierten 16-GB-Speicher problemlos damit umgehen.

59
Konflikt- / Konfliktfragen (von Ihnen und in Antworten erwähnt) sind überbewertet; Betriebssysteme sind dazu gedacht, solche Probleme zu lösen. Ich hatte den Eindruck, dass der Grund darin liegt, dass Antivirenprogramme Datenbanken haben, in denen die Signaturen der bekannten Viren gespeichert werden, nach denen sie suchen. So könnte ein Antivirenprogramm das andere als bösartiges Programm erkennen und umgekehrt. sawdust vor 6 Jahren 1
@sawdust, ich verstehe Ihre Aussage, aber es ist in Ordnung, wenn mehrere AVs vorhanden sind, wenn nur von ihnen eine aktive Inspektion durchgeführt wird. Dies wäre nicht möglich, wenn die Inkompatibilität durch versehentliches Erkennen der anderen Signaturdatenbank verursacht wurde. Frank Thomas vor 6 Jahren 2
@PeterMortensen "Antivirus Scanner" klingt trotz der Antworten seltsam. Ich persönlich würde "Software" vorziehen, egal ob es sich um ein zählbares Nomen handelt. iBug vor 6 Jahren 0

3 Antworten auf die Frage

83
gronostaj

Einfache Antivirenscanner können problemlos miteinander koexistieren. Der Live-Schutz kann dazu führen, dass AVs stören.

AV-Software mit Live-Schutzfunktionen integriert sich tief in das Betriebssystem. Es korrigiert einige der Codes des Betriebssystems, um zu beobachten, welche Programme dies zu tun versuchen, und dies gegebenenfalls zu verhindern. Betriebssysteme bieten solche Funktionen nicht standardmäßig, so dass AVs weniger konventionelle Methoden verwenden, um diesen Effekt zu erzielen.

Es kann beispielsweise die Funktion "Datei schreiben" ersetzen, die das Betriebssystem mit seiner benutzerdefinierten Funktion bereitstellt. Wenn ein Programm versucht, in eine Datei zu schreiben, ruft es die Funktion "Datei schreiben" auf. Die Funktion wurde jedoch von AV gepatcht, und die Anforderung des Programms wird stattdessen an AV weitergeleitet. AV wird es prüfen und entscheiden, ob es in Ordnung ist. Wenn dies der Fall ist, wird die eigentliche Funktion "Datei schreiben" aufgerufen. Andernfalls werden geeignete Maßnahmen ergriffen, um zu verhindern, dass schädliche Software Schaden anrichtet.

Leider ist das Patchen von Betriebssystemcode nicht nur für AVs erforderlich, sondern auch verdächtig. Wenn Sie einen Virus erstellt haben, möchten Sie nicht auch in der Lage sein, Systemvorgänge abzufangen, z. B. um zu verhindern, dass AV Dateien nach Viren durchsucht?

So haben AVs Wachen, die auf ihre Code-Hooks achten und sie bei Bedarf neu installieren. An dieser Stelle sollten Sie sehen, wohin das führt ...

Zwei AVs mit Live-Schutz können Sie vor dem verdächtigen Verhalten des anderen schützen. Dies kann zu geringfügigen Leistungsproblemen und Systemabstürzen führen.

In einigen Fällen können sogar AV-Scanner ohne Live-Schutz stören. Wie erkennen AVs Viren? Nun, sie haben ihre Virensignaturen, dh. Datenbanken mit Merkmalen bekannter Viren. Und so kann es passieren, dass eine solche Datenbank auch verdächtig wirken kann, weil sie verschiedene Merkmale von Viren aufweist. Ein AV könnte also die Signatur anderer AV hypothetisch als schädlichen Code erkennen.

Es gibt auch AV-Engines, die zusammen mit anderen AVs, beispielsweise Hitman Pro, entwickelt wurden. ClamWin (kostenlos und Open Source) sollte auch beim Koexistieren relativ problemfrei sein, da es nur einen Scanner ohne Live-Schutz enthält.

In gewissem Sinne ist Antivirensoftware selbst ein Virus. Stellen Sie sich eine Stadt mit zwei Polizeikräften vor, die nicht kommunizieren können und keine Uniformen tragen. Der Beamte, der mit seiner Taschenlampe nach einem Verbrecher in einem Gebäude sucht, sieht aus wie ein Verbrecher, der das Gelenk einem Beamten der anderen Abteilung abdeckt. T.J.L. vor 6 Jahren 41
@ComicSansMS Manchmal kann sogar ONE mehr Schaden anrichten als ein Virus. ZB chinesische "kostenlose" AV-Software. iBug vor 6 Jahren 0
@iBug Ich habe "Chinesen" und "Frei" davon genommen und habe schon viel schlechtes Verhalten von bekannten Marken (McAfee, Norton / Symantec, Panda usw.) gesehen. Bob vor 6 Jahren 30
Beachten Sie, dass nur einer der beiden Scanner eine Live-Erkennung benötigen sollte, um schwerwiegende Probleme zu verursachen. Ich hatte einmal ein Problem mit einem sehr persistenten CCleaner und einem widerstrebenden Symantec Endpoint Protection, der sich beim Löschen einer Datei herumschlug. Sanchises vor 6 Jahren 1
@ Bob: Und wir haben nicht einmal angefangen, [über ihre Schwachstellen ...] zu sprechen (http://www.syscan360.org/slides/2014_DE_BreakingAVSoftware_JoxeanKoret.pdf) Matteo Italia vor 6 Jahren 2
@Sanchises CCleaner ist kein Malware-Scanner. Wie kam es dazu? wjandrea vor 6 Jahren 0
Es gibt zwei Arten von Antivirensoftware. Eins ist noch stärker als ein Virus. Der andere ist ... noch schwächer als ein Virus. user23013 vor 6 Jahren 0
14
Frank Thomas

Programme stehen in Konflikt, wenn beide versuchen, dieselbe Ressource zu verwenden. Wenn mehrere Programme gleichzeitig versuchen, mit einer Ressource zu arbeiten, besteht das Risiko von Parallelitätsproblemen . Parallelitätsprobleme treten auf, wenn ein Prozess eine Änderung an der Ressource vornimmt und das andere Programm (das in der Mitte seine eigene Änderung an der Ressource durchführte) diese nicht kennt und daher nicht in der Lage ist.

Hier sind ein paar Beispiele für Parallelitätsprobleme im Lehrbuch.

Last-in-Wins-Problem

Stellen Sie sich vor, Sie verwenden ein FTP-Verzeichnis, um ein Dokument freizugeben, bei dem Sie und ein Kollege an einem Dokument zusammenarbeiten. Sie laden das Dokument herunter, bearbeiten es und stellen es erneut bereit, ebenso wie Ihr Kollege.

  1. Sie laden das Dokument herunter und beginnen eine Reihe von Änderungen, die 1 Stunde dauern.
  2. Ihr Kollege lädt das Dokument zur gleichen Zeit herunter, zu der Sie es getan haben. Es dauert jedoch nur eine halbe Stunde, um die Änderungen abzuschließen und erneut zu laden.

Ergebnis: Wenn Sie Ihr Dokument hochladen, überschreiben Sie deren Änderungen und sie gehen verloren.

Veraltete Daten

In demselben Szenario nimmt Ihr Kollege einige Änderungen vor, die Sie benötigen, ohne es Ihnen mitzuteilen. Ihre Kopie der Datei hat keine Änderungen,

Ergebnis: Sie schreiben die gleichen Änderungen in etwas anderen Wörtern selbst, oder, noch schlimmer, eine unangenehme E-Mail darüber, wie sie fehlt.

Dies scheint ein einfaches Szenario zu sein, aber in fortgeschrittenen Fällen wie Datenbanken mit mehreren Zugriffen, wenn Sie Datensätze in derselben Millisekunde auswählen, von denen jemand sie aktualisiert, können ernsthafte Probleme auftreten.

Schlechte Berechnung

Ein Ehepaar hat ein gemeinsames Bankkonto und Geldautomatenkarten. Sie haben 1000 USD auf ihrem Konto. In ihrem täglichen Leben sind sie auf der anderen Seite der Stadt und beide greifen im selben Moment auf den Geldautomaten zu. Sie ziehen beide 1000USD zurück. Die Geldautomaten wissen beide, dass der Saldo 1000 ist, also erlauben sie das Abheben und schreiben dann in die zentrale Datenbank, dass der neue Saldo 0 ist.

Ergebnis: Die Bank hat jetzt 1000 USD und weiß es auch nicht.

In all diesen Beispielen gab es mehrere Parteien, die ungefähr oder zur gleichen Zeit Aktionen für eine gemeinsam genutzte Ressource ausführten. Daher die Begriffe "Parallelität" oder "Synchronizität".

Lösungen

Es gibt einige Möglichkeiten, um mit diesen Problemen umzugehen. Eine ist die Verwendung von Software, die zwischen den mehreren Parteien, die auf die Ressource zugreifen, eine Entscheidung trifft. Diese Arbiter-Programme haben je nach Umfang und Vorhersagbarkeit der Operationen zwei Optionen:

  • Führen Sie die Vorgänge intelligent zusammen
  • Sperren / sperren Sie eine der beiden Operationen, bis die erste, die bemerkt wird, abgeschlossen ist.

Es ist auch möglich zu sperren / sperren, vorausgesetzt, dass beide Programme ein gemeinsam genutztes Flag prüfen, das den Status der Ressource angibt. Dies erfordert im Allgemeinen eine kundenspezifische Entwicklung.

Deine Antwort

In Ihrem speziellen Fall sind die Ressourcen die Dateien auf Ihrer Festplatte. Die Synchronizität beruht auf Ereignissen wie dem Lesen / Schreiben von Dateien, die bei beiden AV-Programmen On-Access-Scans auslösen.

Windows fungiert als Arbiter zum Beheben von Parallelitätsproblemen des Dateisystems, indem Dateien gesperrt werden, wenn Programme sie für bestimmte Vorgänge öffnen.

Dies bedeutet, dass beide Programme auf die Datei zugreifen, und wer zuerst dort ankommt, erhält die Sperre. Auf einem niedrigen Niveau führt dies zu einem Platten-Thrashing, da beide Programme ihre eigenen E / A-Aktivitäten starten, wodurch die Hardware beide Aufgaben getrennt ausführen muss, die IO-Anweisungen jedoch verschachtelt werden, was beides sehr viel weniger effizient macht und letztendlich nur eine von ihnen wird gewinnen. der andere wird sich drehen und warten, bis er sein eigenes Schloss aufbauen kann.

Nebenläufigkeitsprobleme können sogar noch schlimmer sein, wenn Antivirus 1 den Zugriff auf die Datei feststellt und scannt. Anschließend erkennt Antivirus B, dass auf die Datei zugegriffen wurde. Daher wird geprüft, ob Antivirus A darauf zugreift, dass auf die Datei zugegriffen wurde letzter Scan, also scannt er es erneut, etc ... (Ich habe gesehen, wie dies auf meinem Laptop meiner Freunde passiert ist, Windows erstarrte nach ca. 10-20 Minuten nach dem Start und wurde langsamer vor Ablauf dieser Frist) Ferrybig vor 6 Jahren 9
Parallelität ist ein mehr oder weniger gelöstes Problem und nicht wirklich ein AV-spezifisches Problem. Ich habe ein Downvoting durchgeführt, weil ich glaube, dass Ihre Antwort das Kernproblem völlig verfehlt und sich auf ein Problem konzentriert, das die meisten Computersoftware betreffen würde, wenn es nicht gelöst wurde, aber nicht, weil es gelöst ist. gronostaj vor 6 Jahren 4
@gronostaj, wenn ich fragen darf, was ist Ihrer Meinung nach das Kernthema? Aktive AVs, die auf alle Lese- / Schreibereignisse auf der Festplatte reagieren, verursachen ein weitgehend eindeutiges Parallelitätsproblem, da beide auf dasselbe Ereignis reagieren möchten. Dies ist bei anderen Software nicht üblich. Wie es gelöst wird, bitte klären? Frank Thomas vor 6 Jahren 1
Ich habe versucht, dies in [meiner Antwort] (https://superuser.com/a/1274450/194694) anzusprechen. Zwei AVs konkurrieren nicht um Festplatten-E / A in dem Sinne, dass sie es parallel versuchen, was zu einer Race-Bedingung führt. Jeder versucht, sich in das Betriebssystem einzufügen. Entweder wird sich die Situation stabil stabilisieren, wenn ein AV von einem anderen gescannt wird, oder es endet in einem fragilen Durcheinander, oder AVs versuchen weiter, sich gegenseitig zu dominieren. gronostaj vor 6 Jahren 2
@gronostaj Im Kern sind beide Antworten nicht ausschließend? Warum gibt es keine Probleme mit OS-Hook-Konflikten (IE: Kampf um "Datei schreiben") ... UND ... Probleme mit der Parallelität? Korrigieren Sie mich, wenn ich falsch liege, aber beide scheinen "komplementäre" Probleme zu sein, die beide den anderen verärgern (während andere Probleme hinzugefügt werden - jeder AV hat Sicherheitslücken, Leistungsprobleme, Bloatware usw.). Anscheinend ist dies ein Kampf, um ein großes Problem auf ein Problem zu reduzieren ... und ein Kampf, um zu entscheiden, wer "das" Problem hat. WernerCD vor 6 Jahren 1
@WernerCD, ich glaube in der Tat, dass dies der Fall ist. Tatsächlich ändern AVs die Daten in den meisten Fällen nicht. Daher ist das Problem hier nicht die Parallelität selbst, sondern die vom Betriebssystem durchgeführten Aktionen, um Parallelitätsprobleme zu vermeiden, die das Problem für AVs verursachen. Frank Thomas vor 6 Jahren 1
Fehler. Ich brauche eine Frau, um den Überfall des Geldautomaten in Kraft zu setzen. beppe9000 vor 6 Jahren 0
3
123456789123456789123456789

Beide Inspektionsprozesse konkurrieren miteinander, um Laufwerk- und Netzwerk-E / A zu untersuchen.

Da die meisten AV-Hersteller gemeinsam Signaturen freigeben, wird Malware nicht erkannt, bevor Malware für andere Hersteller entdeckt wird.

Ein einziger, bekannter und in der Branche anerkannter AV schützt Ihr System angemessen, auch wenn Sie rücksichtslose Gewohnheiten haben, die zu Infektionen neigen, und ebenso effektiv wie die gleichzeitige Verwendung von 10 AV-Produkten.