Domain Flux

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen
Domains die mit einem Domain-Generation-Algorithmus generiert wurden und auf einen C&C leiten

Domain Flux ist eine Technik, die von Botnetbetreibern genutzt wird, um den Standort ihrer Command-&-Control-Server zu verbergen. Der Vorteil gegenüber Fast Flux besteht darin, dass die Domain zu der sich die infizierten Rechner verbinden, ständig gewechselt wird. Somit ist es beinahe unmöglich, den Command-&-Control-Server (kurz: C&C) zu finden, ohne den Domain-Generation-Algorithmus zu entschlüsseln.

Domain-Generation-Algorithmus[Bearbeiten | Quelltext bearbeiten]

Domain-Generation-Algorithmus

Der sogenannte Domain-Generation-Algorithmus (kurz: DGA) ist ein Teil der Malware zum Generieren von Domainnamen. Wenn der Bot eine Domain generiert, muss der Botnet-Betreiber die Domain registrieren, über die sich die infizierten Rechner dann zum Command-&-Control-Server (C&C) verbinden. Um das Erraten einer Domain zu erschweren, kann eine Zufallskomponente wie die Twitter-API, die das Botnetz Sinowal/Torpig verwendet, hinzugezogen werden. Durch das tägliche Wechseln der Domain ist es sehr schwer, den C&C des Botnetzes ausfindig zu machen.

Beispiel DGA

<script type="text/javascript"> 
var suffix = new Array("anj", "ebf", "arm", "pra", "aym", "unj", "ulj", "uag", "esp", "kot", "onv", "edc"); 
var t; 

function generate_daily_domain() 
{ 
  t = new Date(); 
  p = 8; 
  return generate_domain(t, p); 
} 

function scramble_date(t, p) 
{ 
  return (((t.getMonth() ^ t.getDay()) + t.getDay()) * p) + t.getDay() + t.getYear(); 
} 

function generate_domain(t, p) 
{ 
  var year = t.getYear(); 

  if (year < 2007) { 
    year = 2007; 
  } 
   
  var s = scramble_date(t, p); 
  var c1 = (((t.getYear() >> 2) & 0x3fc0) + s) % 25 + 'a'; 
  var c2 = (t.getMonth() + s) % 10 + 'a'; 
  var c3 = ((t.getYear() & 0xff) + s) % 25 + 'a'; 

  if (t.getDay() * 2 < '0' || t.getDay() * 2 > '9') { 
    var c4 = (t.day * 2) % 25 + 'a'; 
  } else { 
    var c4 = t.getDay() % 10 + '1'; 
  } 

  return c1 + 'h' + c2 + c3 + 'x' + c4 + suffix[t.getMonth() - 1]; 
} 

document.write(generate_daily_domain()); 
</script> 

Es wird auf dem aktuellen Datum und einem Seed (in Form der Zahl p = 8) ein Domainname generiert. An diesem generierten Domainnamen werden eine Reihe von TLDs wie .com, .org, .net und dergleichen angehängt und dann versucht, ob dieser erreichbar ist. Die täglich generierte Domain ist die zweite Schicht, welche der Bot verwendet um eine Domain zu kontaktieren. Zuallererst wird eine wöchentliche Domain generiert, welche sich die ganze Woche nicht ändert. Erst wenn diese nicht mehr erreichbar ist generiert der Bot eine tägliche Domain, sollte dieses fehlschlagen, gibt es einen Fallback auf hartcodierte Domains.

Domain-Registrierungsablauf[Bearbeiten | Quelltext bearbeiten]

Domain-Registrierung

Bei der Registrierung einer Domain generiert der Bot diese und der Betreiber registriert die Domain, über die sich die infizierten Rechner dann zum C&C verbinden. Um die aktuelle Domain zu kennen, die der Bot generiert, benutzt der Betreiber ein Programm, welches denselben DGA verwendet wie seine Malware.

Domain Wildcard[Bearbeiten | Quelltext bearbeiten]

Domain Wildcarding missbraucht systemeigene DNS-Funktionalität um eine höhergestellte Domain zu verallgemeinern, sodass alle FQDNs auf dieselbe IP verweisen. Zum Beispiel könnte *.Domain.com sowohl mypc.atl.Domain.com als auch myserver.Domain.com einschließen. Diese Methode wird meistens mit Botnets in Verbindung gebracht, die Spam und Phishing-Inhalte verbreiten – wobei die willkürlich aussehenden stellvertretenden Informationen dem Botnet-Betreiber dazu dienen, ein Opfer eindeutig zu erfassen, den Erfolgsverlauf durch verschiedene Zustellungsverfahren nachzuvollziehen und Anti-Spam-Technologien zu umgehen.

Die meisten dieser automatisch erzeugten Phishing-URLs (die die Wildcard-Domains für die Namensauflösung nutzen) können mit einer Filterregel abgeblockt werden, der die Länge eines Host-Namens in einer URL auf maximal vier oder fünf Level beschränkt. Dann wäre eine URL mit dem Namen "www.MyDomain.co.za" in Ordnung, während eine URL mit dem Namen "www.Domain.co.uk.b906758.index.MyBank.cc" automatisch blockiert werden würde.

Das wandelnde Command-&-Control-Center[Bearbeiten | Quelltext bearbeiten]

Serverwechsel

Einige Botnetze sind in der Lage, ihr Steuerzentrum zu verlagern. Hierfür enthält das Steuerungszentrum des Botnetzes eine Datenbank mit allen registrierten Domains und Daten, die zur Verschiebung des Command-&-Control-Servers benutzt werden können. Das stetige Wechseln des Steuerungszentrums erschwert das Aufspüren abermals und schützt es vor der Entdeckung durch Antivirenfirmen und Behörden.

Domain-Flux-Botnetze[Bearbeiten | Quelltext bearbeiten]

  • Srizbi: Cbeplay, Exchanger
  • Sinowal: Torpig, Anserin
  • Conficker: DownUp, DownAndUp, DownAdUp, Kido
  • Kraken: Mailbot.f

Weblinks[Bearbeiten | Quelltext bearbeiten]