Trojan-Downloader:OSX/Flashback.C poses as a Flash Player installer and connects to a remote host to obtain further installation files and configurations.
Screenshot of the Trojan-Downloader:OSX/Flashback.C installer.
To complete its installation/infection, Flashback.C requires the user to key in the administrator password.
On installation, the installer first checks if the following file is found in the system:
- /Library/Little Snitch/lsd
Little Snitch is a firewall program for Mac OS X. If the program is found, the installer will skip the rest of its routine and proceed to delete itself.
If the trojan is cleared to proceed, it connects to a remote host, identified as http://[...]18.104.22.168/counter/%encoded_strings%, with the decoded string following this format:
- %Hardware_UUID% | %machine_architecture% | %kernel_version% | %encoded_md5% The %encoded_md5% is the hash of the following:
As of this writing, the remote host is up but it does not push anything.
Installation files and configuration returned by the host is encrypted using RC4, where the MD5 hash of the Hardware UUID of the infected system is used as the key. The decrypted content follows this format:
- %encoded_payload_filename% | %encoded_payload_content%
The installer drop copies of the payload to the following locations:
A DYLD_INSERT_LIBRARIES environment variable is also added to the targeted browsers as launch point. This is done by inserting a LSEnvironment entry to the corresponding Info.plist of the browsers.
- The following line is inserted into "/Applications/Safari.app/Contents/Info.plist":
- The following line is inserted to "/Applications/Firefox.app/Contents/Info.plist":
The installer then restarts running instances of Safari and Firefox in order to take the payload into effect.
The installer also disables the built-in anti-malware feature in Mac OS X. It unloads the XProtectUpdater daemon, and then wipes out the following files: