This is the first known modern Internet Worm discovered “in the wild.” This
computer worm is a kind of virus program that, while spreading its copies, does not infect disk files as the main target, but replicates its copies by sending
itself via the Internet as an attachment in e-mail messages. The worm was posted by somebody (maybe by the worm’s author) to several news servers
in January 1999, and then in few days, it was discovered “in the wild” in Europe and continued spreading.
The worm arrives as an attachment in an e-mail as a HAPPY99.EXE file.
When an infected attachment is executed and gains control, the worm displays
a funny firework in the program’s window to hide its malicious nature. During
this, it installs itself in the system, hooks sendings to the Internet,
converts its code to the attachment and appends it to the messages. As a
result the worm, when it is installed into the system, is able to spread
its copies to all the addresses the messages are sent to.
While installing, the worm affects files in the Windows system directory
only. It creates the SKA.EXE and SKA.DLL files in there, copies the
WSOCK32.DLL to the newly created WSOCK32.SKA and patches the original
WSOCK32.DLL file to hook e-mail sending calls.
Removal and Protection
If the worm is detected in your system, you can easily get rid of it just by
deleting the SKA.EXE and SKA.DLL files in the system Windows directory. You
also should delete the WSOCK32.DLL file and replace it with the WSOCK32.SKA
original file. The original HAPPY99.EXE file should also be located and
To protect your computer from re-infection, you need only set the “Read-Only”
attribute for the WSOCK32.DLL file. The worm does not pay attention to the
Read-Only mode, and fails to patch the file. This trick was discovered by
Peter Szor at DataFellows (http://www.datafellows.com).
Do not open and do not execute the HAPPY99.EXE file that you have received
as an attachment in any message if you receive it from an untrusted or unknown source. You should also remember that the files you have accessed
from the Internet can contain malicious code that may infect your computer,
destroy data, send confidential files to through the Internet, or install spy
programs to monitor your computer from a remote host.
Opening MS Office files with disabled VirusProtection and executing untrusted executable files is extremely risky. You should keep this in mind each time you see an attachment to incoming message.
The worm arrives exactly as a 10.000-byte executable HAPPY99.EXE file.
This file has Win32 Portable Executable (PE) internal structure. The worm
installs itself into the Win95/98 systems and continues spreading with no
problems. Under WinNT, it is not able to spread because of bugs.
The worm contains text strings, some of them are encrypted:
Is it a virus, a worm, a trojan? MOUT-MOUT Hybrid (c) Spanska 1999.
Happy New Year 1999 !!
begin 644 Happy99.exe end
wsock32.dll Ska.dll Ska.exe
When the HAPPY99.EXE file is executed, the worm copies itself to the Windows
system directory with the SKA.EXE name and drops the additional SKA.DLL
file in the same directory. The SKA.DLL is stored in the main EXE file
(HAPPY99.EXE) in encrypted and lite-packed form.
The worm then copies the WSOCK32.DLL to the WSOCK32.SKA name (makes a
“backup”) and patches the WSOCK32.DLL file. If the WSOCK32.DLL is in use
and cannot be opened for writing, the worm creates a new key in the system
registry to run its dropper during the next rebooting:
The WSOCK32.DLL patch consists of a worm initialization routine and two
redirected exports. The initialization routine is just a small piece of
worm code – just 202 bytes. It is saved to the end of WSOCK32.DLL code
section (“.text” section). The WSOCK32.DLL has enough space for that,
and the size of WSOCK32.DLL is not increased during infection. Then the
worm patches the WSOCK32.DLL export tables so that two functions (“connect”
and “send”) will point to the worm initialization routine at the end of
WSOCK32.DLL code section.
When a user is connecting to the Internet the WSOCK32.DLL is activated, and
the worm hooks two events: connection and data sending. The worm monitors
the e-mail and news ports (25 and 119 – smtp and nntp). When it detects a
connection on one of these ports, it loads its SKA.DLL library that has two
exports: “mail” and “news”. Depending on the port number, the worm calls
one of these routines, but both of them create a new message, insert
UUencoded worm HAPPY99.EXE dropper into it, and send it to an Internet address. The worm also adds its stamp to the kludge header of “infected”
While sending infected attachments, the worm stores the recipients’
addresses to the LISTE.SKA file in the Windows system directory. This “log”
file contains up to 5K of data, and may contain up to about 200 addresses
the infected messages were sent to.
Demonstrations of the virus’ effects: