Discovered: September 13, 2002
Updated: February 13, 2007 11:53:31 AM
Also Known As: Apache/mod_ssl Worm, Linux/Slapper-A [Sophos], ELF_SLAPPER.A [Trend], Linux.Slapper.Worm [CA], Linux/Slapper.worm.a [McAfee], Worm.Linux.Slapper [AVP], Linux/Slapper [Panda]
Systems Affected: Linux
CVE References: CAN-2002-0656
Linux.Slapper.Worm is a family of worms that use an OpenSSL buffer overflow exploit to run a shell on a remote computer. Each variant of the family targets vulnerable installations of the Apache Web server on Linux operating systems, which include versions of SuSe, Mandrake, RedHat, Slackware, and Debian. The worm also contains code for a Distributed Denial of Service (DDoS) attack.
More than 3,500 computers have been observed performing this activity, according to Symantec DeepSight Threat Management System data. This includes computers located in Portugal and Romania, where initial reports of the worm originated.
For additional information, read the Symantec Security Response advisory at: http://securityresponse.symantec.com/avcenter/security/Content/2002.09.13.html
For patch information on vulnerable products, visit http://online.securityfocus.com/bid/5363/solution .
Antivirus Protection Dates
- Initial Rapid Release version September 16, 2002
- Latest Rapid Release version November 04, 2019 revision 019
- Initial Daily Certified version September 16, 2002
- Latest Daily Certified version November 04, 2019 revision 065
- Initial Weekly Certified release date September 18, 2002
Click here for a more detailed description of Rapid Release and Daily Certified virus definitions.
When a variant of the Linux.Slapper.Worm family attacks a computer, it attempts to connect on port 80. It also sends an invalid GET request to the server to identify the Apache system. After the worm finds an Apache system, it tries to connect on port 443 to send the exploit code to the SSL service that is listening on the remote computer.
The worm uses a Linux shell code exploit, which runs only on Intel platforms. This code requires the presence of the shell command /bin/sh to properly execute. The worm uu-encodes its own source code and sends it to the remote system. There it decodes the file, compiles it using gcc, and runs the resulting binary file. All the worm files are placed in the /tmp directory.
The worm binary is executed with an IP address as a parameter. This IP address is the address of the attacking computer and is used to create a peer-to-peer network of worm-infected systems for Denial of Service (DoS) attack purposes. Each compromised system listens on a UDP port to receive further instructions. The port changes from one variant to another.
The worm sweeps class B-sized networks, looking for Apache servers. The first byte of the network address is picked randomly from the following list, and the second byte is random:
3, 4, 6, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 24, 25, 26, 28, 29, 30, 32, 33, 34, 35, 38, 40, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 61, 62, 63, 64, 65, 66, 67, 68, 80, 81, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239
There are three known variants of Linux.Slapper.Worm. Currently, Symantec products detect them all as Linux.Slapper.Worm. Here are descriptions of the three variants:
The .A variant has the following characteristics:
UDP listening port: 2002
uu-encoded file: .uubugtraq
Source code file: .bugtraq.c
Compiled binary file: .bugtraq
The .B variant has the following characteristics:
UDP listening port: 1978
uu-encoded file: .cinik.uu
Source code file: .cinik.c
Compiled binary file: .cinik
The .B variant also collects information about the infected host and sends it to an address on yahoo.com. In addition, the .B variant acts as a virus, infecting some files on the local computer by overwriting them with a copy of the worm binary, and scheduling them for later execution. It attempts to replace all world-readable, writeable, and executable files, but due to a bug, only a small number of these files will be infected. When it sends itself to a new system, the .B variant first looks for the source code in the /tmp directory; if it cannot find the source code, it attempts to download the code from a Web site in Romania. The download fails because the Web site has been closed.
The .C variant is transmitted as a uu-encoded archive that contains two source files. It has the following characteristics:
UDP listening port: 4156
uu-encoded file: .unlock.uu
Archive file (.tgz format): .unlock
Source code files: .unlock.c, .update.c
Compiled binary files: httpd, update
One of the .C variant's binaries is named httpd, which is also the name of the Apache server executable. This was done to avoid drawing the attention of administrators when they check the names of the running processes using the "ps" command. The .C variant periodically listens on port 1052/TCP and provides a shell to an attacker who is connecting to this port.
Note : File names beginning with a dot ( . ) will not appear in a normal directory listing obtained using the ls command. The files can be seen by using the ls -a command.
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.
Although Linux.Slapper.Worm can only infect Linux systems, worm could be found on a Windows-based system. Follow the instructions for your operating system.
Run a full system scan using the ICAP Savcls.exe scanner that is included with Symantec Scan Engine 4.06 or later, and delete any files detected as Linux.Slapper.Worm.
The following instructions pertain to all current and recent Symantec antivirus products, including the Symantec AntiVirus and Norton AntiVirus product lines, when run on Windows.
- Update the virus definitions.
- Run a full system scan and delete all the files detected as Linux.Slapper.Worm.
For specific details on each of these steps, read the following instructions.
1. Updating the virus definitions
Symantec Security Response fully tests all the virus definitions for quality assurance before they are posted to our servers. There are two ways to obtain the most recent virus definitions:
- Running LiveUpdate, which is the easiest way to obtain virus definitions: These virus definitions are posted to the LiveUpdate servers once each week (usually on Wednesdays), unless there is a major virus outbreak. To determine whether definitions for this threat are available by LiveUpdate, refer to the Virus Definitions (LiveUpdate).
- Downloading the definitions using the Intelligent Updater: The Intelligent Updater virus definitions are posted on U.S. business days (Monday through Friday). You should download the definitions from the Symantec Security Response Web site and manually install them. To determine whether definitions for this threat are available by the Intelligent Updater, refer to the Virus Definitions (Intelligent Updater).
The Intelligent Updater virus definitions are available: Read "How to update virus definition files using the Intelligent Updater" for detailed instructions.
2. Scanning for and deleting the infected files
- Start your Symantec antivirus program and make sure that it is configured to scan all the files.
- For Norton AntiVirus consumer products: Read the document, "How to configure Norton AntiVirus to scan all files."
- For Symantec AntiVirus Enterprise products: Read the document, "How to verify that a Symantec Corporate antivirus product is set to scan all files."
- Run a full system scan.
- If any files are detected as infected with Linux.Slapper.Worm, click Delete.
Writeup By: Peter Szor