home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1997 December / Internet_Info_CD-ROM_Walnut_Creek_December_1997.iso / drafts / draft_n_r / draft-rfced-info-gwinn-00.txt < prev    next >
Text File  |  1997-04-17  |  17KB  |  447 lines

  1.  
  2. Network Working Group                                           A. Gwinn
  3. INTERNET-DRAFT                                 Networld+Interop NOC Team
  4. Obsoletes: None                                               April 1997
  5. Category: Informational
  6.  
  7.                  Network Security For Large Trade Shows
  8.                     <draft-rfced-info-gwinn-00.txt>
  9.  
  10. Status of this Memo
  11.  
  12.    This document is an Internet-Draft.  Internet-Drafts are working
  13.    documents of the Internet Engineering task Force (IETF), its areas,
  14.    and its working groups.  Note that other groups may also distribute
  15.    working documents as Internet-Drafts.
  16.  
  17.    Internet-Drafts are draft documents valid for a maximum of six months
  18.    and may be updated, replaced, or obsoleted by other documents at any
  19.    time.  It is inappropriate to use Internet-Drafts as reference
  20.    material or to cite them other than as "work in progress".
  21.  
  22.    To learn the current status of any Internet-Draft, please check the
  23.    "1id-abstract.txt" listing contained in the Internet-Drafts Shadow
  24.    Directories on ftp.is.co.za (Africa), nic.nordu.net (Europe),
  25.    munnari.oz.au (Pacific Rim), ds.internic.net (US East Coast), or
  26.    ftp.isi.edu (US West Coast).
  27.  
  28. Abstract
  29.  
  30.    This document is designed to assist vendors and other participants in
  31.    large trade shows, such as Networld+Interop, in designing effective
  32.    protection against network and system attacks by unauthorized
  33.    individuals.  Generally, it has been observed that many system
  34.    administrators and trade show coordinators tend to overlook the
  35.    importance of system security at trade shows. In fact, systems at
  36.    trade shows are just as prone to attack as office-based platforms.
  37.    Trade show systems should be treated as seriously as an office
  38.    computer. A breach of security of a trade show system can render (and
  39.    has rendered) a vendor's demonstrations inoperable--quite possibly
  40.    for the entire show!
  41.  
  42.    This dcoument is not intended to replace the multitudes of comprehensive
  43.    books on the subject of Internet security.  Rather, its purpose is to
  44.    provide a checklist-style collection of frequently overlooked, simple
  45.    ways to minimize the chance of a costly attack.  Vendors are
  46.    encouraged to pay special attention to this document and share it
  47.    with all associated representatives.
  48.  
  49. Physical Security
  50.  
  51.  
  52.  
  53. Gwinn                                                           [Page 1]
  54.  
  55. INTERNET-DRAFT           EXPIRES: OCTOBER 1997            INTERNET-DRAFT
  56.  
  57.  
  58.    Before addressing the technical, one of the most frequently
  59.    underrated (and overlooked) security breaches is the simple low-tech
  60.    attack.  The common victim is the one who leaves a console logged in,
  61.    perhaps as root, and walks away.  Other times, an anonymous "helpful
  62.    soul" might ask for a password in order to assist the user in
  63.    "identifying a problem."  This type of method allows an intruder,
  64.    especially one logged in as "root", access to system files.
  65.  
  66.    Tips:
  67.  
  68.    * Educate sales and support staff as to the importance of keeping
  69.      an eye on logged-in systems--especially "root" or other
  70.      privileged accounts.
  71.    * Identify individuals who are not using exhibit systems for their
  72.      intended purpose (i.e. playing "Quake" or "Doom" on one of
  73.      your workstations).
  74.    * Request identification from anyone wishing to access systems
  75.      for maintenance purposes unless they are known personally.
  76.  
  77. System Security
  78.  
  79.    This section discusses technical security procedures for workstations
  80.    on the vendor network.  Although primarily aimed at Unix systems,
  81.    many general procedures can be applied to other platforms.
  82.  
  83. Password Security
  84.  
  85.    Lack of passwords or easy to guess passwords are a relatively low-
  86.    tech door into systems, but are responsible for a significant number
  87.    of breakins. Good passwords are a cornerstone of system security.
  88.  
  89.    Tips:
  90.  
  91.    * Check /etc/passwd for lack of passwords. Some vendors ship systems
  92.      with null passwords, in some cases even in root accounts.
  93.    * Change passwords, especially system passwords.
  94.    * Mix case, numbers and punctuation especially on root passwords.
  95.    * Change system passwords on a regular basis.
  96.  
  97. Extra "root" Accounts
  98.  
  99.    Some system vendors have been known to ship systems with accounts,
  100.    other than root, that have root privileges (UID=0). For example, some
  101.    vendors may include a separate system administration account that
  102.    places a user in a specific administrative program. If a system does
  103.    not need additional root accounts, these can be disabled by placing
  104.    "*" in the password field of /etc/passwd. Check all systems for extra
  105.    "root" accounts and either disable them or change their password as
  106.  
  107.  
  108.  
  109. Gwinn                                                           [Page 2]
  110.  
  111. INTERNET-DRAFT           EXPIRES: OCTOBER 1997            INTERNET-DRAFT
  112.  
  113.  
  114.    appropriate.
  115.  
  116. Use of Authentication Tokens
  117.  
  118.    Authentication tokens such as SecureID, Cryptocard, DES Gold and
  119.    others, provide a method of producing "one-use" passwords for
  120.    specific access.  The advantages are obvious. Remember that there are
  121.    many packet sniffers and other administration tools constantly
  122.    watching the network-especially at a large network-oriented trade
  123.    show. Typed passwords, by default, are sent clear text across the
  124.    network, allowing others to view them. Authentication tokens provide
  125.    a password that is only valid for that one instance, and are useless
  126.    after they are used. A logical extension of the use of authentication
  127.    tokens would be to use them for "return trips home" (show network
  128.    back to a home site) to minimize the chance of off-site security
  129.    problems.
  130.  
  131.    Tips:
  132.  
  133.    * Contact vendors of authentication tokens/cards for further
  134.      information as to how to integrate into specific environments, or
  135.      on to specific platforms.
  136.    * The public-domain utility "cryptosu" (csu), when used with a
  137.      Cryptocard, provides a replacement for Unix's "su" command,
  138.      employing a challenge/response style of authentication for root
  139.      access.
  140.  
  141. Anonymous FTP
  142.  
  143.    Anonymous FTP accounts can easily turn into a security hole.  The
  144.    simplest rule-of-thumb to follow is to disable this service if it is
  145.    not specifically needed.  However, if anonymous FTP is to be used,
  146.    the following tips may provide assistance into securing it.
  147.  
  148.    * When a user logs in as "anonymous", they should be locked into a
  149.      specific directory tree. Be sure that it properly chroots to the
  150.      appropriate directory. A "cd /" should put an anonymous user at the
  151.      top of a tree.
  152.    * Some systems may allow symbolic links to take a user outside the
  153.      allowed tree. Verify all links inside the anonymous hierarchy.
  154.    * Make sure that ftp's root directory is owned by someone other than
  155.      the 'ftp' account. Typically, it should be owned by "root".
  156.    * Examine the need for a world-writeable incoming directory. Many
  157.      sites use these as a way for outside users to transfer files into
  158.      the site. This, however, can turn into an archive (and frequently
  159.      does) for stolen software. Removing the "read" bit from the
  160.      directory permissions (chmod 733) prohibits an anonymous user from
  161.      being able to list the contents of a directory. Files can be
  162.  
  163.  
  164.  
  165. Gwinn                                                           [Page 3]
  166.  
  167. INTERNET-DRAFT           EXPIRES: OCTOBER 1997            INTERNET-DRAFT
  168.  
  169.  
  170.      deposited as usual, but not retrieved unless the exact name of the
  171.      file is known.
  172.  
  173. NFS Exports
  174.  
  175.    Exporting an writeable NFS filesystem to the world grants anyone the
  176.    ability to read and write any file in the exported mount point. If
  177.    this is done, for example, with a system directory such as "/" or
  178.    "/etc", it is a simple matter to edit password files to create one-
  179.    self access to a system. Therefore, /etc/exports should be closely
  180.    examined to be certain that nothing of a sensitive nature is exported
  181.    to anyone but another trusted host. Anything exported to the general
  182.    public should be exported "read-only".
  183.  
  184. Trusted Hosts
  185.  
  186.    Trusted host entries are a method for allowing other hosts
  187.    "equivalent" security access to another host computer. Some vendors
  188.    ship systems with open trusted host files. This should be addressed.
  189.  
  190.    Tips:
  191.  
  192.    * Check for a '+' entry (all systems trusted) in /etc/hosts.equiv and
  193.      all ".rhosts" files (there may be multiple .rhosts files) and
  194.      remove it.
  195.    * Check for an "xhost +" entry in the "...X11/xdm/Xsession" file.
  196.      Most often, an "xhost" entry will appear with a pathname such as
  197.      "/usr/local/lib/xhost +". This should be disabled.
  198.  
  199. SetUID and SetGID binaries
  200.  
  201.    The "suid" bit on a system executable program allows the program to
  202.    execute as the owner. A program that is setUID to "root" will allow
  203.    the program to execute with root privileges. There are multiple
  204.    legitimate reasons for a program to have root privileges, and many
  205.    do. However, it may be unusual to have suid programs in user
  206.    directories, or other non-system places. A scan of the filesystems
  207.    can turn up any program with its suid or sgid bit set. Before
  208.    disabling any programs, however, it is strongly suggested that the
  209.    legitimacy be confirmed.
  210.  
  211.    Tips:
  212.  
  213.    * "find / -user root -perm -4000 -print" will find any occurrence of
  214.      a setuid file anywhere in the system, including those on NFS
  215.      mounted partitions.
  216.    * "find / -group kmem -perm -2000 -print" will do the same for kmem
  217.      group permissions.
  218.  
  219.  
  220.  
  221. Gwinn                                                           [Page 4]
  222.  
  223. INTERNET-DRAFT           EXPIRES: OCTOBER 1997            INTERNET-DRAFT
  224.  
  225.  
  226. System Directory Ownership and Write Permissions
  227.  
  228.    Check ownership of all system directories and permissions needed to
  229.    write or modify files. A directory with permissions such as
  230.    "drwxrwxrwx" (such as /tmp) is world-writeable and anyone can create
  231.    or modify files in such area. Pay special attention to "/" and
  232.    "/etc". These should be owned by some system account-not by an
  233.    individual user. If in doubt, contact the vendor of the system
  234.    software for confirmation of these settings.
  235.  
  236. Network Services in /etc/inetd
  237.  
  238.    Any servers not needed should be disabled. The notorious "R services"
  239.    (rexec, rsh, and rlogin) are particularly prone to security problems
  240.    and should be disabled unless specifically needed. If "R services"
  241.    are required, pay particular attention to trusted hosts, and be aware
  242.    of the risk of IP spoofing attacks from machines "pretending" to be
  243.    trusted hosts.
  244.  
  245.    Tips:
  246.  
  247.    * Comment out "R services" (rexec, rsh, rlogin) in /etc/inetd.
  248.    * Check for unknown or unneeded services.
  249.  
  250. Trivial File Transfer Protocol (TFTP)
  251.  
  252.    TFTP can be an easy way for an intruder to access system files. A
  253.    good practice is to disable TFTP if it is not needed. If it is
  254.    needed, check to see that sensitive files are not accessible.
  255.    Attempting to tftp files such as /etc/passwd or /etc/motd will verify
  256.    accessiblity of a system from the outside.
  257.  
  258. TCP Connection Montoring
  259.  
  260.    Public domain software (TCP Wrappers or "tcpd") allows TCP
  261.    connections to be restricted and monitored on a host by host basis.
  262.    This software can be configured to notify an administrator (as well
  263.    as syslog) attempts to access the host by unauthorized parties. This
  264.    software is available from:
  265.  
  266.      ftp://info.cert.org/pub/tools/tcp_wrappers/
  267.  
  268. BIND (Berkeley Internet Name Daemon)
  269.  
  270.    Earlier versions of BIND have been prone to various attacks. If a
  271.    host is going to be acting as DNS, the latest version of BIND should
  272.    be used.  It can be downloaded from:
  273.  
  274.  
  275.  
  276.  
  277. Gwinn                                                           [Page 5]
  278.  
  279. INTERNET-DRAFT           EXPIRES: OCTOBER 1997            INTERNET-DRAFT
  280.  
  281.  
  282.      ftp://ftp.isc.org/isc/bind
  283.  
  284. Sendmail and Mailer Security
  285.  
  286.    A great number of previous versions of Sendmail have known security
  287.    holes.  All Sendmail versions should be checked for the most recent
  288.    version.  Alternatively, operating system vendors should be consulted
  289.    for their most recent release.
  290.  
  291. Web Server cgi-bin Security
  292.  
  293.    All server cgi-bin scripts and binaries should be checked (especially
  294.    the "...httpd/cgi-bin" directory) for those that allow shell commands
  295.    to be executed. Many attacks, of recent months, have centered around
  296.    the use of utilities such as "phf" for accessing /etc/passwd on a
  297.    target system. Any cgi that is not needed in the course of operation
  298.    of a web server should be removed.
  299.  
  300. Other Suggestions
  301.  
  302.    * Check with the vendor of operating systems for known security
  303.      issues. Make certain that all systems have the latest version of
  304.      the software as well as any security patches to fix specific
  305.      problems.
  306.  
  307.    * Examine log files on the host frequently. The "last" command will
  308.      furnish information on recent logins and where they came from. The
  309.      "syslogs" will contain more specific information on system events.
  310.      Web server logfiles (...httpd/log/access_log and
  311.      ...httpd/log/error_log) will contain information on who has been
  312.      accessing a WWW server, what has been accessed, and what has
  313.      failed.
  314.  
  315.    * Good backups are the best defense against system damage. A
  316.      rule-of-thumb is to "back information up when it can't afford to be
  317.      lost".
  318.  
  319. General Network Security
  320.  
  321.    As would be expected at trade shows (large or otherwise), there are
  322.    many entities running packet sniffers. Most are vendors who have a
  323.    legitimate need to run them during the course of product
  324.    demonstrations. A caveat to this is that there are many "listening
  325.    ears" on network segments-any of whom can "hear" or "see" information
  326.    as it crosses the net. Particularly prone to eavesdropping are telnet
  327.    sessions. A good rule of thumb is to assume that "when you type your
  328.    password, the only one that doesn't see it is you!"
  329.  
  330.  
  331.  
  332.  
  333. Gwinn                                                           [Page 6]
  334.  
  335. INTERNET-DRAFT           EXPIRES: OCTOBER 1997            INTERNET-DRAFT
  336.  
  337.  
  338.    It is a good practice to not log in (or "su") to an account with root
  339.    privileges, across the network if at all possible. As mentioned
  340.    previously, authentication tokens are a simple way to add security to
  341.    system account access.
  342.  
  343. Packet Filtering
  344.  
  345.    Many routers support basic packet filtering. Below is listed a good
  346.    "general" packet filter approach. The approach itself is ordered into
  347.    categories:
  348.  
  349.    * General global denials/acceptance.
  350.  
  351.    * Specific global service denials.
  352.  
  353.    * Specific service acceptance.
  354.  
  355.    * Final denial of all other TCP/UDP services.
  356.  
  357.    Based on this theory, a good approach to a filter ruleset, in order
  358.    of execution priority, might be:
  359.  
  360.    General Global Denials/Acceptance
  361.  
  362.    1 Filter spoofed source addresses by interface. Match source
  363.      addresses to routing information available for the interface.
  364.      Discard packets with source addresses arriving on one interface
  365.      (from the "outside" for example) claiming a source address on
  366.      another interface (the "inside").
  367.    2 Filter all source routed packets unless source routing is
  368.      specifically needed.
  369.    3 Allow outbound connections from "inside" hosts.
  370.    4 Allow established TCP connections (protocol field contains 6 and
  371.      the TCP flags field either contains ACK or does NOT contain SYN
  372.      bit). Only filter requests for 'new' connections.
  373.    5 Filter 'new' connections with source port of 25. Prevents people
  374.      from pretending to be a remote mail server.
  375.    6 Filter loopback address (source address 127.0.0.1). Prevents
  376.      packets resulting from misconfigured DNS resolver.
  377.  
  378.    Specific Global Service Denials
  379.  
  380.    1 If not required, specifically block all "R-command" ports
  381.      (destination ports 512-515).
  382.    2 Block telnet (destination port 23) from any host not requiring
  383.      telnet access from the outside.
  384.    3 Add specific filters to deny other specific protocols to the
  385.      network, as needed.
  386.  
  387.  
  388.  
  389. Gwinn                                                           [Page 7]
  390.  
  391. INTERNET-DRAFT           EXPIRES: OCTOBER 1997            INTERNET-DRAFT
  392.  
  393.  
  394.    Specific Host/Service Acceptance
  395.  
  396.    1 Add general open access, if desired, to specific "public" hosts
  397.      (unsecure FTP or WWW servers).
  398.    2 Allow SMTP (source and destination port 25) for electronic mail.
  399.    3 Allow inbound FTP connections (source port 20).
  400.    4 Allow DNS (source and destination port 53, UDP & TCP). If zone
  401.      transfers are not needed, block the TCP ports.
  402.    5 Allow RIP packets in (source and destination port 520, UDP).
  403.    6 Add specific filters to allow other desired specific protocols
  404.      and/or open certain ports to specific machines.
  405.  
  406.    Final Service Denial
  407.  
  408.    1 Deny all other UDP and TCP services not addressed in the previous
  409.      filters.
  410.  
  411. Author's Address
  412.  
  413.    R. Allen Gwinn, Jr.
  414.    Associate Director, Computing
  415.    Business Information Center
  416.    Southern Methodist University
  417.    Dallas, TX  75275
  418.  
  419.    Phone:  214/768-3186
  420.    EMail:  allen@mail.cox.smu.edu  or  allen@radio.net
  421.  
  422.  
  423.  
  424.    INTERNET-DRAFT      EXPIRES: OCTOBER 1997            INTERNET-DRAFT
  425.  
  426.  
  427.  
  428.  
  429.  
  430.  
  431.  
  432.  
  433.  
  434.  
  435.  
  436.  
  437.  
  438.  
  439.  
  440.  
  441.  
  442.  
  443.  
  444.  
  445. Gwinn                                                           [Page 8]
  446. Expire in six months
  447.