Domain Generator Algorithm
We chose these prefixes and suffixes by looking at what the most popular registered website names begin and end with.
Domain generator algorithm. A domain generation algorithm or dga is a computer program used to create domain names typically for the purpose of propagating remotely controlled web based malware. Later that year conficker made dga a lot more famous. The simplified decompilation of the first step is as.
The function reserves some space on the stack for the domain variable which is 25 bytes long so it can hold the actual domain plus the tld inside a buffer. Domain generation algorithms create a constantly moving target that cyber defenders struggle to successfully hit with a blocklist. A domain generation algorithm is a program that is designed to generate domain names in a particular fashion.
A domain generating algorithm dga is a program or subroutine that provides malware with new domains on demand or on the fly. Domain generation algorithms dga is a methodology for malware to form a command and control c c c2 connection without being detected. The program defines a function with the same name generate domain which accepts current year month which influence the domain generation algorithm.
Domain generation algorithm from the kraken malware threatexpert walking through the assembly code shows that the domain is generated from a seeded algorithm which generates a complete url with a. Kraken was the first malware family to use a dga in 2008 that we could find. The large number of potential rendezvous points makes it difficult for law enforcement to effectively shut down botnets since infected computers will attempt to contact some of these domain names every day to receive updates or commands.
Determine the first six letters of the second level domain at random. Calculate the last six letters of the second level domain based on the first six and the seed. Generate a seed based on the current date.
Read about the typical components of a dga and go in depth with 8 real world examples. Attackers developed dgas so that malware can quickly generate a list of domains that it can use for the sites that give it instructions and receive information from the malware usually referred to as command and control or c2. All dgas are based off of a static and dynamic seed which ensures that the domains are constantly changing.