FoxIT Whitepaper Blackhat Web
FoxIT Whitepaper Blackhat Web
FoxIT Whitepaper Blackhat Web
Michael Sandee
-nologo .
This whitepaper accompanies our presentation at Blackhat US 2015
Backgrounds on the Badguys and the Backends
Fox-IT
-private _ key:[file] Private key file of botnet.
-subbotnet:[name] Override subbotnet name (form configruation) with this name.
-obot:[file] Output executable file of bot.
-oconfig:[file] Output configuration file of bot.
-toupdate:[file] Convert PE-file to update of bot (mark, encrypt and sign). File will be converted
-oproxy:[file] Output proxy data file of bot.
-sfile:[file] Sign file. File will be signed in place.
dht DHT operations.
-nologo .
-kbucket:[file] K-Bucket file, URL or single ID@IP:Port.
-config:[file] Source configuration file.
-private _ key:[file] Private key file of botnet.
-put _ config:[file] Put configuration data to every node.
-put _ update:[file] Put update data to every node.
-put _ proxy:[enable/disable] Enable or disable private proxy data for every node.
-ping Ping every node.
-enum _ text:[file] Enumeration of all the nodes in the network to text file.
-enum _ binary:[file] Enumeration of all the nodes in the network to binary file (NODE _ DATA _ SHORT).
plugin Manage plugin
-nologo .
-input:[file] Source DLL file.
-output:[file] Output plugin.
-private _ key:[file] Private key file of botnet.
This whitepaper accompanies the talk GameOver ZeuS:
Badguys and Backends on Blackhat in Las Vegas, August5,
2015. The presenters are Elliott Peterson of the FBI,
MichaelSandee of Fox-IT and Tillmann Werner ofCrowdstrike.
This paper describes the history of the ZeuS malware and also the background of
the GameOver ZeuS group, which has operated for well over five years. Throughout
this paper there are sections discussing the ZeuS origin, group composition,
methods for fraud, and origin of fraudulent beneficiaries. Additionally, we will be
discussing a much lesser known side of peer-to-peer ZeuS: its use for espionage.
GameOver ZeuS, GOZ, peer-to-peer ZeuS, P2P-ZeuS and ZeuS3 are analogous to
each other and refer to a ZeuS based malware family, which was active in the wild
from September 2011 till May 2014. When we refer to the GameOver ZeuS group
or peer-to-peer ZeuS team, we mean the group that operated around this specific
malware variant and its predecessors.
Slavik is the nickname of the author of ZeuS, his real name is Evgeniy Bogachev.
Slavik was indicted by the FBI in June 2014. Over the years, he used many different
nicknames, however people close to him would still call him Slavik.
This paper would not have been possible without the help and hard work of my dear
friend and colleague, Frank Ruiz. I would also like to thank all of my colleagues at the
InTELL team at Fox-IT and our Senior Management for supporting our work.
Although Slaviks endictment was over a year ago, he While the group was directly associated with the
is yet to be apprehended. An award of 3million dollars GameOver or peer-to-peer ZeuS malware, it had
has been announced for information that will lead to migrated from the previous ZeuS 2.1.0.X variants, and
his capture. even prior to that worked together simply utilizing the
kit malware of ZeuS. While in the beginning the group
The GameOver ZeuS group was a crime ring that was based more on a supplier-consumer relationship
focused on various financial frauds, most notably within the underground, over the years it grew into a
corporate banking account takeovers, with an well oiled fraud machine.
estimated 100 million dollars of losses attributed
to the group. However it is likely that the amount is During our research of GameOver ZeuS, we
higher, as the group targeted banks and victims in encountered a number of search commands that were
many different countries and has operated for many looking specifically for information regarding Foreign
years, going back to at least 2009. No aggregate Intelligence services in Georgia, Turkey and Ukraine.
numbers of fraud losses attributed to GameOver ZeuS This is rather unusual to find in financial malware, and
over this period are available, as there was not a single has fed speculation it could be one of the reasons
long running international investigation that collected why Slavik has so far been able to evade capture.
information on this. Thesearch commands were found in 2013 and 2014,
but actually it was found that the activity likely even
One of the methods of fraud that was started in the predated the start of GameOver ZeuS in 2011 and was
last year of the GameOver ZeuS, between 2013 and also executed from the ZeuS 2.1.0.X versions.
2014, was the CryptoLocker ransomware, which was
a simple way of extorting money from victims by Overall, due to the size of the group, the amount
encrypting their files and demanding money for the of activity and the global scope of the attacks, this
key. About 3 million dollars in money was paid to the investigation was a long and complex one. And while
operator of CryptoLocker, which was Slavik (and his the attacks were relatively simple, the international
affiliates), who also was the author of ZeuS. character of the frauds committed made the
investigation and prosecution a complex task.
The group itself, which called itself business club,
consisted of over 50 individuals who were involved
in the various aspects of fraud. This included the
fraudsters themselves, the persons recruiting and
arranging mule accounts, the technical support team
and various third party suppliers of other crimeware
kits that could be utilized by the group. The group
waswell organized and was led by Slavik and one
otherindividual.
Back in the period of 2005/2006 Slavik Several years of dramatic growth ensued, In 2010, with a popular alternative to ZeuS,
had created ZeuS, the first publication about with both actual customers but also software named SpyEye, gaining increasing popularity,
ZeuS was made at the end of 2006. piracy leading to hundreds of users of ZeuS Slavik did his disappearing trick and
worldwide, and it soon was the most popular announced he would no longer support ZeuS,
In 2007 the first large scale attacks took place, malware in this space. but that instead the SpyEye author would
that used the ZeuS bank attack configuration support his work.
called webinjects that became the defacto In January of 2009, and likely even earlier,
standard format for bank attacks since then Slavik started working closely together with a Various variants of ZeuS appeared, which
and to this day. It was also one of the first group, named by researchers the JabberZeuS suggested the source code was in the hands of
attacks to use the hybrid attack model to beat group. This group had firsthand access to the multiple people. One variant, introducing new
two factor authentication, an attack which is latest features of ZeuS, but also did feature advanced features requiring indepth knowledge
still used with success to date. requests for specific add-on functionality of the code, was used by the group known as
that helped the group execute frauds. ZeuS JabberZeuS, the variant became known as the
development continued with new additions of Murofet/Licat ZeuS variant. We simply called it
features and increasing version numbers. by its version number ZeuS 2.1.0.X.
In 2011 the source code of ZeuS became public, In spring 2012, Microsoft DCU announced End of May 2014 was D-Day for GameOver
and this was followed by years of ZeuS variants legal action against P2P-ZeuS/GameOver ZeuS, with both a technical takedown of
appearing from small limited distributed ZeuS, which actually did no harm to the infrastructure of both GOZ and Cryptolocker,
variants, to popular widely supported actual P2P-ZeuS botnet, and devalued a lot takeover of the Cryptolocker DGA domains,
competitors, such as Ice-IX, Citadel and KINS. of good research by exposing a large amount and takeover of the peer-to-peer network of
But also variants of ZeuS, that were tailored to of intelligence information. The result was GOZ. Additionally, Slavik (Evgeniy Bogachev)
execute click fraud instead of banking fraud. that a lot of the actors involved with P2P- was indicted.
ZeuS/GameOver Zeus changed their digital
In September 2011, the ZeuS variant known identities, making it hard for many of the One of the interesting fall outs of the operation
to researchers as Murofet/Licat or simply ZeuS researchers to correctly attribute the activity. against peer-to-peer ZeuS / GameOver ZeuS,
2.1.0.X, used by the JabberZeuS group, morphed was the appearance of a new variant of this
into what we now know as peer-to-peer ZeuS, P2P-ZeuS continued to evolve, also the ZeuS after the takedown, without the peer-to-
P2P-ZeuS or GameOver ZeuS (GOZ), named addition of Cryptolocker as a potential payload peer network. It was dubbed newGOZ among
after a C&C gate gameover2.php. for some of the infections was increasing its researchers, however it never rose to the level of
notoriety. The damage done by Cryptolocker sophistication of the original peer-to-peer ZeuS,
was often far greater than the financial and it was likely a trick by the original author
damages. Additionally, Cryptolocker would run to give away the source code and create a
on thousands of systems, encrypting all files, distraction. It was only active for a short while
while financial fraud was only committed on a until it completely disappeared.
small percentage of the systems.
Peer-to-peer network
P2P-ZeuS, even though it used one coherent peer-to- Thiswas quite successful, as for nearly three years the
peer network, had up to 27 different botnets, each botnet remained active with only minor interruptions,
with its own backend instance almost identical to even though it was extremely popular and widespread,
the original ZeuS backend. Note that these 27 also with averaging around 200,000 infections active at
included the debug instances and several botnets any point in time.
which were hardly ever used. Interestingly, many of
these botnets already existed prior to the creation Each backend was managed by a different person
of the peer-to-peer version of ZeuS, and bots from or group, who in some cases had their own jabber
the old 2.1.0.X version of ZeuS were migrated using server to coordinate activity and attacks, apart from
updates to the new peer-to-peer version. the activity organized as part of business club. This
makes it harder to understand the true hierarchy of
The peer-to-peer layer merely functioned as a reliable the group, and one could argue that there is no true
and robust communication mechanism, and a way hierarchy, just a network of suppliers and consumers
tohide the next layers of the infrastructure in order of online crime services.
tobecome more resistant to takedown activity.
The differences of the backends were in the settings where jabber notifications were
built in, and technically one of the features was the ability to extract a peer-to-peer
seed list from the list of infected systems. Interestingly, instead of changing the
database, an existing field net_latency was reused without even renaming it, now
serving as field to store the peer-to-peer port a bot was listening on.
Apart from the peer-to-peer network, which was only the first layer, there were
additional layers of proxies, which protected the real IP addresses of the backends
from becoming known. Even the users of the malware would log in to the individual
backends via a proxy, as to not directly expose the backend IP address in case of
an intentional or unintentional leak. However, the last few years GOZ made use
of a high profile bullet proof hoster, which offered servers with a virtual IP address
assigned to it, which was transported from another network using various tunneling
mechanisms.
In some cases these IPs were obtained from cheap VPS systems, in other cases
they were entire netblocks announced via BGP and then transported back to the
ethernet segment where the actual servers were. In case the IP addresses were
cut off, the hoster would simply get a new netblock and assign IPs from the new
netblock to the servers and it would be good to go, this typically took less than a
few business days.
Espionage
Some of the more unusual instances of GOZ, were around information from OPEC members, a clear
specific botnets that were not used for typical fraud, sign that the information gathering was not purely
but instead for espionage. One instance focused politically motivated but also quite likely economically.
on Georgia and Turkey, the botnets contained a
number of commands issued to specifically these After the recent political changes in Ukraine, which
countries, with queries which were very detailed, led to a more pro-western government, one botnet
including searches for documents with certain levels which had been previously used for banking fraud, was
of government secret classifications, and for specific then used for a large amount of infections in Ukraine
government intelligence agency employees, and to search for certain types of politically sensitive
information about politically sensitive issues in that information.
region. Additionally, some of the activity revolved
Mapp Builder.
Build time: 11:25:53 25.09.2012 UTC.
hxxp://95.211.XXX.XX:1800 /kbucket.bin
When we look at the version of the builder from 2014, compared to the version
of2012, we can notice a number of differences:
Mapp .
: 21:03:23 03.03.2014 +04:00.
The crawling of the network resulted in a file with peer-to-peer network unique ids
combined with their IP and peer-to-peer service port. While running the tool would
simply iterate over nodes:
botnet name botnet id botnet name botnet id botnet name botnet id botnet name botnet id
aqua 1111 it 9999 main6 3006 zpz 102
aqua2 2222 main 1212 vp 2000 play 101
azz 104 main1 3000 mr 1616 publo 1414
chrome 5555 main2 103 milan 2828 directoria 6666
fav 7777 main3 3002 spa 1717 debug 2222
grutik 1515 main4 3004 morgan 1144 debugr 65000
hard 8888 main5 3005 amr 100 solo 105
The operators of the individual botnets had access to a web based interface, which
issued an executable crypted with one of the specified available crypters, tied to
the botnet id assigned to the operator and also containing the embedded subbotnet
name specified by the operator. The crypter services that were directly available
to the operators were lapis (lps), crypt4you (c4u), hardsys (hrd) and twcr.
When operators tested crypters, the subbotnet name in some cases contained
the abbreviation of the crypter such as lps, hrd, or c4u. Below you can find a
screenshot of the webbased builder:
The above memory dump shows how, after the static configuration in peer-to-peer
ZeuS has been decrypted, the subbotnet name shows up. The subbotnetnametest
was entered as input in the builder.
In the Search options, an operator could search for components on a site for which the credentials were
data that was logged by the bots. This could provide compromised.
additional data when defrauding a specific victim,
both for complementing the regular banking frauds, In the botnet scripts option, much like the traditional
and for looking for creditcard data even including ZeuS command, scripts can be formatted that allow
the additional password, allowing the attackers to specification to which systems the commands should
purchase online services easily. Additionally, the be sent, including for example bot id, subbotnet name
information could be used to assist certain operational and country.
actions, such as hosting of additional malware
With a large amount of manufacturing happening half of 2012. So it is not unlikely that peer-to-peer
in China, it is not uncommon for large transactions ZeuS associates would have made use of the positive
to occur to China. However the specific region of economic climate and business friendly environment
Heilongjiang is more known for Sino-Russian trade as to open their businesses right there.
there are no major shipping lanes from there to the
US. So it would be uncommon for US companies to This shows that all around the world Free Trade Zones
buy goods at companies in this specific region. and other economic incentive areas are some of
the key places where criminals can set up corporate
The specific area of Suifenhe started to develop accounts, as they are promoting business. And without
several major projects for economic cooperation too many problems, and with limited exposure, can
between China and Russia, which started in the first receive large sums of money.
Note that while large transactions were more but was also still targeting consumer accounts and
complicated to pull off, they did yield larger profits credit card data, which seems a way to maximize
when the heists were successful. Still the peer-to-peer profits from the investments.
ZeuS group did not solely target corporate accounts
Set Georgian keywords used in 2013, mostly focused on locating government classified material:
Set of Ukrainian keywords used in 2013, mostly focused on locating government classified material:
i
I
-
For further enquiries please contact Eward Driehuis driehuis@fox-it.com +31 6 43824529
www.fox-it.com
: builder.exe <> -< 1> -< N>
build Build bot or(and) configuration.
-nologo .
-bid:[number] Numeric ID of botnet, 0 - if this is update.
-kbucket:[file] K-Bucket file, URL or single ID@IP:Port.
e fox@fox-it.com
-private _ key:[file] Private key file of botnet.
-subbotnet:[name] Override subbotnet name (form configruation) with this name.
-obot:[file] Output executable file of bot.
-oconfig:[file] Output configuration file of bot.
-toupdate:[file] Convert PE-file to update of bot (mark, encrypt and sign). File will be converted
The Netherlands
-sfile:[file] Sign file. File will be signed in place.
FOX-IT
dht DHT operations.
Delft
-nologo .
-kbucket:[file] K-Bucket file, URL or single ID@IP:Port.
-config:[file] Source configuration file.
InTELL by Fox-IT
InTELL features:
plugin Manage plugin
601-001-en
-nologo .
capture.
-input:[file] Source DLL file.
-output:[file] Output plugin.
-private _ key:[file] Private key file of botnet.