Welche Dateiformate werden verwendet, um Viren in Ubuntu zu erzeugen? [geschlossen]
9
Welche Dateiformate werden verwendet, um Viren in Ubuntu zu erzeugen? Zum Beispiel sind die meisten Windows-Viren im .exeFormat geschrieben, aber ich kann das in Ubuntu übliche Format nicht identifizieren.
Es gibt keinen Virus für Linux in freier Wildbahn.
20
@CelticWarrior Natürlich gibt es Viren für Linux und vieles mehr en.wikipedia.org/wiki/Linux_malware Eshan: Viren sind nicht auf einen Dateityp beschränkt, unter Ubuntu oder Windows gibt es keinen bestimmten Dateityp, den man vermeiden sollte oder so etwas, lesen Sie den Link in diesem Kommentar für einige Informationen
Mark Kirby
@ MarkKirby das ist eine Antwort (und eine gute), kein Kommentar.
don.joey
1
Ich stimme nicht dafür, diese Frage zu schließen, da es eine faire Frage ist: Gibt es bestimmte Dateiformate, die unter Linux Viren enthalten würden? Auch @MarkKirby hat darauf geantwortet.
don.joey
5
Das größte Problem, das ich habe: Woher sollen diese Viren stammen? Das offizielle Repo? (Ich bin wirklich skeptisch, dass das passieren wird) Launchpad? (möglich, aber zweifelhaft, da ihre Erfolgsbilanz in dieser Hinsicht gut ist. Auch hier ist es einfach, mit einem System zu leben, das sich an die offiziellen Repos hält.) Zufällige Skripte? Wir machen das nicht ... wir sind nicht die durchschnittlichen Windows-Benutzer ... Wenn ein Virus ein System nicht erreichen kann oder auf 1 System beschränkt ist, ist es Malware, kein Virus ;-)
Rinzwind
Antworten:
27
Entgegen der landläufigen Meinung gibt es Viren für Linux und vieles mehr. Während sie unter Linux viel seltener sind und Sie sie die meiste Zeit im System zulassen müssen, existieren sie immer noch.
Viren sind unter Ubuntu oder Windows nicht auf einen Dateityp beschränkt. Es gibt keine bestimmte Art von Datei zu vermeiden oder so etwas, seien Sie einfach vorsichtig. Linux ist sicher, solange Sie vorsichtig sind.
Einige Dinge, die Sie tun können, um sicher zu gehen, sind:
Laden Sie nicht von Drittanbietern herunter, es sei denn, Sie vertrauen dem, was Sie herunterladen.
Verwenden Sie aptoder Launchpad (Ubuntus Code-Hosting-Dienst) und ähnliche Dienste, um Software von der Quelle zu erhalten.
Vermeiden Sie das Kopieren und Einfügen von Terminalbefehlen, die Sie online finden, insbesondere wenn Sie diese nicht verstehen.
Sie können auch ein Antivirenprogramm verwenden clamav, um Ihr System auf Bedrohungen zu überprüfen.
Sie haben einfach nie die Auswirkungen auf Linux wie auf Windows und fast alle (wenn nicht alle) erfordern, dass Sie sie selbst installieren.
Rinzwind
3
@Rinzwind Bei den meisten Viren auf jedem Betriebssystem muss der Benutzer sie installieren. Sie täuschen den Benutzer nur vor, etwas anderes zu tun. Alternativ nutzen sie Fehler in bestimmter Software (z. B. Browser, E-Mail-Clients), um erhöhte Berechtigungen zu erhalten.
IMSoP
1
"Linux ist sicher, solange Sie vorsichtig sind" - ebenso wie Windows (seit Microsoft sich um die Sicherheit kümmert)
user253751
1
@ MarkKirby UAC erreicht auf einem Einzelbenutzersystem nicht viel. Ein Programm kann weiterhin alle wichtigen Dateien verschlüsseln, ohne eine UAC-Eingabeaufforderung auszulösen. Es verhindert zwar, dass es sich in das System einhakt und sich nicht mehr entfernen lässt, sodass Sie es entfernen können. Zu diesem Zeitpunkt sind Ihre Dateien jedoch bereits verschlüsselt.
user253751
1
@Rinzwind Es macht nicht viel Sinn zu sagen "Linux ist sicherer, weil Linux-Benutzer besser ausgebildet sind". Wenn Ihre Ausbildung den Schutz bietet, ist Windows, das Sie verwenden, ebenfalls sicher. Viren nutzen Fehler aus und Fehler sind überall. Ein makrobasierter Virus kann vollständig in den Einstellungen und Dateiformaten einer Anwendung vorhanden sein und sich problemlos auf mehrere Plattformen verteilen .
IMSoP
13
Erweiterungen bedeuten nichts. Während Windows sich um sie kümmert, gibt es keine .exe-Viren. Unter Linux spielt Ihre Erweiterung keine Rolle. "Welche Art von Datei" ist etwas elementarer.
Es kann sogar als Modul oder auf andere Weise als Rootkit in den Kernel eingebunden werden oder einfach ein Kernbetriebssystem-Tool oder eine Komponente durch ein eigenes ersetzen.
Nicht alle von ihnen sind es jedoch - es gibt Java-Viren, wie Klassendateien , Assembly-basierte Shellcode- Exploits oder sogar die Möglichkeit von Malware, die in Bash geschrieben wurde (obwohl es interessant wäre, wie sie zunächst ausgeführt wird).
Also, wenn Sie sich nicht sicher sind, vertrauen Sie ihm nicht;)
Viren in Bash? Bestimmt. Es wäre einfach, einen Bash-Keylogger zu erstellen.
Nonny Moose
@NonnyMoose einfach, vorausgesetzt, Sie haben Root-Berechtigung
random_clyde
1
Social Engineering ist eine weit verbreitete Methode, um Malware in Systeme zu bringen.
Geselle Geek
@ Jean-LouisBonnaffe warum? Sie benötigen root für die Bearbeitung eines ./bashrc in Ihrem eigenen Zuhause?
Rinzwind
@RinzWind Genau. Sie benötigen nur root, um es für alle Benutzer zu installieren.
Nonny Moose
6
Ich werde Malware im Allgemeinen für diese Antwort ansprechen, nicht nur Viren.
Viren unter Linux sind nicht auf eine bestimmte Dateierweiterung / einen bestimmten Dateityp beschränkt.
Um besser zu verstehen, wovon wir sprechen, müssen wir zuerst den Zusammenhang zwischen Erweiterungen und Dateitypen und die tatsächliche Funktionsweise von Viren verstehen.
In Windows .exeenthalten Dateien Dateien in einem PE-Format (Portable Executable File Format), das ausführbare Binärdaten enthält. Diese ausführbaren Daten werden in den Speicher geladen und dann durch Interpretieren der Anweisungen in diesen Daten ausgeführt.
Dies bedeutet, dass der einfachste Weg, Ihren Code auszuführen, darin besteht, ihn in einen zu packen .exe. Es gibt jedoch auch andere Möglichkeiten. PDF-Dateien sind notorisch unsicher, da sie Teile enthalten, die vom Leser interpretiert werden können. Dies bedeutet, dass ein eingebettetes Skript Sicherheitslücken des Lesers missbrauchen und beispielsweise nach anderen PDF-Dateien im System suchen und diese ändern kann.
Es kann noch schlimmer werden. Sie können Programmierfehler in Anwendungen missbrauchen, um schädlichen Code direkt in den Arbeitsspeicher des Computers einzufügen. Sobald es da ist, können diese Anweisungen als nativer Code und oft mit hohen Berechtigungen ausgeführt werden, mit verheerenden Ergebnissen.
Wie funktioniert das unter Linux?
Linux hat wie Windows ein ausführbares Binärformat. Windows hat das PE-Format, Linux das ELF-Format. Unices haben im Allgemeinen eine viel weniger ausgeprägte Dateierweiterungsanforderung, sodass ELF-Dateien normalerweise ohne Erweiterung sind. Linux verwendet Magic Numbers, um diese Dateien zu identifizieren, weshalb die Erweiterungen nicht benötigt werden.
Binärdateien sind jedoch unter Linux als Malware-Verteilungsmethode überhaupt nicht beliebt. Dies liegt daran, dass Endbenutzer Binärdateien, die sie erhalten, nur sehr selten manuell öffnen. Binärdateien werden vom Paketmanager und nicht vom Endbenutzer installiert und verwaltet. Die Malware benötigt also andere Angriffsmethoden, um ihren Code auf das Opfer zu übertragen.
Dies bedeutet, dass diese anderen Methoden (Code-Injection, Scripting) als böswillige Codeträger viel beliebter sind.
Ich verstehe, was Sie hier sagen: "Berechtigungen sind für die Sicherheit wichtiger als Dateitypen", und das ist ein sehr guter Punkt, aber vielleicht können Sie das ausdrücklich angeben. Gehen Sie immer davon aus, dass jeder, der liest, keine besonderen Kenntnisse über das Thema hat :) Nehmen Sie eine einfache Bearbeitung vor, um dies zu verdeutlichen, und ich werde darüber abstimmen.
Mark Kirby
1
Erweiterungen und ausführbare Dateien haben unter Windows oder Linux wenig oder gar nichts miteinander zu tun, und Erweiterungen haben überhaupt nichts mit Viren zu tun. Wenn beide Betriebssysteme eine explizite Datei zum Bearbeiten erhalten, sehen sie sich den Header der Datei an, um zu entscheiden, was damit geschehen soll. Wenn der Dateiname nicht eindeutig ist, verwenden die beiden Betriebssysteme leicht unterschiedliche Strategien, um das beabsichtigte Ziel zu identifizieren. Wenn Sie beispielsweise "echo hello" in das Windows-Ausführungsfeld, das Windows-Terminal oder ein Linux-Terminal eingeben, suchen beide in jedem Verzeichnis in der Umgebungsvariablen PATH nach einer Datei mit dem Namen "echo", die über die Ausführungsberechtigung verfügt, und versuchen, diese auszuführen es mit dem Argument "Hallo". Windows sucht auch nach den Dateien "echo.com", "echo.exe", "echo.bat", "echo.cmd", "echo.vb".
Windows schaut nie auf den Dateikopf. Es wird nur die Erweiterung verwendet.
UniversallyUniqueID
Sorry @BharadwajRaju, aber du liegst falsch. Wie ich bereits erklärt habe, wird die Erweiterung in Windows verwendet, um die Pfadsuche zu "verbessern". Sobald jedoch ein geeigneter Kandidat gefunden wurde, wird sie an den Loader übergeben, der den "Header" der Datei untersucht, um festzustellen, was damit zu tun ist. In neueren Windows-Versionen ist dieser Loader eine Reihe von Funktionen, die in ntdll.dll (einer anderen ausführbaren Erweiterung) enthalten sind.
Paul Smith
Es hat sich geändert? Ich verstehe ... Kann Windows jetzt Dateien ohne Erweiterungen öffnen?
UniversallyUniqueID
Es gab Änderungen, aber dies war das grundlegende Verhalten seit den Tagen von MS_DOS und CP / M davor.
Paul Smith
@PaulSmith Obwohl Windows eine Datei ohne Erweiterung öffnen kann , weiß Windows normalerweise nicht, was mit der Datei ohne Erweiterung zu tun ist, es sei denn, Sie weisen sie an , mit einer solchen oder einer solchen Anwendung zu öffnen .
Antworten:
Entgegen der landläufigen Meinung gibt es Viren für Linux und vieles mehr. Während sie unter Linux viel seltener sind und Sie sie die meiste Zeit im System zulassen müssen, existieren sie immer noch.
Viren sind unter Ubuntu oder Windows nicht auf einen Dateityp beschränkt. Es gibt keine bestimmte Art von Datei zu vermeiden oder so etwas, seien Sie einfach vorsichtig. Linux ist sicher, solange Sie vorsichtig sind.
Einige Dinge, die Sie tun können, um sicher zu gehen, sind:
apt
oder Launchpad (Ubuntus Code-Hosting-Dienst) und ähnliche Dienste, um Software von der Quelle zu erhalten.Sie können auch ein Antivirenprogramm verwenden
clamav
, um Ihr System auf Bedrohungen zu überprüfen.Installieren Sie
clamtk
für eine GUI.Hier finden Sie Informationen zu gängigen Linux-Viren und deren Umgang mit ihnen.
quelle
Erweiterungen bedeuten nichts. Während Windows sich um sie kümmert, gibt es keine .exe-Viren. Unter Linux spielt Ihre Erweiterung keine Rolle. "Welche Art von Datei" ist etwas elementarer.
Im Wesentlichen unter Linux ist es wahrscheinlich eine Art ELF- Binärdatei, möglicherweise als statisches oder gemeinsam genutztes Objekt .
Es kann sogar als Modul oder auf andere Weise als Rootkit in den Kernel eingebunden werden oder einfach ein Kernbetriebssystem-Tool oder eine Komponente durch ein eigenes ersetzen.
Nicht alle von ihnen sind es jedoch - es gibt Java-Viren, wie Klassendateien , Assembly-basierte Shellcode- Exploits oder sogar die Möglichkeit von Malware, die in Bash geschrieben wurde (obwohl es interessant wäre, wie sie zunächst ausgeführt wird).
Also, wenn Sie sich nicht sicher sind, vertrauen Sie ihm nicht;)
quelle
Ich werde Malware im Allgemeinen für diese Antwort ansprechen, nicht nur Viren.
Viren unter Linux sind nicht auf eine bestimmte Dateierweiterung / einen bestimmten Dateityp beschränkt.
Um besser zu verstehen, wovon wir sprechen, müssen wir zuerst den Zusammenhang zwischen Erweiterungen und Dateitypen und die tatsächliche Funktionsweise von Viren verstehen.
In Windows
.exe
enthalten Dateien Dateien in einem PE-Format (Portable Executable File Format), das ausführbare Binärdaten enthält. Diese ausführbaren Daten werden in den Speicher geladen und dann durch Interpretieren der Anweisungen in diesen Daten ausgeführt.Dies bedeutet, dass der einfachste Weg, Ihren Code auszuführen, darin besteht, ihn in einen zu packen
.exe
. Es gibt jedoch auch andere Möglichkeiten. PDF-Dateien sind notorisch unsicher, da sie Teile enthalten, die vom Leser interpretiert werden können. Dies bedeutet, dass ein eingebettetes Skript Sicherheitslücken des Lesers missbrauchen und beispielsweise nach anderen PDF-Dateien im System suchen und diese ändern kann.Es kann noch schlimmer werden. Sie können Programmierfehler in Anwendungen missbrauchen, um schädlichen Code direkt in den Arbeitsspeicher des Computers einzufügen. Sobald es da ist, können diese Anweisungen als nativer Code und oft mit hohen Berechtigungen ausgeführt werden, mit verheerenden Ergebnissen.
Wie funktioniert das unter Linux?
Linux hat wie Windows ein ausführbares Binärformat. Windows hat das PE-Format, Linux das ELF-Format. Unices haben im Allgemeinen eine viel weniger ausgeprägte Dateierweiterungsanforderung, sodass ELF-Dateien normalerweise ohne Erweiterung sind. Linux verwendet Magic Numbers, um diese Dateien zu identifizieren, weshalb die Erweiterungen nicht benötigt werden.
Binärdateien sind jedoch unter Linux als Malware-Verteilungsmethode überhaupt nicht beliebt. Dies liegt daran, dass Endbenutzer Binärdateien, die sie erhalten, nur sehr selten manuell öffnen. Binärdateien werden vom Paketmanager und nicht vom Endbenutzer installiert und verwaltet. Die Malware benötigt also andere Angriffsmethoden, um ihren Code auf das Opfer zu übertragen.
Dies bedeutet, dass diese anderen Methoden (Code-Injection, Scripting) als böswillige Codeträger viel beliebter sind.
quelle
Die Unterscheidung erfolgt hier nicht nach Dateierweiterung, sondern nach einer durch einen Befehl festgelegten Dateieigenschaft
Auf diese Weise können Sie sowohl aus einer Binärdatei als auch aus einer Skriptdatei ausführbar machen.
Mit
Sie können die Dateieigenschaften vor der Ausführung auf sichere Weise auflisten.
Sie können auch Folgendes ausführen:
um detailliertere Daten zu einer Datei anzuzeigen.
quelle
Erweiterungen und ausführbare Dateien haben unter Windows oder Linux wenig oder gar nichts miteinander zu tun, und Erweiterungen haben überhaupt nichts mit Viren zu tun. Wenn beide Betriebssysteme eine explizite Datei zum Bearbeiten erhalten, sehen sie sich den Header der Datei an, um zu entscheiden, was damit geschehen soll. Wenn der Dateiname nicht eindeutig ist, verwenden die beiden Betriebssysteme leicht unterschiedliche Strategien, um das beabsichtigte Ziel zu identifizieren. Wenn Sie beispielsweise "echo hello" in das Windows-Ausführungsfeld, das Windows-Terminal oder ein Linux-Terminal eingeben, suchen beide in jedem Verzeichnis in der Umgebungsvariablen PATH nach einer Datei mit dem Namen "echo", die über die Ausführungsberechtigung verfügt, und versuchen, diese auszuführen es mit dem Argument "Hallo". Windows sucht auch nach den Dateien "echo.com", "echo.exe", "echo.bat", "echo.cmd", "echo.vb".
quelle