Cryzip Ransomware Trojan AnalysisBy: Joe Stewart
- Date: March 11, 2006
- Author: Joe Stewart
In May 2005, a trojan called PGPcoder was discovered in the wild by Websense Security Labs. The trojan's purpose was to encrypt a user's files, then demand a ransom for their decryption. Although this scheme seemed novel, it is actually predated by over 15 years, by a similar scam in 1989. SecureWorks' research team has now discovered a third such scheme involving ransomware which we are calling Cryzip.
Unlike PGPcoder, which used a custom encryption scheme (which was subsequently reverse-engineered by SecureWorks) Cryzip uses a commercial zip library in order to store files inside a password-protected zip. Although the zip encryption is stronger, a brute-force attack is still possible on the files, especially if one has a copy of the original file inside the zip.
File DetailsFilename: vcmauth.dll
Filesize: 1,191,936 bytes
Compiler: Visual C++ 6.0
Compile Date: Thu Mar 2 18:11:02 2006
CME Number: none assigned
When run, Cryzip searches the C: drive (except for files in directories named "system" or "system32") for files which it will zip, overwrite with the text "Erased by Zippo! GO OUT!!!", and then delete, leaving only the encrypted zip file with the name original-file-name_CRYPT_.ZIP, where original-file-name is the original file name complete with the file extension.
Cryzip searches for and zips files with the following extensions:
After it has finished processing a directory, Cryzip leaves a text file in the directory named AUTO_ZIP_REPORT.TXT, which contains the following text:
OUR E-GOLD ACCOUNT: XXXXXXXINSTRUCTIONS HOW TO
GET YUOR FILES BACKREAD CAREFULLY. IF YOU DO NOT UNDERSTAND,
READ AGAIN.This is automated report generated by auto archiving
software.Your computer catched our software while browsing
illigal pornpages, all your documents, text files, databases
was archivedwith long enought password.You can not guess the
password for your archived files - passwordlenght is more then
10 symbols that makes all password recoveryprograms fail to
bruteforce it (guess password by trying allpossible combinations).
Do not try to search for a program what encrypted your information -
itis simply do not exists in your hard disk anymore.If you really
care about documents and information in encrypted filesyou can
pay using electonic currency $300.Reporting to police about a
case will not help you, they do not knowpassword.
Reporting somewhere about our e-gold account will not helpyou to
restore files. This is your only way to get yours files back.
------------------------------How to pay to get your information
back.1. click on this link to open your free e-gold account -
the first screen is the e-gold "terms and conditions" page.
You need to agree to these by clicking on the "I AGREE" button
on the bottom on the page.2. On the next page is the sign up form:
1. "Account name" - here is where you name your account - tip:
make it easy to remember (as you will be asked for it) and
reasonably short, example, "John's e-gold", "My Money e-gold"
or perhaps "Felix" (whatever you like, just make it easy for
you to remember it). 2. "User Name" - here just repeat the account
name (from 1 above). 3. "Point of Contact" - this is where you
put our name, address, phone number and email address
(any email address can be used here but it is recommended
you use your ISP address - not a free hotmail, etc address).
It is also recommended your also include a fax number
(don't have a fax number? This company offers free fax to email
services). Try and make it as easy as possible for e-gold to contactyou.
4. "Passphrase" - this is the most important piece of information
connected to any e-gold account. We can not stress enough how
important it is that your passphrase is kept safe and secure.
5. "Turing Number Entry" - type the 6 numbers you see there into theinput
box below. 6. The last step click "Open"On the next page
it will tell you that your e-gold account number has beenemailed
to you.check your email - you can expect to wait up to 5 minutes
for your accountnumberto arrive. If it does not arrive after
5 minutes then that means the emailaddressyou supplied was
incorrect and you will have to open another new account
(gothroughand repeat what you just did above again).To buy e-gold to
your account please use official exchange services
to search own way withhttp://gold-pages.net/e-Gold__1MDC__Pecunix_Wizard_
e-gold&btnG=Google+SearchFINALLY when you bought e-gold you have to transfer
$300 to our e-goldaccount.In next 24 hours you will recieve $1 back
to your account. Transfer detailsof this $1 transfer will have a link
to software that will automaticallyunzip all your files back to normal
state.Next day login to your account https://www.e-gold.com/acct/
login.html,press History and press submit, you will see LINK TO
Remember you are just $300 away from your files
At the top of the AUTO_ZIP_REPORT.TXT file, the number of an E-Gold account is inserted. This number is picked at random from a list embedded in the DLL. By operating many accounts simultaneously, the trojan author is betting that even if E-Gold shuts down some of the accounts, he/she will still receive payment on some of the others. The complete list of E-Gold accounts is:
The text of the AUTO_ZIP_REPORT.TXT file is encrypted inside the Cryzip DLL, using simple XOR (0x13) encoding. The password used to zip the files is also embedded inside the DLL but it is not encrypted - instead, the author decided to hide the password in plain sight, so to speak. The password is:
- C:\Program Files\Microsoft Visual Studio\VC98
Because this string often appears inside projects compiled with Visual C++ 6, the author likely figured anyone who found the infecting DLL and examined its strings looking for the password would simply overlook it.
At this time the infection vector is unknown. Infection reports are not widespread, so it is not believed this is a mass threat by any means. Malware of this nature is actually more successful when it is delivered in low volumes, as it is less likely that anti-virus vendors will have detection for it, and more attention means the likely closing of the accounts used for the anonymous money transfer. As such, most users will probably not have to worry about this threat - keep in mind however that the two incidents in the last 10 months indicate the possible start of a trend of this type of malware, and future incidents may affect a wider swath of users. However, in most cases, simply having and using proper backup software would mitigate the risk from ransomware.
Update - March 22, 2006:
The infection vector has been established to be recent Bagle virus runs. Starting in February and into March, a group of Bagle variants was seen which do not resemble other modern Bagles. Based on our research, we have determined that the author of Cryzip took the circa-2004 source code of Bagle, and adapted it to his/her own purposes. Part of the variants were used to spread a variant of Sality, among other files, downloaded primarily from invis1lblearm3333.com. The other variants directly downloaded an executable which installs Cryzip on the system, downloaded primarily from egozda.com. The author uses a specific User-Agent string in the download requests which is checked by the script serving the executable - therefore attempts to manually download the Cryzip dropper were unsuccessful unless the requestor used the proper User-Agent.
Further evidence in the binaries indicates that Cryzip and Sality are probably written by the same individual. In one example of this, the same psuedo-random number generator (PRNG) code was used in both Cryzip and Sality. The PRNG was apparently cribbed from the Mydoom source code, which would put it in wider use than just Cryzip and Sality - however, both Cryzip and Sality have minor variations in the binary code of the PRNG caused by a certain non-default compiler optimization setting which is uncommon even in Mydoom or Mytob variants which use the same PRNG. Based on other code similarities and the fact both were spread by open-source Bagle variants around the same time which were packed with the same unique executable packer, gives strong credence to the idea that they share the same author.
Update - May 22, 2006:
A second Cryzip variant has been released. This time, instead of storing the password in the trojan, the author uses a list of passwords which are served by a PHP script on a remote site. The trojan downloads the password dynamically and uses it to encrypt the files. Currently the website which served the passwords during the initial infection phase simply redirects to a porn site.
Due to the ephemeral nature of the password retrieval, users who are infected with this variant of Cryzip will probably not be able to find the password. If they do not wish to pay the ransom, the only other option is to brute-force the password. This is unlikely to work unless the user has a backup copy of one of the files inside one of the password-protected zip files. If so, it may be possible to do a "known plain-text" attack against the zip encryption for that file, using a tool such as Elcomsoft's Advanced ZIP Password Recovery tool. Note that this tool is commercial software, and costs $30 for a Personal license, and $60 for a Business license.
If a user does not have an original copy of one of the files inside the zips, it is unlikely they will be able to break the password encryption unless a) they pay the ransom or b) the trojan author is arrested and forced to divulge the passwords. While the latter option is not very likely, affected users are still encouraged to report the crime so that the authorities may be more likely to open a case.
You can report Internet crime online at http://www.ic3.gov/