Backdoor Virus am Computer – Funktionen, Risiko, Schutz

Backdoor Virus Hacking Series Ethical Hacking Steffen Lippke
Backdoor Virus Hacking Series Ethical Hacking Steffen Lippke

Hintertüren in Gebäuden kennt jeder! – und in Software?

Was sind die „Backdoors“ in Programmen? Warum sind diese gefährlich und mit welchen Risiken muss ich bei einem Programm mit Backdoor rechnen?

Heute erkläre ich Dir die grundlegenden Funktionen, das bestehende Risiko und effektive Schutz-Maßnahmen gegen Backdoors.

Aufgabe: Backdoor entwickeln

Ich gebe Dir ein konkretes Code-Beispiel, wie Du eine Backdoor in JavaScript bauen kannst.

Das Prinzip von Backdoors ist in jede Programmiersprache übertragbar.

Grundlagen: Funktion von Backdoors

Eine Backdoor baut der Entwickler in seine Software ein, um

  1. Zugriff auf den Computer zu erhalten
  2. Geschütze Funktionen aufrufen zu können

Ein Programm mit einer Backdoor ist ein harmloses Programm. Wenn das Programm Code nach der Installation über das Internet downloadet, kannst der neue Code Dich…

  • ausspähen
  • Deine Daten löschen
  • Dein Computer zerstören

Regierungen weltweit fordern Software-Unternehmen auf, Backdoors zur Aufklärung von Verbrechen und Kriminalität in Ihre Produkte einzubauen. Der große Nachteil ist, dass die Institutionen eine Backdoor missbrauchen können.

Die Privatsphäre steht bei einer Backdoor hinten an und Firmen können Erfindungen und Patente nicht mehr geheim auf Ihre elektronischen Geräte geheim halten.

 

Hack IT: Unbemerkt auf einen Server kommen

Wo ist der „Schad“-Code gespeichert?

Die Hacker speichern den Code auf öffentlichen Servern, wo jeder „Texte“ ablegen kann. Ein bekanntes Beispiel ist Pastebin.

Die Idee von Pastebin ist sehr simpel.

Jeder kann seinem Kollegen ein paar Zeilen Text oder Code senden, indem dieser den Code auf der Webseite von Pastebin einfügt, speichert und den genierten Link seinem Kollegen sendet.

Wer die URL kennt und den Zugriff auf die Textdatei hat, kann den Code auf jeden Computer mit der präparierten Backdoor-Software laden.

Entwickle eine Backdoor – HEUTE

Für das Tutorial brauchst Du eine HTML mit einem Abschnitt JavaScript. Diese Backdoor basiert auf den Webtechnologien, um die Funktion simple zu demontieren.

Normalerweise findest Du einen Backdoor in Programmen, die sich direkt auf dem Computer ausführen. JAVA, Python, Ruby und C-Programme sind typische Beispiele.

Eine Backdoor funktioniert aber immer nach dem gleichen Schema. Diese kann in etwas abgewandelte Form vorkommen.

  1. Die Trägersoftware z. B. ein Textverarbeitungsprogramm oder eine Festplattentool startet einen zweiten Prozess neben dem Hauptprozess.
    Dort führt das Programm den Backdoor-Code aus.
  2. Manch eine Backdoor ist so konfiguriert, dass der Prozess mit einem Timer zeitlich versetzt startet. Damit möchte der Entwickler verhindern, dass Antivirenprogramme gleich Alarm schlagen.
    Die vorgeschlagene Schutzmaßnahme #1 ist schwieriger durchzuführen.
  3. Sobald der neue Prozess gestartet ist, lädt das Programm den Schadcode vom Server herunter. Der Autor der Software kennt die Architektur seiner Software und kann die Funktionen der Software anpassen bzw. die Malware mit einer komplett anderen schädlichen Funktion auf dem PC ausführen lassen.  
  4. Der Inhalt einer HTTP-GET-Anfrage sieht wie Code aus, ist aber vergleichbar mit einen normalen String wie „Hallo Welt“.
    Der String wandelt eine eval-Funktion in ausführbaren Code um. Eine eval-Funktion stellen viele Programmiersprachen zur Verfügung. Die Erschaffer der Programmiersprache raten davon ab, weil Hacker diese missbrauchen können.
  5. Sobald die eval-Funktion den Code konvertiert hat, führt sich der Schad-Code aus.

Wenn ein Programmierer eine Backdoor entwickeln möchte, achtet dieser darauf, diese möglichst unkenntlich ist.

Wenn aber ein HTTP-Request auf eine eval-Funktion unmittelbar folgt, solltest Du genauer hinsehen.

Sicherung: Präventiv ist besser

Sicherungsmaßnahme vor Backdoors

Eine Backdoor ist fest implementiert in ein Programm.

Der Nutzer kann eine Backdoor nicht erkennen, weil dieses innerhalb des kompilierten und gepackten Quelle-Codes liegt. Die Entwickler wollen aus Sicherheitsgründen und Schutz der eigenen Ideen nicht, dass jeder den Code einsehen kann.

Eine Backdoor kannst Du auf zwei Weisen erkennen:

Schutz- und Erkennungsmaßnahme Backdoor #1 Traffic

Wenn der Quellcode für Dich nicht einsehbar ist, solltest Du den eingehenden und den ausgehenden Internet-Traffic am Computer zu beobachten.

Das geht am besten mit Wireshark. Dazu hatte ich bereits ein Wireshark -Tutorial gemacht

Die Backdoor, falls sie genutzt wird, wartet mit einem Timer Minuten bis Tage. Dann lädt die Backdoor sich den Code von einem geheimen Server herunterlädt.

Dieser Traffic ist messbar – aber das Beobachten ist aufwendig

Schutz- und Erkennungsmaßnahme Backdoor #1 Code

Die andere Möglichkeit ist es bei einer Open-Source-Software sich den Code anzusehen.

Dort kannst Du nach der Struktur einen Backdoor suchen.

Nachdem Du eine Backdoor gebaut hast und das Prinzip verstanden hast, kannst Du im offenen Quellcode eine Backdoor einfacher erkennen.

Manche Backdoor sind trotzdem sehr kryptisch geschrieben, sodass das Erkennen in einem großen Coding-Projekt schwierig ist.

1 Star2 Stars3 Stars4 Stars5 Stars (8 votes, average: 4,13 out of 5)
Loading...

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.