Discovered: October 22, 2004
Updated: February 13, 2007 12:28:58 PM
Also Known As: MacOS.Renepo.B, Unix/Opener.worm [McAfee], Worm.MacOS.Opener.a [Kaspersky, SH/Renepo-A [Sophos], MAC_RENEPO.B [Trend Micro]
Type: Virus
Systems Affected: Macintosh, Macintosh OS X
When the virus is executed, it does the following:
- Deletes some UNIX commands and modifies preferences for other additional commands.
- Launches a keystroke-mapping application (if installed) called Krec, to record the keyboard entry of passwords.
- Modifies the hostconfig file, allowing Write access to all users and SSH access from the intruder's computer.
- Gathers hash files (mathematical strings used to represent passwords and other sensitive data) to scan for passwords for every user, compares these hash files to a dictionary file to try to generate the appropriate passwords.
- Turns on file sharing and remote login, then puts passwords and other sensitive data into an invisible folder named .info on each user's Public folder.
- When active, the Activity Monitor shows a process called "john" eating almost an entire processor.
- Requires one or more of the following to install this script and to copy itself to the startup items folder:
- Admin or physical access (boot from a CD or firewire/usb, ignore permissions on the internal drive).
- Write access to either /Library/StartupItems /System/Library/StartupItems.
- Write access to any existing StartupItem (which is replaced with this script).
- Write access to the rc, crontab, or periodic files.
- Creates the startup item /System/Library/StartupItems named "opener."
- Runs "john" (we assume as in "the Ripper").
- Turns on some services and turns off others (including firewall services).
- Runs as root, as no "sudo" commands are needed.
- Copies itself to any mounted startup volume, before it kills utmp. When the virus connects, it is invisible to the user.
Note: The utmp file allows one to discover information about who is currently using the system. There may be more users currently using the system, because not all programs use utmp logging.
- After disabling the Macintosh OS firewall, it changes the File Server preferences to make sure the Mac File Server does not log any Mac File Sharing.
- Prevents Software update from auto-updating.
- Looks for LittleSnitch software (a shareware Firewall program with application control) and tries to terminate the process, when LittleSnitch attempts to perform network access.
- Searches throughout the computer for the following:
- Serial numbers of installed applications.
- Various preference files of installed applications.
- Various user-specific preferences, including Classic files.
- Modifies the LimeWire settings, deletes log files, and creates an admin level user named:
"LDAP-daemon"
so the machine can then be accessed in the future by a hacker who knows about this script. This user name will appear in the NetInfo Manager.
- Installs a daily script to look for more passwords on the system that runs at 3 A.M.
- Installs and runs two programs named:
- "John the Ripper"
- "dsniff"
which will gather data and attempt to isolate passwords contained within them, as well as any other 10.2 and 10.3 hashes.
- Gathers data and attempts to isolate passwords contained within them, as well as any other 10.2 and 10.3 hashes.
- Reviews the logs for any passwords found.
There appears to be no attempt by the script to send the passwords to an email address or FTP site. However, the computer's state is compromised to the extent that anyone with knowledge of the script could login and access the log files containing serial numbers and passwords.
Recommendations
Symantec Security Response encourages all users and administrators to adhere to the following basic security "best practices":
- Use a firewall to block all incoming connections from the Internet to services that should not be publicly available. By default, you should deny all incoming connections and only allow services you explicitly want to offer to the outside world.
- Enforce a password policy. Complex passwords make it difficult to crack password files on compromised computers. This helps to prevent or limit damage when a computer is compromised.
- Ensure that programs and users of the computer use the lowest level of privileges necessary to complete a task. When prompted for a root or UAC password, ensure that the program asking for administration-level access is a legitimate application.
- Disable AutoPlay to prevent the automatic launching of executable files on network and removable drives, and disconnect the drives when not required. If write access is not required, enable read-only mode if the option is available.
- Turn off file sharing if not needed. If file sharing is required, use ACLs and password protection to limit access. Disable anonymous access to shared folders. Grant access only to user accounts with strong passwords to folders that must be shared.
- Turn off and remove unnecessary services. By default, many operating systems install auxiliary services that are not critical. These services are avenues of attack. If they are removed, threats have less avenues of attack.
- If a threat exploits one or more network services, disable, or block access to, those services until a patch is applied.
- Always keep your patch levels up-to-date, especially on computers that host public services and are accessible through the firewall, such as HTTP, FTP, mail, and DNS services.
- Configure your email server to block or remove email that contains file attachments that are commonly used to spread threats, such as .vbs, .bat, .exe, .pif and .scr files.
- Isolate compromised computers quickly to prevent threats from spreading further. Perform a forensic analysis and restore the computers using trusted media.
- Train employees not to open attachments unless they are expecting them. Also, do not execute software that is downloaded from the Internet unless it has been scanned for viruses. Simply visiting a compromised Web site can cause infection if certain browser vulnerabilities are not patched.
- If Bluetooth is not required for mobile devices, it should be turned off. If you require its use, ensure that the device's visibility is set to "Hidden" so that it cannot be scanned by other Bluetooth devices. If device pairing must be used, ensure that all devices are set to "Unauthorized", requiring authorization for each connection request. Do not accept applications that are unsigned or sent from unknown sources.
- For further information on the terms used in this document, please refer to the Security Response glossary.
Writeup By: Yana Liu