Original issue date: September 30, 1993<BR>
Last revised: September 19, 1997<BR>
Attached Copyright Statement<BR>
August 30, 1996 - Information previously in the README was inserted into the advisory.

<P>A complete revision history is at the end of this file.

<P>The CERT Coordination Center has received information concerning
software that allows automated scanning of TCP/IP networked computers
for security vulnerabilities.  This software was posted to the
comp.sources.misc Usenet newsgroup.  The software package, known as
ISS or Internet Security Scanner, will interrogate all computers
within a specified IP address range, determining the security posture
of each with respect to several common system vulnerabilities.  The
software was designed as a security tool for system and network
administrators.  ISS does not attempt to gain access to a system being
tested.  However, given its wide distribution and ability to scan
remote networks, the CERT/CC believes that it is likely ISS will also
be used to locate vulnerable hosts for malicious reasons.

<P>While none of the vulnerabilities ISS checks for are new, their
aggregation into a widely available automated tool represents a higher
level of threat to networked machines.  The CERT/CC staff has analyzed
the operation of the program and strongly recommends that administrators
take this opportunity to re-examine systems for the vulnerabilities
described below.  Detailed below are available security tools
that may assist in the detection and prevention of malicious use of
ISS.  Finally, common symptoms of an ISS attack are outlined to allow
detection of malicious use.

<P>
<H3>Vulnerabilities probed by ISS</H3>

<P>The following vulnerabilities are currently tested for by the ISS tool.
Administrators should verify the state of their systems and perform
corrective actions as indicated.

<P>
<TABLE WIDTH=100%>
<TR><TD VALIGN=TOP WIDTH=30%>Default Accounts</TD><TD>The accounts &quot;guest&quot; and &quot;bbs&quot;, if they exist, should
have non-trivial passwords.  If login access to these
accounts is not needed, they should be removed, or
disabled by placing a &quot;*&quot; in the password field and the
string &quot;/bin/false&quot; in the shell field in /etc/passwd.
See the system manual entry for &quot;<I>passwd(1)</I>&quot; for more
information on changing passwords and disabling
accounts.

<P>For example, the /etc/passwd entry for a disabled guest
account should resemble the following:

<P>
<PRE>guest:*:2311:50:Guest User:/home/guest:/bin/false</PRE>
</TD></TR>
<TR><TD VALIGN=TOP>
lp Account
</TD><TD>
The account &quot;lp&quot;, if it exists, should not allow logins.
It should be disabled by placing a &quot;*&quot; in the password
field and the string &quot;/bin/false&quot; in the shell field in
/etc/passwd.
</TD><TR>
<TR><TD VALIGN=TOP>
Decode Alias
</TD><TD>
Mail aliases for decode and uudecode should be disabled
on UNIX systems.  If the file /etc/aliases contains
entries for these programs, they should be removed, or
disabled by placing a &quot;#&quot; at the beginning of the line
and then executing the command &quot;newaliases&quot;.  Consult
the manual page for &quot;<I>aliases(1)</I>&quot; for more information on
UNIX mail aliases.

<P>A disabled decode alias should appear as follows:

<P><PRE>
# decode: &quot;|/usr/bin/uudecode&quot;
</PRE>

<P>
</TD></TR>
<TR><TD VALIGN=TOP>
Sendmail
</TD><TD>
The sendmail commands &quot;wiz&quot; and &quot;debug&quot; should be
disabled.  This may be verified by executing the
following commands:

<P><PRE>
% telnet &lt;hostname&gt; 25
220 host Sendmail 5.65 ready at Wed, 29 Sep 93 20:28:46 EDT
wiz
You wascal wabbit!  Wandering wizards won't win!
(or 500 Command unrecognized)
quit

% telnet &lt;hostname&gt; 25
220 host Sendmail 5.65 ready at Wed, 29 Sep 93 20:28:46 EDT
debug
500 Command unrecognized
quit
</PRE>

<P>If the &quot;wiz&quot; command returns &quot;Please pass, oh mighty
wizard&quot;, your system is vulnerable to attack.  The
command should be disabled by adding the following
line to the sendmail.cf configuration file containing
the string:

<P><PRE>
OW*
</PRE>

<P>For this change to take effect, kill the sendmail
process, refreeze the sendmail.cf file, and restart
the sendmail process.

<P>If the &quot;debug&quot; command responds with the string
&quot;200 Debug set&quot;, you should immediately obtain a newer
version of sendmail software from your vendor.
</TD></TR>
<TR><TD VALIGN=TOP>
Anonymous FTP
</TD><TD>
Anonymous FTP allows users without accounts to have
restricted access to certain directories on the system.
The availability of anonymous FTP on a given system may
be determined by executing the following commands:

<P><PRE>
% ftp hostname
Connected to hostname.
220 host FTP server ready.
Name (localhost:jdoe): anonymous
530 User anonymous unknown.
Login failed.

<P>The above results indicate that anonymous FTP is not
enabled.  If the system instead replies with the
string &quot;331 Guest login ok&quot; and then prompts for a
password, anonymous FTP access is enabled.

<P>The configuration of systems allowing anonymous FTP
should be checked carefully, as improperly configured
FTP servers are frequently attacked.  Refer to <A HREF="http://www.cert.org/advisories/CA-93.10.anonymous.FTP.activity.html">CERT
Advisory CA-93.10</A> for more information.

<P>
</TD></TR>
<TR><TD VALIGN=TOP>
NIS
</TD><TD>
ISS attempts to guess the NIS domainname.  The program
will try to grab the password file from ypserv.

<P>See <A HREF="http://www.cert.org/advisories/CA-92.13.SunOS.NIS.vulnerability.html">CERT Advisory CA-92.13</A> for more information regarding
SunOS 4.x machines using NIS.

<P>See <A HREF="http://www.cert.org/advisories/CA-93.01.REVISED.HP.NIS.ypbind.vulnerability.html">CERT Advisory CA-93.01</A> for more information regarding
HP machines using NIS.
</TD></TR>
<TR><TD VALIGN=TOP>
NFS
</TD><TD>
File systems exported under NFS should be mountable only
by a restricted set of hosts.  The UNIX &quot;showmount&quot;
command will display the file systems currently exported
by a given host:

<P><PRE>
% /usr/etc/showmount -e hostname
export list for hostname:
/usr          hosta:hostb:hostc
/usr/local    (everyone)
</PRE>

<P>The above output indicates that this NFS server is
exporting two partitions: /usr, which can be mounted by
hosta, hostb, and hostc; and /usr/local which can be
mounted by anyone.  In this case, access to the
/usr/local partition should be restricted.  Consult the
system manual entry for &quot;<I>exports(5)</I>&quot; or &quot;NFS(4P)&quot; for more
information.
</TD></TR>
<TR><TD VALIGN=TOP>
rusers
</TD><TD>
The UNIX rusers command displays information about
accounts currently active on a remote system.  This may
provide an attacker with account names or other
information useful in mounting an attack.  To check for
the availability of rusers information on a particular
machine, execute the following command:

<P><PRE>
% rusers -l hostname
hostname: RPC: Program not registered
</PRE>

<P>If the above example had instead generated a list of
user names and login information, a rusers server is
running on the host.  The server may be disabled by
placing a &quot;#&quot; at the beginning of the appropriate line
in the file /etc/inetd.conf and then sending the SIGHUP
signal to the inetd process.  For example, a disabled
rusers entry might appear as follows:

<P><PRE>
#rusersd/2 dgram rpc/udp wait root /usr/etc/rusersd rusersd
</PRE>
</TD></TR>
<TR><TD VALIGN=TOP>
rexd
</TD><TD>
The UNIX remote execution server rexd provides only
minimal authentication and is easily subverted.  It
should be disabled by placing a &quot;#&quot; at the beginning of
the rexd line in the file /etc/inetd.conf and then
sending the SIGHUP signal to the inetd process.  The
disabled entry should resemble the following:

<P><PRE>
#rexd/1 stream rpc/tcp wait root /usr/etc/rexd rexd
</PRE>

<P>See <A HREF="http://www.cert.org/advisories/CA-92.05.AIX.REXD.Daemon.vulnerability.html">CERT Advisory CA-92.05</A> for more information regarding
IBM AIX machines using rexd.
</TD></TR>
</TABLE>
<H3>Available Tools</H3>

<P>There are several available security tools that may be used to prevent or
detect malicious use of ISS.  They include the following:

<P>
<TABLE>
<TR><TD VALIGN=TOP WIDTH=15%>
COPS
</TD><TD>
The COPS security tool will also detect the
vulnerabilities described above.  It is available
from <A HREF=ftp://info.cert.org/pub/tools/cops/1.04>ftp://info.cert.org/pub/tools/cops/1.04</A>

<P></TD></TR>
<TR><TD VALIGN=TOP>
ISS
</TD><Td>
Running ISS on your systems will provide you with the
same information an attacker would obtain, allowing you
to correct vulnerabilities before they can be exploited.
Note that the current version of the software is known
to function poorly on some operating systems.

<P>ISS version 3.1 is available from<BR>
<A HREF=ftp://iss.net/pub/iss/iss13.tar.gz>ftp://iss.net/pub/iss/iss13.tar.gz</A>
<BR>
<A HREF=ftp://info.cert.org/pub/tools/iss/>ftp://info.cert.org/pub/tools/iss/</A>
<Br>

<P>MD5 checksum for the files:

<P>MD5 (iss13.tar.gz) = 1caa02756876d41a659a828dae561a92<BR>
MD5 (iss13.tar) = 793d7a12577de33ba2dac52c2126c938

<P>
</TD></TR>
<TR><TD VALIGN=TOP>
TCP Wrappers
</TD><TD>
Access to most UNIX network services can be more closely
controlled using software known as a TCP wrapper.  The
wrapper provides additional access control and flexible
logging features that may assist in both the prevention
and detection of network attacks.  This software is
available via anonymous FTP from cert.org in the
directory pub/tools/tcp_wrappers.

<P></TD></TR>
</TABLE>

<P>
<H4>Detecting an ISS Attack</H4>

<P>Given the wide distribution of the ISS tool, CERT feels that remote
attacks are likely to occur.  Such attacks can cause system warnings
to be generated that may prove useful in tracking down the source of
the attack.  The most probable indicator of an ISS attack is a mail
message sent to &quot;postmaster&quot; on a scanned system similar to the
following:

<P><PRE>
    From: Mailer-Daemon@hostname (Mail Delivery Subsystem)
    Subject: Returned mail: Unable to deliver mail
    Message-Id: <9309291633.AB04591@>
    To: Postmaster@hostname

       ----- Transcript of session follows -----
    <<< VRFY guest
    550 guest... User unknown
    <<< VRFY decode
    550 decode... User unknown
    <<< VRFY bbs
    550 bbs... User unknown
    <<< VRFY lp
    550 lp... User unknown
    <<< VRFY uudecode
    550 uudecode... User unknown
    <<< wiz
    500 Command unrecognized
    <<< debug
    500 Command unrecognized
    421 Lost input channel to remote.machine

       ----- No message was collected -----
</PRE>

<P>According to Eric Allman, the author of sendmail, log information may be
displayed differently depending on the particular configuration and version of
sendmail being used.

<P>Typically the most probable indicator of such an attack is a mail message sent
to &quot;postmaster&quot; for the scanned system.  Please note, however, that other
possible indications of an ISS attack for other sendmail configurations may
appear as shown below.

<P>For sendmail 8.x, you might see output similar to the following:

<P><PRE>
Apr  8 03:19:17 HOSTNAME sendmail[27374]: wwww.xxx.yyy.zzz [123.456.789.0]: VRFY decode
Apr  8 03:19:18 HOSTNAME sendmail[27375]: wwww.xxx.yyy.zzz [123.456.789.0]: VRFY bbs
Apr  8 03:19:18 HOSTNAME sendmail[27376]: wwww.xxx.yyy.zzz [123.456.789.0]: VRFY lp
Apr  8 03:19:18 HOSTNAME sendmail[27377]: wwww.xxx.yyy.zzz [123.456.789.0]: VRFY uudecode
Apr  8 03:19:18 HOSTNAME sendmail[27372]: "wiz" command from wwww.xxx.yyy.zzz [123.456.789.0]

Apr  8 03:19:18 HOSTNAME sendmail[27372]: "debug" command from wwww.xxx.yyy.zzz [123.456.789.0]
</PRE>

<P>Other versions may display different messages, for example:

<P><PRE>
Apr  8 03:19:19 HOSTNAME ftpd[27378]: FTP LOGIN REFUSED (ftp not in /etc/passwd) FROM wwww.xxx.yyy.zzz [123.456.789.0], anonymous
Apr  8 03:19:19 HOSTNAME ftpd[27378]: USER anonymous
Apr  8 03:19:19 HOSTNAME ftpd[27378]: PASS password
Apr  8 03:19:19 HOSTNAME ftpd[27378]: reply: 503-Login with USER first.
Apr  8 03:19:19 HOSTNAME ftpd[27378]: cmd failure - not logged in
Apr  8 03:19:19 HOSTNAME ftpd[27378]: reply: 530-Please login with USER and PASS.
Apr  8 03:19:19 HOSTNAME ftpd[27378]: PWD
Apr  8 03:19:19 HOSTNAME ftpd[27378]: cmd failure - not logged in
Apr  8 03:19:19 HOSTNAME ftpd[27378]: reply: 530-Please login with USER and PASS.
Apr  8 03:19:19 HOSTNAME ftpd[27378]: MKD test
Apr  8 03:19:19 HOSTNAME ftpd[27378]: cmd failure - not logged in
Apr  8 03:19:19 HOSTNAME ftpd[27378]: reply: 530-Please login with USER and PASS.
Apr  8 03:19:19 HOSTNAME ftpd[27378]: RMD test
Apr  8 03:19:19 HOSTNAME ftpd[27378]: QUIT
Apr  8 03:19:19 HOSTNAME ftpd[27378]: reply: 221-Goodbye.

</PRE>

<P><HR>
The CERT Coordination Center would like to thank Steve Weeber from
the Department of Energy's CIAC Team for his contribution to this advisory.

<!--#include virtual="/include/footer_nocopyright.html" -->
<P>Copyright 1993, 1995, 1996 Carnegie Mellon University.</P>

<HR>

Revision History
<PRE>
Sep. 19, 1997  Updated Copyright Statement
Aug. 30, 1996  Information previously in the README was inserted into the
                 advisory.
June 09, 1995  &quot;Available Tools&quot; section - gave pointers to ISS version 3.1
Feb. 02, 1995  &quot;Detecting an ISS Attack&quot; section - added details from the
                 sendmail author about logs
</PRE>