PAC – das Problem Auto Config

1 – PAC, die Proxy Auto-Config

Eine Proxy Auto-Config-Datei (PAC) ist eine moderne Komponente, die in allen modernen Browsern vorkommt. Sie sorgt dafür, dass Webbrowser und andere User-Agents automatisch den passenden Proxy-Server (Zugriffsmethode) für eine gewünschte URL finden können.

Das PAC-Dateiformat wurde ursprünglich im Jahr 1996 für den Netscape Navigator 2.0 von Netscape entwickelt. Ein Browser, der PAC unterstützt, bietet Zugriff auf eine Liste von Funktionen, die in der originalen Netscape-Spezifikation definiert sind. Jeder Browser implementiert PAC in einer Sandbox, und erlaubt so nur solchen JavaScript-Funktionen den Zugriff, die für den Betrieb unerlässlich sind, und mehr nicht. So ist es beispielsweise nicht möglich, auf den Browser User Agent String in einer PAC-Datei zuzugreifen, obwohl dieser String für eine normale Webseite verfügbar ist.

PAC ist eine Textdatei, die eine JavaScript-Funktion definiert, nämlich, FindProxyForURL(url, host), mit zwei Argumenten: “URL” ist die URL eines Objekts und “host” ist der von dieser URL abgeleitete Host-Name. Diese Funktion gibt eine Adresse des Proxy-Servers heraus, die verwendet werden muss, um die spezifizierte URL zu erreichen, oder aber einen String "DIRECT", wenn kein Proxy verwendet werden muss. Standardmäßig heißt die PAC-Datei proxy.pac.

Diese Datei ist in Unternehmensnetzwerken ungemein nützlich für Netzwerkadministratoren, da sie es ihnen ermöglicht, den internen Traffic umzuleiten. Der Speicherort einer PAC-Datei ist festgelegt – beispielsweise könnte auf eine URL verwiesen werden, wo sich das Skript befindet; diese URL muss in den Browser-Einstellungen konfiguriert werden:

 
Abb. 1: URL, die auf eine PAC-Datei im Internet Explorer verweist

Oder sie kann lokal gehostet werden:

 
Abb. 2: In Firefox konfigurierte lokale PAC-Datei

Die PAC-Datei bietet Proxy Failover-Unterstützung, fortgeschrittene Proxy-Bypass-Unterstützung und vieles mehr:

  Vorteile Nachteile
PAC
  • Proxy Failover-Unterstützung.
  • Unterstützung fortgeschrittener/dynamischer Proxy-Umgehungsregeln, kann Hosts/IPs unter Verwendung von DNS auflösen, um die Komplexität der Bypass-Liste zu verringern.
  • In allen gängigen Browsern unterstützt
  • Die meisten Verteilungen machen eine Webserver-Infrastruktur erforderlich.
  • JavaScript-Kenntnisse erforderlich.

Tabelle 1: Pros und Contras der Verwendung von PAC

Die von der Sandbox-Umgebung unterstützten und erlaubten Funktionen werden im Folgenden dokumentiert:

  • dnsDomainIs: Wertet die Hostnamen aus und erwidert “true”, wenn die Hostnamen passen.
  • shExpMatch: Versucht einen Hostnamen oder eine URL einem festgelegten shell-Ausdruck zuzuordnen und gibt den Wert “true” zurück, wenn das gelingt.
  • isInNet: Bewertet die IP-Adresse eines Hostnamens und erwidert “true”, wenn sie in einem festgelegten Subnetz gefunden wurde. Wird ein Hostname abgearbeitet, so löst die Funktion den Hostnamen in eine IP-Adresse auf.
  • myIpAddress: Gibt die IP-Adresse des Host-Rechners zurück.
  • dnsResolve: Löst einen Hostnamen in eine IP-Adresse auf. Diese Funktion kann verwendet werden, um die Zahl der DNS-Lookups zu verringern.
  • isPlainHostName: Diese Funktion gibt den Wert “true” zurück, wenn der Hostname keine Punkte enthält, z.B. http://intranet. Sehr nützlich, wenn Ausnahmen für interne Websites angewendet werden sollen, da es die Notwendigkeit eliminieren könnte, einen Hostnamen in seine IP-Adresse aufzulösen, um zu definieren, dass er lokal ist.
  • localHostOrDomainIs: Bewertet den Hostnamen und gibt nur dann den Wert “true” zurück, wenn eine genaue Übereinstimmung gefunden wird.
  • isResolvable: Versucht einen Hostnamen in eine IP-Adresse aufzulösen und gibt im Erfolgsfall den Wert “true” zurück.
  • dnsDomainLevels: Diese Funktion gibt die Zahl der DNS-Domain-Levels (Zahl der Punkte) in dem Hostnamen zurück. Kann verwendet werden, um Ausnahmen für interne Websites zu machen, die kurze DNS-Namen verwenden, z.B. http://intranet.
  • timeRange, dateRange, weekdayRange: Macht es möglich, dass Regeln zeitbasiert funktionieren, beispielsweise einen Proxy nur während vorher festgelegter Stunden, Tage oder Monate zurückgeben.
  • alert: doe alert()-Funktion ist nicht Teil der ursprünglichen PAC-Spezifikation, obwohl sie vom Internet Explorer und Firefox unterstützt wird. Die Funktion kann verwendet werden, um den Wert einer Variablen oder das Ergebnis einer Funktion dergestalt auszugeben, dass sie vom Endanwender eingesehen werden können. Das kann sehr nützlich sein, wenn es darum geht, PAC-Datei-Regelprobleme zu lösen.

Untenstehend ein Beispiel für eine PAC-Datei:

 
Abb. 3: Beispiel für eine typische PAC-Datei

Web Proxy Auto-Discovery Protocol (WPAD)

Das Web Proxy Auto-Discovery Protocol, oder auch WPAD, ist eine Variante der Standard-PAC-Datei, die es Windows-Rechnern ermöglicht zu bestimmen, welcher Computer als Proxy für HTTP(S)-Traffic benutzt werden soll. Ein Browser, der sowohl DHCP als auch DNS unterstützt, versucht zuerst, eine PAC-Datei zu lokalisieren, indem er DHCP nutzt. Ist keine DHCP-Konfiguration vorhanden, so erfolgt ein Failover zu DNS WPAD.

Ebenso wie die PAC-Dateien, hat auch die WPAD Vor- und Nachteile, wenn sie in Unternehmensnetzwerken eingesetzt wird:

  Vorteile Nachteile
WPAD
  • Beinhaltet alle PAC-Vorteile.
  • Bereitstellung macht lediglich das Anklicken einer Checkbox erforderlich.
  • Beinhaltet alle PAC-Nachteile.
  • Macht Änderungen in der DNS- oder DHCP-Infrastruktur erforderlich.

Tabelle 2: Pros und Contras der Verwendung von WPAD

Die Suche nach einem Webproxys mit WPAD läuft grundsätzlich folgendermaßen ab:

  1. Habe ich einen WPAD-Eintrag in meinem DHCP-Lease erhalten? Wenn ja, dann springe zu Punkt 4.
  2. Frage den DNS-Server, welcher Netzwerk-User “wpad” heißt (oder wpad.[mydomain.com]). Springe zu Punkt 4, wenn der Lookup erfolgreich war.
  3. Sende eine NetBIOS Name Service Message und frage nach “WPAD”. Gehe weiter zu Punkt 4, wenn irgendjemand im Netzwerk für sich den Namen “WPAD” geltend macht, andernfalls verwende keinen Web-Proxy.
  4. Lade die Datei http://wpad/wpad.dat herunter
  5. Verwende die IP-Adresse, die in der Datei wpad.dat als Web-Proxy für den gesamten http- und HTTPS-Webtraffic definiert ist.

Das WPAD-Feature von Windows hat es Angreifern viele Jahre lang ermöglicht, auf simple Art MITM-Attacken auf Webtraffic durchzuführen. Diese Methode wurde von dem Schädling Flame benutzt, um eine MITM-Attacke auf Windows Update-Verbindungen in einem infizierten Netzwerk zu starten.

Das Problem bei der Anwendung von Windows WPAD liegt in der Tatsache, dass es den NetBIOS Name Service (im Folgenden NBNS) verwendet, um die Adresse des "WPAD"-Servers aufzulösen, und NBNS wiederum ist anfällig für Spoofing-Attacken.

Windows-Rechner sind standardmäßig so konfiguriert, dass sie zunächst versuchen, den WINS-Server nach einem Namen zu fragen. Der WINS-Server ist aller Wahrscheinlichkeit nach nicht konfiguriert, daher werden daraufhin alle Computer im lokalen Subnetz gefragt, ob sie eine Adresse eines Computer mit diesem Namen kennen. Und an dieser Stelle kommt Spoofing ins Spiel.

 
Abb 4: NetBIOS Name Service-Anfrage für WPAD

Der Angreifer kann eine Anwendung entwickeln, die den Port UDP 137 abhört und auf alle WPAD-Anfragen mit der Adresse des Webservers des Angreifers antwortet. Der Webserver seinerseits könnte eine schädliche PAC-Datei bereitstellen, die die Browser der Opfer dazu bringt, bestimmte Proxy-Server für die Verbindung mit Websites zu benutzen, die die Angreifer interessieren.

2 – PAC: das Problem Auto-Config

Auch wenn PAC ein legitimes Feature ist, ist der Missbrauch dieser Dateien bereits seit 2005 bekannt. Die Technik wurde von brasilianischen Cyberkriminellen verbessert und kultiviert und dann mit Online-Verbrechern aus der Türkei und Russland geteilt.

Die Attacken haben ein bisher unerreichtes Ausmaß an Komplexität und Effizienz erreicht, das es ermöglicht, mit einer Datei von nur 1 KB ein komplettes Bankkonto zu hacken. Indem sie eine gehörige Portion Kreativität mit Drive-by-Download-Attacken kombinieren, sind diese schädlichen Skripte in der Lage, weitaus mehr als nur simple Man-in-the-Middle-Attacken durchzuführen; sie sind in der Lage, HTTPS-Verbindungen in lautlosen, Web-basierten Attacken vorzutäuschen, die regelmäßig und erfolgreich gestartet werden können. Üblicherweise werden die Nutzer dabei auf Phishing-Seiten von Banken, Kreditkartenunternehmen usw. umgeleitet.

In Brasilien sind schädliche PAC-Dateien in trojanischen Banker-Programmen seit 2009 auf dem Vormarsch , als verschiedene Familien, wie etwa Trojan.Win32.ProxyChanger begannen, die URLs von PAC-Dateien in die Browser von infizierten Rechnern einzuschleusen.

 
Abb. 5: Phishing-Seite einer brasilianischen Bank in einem Webbrowser, der mit einer schädlichen PAC konfiguriert wurde

Heute verfügen mindestens 6 von 10 brasilianischen Banking-Trojanern über ein Feature, das der Konfiguration eines Browsers eine schädliche PAC hinzufügen kann.

 
Abb. 6: Eine PAC-Datei im Plain-Text-Format, die von brasilianischen Cyberkriminellen entwickelt und verwendet wird

Einige Trojaner versuchen zudem, die Datei prefs.js zu ändern, die von Mozilla Firefox für die Einstellung der Proxy-Konfigurationen verwendet wird:

 
Abb. 7: Ein Trojan-Banker der die Änderung von prefs.js in Firefox vorbereitet

Diese Attacke ist äußerst simpel – der Trojaner muss lediglich einen einzigen Wert in der Windows Registry ändern, indem er der PAC-Datei eine URL hinzufügt:

HKCUSoftwareMicrosoftWindowsCurrentVersionInternet Settings: “AutoConfigURL = http://www.badsite.com/pacscript.pac

Oder er muss einer kleinen Datei (normalerweise weniger als 1 KB), die lokal gehalten wird, einen Pfad hinzufügen:

HKCUSoftwareMicrosoftWindowsCurrentVersionInternet Settings,AutoConfigURL = file://C:/WINDOWS/proxy.pac

Einige Attacken ändern auch die Werte des unten stehenden Schlüssels, der für die Einstellung eines Auto-Proxys in dem Namen der Internet-Verbindung verantwortlich ist:

HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet SettingsConnections{CONNECTION NAME}

Cyberkriminelle können ihre Angriffsmöglichkeiten wesentlich verbessern – und die Zahl der potentiellen Opfer steigern -, indem sie diese Technik mit Drive-by-Download-Attacken, mit dem Ausnutzen von Java-Schwachstellen, dem Einschleusen von schädlichen Apps auf populäre Websites oder sogar mit dem Einsatz von Exploit-Packs, wie z.B. BlackHole, kombinieren.

 
Abb. 8: Code-Abschnitt einer BlackHole-Payload, die von brasilianischen Cyberkriminellen verwendet wird, um die PAC-Einstellung auf dem Opfercomputer zu ändern

Dieser Ansatz ist dermaßen effektiv, dass russische Banking-Trojaner, wie etwa Trojan-Banker.Win32.Capper diese Technik im Jahr 2012 zusammen mit gefälschten digitalen Zertifikaten übernommen haben, um die Anwender auf eine HTTPS-Phishing-Seite umzuleiten.

Einige Betrüger setzten Social Engineering ein, um die Nutzer auszutricksen und dafür zu sorgen, dass die schädliche URL in den Browser-Einstellungen konfiguriert bleibt, indem irreführende Domainnamen verwendet werden, die auf den ersten Blick legitim erscheinen. Hier einige Beispiele:

http://egcon.com.br/images/avast.pac
http://defaultcache.com.br/ie
http://vpn.install-pcseguro.com/ssl.js
http://update.microsoft.com.br-ieconfig.ma.cx/security.jsp
http://sec.autoatt.com/
http://ww1.appsegurancamobile.com/kb2438658.php

Um unsere Nutzer zu schützen, begannen wir die URLs zu blockieren, die auf die schädlichen PAC-Dateien verwiesen. Als Retourkutsche führten einige Trojaner willkürliche URLs ein, die sich mit jedem Reboot ändern. Andere Trojaner begannen kurze URLs von Diensten wie bit.ly zu verwenden, in der Hoffnung die Redirects zu kontrollieren und Statistiken zu erheben.

 
Abb. 9: Eine bit.ly-URL, die auf eine PAC-Datei mit mehr als 1 Million Klicks in 10 Tagen verweist

Wir befanden, dass Blacklisting keinen adäquaten Schutz bietet, daher beschlossen wir, unter Verwendung der Klassifizierung Trojan-Banker.JS.Proxy eine Signatur-basierte Detektion für diese kleinen PAC-Dateien zu erstellen. Das setzten wir für viele Dateien um:

 
Abb. 10: Einige Signatur-Detektionen für schädliche PAC-Dateien

Daraufhin wurde unser Katz-und-Maus-Spiel mit den brasilianischen Cyberkriminellen durchaus interessanter.

Tarnen und täuschen

Sobald einige Anti-Malware-Unternehmen begannen, Signatur-basierte Erkennung für schädliche PAC-Skripte einzusetzen, reagierten die Online-Verbrecher mit stärkerer Code-Obfuskation in der Absicht, die Detektion zu umgehen.

Dieser Ansatz war erfolgreich: Noch heute hat fast jeder AV-Anbieter eine nur sehr niedrige Erkennungsrate für diese bösartigen PACs. Da es sich dabei um ein legitimes Feature des Anwender-Browsers handelt und da auch echte PACs darunter sind, sind Sicherheitsprodukte meist überaus vorsichtig bei der Erkennung, aus Angst vor False-Positives. Einige bieten gar keine Lösung für dieses Problem.

Um die Signatur-basierte Erkennung zu umgehen, begannen brasilianische Cyberkriminelle, alle möglichen Arten von JavaScript-Obfuskation für diese schädlichen PAC-Dateien einzusetzen. Einige gingen noch weiter und entwickelten Tools zur Automatisierung der Obfuskation und verkauften sie unter ihren kriminellen Kollegen zu einem Preis von 5.000 Brasilianischen Real (etwa 1.660 Euro).

 
Abb. 11: “PAC do Baixada” – In Brasilien entwickelte Crimeware zur Obfuskation des Codes schädlicher PACs

Andere benutzten lieber Websites, die Javascript-Verschlüsselung bietet:

 
Abb. 12: Online-Tool zur Verschlüsselung von Javascript

Dadurch traten einige ungewöhnliche kryptische Schadskripte in freier Wildbahn auf. Sie verfügten über alle möglichen Arten von Obfuskation, wie im folgenden Beispiel, mit verknüpften Strings:

 
Abb. 13: PAC mit verknüpften Strings

Oder dieses Beispiel mit gespiegelten Strings:

 
Abb. 14: PAC mit gespiegelten Strings

Andere ersetzten die Namen der vom Skript oder von der IP der Webpage angegriffenen Domains:

 
Abb. 15: PAC mit Verwendung von IPs anstelle von Domainnamen

Wieder andere taten sich durch den Einsatz von hochentwickelter JavaScript-Obfuskation hervor:

 
A bb. 16 : PAC malveillant à obfuscation forte

Andere Skripte begannen Verschlüsselung durch Hinzufügen zahlreicher unsinniger Symbole zu verwenden:

 
Abb. 17: Schädliches PAC mit sinnlosen Symbolen und Charcode

In einigen PAC-Dateien übermittelten Cyberkriminelle sogar Warnbotschaften an Malware-Analysten, wie in dem folgenden Beispiel:

 
Abb. 18: Die Nachricht im Dateikopf bedeutet: “Schei…, warum schnüffeln diese A….löcher (in meinen PACs) herum? Geht anderen auf den Sack und lasst mich in Ruhe arbeiten, ich muss meine Familie ernähren, Ihr dummen A….löcher, lasst mich in Ruhe!! Wenn ihr mit mir zusammenarbeiten wollt, schickt mir eine E-Mail an xxxxxx@bol.com.br”

In einer anderen schädlichen PAC wurden dagegen Grüße an die kriminellen Brüder im Geiste übermittelt:

 
Abb. 19: Die Nachricht bedeutet: “Versuch nicht, diese Datei zu löschen oder zu ändern, versuch nich, zu schnüffeln, sie weiterzuleiten, herunterzunehmen oder auf Twitter zu veröffentlichen. Die Bewohner der Hölle werden alles wieder umleiten und alle werden am Ende glücklich sein. Grüße an die Diebe (verschiedene Nicknames)”

Chirurgische Analyse einer schädlichen PAC

Schauen wir uns dieses Beispiel einmal genauer an. Hier wurde entschieden, den Inhalt der PAC zu XORen:

 
Abb. 20: GeXORte schädliche PAC

Mit Hilfe des spezifischen XOR-Schlüssels zur Dechiffrierung des Skripts erhalten wir eine lange Liste mit allen Zielen, unter anderem die folgenden:

  • Brasilianische und lateinamerikanische Banken
  • Kreditkartenunternehmen
  • Airlines, um Punkte aus Treueprogrammen zu stehlen
  • Webmail-Dienste wie Gmail, Hotmail, Yahoo
  • Bezahlsysteme wie Paypal, PagSeguro, etc.
  • Finanzinformationsdienste wie Serasa Experia,
  • B2C-Websites, insbesondere bekannte e-Commerce-Websites

In diesem Beispiel werden alle unten aufgezählten URLs zur Nutzung des Proxys “att.nossodomain2.me” veranlasst:

rrr+mjqhdli+fjh :  www.hotmail.com
mjqhdli+fjh :  hotmail.com
mjqhdli+fjh+gw :  Hotmail.com.br
rrr+mjqhdli+fjh+gw :  www.hotmail.com.br
hvk+fjh :  msn.com
rrr+hvk+fjh :  www.msn.com
ils+fjh :  live.com
rrr+ils
+fjh :  www.live.com
rrr+lqdp+fjh+gw :  www.itau.com.br
rrr+gdkfjlqdp+fjh+gw :  www.bancoitau.com.br
gdkfjlqdp+fjh+gw :  bancoitau.com.br
lqdp+fjh+gw :  itau.com.br
rrr+lqdpuwvjkkdilq+fjh+gw :  www.itaupersonnalite.com.br
lqdpuwvjkkdilq+fjh+gw :  itaupersonnalite.com.br
rrr+vwdvd+fjh+gw :  www.serasa.com.br
v
wdvd+fjh+gw :  serasa.com.br
vwdvd}uwldk+fjh+gw :  serasaexperian.com.br
rrr+v
wdvd}uwldk+fjh+gw :  www.serasaexperian.com.br
rrr+vdkqdkaw+fjh+gw :  www.santander.com.br
vdkqdka
w+fjh+gw :  santander.com.br
rrr+vdkqdkawkq+fjh+gw :  www.santandernet.com.br
vdkqdkawkq+fjh+gw :  santandernet.com.br
rrr+gdkwlvpi+fjh+gw :  www.banrisul.com.br
gdkwlvpi+fjh+gw :  banrisul.com.br
rrr+mvgf+fjh+gw :  www.hsbc.com.br
mvgf+fjh+gw :  hsbc.com.br
dhwlfdk}uwvv+fjh+gw :  americanexpress.com.br
rrr+dh
wlfdk}uwvv+fjh :  www.americanexpress.com
dhwlfdk}uwvv+fjh :  americanexpress.com
rrr+gdk
v+fjh+gw :  www.banese.com.br
gdk
v+fjh+gw :  banese.com.br
rrr+gwda
vfjuo+fjh+gw :  www.bradescopj.com.br
gwdavfjuo+fjh+gw :  bradescopj.com.br
gwda
vfjkqhuwvd+fjh+gw :  bradesconetempresa.com.br
rrr+gwda
vfjkqhuwvd+fjh+gw :  www.bradesconetempresa.com.br
rrr+gwda
vfj+fjh+gw :  www.bradesco.com.br
rrr+gwdavfjuwlh+fjh+gw :  www.bradescoprime.com.br
gwdavfj+fjh+gw :  bradesco.com.br
gwda
vfjuwlh+fjh+gw :  bradescoprime.com.br
uwlh
+fjh+gw :  prime.com.br
rrr+gwdavfjuvvjdopwlalfd+fjh+gw :  www.bradescopessoajuridica.com.br
gwdavfjuvvjdopwlalfd+fjh+gw :  bradescopessoajuridica.com.br
rrr+gg+fjh+gw :  www.bb.com.br
gg+fjh+gw :  bb.com.br
gdkfjajgwdvli+fjh+gw :  bancodobrasil.com.br
rrr+gdkfjajgwdvli+fjh+gw :  www.bancodobrasil.com.br
rrr+fdl}d+fjh+gw :  www.caixa.com.br
rrr+fdl}d+bjs+gw :  www.caixa.gov.br
rrr+fdl}dfjkjhlfd+fjh+gw :  www.caixaeconomica.com.br
rrr+fdl}d
fjkjhlfd+bjs+gw :  www.caixaeconomica.gov.br
rrr+fdl}dfjkjhlfdcawdi+fjh+gw :  www.caixaeconomicafederal.com.br
rrr+fdl}d
fjkjhlfdcawdi+bjs+gw :  www.caixaeconomicafederal.gov.br
rrr+fc+fjh+gw :  www.cef.com.br
rrr+f
c+bjs+gw :  www.cef.gov.br
fdl}d+fjh+gw :  caixa.com.br
fdl}d+bjs+gw :  caixa.gov.br
fdl}dfjkjhlfd+fjh+gw :  caixaeconomica.com.br
fdl}d
fjkjhlfd+bjs+gw :  caixaeconomica.gov.br
fdl}dfjkjhlfdcawdi+fjh+gw :  caixaeconomicafederal.com.br
fdl}d
fjkjhlfdcawdi+bjs+gw :  caixaeconomicafederal.gov.br
fc+fjh+gw :  cef.com.br
f
c+bjs+gw :  cef.gov.br
rrr+vlfwal+fjh+gw :  www.sicredi.com.br
vlfw
al+fjh+gw :  sicredi.com.br
rrr+udbvbpwj+fjh+gw :  www.pagseguro.com.br
udbv
bpwj+fjh+gw :  pagseguro.com.br
udbvbpwj+pji+fjh+gw :  pagseguro.uol.com.br
flqlgdkn+fjh+gw :  citibank.com.br
rrr+flqlgdkn+fjh+gw :  www.citibank.com.br
ud|udi+fjh :  paypal.com
rrr+ud|udi+fjh :  www.paypal.com
gkg+bjs+gw :  bnb.gov.br
rrr+gkg+bjs+gw :  www.bnb.gov.br
rrr+gwg+fjh+gw :  www.brb.com.br
gwg+fjh+gw :  brb.com.br
lkqjpfm+pklqcjpw+fjh+gw :  intouch.unitfour.com.br
dduo+gg+fjh+gw :  aapj.bb.com.br
f
qih+fjh+gw :  cetelem.com.br
rrr+fqih+fjh+gw :  www.cetelem.com.br
vdcwd+fjh+gw :  safra.com.br
rrr+vdcwd+fjh+gw :  www.safra.com.br
gdkwlvpi+fjh+gw :  banrisul.com.br
rrr+gdkwlvpi+fjh+gw :  www.banrisul.com.br
gdvd+fjh+gw :  basa.com.br
rrr+gdvd+fjh+gw :  www.basa.com.br
rrr+umlvmqdkn+fjh :  www.phishtank.com
umlvmqdkn+fjh :  phishtank.com
rrr+qmw
dq}uwq+fjh :  www.threatexpert.com
qmwdq}uwq+fjh :  threatexpert.com
rrr+slwpvqjqdi+fjh+gw :  www.virustotal.com.br
slwpvqjqdi+fjh+gw :  virustotal.com.br
slwpvvfdk+fjh :  virusscan.com
rrr+slwpvvfdk+fjh :  www.virusscan.com
rrr+ilkmda
ckvlsd+jwb :  www.linhadefensiva.org
ilkmda
ckvlsd+jwb :  linhadefensiva.org
bji+fjh+gw :  gol.com.br
rrr+bji+fjh+gw :  www.gol.com.br
rrr+sj
bji+fjh+gw :  www.voegol.com.br
sjbji+fjh+gw :  voegol.com.br
vdcwdk
q+fjh+gw :  safranet.com.br
rrr+vdcwdk`q+fjh+gw :  www.safranet.com.br
dh3:  att.nossodomain2.me

Wird eine schädliche PAC im Browser konfiguriert, bevor der Nutzer versucht, auf diese Seiten zuzugreifen, erscheint die in der Adresszeile angegebene URL legitim, sie ist allerdings lediglich die Tarnung für eine Phishing-Seite. Im Ergebnis fällt eine Menge infizierter Nutzer diesen Attacken zum Opfer, ohne es überhaupt zu merken.

Die Liste enthält einige Sicherheitsdienste, wie z.B. PhishTank, VirusTotal, ThreatExpert, VirusScan, LinhaDefensiva.org. Die schädliche PAC blockiert den Zugriff auf diese Websites, indem sie den Browser anweist, den Proxy-Server 127.0.0.1 zu benutzen, um sie abzurufen.

In der schädlichen Domain, auf die der gesamte Traffic umgeleitet wird, finden wir die von den Betrügern vorbereiteten Phishing-Seiten. Alle haben recht interessante Namen, einige davon sind hier aufgeführt:

Phishing-URL

Ziel

att.nossodomain2.me/peipau

Paypal

att.nossodomain2.me/citi

Citibank

att.nossodomain2.me/desco

Bradesco Bank

att.nossodomain2.me/santa

Santander Bank

att.nossodomain2.me/bb

Banco do Brasil

att.nossodomain2.me/taui

Itau Bank

att.nossodomain2.me/tamtam

TAM (Brazilian airline company)

att.nossodomain2.me/azulinha

Caixa Bank

 

Tabelle 3: Einige der URLs, die von einer schädlichen PAC verwendet werden, und ihre Ziele

Andere Skripte blockieren auch den Zugriff auf Websites und auf die Update-Server von verschiedenen AV-Produkten:

 
Abb. 21: Schädliche PAC, die versucht, den Zugriff auf AV-Updates zu blockieren

Wenn der infizierte Nutzer versucht, auf die Site eines AV-Anbieters zuzugreifen, wird diese Mitteilung angezeigt:

 
Abb. 22: Gefälschte Mitteilung “Service nicht erreichbar, versuchen Sie es später noch einmal”, die von einer schädlichen PAC auf einem infizierten Rechner angezeigt wird

Wenn der Nutzer versucht, Hilfe bei den Sicherheits-Communities zu finden, und dort um Rat bezüglich des Entfernens von Malware fragt, so versucht die schädliche PAC ebenfalls, den Zugriff auf derartige Websites zu blockieren, insbesondere zu der brasilianischen Site LinhaDefensiva.org, die kostenlose Tools zur Entfernung von Schadprogrammen in ihren Foren anbietet.

Einige PACs leiten den Anwender auf eine gefälschte Seite um, die eine Blue-Screen-Mitteilung simuliert:

 
Abb. 23: Eine BSOD im Browser? Nein, das ist eine gefälschte Mitteilung, die angezeigt wird, wenn ein infizierter Computer versucht, die Website LinhaDefensiva.org aufzurufen

Diese schädlichen PACs scheinen multifunktionale Angriffstools zu sein, die den Anwender nicht nur auf Phishing-Seiten umleiten, um Daten (meist finanzieller Art) zu stehlen, sondern die auch den Zugriff auf die Websites von AV-Anbietern und Sicherheit-Communities blockieren, bei denen der Anwender Hilfe beim Desinfizieren seines Rechners finden könnte. Diese PACs können sogar die Effizienz von PhishTank untergraben, da sie versuchen, ihre Phishing-Seiten vom Browser als “sauber” einzustufen zu lassen.

Nachdem klar geworden war, wie effektiv diese Attacken gegen Online-Bankkonten sind, wurde die Technik auch auf andere Ziele übertragen, wiederum mit der Absicht, Geld zu stehlen. Ein Beispiel jüngeren Datums ist die Umleitung auf Phishing-Seiten von mimicking mtgox.com, die am häufigsten genutzte Bitcoin-Wechselstube:

 
Abb. 24: Die virtuelle Währung Bitcoin wird ebenfalls von schädlichen PACs angegriffen

In anderen Fällen wurde versucht, den Nutzer von populären Websites auf Landing-Pages umzuleiten, die nur so vor Ads und gesponserten Links wimmeln. Auf diese Weise sollte Traffic generiert und die Zahl der Klicks erhöht werden, in der Hoffnung, etwas Geld von gesponserten Ad-Services, wie etwa Google Adwords zu erhalten.

 
Abb. 25: “busca.afiliados.pac” bedeutet “Suche Affiliate-Partner”

Andere Cyberkriminelle verlegten sich auf den Diebstahl von Passwörtern von Webdiensten der brasilianischen Regierung, wie z.B. consultasintegradas.rs.gov.br – eine Website, die die Daten der Bürger im Staat Rio Grande do Sul in Brasilien verwaltet:

 
Abb. 26: Ein von schädlichen PACs angegriffener brasilianischer Regierungs-Webdienst

3 – PAC: Planning-A-Countermeasure – Planung einer Gegenmaßnahme

Seit 2009 wissen brasilianische Cyberkriminelle schädliche PACs in Browsern als Mittel zum Diebstahl von Bankkontendaten zu schätzen. Dieser Weg ist lautlos, effektiv und viele Sicherheitsprodukte bieten vor dieser Art von Angriffen keinen Schutz.

Mit Hilfe dieser Methode stehlen brasilianische Cyberkriminelle eine Menge Geld, meist von lokalen Banken. Die Brasilianische Bankenföderation (Brazilian Federation of Banks, FEBRABAN) teilte mit, dass ihre Mitglieder im Jahr 2012 1,2 Milliarden Brasiliansiche Real verloren haben (etwa 400 Millionen Euro).

Die Statistik zu der Familie Trojan.Win32.ProxyChanger bestätigt, dass dieser Schädling in Brasilien und Russland am weitesten verbreitet ist:

 
Abb. 27: Die im ersten Halbjahr 2013 von Trojan ProxyChanger am stärksten betroffenen Länder: Brasilien, Portugal und Russland

Die schädliche PAC-Datei aus der Familie Trojan-Banker.JS.Proxy selbst ist ähnlich weit verbreitet, wobei Brasilien und Russland hier an der Spitze stehen:

 
Abb. 28: Die von Trojan-Banker.JS.Proxy im ersten Halbjahr 2013 am stärksten betroffenen Länder

Und wieder sind Brasilien und Russland am stärksten betroffen, und zwar von Trojan-Banker.PAC.Agent, einem Banking-Trojaner, der Proxys in Browsern ändert:

 
Abb. 29: Die im ersten Halbjahr 2013 am stärksten von Trojan-Banker.PAC.Agent betroffenen Länder

Wie lassen sich diese Bedrohungen detektieren? Schädliche PACs sind stark obfuskiert, um die Signatur-basierte Erkennung zu vermeiden, daher sollte auf diese Skripte zunächst einmal eine gute heuristische Detektion angewendet werden. Dabei wird auch die Existenz der vielen legitimen PACs berücksichtigt, die meist in Unternehmensumgebungen zu finden sind.

 
Abb. 30: Eine legitime PAC-Datei in einem Universitäts-Netzwerk

Die in Produkten von Kaspersky Lab verwendete Detektionsmethode basiert auf JavaScript-Emulation – der Emulator versucht, die Funktion FindProxyForURL mit verschiedenen Bankadressen aufzurufen und untersucht dann das Ergebnis. Wenn die Funktion eine Proxy-Adresse für Banking-Websites und "DIRECT" für andere Websites zurückgibt, dann muss eine Detektion erfolgen.

Diese Technik stellt eine proaktive Detektion von PAC-Dateien sicher, da die Emulationsergebnisse immer gleich bleiben, ganz egal, wie stark die Datei obfuskiert wurde.

 
Abb. 31: Heuristische Detektion in Aktion

Unsere ultimative Lösung des Problems heißt Safe Money. Diese Auswahl von Features umfasst eine SSL-Überprüfung in der Cloud, wobei festgestellt wird, ob eine Webseite legitim ist und eine Warnung an den Nutzer verschickt wird, wenn es irgendwelche Probleme mit dem Sicherheitszertifikat gibt:

 
Abb. 32: Safe Money überprüft Seiten auf Legitimität und schützt Browser vor Infektionen

Fazit

Die hier behandelten schädlichen Skripte werden von dem Radar der meisten Antiviren-Unternehmen noch immer nicht erfasst – einige versuchen gar nicht erst, diese Attacken zu detektieren und zu blockieren. Unser Ziel ist es, alle Anti-Malware-Unternehmen zu ermutigen, sich diesen Angriffsvektor zu vergegenwärtigen und zusammenzuarbeiten, um einen zuverlässigen Schutz und effektive Gegenmaßnahmen bieten zu können. Cyberkriminelle sind schwer damit beschäftigt, die Detektion zu verhindern und werden weiterhin in die Obfuskation des Codes investieren, der es ihnen ermöglicht, das Geld unschuldiger Anwender zu stehlen.

Ähnliche Beiträge

Schreibe einen Kommentar

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