home *** CD-ROM | disk | FTP | other *** search
/ Internet Standards / CD1.mdf / misc / fips / 500_166.txt next >
Internet Message Format  |  1990-04-11  |  128KB

  1. From brian@ucsd.Edu Thu Apr 12 19:07:26 1990
  2. From: brian@ucsd.Edu (Brian Kantor)
  3. Newsgroups: comp.doc
  4. Subject: FIPS_500_166.TXT.1
  5. Date: 10 Apr 90 03:24:39 GMT
  6. Distribution: usa
  7. Organization: The Avant-Garde of the Now, Ltd.
  8.  
  9.  
  10.  
  11.                              Computer Systems Technology
  12.  
  13.  
  14.    ================================================================================
  15.  
  16.  
  17.                            NIST Special Publication 500-166
  18.  
  19.  
  20.                         Computer Viruses and Related Threats:
  21.  
  22.                                   A Management Guide
  23.  
  24.  
  25.                                      John P. Wack
  26.  
  27.                                    Lisa J. Carnahan
  28.  
  29.  
  30.  
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73.  
  74.  
  75.  
  76.  
  77.           Ordering information:
  78.                               Copies can be ordered from:
  79.                               Superintendent of Documents
  80.                               Government Printing Office
  81.                               Washington, D.C. 20402
  82.                               (202) 783-3238
  83.  
  84.                               GPO # 003-003-02955-6
  85.                               Price is $2.50 per copy
  86.  
  87.  
  88.  
  89.  
  90.  
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139.  
  140.  
  141.  
  142.                                        COMPUTER VIRUSES AND RELATED THREATS
  143.  
  144.  
  145.  
  146.                                   Table of Contents
  147.  
  148.  
  149.  
  150.           Executive Summary . . . . . . . . . . . . . . . . . . . . . .   v
  151.  
  152.  
  153.           1. Introduction . . . . . . . . . . . . . . . . . . . . . .   1-1
  154.                1.1  Audience and Scope  . . . . . . . . . . . . . . .   1-1
  155.                1.2  How to Use This Guide . . . . . . . . . . . . . .   1-2
  156.  
  157.  
  158.           2.  A Brief Overview on Viruses and Related Threats . . . .   2-1
  159.                2.1  Trojan Horses . . . . . . . . . . . . . . . . . .   2-1
  160.                2.2  Computer Viruses  . . . . . . . . . . . . . . . .   2-3
  161.                2.3  Network Worms . . . . . . . . . . . . . . . . . .   2-5
  162.                2.4  Other Related Software Threats  . . . . . . . . .   2-8
  163.  
  164.                2.5  The Threat of Unauthorized Use  . . . . . . . . .   2-8
  165.  
  166.           3. Virus Prevention in General  . . . . . . . . . . . . . .   3-1
  167.                3.1  User Education  . . . . . . . . . . . . . . . . .   3-3
  168.                3.2  Software Management . . . . . . . . . . . . . . .   3-4
  169.  
  170.                3.3  Technical Controls  . . . . . . . . . . . . . . .   3-6
  171.                3.4  General Monitoring  . . . . . . . . . . . . . . .   3-8
  172.                3.5  Contingency Planning  . . . . . . . . . . . . . .   3-9
  173.  
  174.           4. Virus Prevention for  Multi-User Computers and Associated
  175.  
  176.                Networks . . . . . . . . . . . . . . . . . . . . . . .   4-1
  177.                4.1  General Policies  . . . . . . . . . . . . . . . .   4-1
  178.                4.2  Software Management . . . . . . . . . . . . . . .   4-2
  179.                4.3  Technical Controls  . . . . . . . . . . . . . . .   4-4
  180.                4.4  Monitoring  . . . . . . . . . . . . . . . . . . .   4-7
  181.  
  182.                4.5  Contingency Planning  . . . . . . . . . . . . . .   4-9
  183.                4.6  Associated Network Concerns . . . . . . . . . . .  4-10
  184.  
  185.           5. Virus  Prevention for Personal  Computers and  Associated
  186.                Networks . . . . . . . . . . . . . . . . . . . . . . .   5-1
  187.  
  188.                5.1  General Policies  . . . . . . . . . . . . . . . .   5-2
  189.                5.2  Software Management . . . . . . . . . . . . . . .   5-3
  190.                5.3  Technical Controls  . . . . . . . . . . . . . . .   5-4
  191.                5.4  Monitoring  . . . . . . . . . . . . . . . . . . .   5-6
  192.                5.5  Contingency Planning  . . . . . . . . . . . . . .   5-7
  193.  
  194.  
  195.                                          iii
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.  
  203.  
  204.  
  205.  
  206.  
  207.  
  208.           COMPUTER VIRUSES AND RELATED THREATS
  209.  
  210.  
  211.  
  212.                5.6  Associated Network Concerns . . . . . . . . . . .   5-9
  213.  
  214.           References  . . . . . . . . . . . . . . . . . . . . . . . .   A-1
  215.  
  216.           Suggested Reading . . . . . . . . . . . . . . . . . . . . .   B-1
  217.  
  218.  
  219.  
  220.  
  221.  
  222.  
  223.  
  224.  
  225.  
  226.  
  227.  
  228.  
  229.  
  230.  
  231.  
  232.  
  233.  
  234.  
  235.  
  236.  
  237.  
  238.  
  239.  
  240.  
  241.  
  242.  
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249.  
  250.  
  251.  
  252.  
  253.  
  254.  
  255.  
  256.  
  257.  
  258.  
  259.  
  260.  
  261.                                           iv
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.  
  269.  
  270.  
  271.  
  272.  
  273.  
  274.                                        COMPUTER VIRUSES AND RELATED THREATS
  275.                                                           EXECUTIVE SUMMARY
  276.  
  277.  
  278.  
  279.  
  280.                                   Executive Summary
  281.  
  282.           Computer viruses  and related threats  represent an  increasingly
  283.           serious security problem in computing systems and networks.  This
  284.  
  285.           document   presents   guidelines   for   preventing,   deterring,
  286.           containing, and recovering  from attacks  of viruses and  related
  287.           threats.    This  section acquaints  senior  management  with the
  288.           nature of the problem and outlines some of the steps that  can be
  289.           taken to reduce an organization's vulnerability.
  290.  
  291.  
  292.  
  293.           What Are Computer Viruses and Related Threats?
  294.  
  295.           Computer viruses  are  the most  widely recognized  example of  a
  296.  
  297.           class  of programs  written  to cause  some  form of  intentional
  298.           damage to  computer  systems  or  networks.    A  computer  virus
  299.           performs two basic functions: it copies itself to other programs,
  300.           thereby infecting  them,   and it  executes the  instructions the
  301.           author  has included in it.  Depending on the author's motives, a
  302.  
  303.           program infected with a virus  may cause damage immediately  upon
  304.           its execution, or it may wait until a certain event has occurred,
  305.           such as a particular date and time.  The damage can  vary widely,
  306.           and can be so  extensive as to require the complete rebuilding of
  307.           all system software and data.  Because viruses can spread rapidly
  308.  
  309.           to  other  programs   and  systems,   the  damage  can   multiply
  310.           geometrically.
  311.  
  312.           Related threats include other forms  of destructive programs such
  313.           as Trojan  horses  and network  worms.   Collectively,  they  are
  314.  
  315.           sometimes referred to as malicious  software.  These programs are
  316.           often written to masquerade as useful programs, so that users are
  317.           induced into copying them and sharing  them with friends and work
  318.           colleagues.  The malicious software  phenomena is fundamentally a
  319.           people problem,  as  it  is  authored  and  initially  spread  by
  320.  
  321.           individuals who use systems in an unauthorized manner.  Thus, the
  322.           threat of unauthorized use, by unauthorized and authorized users,
  323.           must be addressed as a part of virus prevention.
  324.  
  325.  
  326.  
  327.                                           v
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.  
  335.  
  336.  
  337.  
  338.  
  339.  
  340.           COMPUTER VIRUSES AND RELATED THREATS
  341.           EXECUTIVE SUMMARY
  342.  
  343.  
  344.  
  345.  
  346.           What Are the Vulnerabilities They Exploit?
  347.  
  348.           Unauthorized  users  and malicious  software  may gain  access to
  349.           systems  through inadequate  system security  mechanisms, through
  350.  
  351.           security holes in applications or systems, and through weaknesses
  352.           in  computer management,  such  as the  failure  to properly  use
  353.           existing security mechanisms.   Malicious software can  be copied
  354.           intentionally onto systems,  or be spread when  users unwittingly
  355.           copy and share  infected software  obtained from public  software
  356.  
  357.           repositories,  such as  software  bulletin boards  and shareware.
  358.           Because malicious software often hides  its destructive nature by
  359.           performing or  claiming to  perform some  useful function,  users
  360.           generally don't suspect  that they are copying and  spreading the
  361.           problem.
  362.  
  363.  
  364.  
  365.           Why Are Incidents of Viruses and Related Threats On the Rise?
  366.  
  367.           Viruses and related  threats, while not a recent  phenomena, have
  368.  
  369.           had relatively  little  attention focused  on them  in the  past.
  370.           They  occurred  less  frequently  and  caused  relatively  little
  371.           damage. For these  reasons, they were frequently  treated lightly
  372.           in computer design and by management, even though their potential
  373.           for harm was known to be great.
  374.  
  375.  
  376.           Computer   users   have   become  increasingly   proficient   and
  377.           sophisticated.   Software applications are  increasingly complex,
  378.           making  their  bugs  and  security  loopholes more  difficult  to
  379.           initially detect and correct by the manufacturer.  In conjunction
  380.  
  381.           with these two  factors, some brands  of software are now  widely
  382.           used, thus their bugs  and security loopholes are often  known to
  383.           users.  With the  widespread use of personal computers  that lack
  384.           effective  security   mechanisms,  it  is  relatively   easy  for
  385.           knowledgeable users to  author malicious  software and then  dupe
  386.  
  387.           unsuspecting users into copying it.
  388.  
  389.  
  390.  
  391.  
  392.  
  393.                                           vi
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400.  
  401.  
  402.  
  403.  
  404.  
  405.  
  406.                                        COMPUTER VIRUSES AND RELATED THREATS
  407.                                                           EXECUTIVE SUMMARY
  408.  
  409.  
  410.  
  411.           Steps Toward Reducing Risk
  412.  
  413.           Organizations can take steps to reduce  their risk to viruses and
  414.           related threats.  Some  of the more important steps  are outlined
  415.           below.
  416.  
  417.  
  418.              o Include  the  damage potential  of  viruses, unauthorized
  419.                use, and related threats in risk analysis and contingency
  420.                planning.    Develop  a  plan   to  deal  with  potential
  421.                incidents.
  422.  
  423.              o Make computer  security education a  prerequisite to  any
  424.                computer  use.  Teach users  how to protect their systems
  425.                and detect evidence of tampering or unusual activity.
  426.  
  427.              o Ensure that technically oriented  security and management
  428.                staff are in place to deal with security incidents.
  429.  
  430.              o Use the security  mechanisms that  exist in your  current
  431.                software.  Ensure that  they are used correctly.   Add to
  432.                them as necessary.
  433.  
  434.              o Purchase  and  use  software  tools  to aid  in  auditing
  435.                computing   activity  and   detecting  the   presence  of
  436.                tampering and damage.
  437.  
  438.  
  439.  
  440.  
  441.  
  442.  
  443.  
  444.  
  445.  
  446.  
  447.  
  448.  
  449.  
  450.  
  451.  
  452.  
  453.  
  454.  
  455.  
  456.  
  457.  
  458.  
  459.                                          vii
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466.  
  467.  
  468.  
  469.  
  470.  
  471.  
  472.           COMPUTER VIRUSES AND RELATED THREATS
  473.           EXECUTIVE SUMMARY
  474.  
  475.  
  476.  
  477.  
  478.  
  479.  
  480.  
  481.  
  482.  
  483.  
  484.  
  485.  
  486.  
  487.  
  488.  
  489.  
  490.  
  491.  
  492.  
  493.  
  494.  
  495.  
  496.  
  497.  
  498.  
  499.  
  500.  
  501.  
  502.  
  503.  
  504.  
  505.  
  506.  
  507.  
  508.  
  509.  
  510.  
  511.  
  512.  
  513.  
  514.  
  515.  
  516.  
  517.  
  518.  
  519.  
  520.  
  521.  
  522.  
  523.  
  524.  
  525.                                          viii
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532.  
  533.  
  534.  
  535.  
  536.  
  537.  
  538.                                        COMPUTER VIRUSES AND RELATED THREATS
  539.                                                                   CHAPTER 1
  540.  
  541.  
  542.  
  543.  
  544.                                    1. Introduction
  545.  
  546.           This document provides  guidance for  technical managers for  the
  547.           reduction of  risk to  their computer systems  and networks  from
  548.  
  549.           attack  by  computer  viruses, unauthorized  users,  and  related
  550.           threats.   The guidance discusses  the combined use  of policies,
  551.           procedures, and controls to address security vulnerabilities that
  552.           can leave systems  open to attack.   The aim of this  document is
  553.           not to provide solutions  to the wide range of  specific problems
  554.  
  555.           or  vulnerabilities,  rather  it is  to  help  technical managers
  556.           administer their systems and networks such that manifestations of
  557.           viruses and related threats can be initially prevented, detected,
  558.           and contained.
  559.  
  560.  
  561.  
  562.           1.1  Audience and Scope
  563.  
  564.           This document  is intended primarily  for the managers  of multi-
  565.           user systems,  personal computers,  and associated  networks, and
  566.  
  567.           managers  of  end-user  groups.   Additionally,  the  document is
  568.           useful for the users of  such systems.  The document presents  an
  569.           overview  of  computer  viruses  and  related threats,  how  they
  570.           typically work, the  methods by  which they can  attack, and  the
  571.           harm they can  potentially cause.   It then presents guidance  in
  572.  
  573.           the following areas:
  574.  
  575.                o  Multi-User  Systems  and  Associated Networks  -  with                  _____________________________________________
  576.                   guidance  directed  at  managers  of medium  to  small
  577.                   systems (as opposed to mainframes that already provide
  578.                   generally effective security  controls or are by their
  579.                   nature more secure) and associated wide area and large
  580.                   local area networks, as well  as managers of end-users
  581.                   of such systems
  582.  
  583.                o  Personal Computer  Systems and Networks  - guidance is
  584.                   directed at  those responsible for  the management  of
  585.                   personal computers and personal  computer networks, as
  586.                   well as the managers of personal computer end-users
  587.  
  588.  
  589.  
  590.  
  591.                                          1-1
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598.  
  599.  
  600.  
  601.  
  602.  
  603.  
  604.           COMPUTER VIRUSES AND RELATED THREATS
  605.           CHAPTER 1
  606.  
  607.  
  608.  
  609.           Within   these   general    categories,   individual    computing
  610.           environments  will vary  widely, from  size  of computer  to user
  611.           population  to type of  software and computing  requirements.  To
  612.           accommodate  these differences,  the  guidance presented  here is
  613.           general  in nature.   It  attempts  to address  computer security
  614.  
  615.           problems and vulnerabilities that are likely  to be found in most
  616.           computing  environments. This document  does not address problems
  617.           directly related to specific  brands of software or hardware.   A
  618.           reading list at the  end of the document contains  references and
  619.           pointers to other  literature that  address specific systems  and
  620.  
  621.           software.
  622.  
  623.           Recommended control measures are  grouped according to categories
  624.           that include general policies and procedures, education, software
  625.           management,  technical  controls,  monitoring,   and  contingency
  626.  
  627.           planning.  The guidance emphasizes the need for a strong security
  628.           program  as a means for protection from manifestations of viruses
  629.           and related  threats,  and as  a means  for providing  detection,
  630.           containment,  and recovery.  Such  a  security  program  requires
  631.           personal involvement on the part of management to ensure that the
  632.  
  633.           proper  policies, procedures, and  technical controls  exist, and
  634.           that users are  educated so that  they can follow safe  computing
  635.           practices and  understand  the proper  actions  to take  if  they
  636.           detect  the  presence  of  viruses  or  related   threats.    The
  637.           guidelines  recommend that  network  managers, multi-user  system
  638.  
  639.           managers, end-users, and  end-user managers work with  each other
  640.           and approach virus protection from an organizationally consistent
  641.           basis. 
  642.  
  643.  
  644.  
  645.           1.2  How to Use This Guide
  646.  
  647.           This document is divided into  five chapters and two  appendices.
  648.           Chapter 2 describes  in general how viruses  and related software
  649.           operate,  the vulnerabilities they  exploit, and how  they can be
  650.  
  651.           introduced  into  systems  and  networks.   Chapter  3  discusses
  652.           general protection strategies and control  measures that apply to
  653.           technical and  end-user management  in general; this  is done  so
  654.           that  the  same guidance  need not  be repeated  for each  of the
  655.  
  656.  
  657.                                          1-2
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664.  
  665.  
  666.  
  667.  
  668.  
  669.  
  670.                                        COMPUTER VIRUSES AND RELATED THREATS
  671.                                                                   CHAPTER 1
  672.  
  673.  
  674.  
  675.           succeeding  chapters   that  deal  with   specific  environments.
  676.           Chapters  4 and  5 present  guidance  specific to  multi-user and
  677.           personal computer environments,  respectively.   The guidance  in
  678.           these chapters is  directed at the respective  technical managers
  679.           and managers of associated  networks, as well as the  managers of
  680.  
  681.           end-user  groups  that use  such  systems  and networks.    It is
  682.           recommended that  all  readers, regardless  of  their  management
  683.           perspective,  examine  Chapters 3,  4,  and  5 to  gain  a fuller
  684.           appreciation of  the whole  environment with  regard to  threats,
  685.           vulnerabilities, and controls.
  686.  
  687.  
  688.           Appendix  A   contains  document  references,  while  Appendix  B
  689.           contains a reading  list with references to  general and specific
  690.           information on various types of  viruses, systems, and protective
  691.           measures.  Readers can use these documents  to obtain information
  692.  
  693.           specific to their individual systems and software.
  694.  
  695.  
  696.  
  697.  
  698.  
  699.  
  700.  
  701.  
  702.  
  703.  
  704.  
  705.  
  706.  
  707.  
  708.  
  709.  
  710.  
  711.  
  712.  
  713.  
  714.  
  715.  
  716.  
  717.  
  718.  
  719.  
  720.  
  721.  
  722.  
  723.                                          1-3
  724.  
  725.  
  726.  
  727.  
  728.  
  729.  
  730.  
  731.  
  732.  
  733.  
  734.  
  735.  
  736.           COMPUTER VIRUSES AND RELATED THREATS
  737.           CHAPTER 1
  738.  
  739.  
  740.  
  741.  
  742.  
  743.  
  744.  
  745.  
  746.  
  747.  
  748.  
  749.  
  750.  
  751.  
  752.  
  753.  
  754.  
  755.  
  756.  
  757.  
  758.  
  759.  
  760.  
  761.  
  762.  
  763.  
  764.  
  765.  
  766.  
  767.  
  768.  
  769.  
  770.  
  771.  
  772.  
  773.  
  774.  
  775.  
  776.  
  777.  
  778.  
  779.  
  780.  
  781.  
  782.  
  783.  
  784.  
  785.  
  786.  
  787.  
  788.  
  789.                                          1-4
  790.  
  791.  
  792.  
  793.  
  794.  
  795.  
  796.  
  797.  
  798.  
  799.  
  800.  
  801.  
  802.                                        COMPUTER VIRUSES AND RELATED THREATS
  803.                                                                   CHAPTER 2
  804.  
  805.  
  806.  
  807.  
  808.                  2.  A Brief Overview on Viruses and Related Threats
  809.  
  810.           The  term computer  virus is  often  used in  a general  sense to
  811.           indicate any software that can cause harm to systems or networks.
  812.  
  813.           However,  computer viruses are just one example of many different
  814.           but related forms  of software that can act with  great speed and
  815.           power to  cause extensive  damage -other  important examples  are
  816.           Trojan horses  and network  worms.   In this  document, the  term
  817.           malicious software refers to such software.
  818.  
  819.  
  820.  
  821.           2.1  Trojan Horses
  822.  
  823.           A Trojan horse1 program is a  useful or apparently useful program
  824.  
  825.           or command procedure  containing hidden code that,  when invoked,
  826.           performs some unwanted  function.   An author of  a Trojan  horse
  827.           program might first create or gain access to the source code of a
  828.           useful program that  is attractive to  other users, and then  add
  829.           code  so  that the  program  performs  some  harmful function  in
  830.  
  831.           addition to its  useful function.   A simple example of  a Trojan
  832.           horse  program  might  be  a  calculator  program  that  performs
  833.           functions similar  to that of a  pocket calculator.  When  a user
  834.           invokes the program, it appears to be performing calculations and
  835.           nothing more, however it may also  be quietly deleting the user's
  836.  
  837.           files, or performing any  number of harmful actions.   An example
  838.           of an even simpler Trojan horse program is one that performs only
  839.           a  harmful  function, such  as a  program  that does  nothing but
  840.           delete files.   However, it may appear to  be a useful program by
  841.           having a name such as CALCULATOR  or something similar to promote
  842.  
  843.           acceptability.
  844.  
  845.           Trojan  horse  programs  can  be  used  to  accomplish  functions
  846.           indirectly  that  an  unauthorized   user  could  not  accomplish
  847.                                         ____________________
  848.  
  849.                1  named after the use of a  hollow wooden horse filled with
  850.           enemy  soldiers used  to  gain entry  into the  city  of Troy  in
  851.           ancient Greece.
  852.  
  853.  
  854.                                          2-1
  855.  
  856.  
  857.  
  858.  
  859.  
  860.  
  861.  
  862.  
  863.  
  864.  
  865.  
  866.  
  867.           COMPUTER VIRUSES AND RELATED THREATS
  868.           CHAPTER 2
  869.  
  870.  
  871.  
  872.           directly.  For example, a user  of a multi-user system who wishes
  873.           to gain access to  other users' files could create a Trojan horse
  874.           program to circumvent the users' file  security mechanisms.   The
  875.           Trojan horse program, when run,  changes the invoking user's file
  876.           permissions so  that the files  are readable  by any  user.   The
  877.  
  878.           author could then induce users to run  this program by placing it
  879.           in a  common directory and naming  it such that users  will think
  880.           the program is a useful utility.  After a user runs  the program,
  881.           the author can then  access the information in the  user's files,
  882.           which  in  this  example  could be  important  work  or  personal
  883.  
  884.           information.  Affected users may not  notice the changes for long
  885.           periods of time unless they are very observant.
  886.  
  887.           An example of a Trojan horse program that would be very difficult
  888.           to  detect would be  a compiler on  a multi-user system  that has
  889.  
  890.           been modified to insert additional  code into certain programs as
  891.           they are  compiled, such as a login program.   The code creates a
  892.           trap door in the  login program which permits the  Trojan horse's
  893.           author to log onto the system using a special password.  Whenever
  894.           the  login program is recompiled, the compiler will always insert
  895.  
  896.           the trap  door code into the program,  thus the Trojan horse code
  897.           can never  be discovered  by reading  the login  program's source
  898.           code.  For more information on this example, see [THOMPSON84].
  899.  
  900.           Trojan horse  programs are introduced  into systems in  two ways:
  901.  
  902.           they are initially  planted, and unsuspecting users copy  and run
  903.           them.  They are planted in software repositories that many people
  904.           can  access,  such  as  on  personal  computer  network  servers,
  905.           publicly-accessible directories in  a multi-user environment, and
  906.           software bulletin boards.  Users are then  essentially duped into
  907.  
  908.           copying  Trojan   horse  programs   to  their   own  systems   or
  909.           directories.   If  a  Trojan  horse  program  performs  a  useful
  910.           function and causes  no immediate or  obvious damage, a user  may
  911.           continue to spread it  by sharing the program with  other friends
  912.           and co-workers.  The  compiler that copies hidden code to a login
  913.  
  914.           program might  be  an example  of a  deliberately planted  Trojan
  915.           horse that could be  planted by an  authorized user of a  system,
  916.           such as a user assigned to maintain compilers and software tools.
  917.  
  918.  
  919.  
  920.                                          2-2
  921.  
  922.  
  923.  
  924.  
  925.  
  926.  
  927.  
  928.  
  929.  
  930.  
  931.  
  932.  
  933.                                        COMPUTER VIRUSES AND RELATED THREATS
  934.                                                                   CHAPTER 2
  935.  
  936.  
  937.  
  938.  
  939.           2.2  Computer Viruses
  940.  
  941.           Computer viruses, like  Trojan horses, are programs  that contain
  942.           hidden  code  which  performs  some  usually  unwanted  function.
  943.  
  944.           Whereas  the  hidden code  in  a  Trojan horse  program  has been
  945.           deliberately placed by the program's author, the hidden code in a
  946.           computer  virus program has  been added by  another program, that
  947.           program itself being  a computer  virus or Trojan  horse.   Thus,
  948.           computer  viruses are  programs that  copy their  hidden code  to
  949.  
  950.           other programs, thereby infecting them.  Once infected, a program
  951.           may  continue to  infect  even more  programs.   In  due time,  a
  952.           computer could be completely  overrun as the viruses spread  in a
  953.           geometric manner.
  954.  
  955.  
  956.           An example illustrating  how a computer  virus works might be  an
  957.           operating system  program for  a personal computer,  in which  an
  958.           infected  version of the  operating system  exists on  a diskette
  959.           that contains an attractive game.   For the game to operate,  the
  960.           diskette must be used to boot the computer, regardless of whether
  961.  
  962.           the  computer  contains a  hard  disk with  its  own copy  of the
  963.           (uninfected)  operating  system program.    When the  computer is
  964.           booted  using the diskette,  the infected program  is loaded into
  965.           memory and  begins to  run.   It immediately  searches for  other
  966.           copies of the operating system program, and finds one on the hard
  967.  
  968.           disk.  It then copies its hidden code  to the program on the hard
  969.           disk.   This happens so quickly that the  user may not notice the
  970.           slight delay before his game is run.  Later, when the computer is
  971.           booted using the  hard disk,  the newly infected  version of  the
  972.           operating system  will be  loaded into memory.   It will  in turn
  973.  
  974.           look  for copies  to infect.   However, it  may also  perform any
  975.           number  of  very   destructive  actions,  such  as   deleting  or
  976.           scrambling all the files on the disk.
  977.  
  978.           A  computer virus exhibits  three characteristics:  a replication
  979.           mechanism,  an  activation  mechanism,  and  an objective.    The
  980.           replication mechanism performs the following functions:
  981.  
  982.  
  983.  
  984.  
  985.                                          2-3
  986.  
  987.  
  988.  
  989.  
  990.  
  991.  
  992.  
  993.  
  994.  
  995.  
  996.  
  997.  
  998.           COMPUTER VIRUSES AND RELATED THREATS
  999.           CHAPTER 2
  1000.  
  1001.  
  1002.  
  1003.                o  searches for other programs to infect
  1004.  
  1005.                o  when it finds  a program, possibly determines  whether
  1006.                   the program has been previously infected by checking a
  1007.                   flag
  1008.  
  1009.                o  inserts  the  hidden  instructions  somewhere  in  the
  1010.                   program
  1011.  
  1012.                o  modifies  the  execution  sequence  of  the  program's
  1013.                   instructions  such  that  the  hidden   code  will  be
  1014.                   executed whenever the program is invoked
  1015.  
  1016.                o  possibly creates a  flag to indicate that  the program
  1017.                   has been infected
  1018.  
  1019.           The flag may be  necessary because without it, programs  could be
  1020.           repeatedly infected and  grow noticeably large.   The replication
  1021.           mechanism could  also perform  other functions  to help  disguise
  1022.           that the file  has been infected,  such as resetting the  program
  1023.           file's modification date to  its previous value, and  storing the
  1024.  
  1025.           hidden code within the program so that the program's size remains
  1026.           the same.
  1027.  
  1028.           The activation mechanism checks for the occurrence of some event.
  1029.           When the event occurs, the computer virus executes its objective,
  1030.           which  is  generally  some  unwanted,  harmful action.    If  the
  1031.           activation mechanism checks  for a specific  date or time  before
  1032.           executing its objective, it  is said to contain a time  bomb.  If
  1033.           it  checks for a certain  action, such as  if an infected program
  1034.           has been executed a preset number of times, it is said to contain
  1035.  
  1036.           a logic bomb.   There may be  any number of variations,  or there
  1037.           may be no activation  mechanism other than the  initial execution
  1038.           of the infected program.
  1039.  
  1040.           As mentioned, the  objective is  usually some unwanted,  possibly
  1041.  
  1042.           destructive event.   Previous examples  of computer viruses  have
  1043.           varied widely in  their objectives, with some  causing irritating
  1044.           but harmless displays  to appear, whereas  others have erased  or
  1045.           modified files or  caused system hardware to  behave differently.
  1046.  
  1047.  
  1048.  
  1049.  
  1050.                                          2-4
  1051.  
  1052.  
  1053.  
  1054.  
  1055.  
  1056.  
  1057.  
  1058.  
  1059.  
  1060.  
  1061.  
  1062.  
  1063.                                        COMPUTER VIRUSES AND RELATED THREATS
  1064.                                                                   CHAPTER 2
  1065.  
  1066.  
  1067.  
  1068.           Generally, the objective consists of  whatever actions the author
  1069.           has designed into the virus.
  1070.  
  1071.           As with Trojan horse programs, computer viruses can be introduced
  1072.           into  systems  deliberately  and  by  unsuspecting  users.    For
  1073.  
  1074.           example, a Trojan horse program whose  purpose is to infect other
  1075.           programs  could be  planted  on a  software  bulletin board  that
  1076.           permits  users  to upload  and download  programs.   When  a user
  1077.           downloads the program and then executes it,  the program proceeds
  1078.           to infect  other programs in the user's  system.  If the computer
  1079.  
  1080.           virus  hides itself well,  the user may continue  to spread it by
  1081.           copying the infected  program to other  disks, by backing it  up,
  1082.           and  by  sharing it  with other  users.   Other  examples  of how
  1083.           computer   viruses  are   introduced  include   situations  where
  1084.           authorized users  of systems  deliberately  plant viruses,  often
  1085.  
  1086.           with  a time bomb mechanism.   The virus may then activate itself
  1087.           at some later point in time, perhaps when the user is  not logged
  1088.           onto  the  system  or  perhaps  after   the  user  has  left  the
  1089.           organization.    For more  information  on computer  viruses, see
  1090.           [DENNING88]
  1091.  
  1092.  
  1093.  
  1094.           2.3  Network Worms
  1095.  
  1096.           Network  worm  programs use  network  connections to  spread from
  1097.  
  1098.           system  to system,  thus network  worms  attack systems  that are
  1099.           linked via communications lines.  Once  active within a system, a
  1100.           network worm can behave as a computer  virus, or it could implant
  1101.           Trojan  horse programs  or perform  any  number of  disruptive or
  1102.           destructive actions.  In a sense, network worms are like computer
  1103.  
  1104.           viruses with the ability to infect other systems as well as other
  1105.           programs.  Some people use the term virus to include both cases.
  1106.  
  1107.           To replicate themselves,  network worms use some  sort of network
  1108.           vehicle, depending on the type of  network and systems.  Examples
  1109.  
  1110.           of network vehicles include (a) a network mail facility, in which
  1111.           a  worm can mail  a copy  of itself to  other systems, or  (b), a
  1112.           remote execution capability, in  which a worm can execute  a copy
  1113.           of itself on  another system, or  (c) a remote login  capability,
  1114.  
  1115.  
  1116.                                          2-5
  1117.  
  1118.  
  1119.  
  1120.  
  1121.  
  1122.  
  1123.  
  1124.  
  1125.  
  1126.  
  1127.  
  1128.  
  1129.           COMPUTER VIRUSES AND RELATED THREATS
  1130.           CHAPTER 2
  1131.  
  1132.  
  1133.  
  1134.           whereby  a worm can log  into a remote system as  a user and then
  1135.           use commands to  copy itself from one  system to the other.   The
  1136.           new copy of  the network worm is  then run on the  remote system,
  1137.           where it may continue to spread to more systems in a like manner.
  1138.           Depending on the size of a network, a network worm can  spread to
  1139.  
  1140.           many  systems  in a  relatively short  amount  of time,  thus the
  1141.           damage it can cause to one system is multiplied by the  number of
  1142.           systems to which it can spread.
  1143.  
  1144.           A network  worm exhibits the  same characteristics as  a computer
  1145.  
  1146.           virus: a replication mechanism, possibly an activation mechanism,
  1147.           and an objective.   The replication mechanism  generally performs
  1148.           the following functions:
  1149.  
  1150.                o  searches for other systems to infect by examining host
  1151.                   tables  or  similar  repositories  of  remote   system
  1152.                   addresses
  1153.  
  1154.                o  establishes  a   connection  with  a   remote  system,
  1155.                   possibly by  logging in  as a  user  or using  a  mail
  1156.                   facility or remote execution capability
  1157.  
  1158.                o  copies itself to the remote system and causes the copy
  1159.                   to be run
  1160.  
  1161.           The network worm may  also attempt to determine whether  a system
  1162.           has previously been infected before copying itself to the system.
  1163.  
  1164.           In a multi-tasking computer, it may also disguise its presence by
  1165.           naming  itself as a system process  or using some other name that
  1166.           may not be noticed by a system operator.
  1167.  
  1168.           The activation mechanism might use a  time bomb or logic bomb  or
  1169.  
  1170.           any number of variations to activate itself.  Its objective, like
  1171.           all  malicious software, is whatever the author has designed into
  1172.           it.  Some network worms have been designed  for a useful purpose,
  1173.           such as to perform general "house-cleaning" on networked systems,
  1174.           or  to  use extra  machine  cycles  on each  networked  system to
  1175.  
  1176.           perform  large  amounts  of  computations  not practical  on  one
  1177.           system.  A network worm with a harmful objective could perform  a
  1178.           wide  range of destructive  functions, such as  deleting files on
  1179.  
  1180.  
  1181.  
  1182.                                          2-6
  1183.  
  1184.  
  1185.  
  1186.  
  1187.  
  1188.  
  1189.  
  1190.  
  1191.  
  1192.  
  1193.  
  1194.  
  1195.                                        COMPUTER VIRUSES AND RELATED THREATS
  1196.                                                                   CHAPTER 2
  1197.  
  1198.  
  1199.  
  1200.           each affected computer, or by implanting Trojan horse programs or
  1201.           computer viruses.
  1202.  
  1203.           Two examples of  actual network  worms are presented  here.   The
  1204.           first  involved a Trojan horse program that displayed a Christmas
  1205.  
  1206.           tree  and  a message  of  good  cheer (this  happened  during the
  1207.           Christmas  season).    When  a user  executed  this  program,  it
  1208.           examined   network  information  files  which  listed  the  other
  1209.           personal computers that could  receive mail from this user.   The
  1210.           program then mailed itself to those  systems.  Users who received
  1211.  
  1212.           this message  were  invited to  run  the Christmas  tree  program
  1213.           themselves, which they did.   The network worm thus  continued to
  1214.           spread to  other systems until  the network was  nearly saturated
  1215.           with traffic.   The network  worm did not  cause any  destructive
  1216.           action other than disrupting communications and causing a loss in
  1217.  
  1218.           productivity [BUNZEL88].
  1219.  
  1220.           The second example concerns the  incident whereby a network  worm
  1221.           used the collection of  networks known as the Internet  to spread
  1222.           itself to several  thousands of computers located  throughout the
  1223.  
  1224.           United States.  This worm  spread itself automatically, employing
  1225.           somewhat  sophisticated  techniques  for bypassing  the  systems'
  1226.           security mechanisms.   The worm's replication  mechanism accessed
  1227.           the systems by using one of three methods:
  1228.  
  1229.                o  it employed  password cracking, in  which it attempted
  1230.                   to log into systems using  usernames for passwords, as
  1231.                   well as using words from an on-line dictionary
  1232.  
  1233.                o  it exploited a  trap door  mechanism in mail  programs
  1234.                   which  permitted  it  to  send  commands to  a  remote
  1235.                   system's command interpreter
  1236.  
  1237.                o  it exploited a  bug in  a network information  program
  1238.                   which permitted it to access a remote system's command
  1239.                   interpreter
  1240.  
  1241.           By using a  combination of  these methods, the  network worm  was
  1242.  
  1243.           able to copy itself  to different brands of computers  which used
  1244.           similar versions of a widely-used operating  system.  Many system
  1245.           managers were  unable to  detect its  presence in their  systems,
  1246.  
  1247.  
  1248.                                          2-7
  1249.  
  1250.  
  1251.  
  1252.  
  1253.  
  1254.  
  1255.  
  1256.  
  1257.  
  1258.  
  1259.  
  1260.  
  1261.           COMPUTER VIRUSES AND RELATED THREATS
  1262.           CHAPTER 2
  1263.  
  1264.  
  1265.  
  1266.           thus  it  spread  very quickly,  affecting  several  thousands of
  1267.           computers  within  two  days.    Recovery efforts  were  hampered
  1268.           because  many  sites  disconnected from  the  network  to prevent
  1269.           further infections,  thus preventing those  sites from  receiving
  1270.           network mail that explained how to correct the problems.
  1271.  
  1272.  
  1273.           It was unclear  what the network worm's objective was,  as it did
  1274.           not destroy  information, steal  passwords, or  plant viruses  or
  1275.           Trojan horses.  The  potential for destruction was very  high, as
  1276.           the  worm  could have  contained  code  to effect  many  forms of
  1277.  
  1278.           damage, such as  to destroy all files  on each system.   For more
  1279.           information, see [DENNING89] and [SPAFFORD88].
  1280.  
  1281.  
  1282.           2.4  Other Related Software Threats
  1283.  
  1284.  
  1285.           The  number of variations of Trojan horses, computer viruses, and
  1286.           network worms is apparently endless.   Some have names, such as a
  1287.           rabbit, whose objective is to spread wildly within or among other
  1288.           systems  and  disrupt  network  traffic,  or a  bacterium,  whose
  1289.           objective is to  replicate within a  system and eat up  processor
  1290.           time  until computer  throughput is  halted [DENNING88].   It  is
  1291.           likely  that  many new  forms  will  be  created, employing  more
  1292.           sophisticated techniques for spreading and causing damage.
  1293.  
  1294.  
  1295.  
  1296.           2.5  The Threat of Unauthorized Use
  1297.  
  1298.           In  that computer viruses and related forms of malicious software
  1299.           are intriguing  issues  in themselves,  it  is important  not  to
  1300.  
  1301.           overlook that they are created by people, and are fundamentally a
  1302.           people problem.   In essence, examples of malicious  software are
  1303.           tools that  people use  to extend  and enhance  their ability  to
  1304.           create mischief and various other forms of damage.  Such software
  1305.           can do  things that  the interactive user  often cannot  directly
  1306.  
  1307.           effect,  such  as  working  with   great  speed,  or  maintaining
  1308.           anonymity,  or  doing  things that  require  programmatic  system
  1309.           calls.   But  in general,  malicious  software exploits  the same
  1310.           vulnerabilities  as  can knowledgeable  users.   Thus,  any steps
  1311.  
  1312.  
  1313.                                          2-8
  1314.  
  1315.  
  1316.  
  1317.  
  1318.  
  1319.  
  1320.  
  1321.  
  1322.  
  1323.  
  1324.  
  1325.  
  1326.                                        COMPUTER VIRUSES AND RELATED THREATS
  1327.                                                                   CHAPTER 2
  1328.  
  1329.  
  1330.  
  1331.           taken to  reduce the likelihood  of attack by  malicious software
  1332.           should address  the likelihood  of unauthorized  use by  computer
  1333.           users.
  1334.  
  1335.  
  1336.  
  1337.  
  1338.  
  1339.  
  1340.  
  1341.  
  1342.  
  1343.  
  1344.  
  1345.  
  1346.  
  1347.  
  1348.  
  1349.  
  1350.  
  1351.  
  1352.  
  1353.  
  1354.  
  1355.  
  1356.  
  1357.  
  1358.  
  1359.  
  1360.  
  1361.  
  1362.  
  1363.  
  1364.  
  1365.  
  1366.  
  1367.  
  1368.  
  1369.  
  1370.  
  1371.  
  1372.  
  1373.  
  1374.  
  1375.  
  1376.  
  1377.  
  1378.  
  1379.                                          2-9
  1380.  
  1381.  
  1382.  
  1383.  
  1384.  
  1385.  
  1386.  
  1387.  
  1388.  
  1389.  
  1390.  
  1391.  
  1392.           COMPUTER VIRUSES AND RELATED THREATS
  1393.           CHAPTER 2
  1394.  
  1395.  
  1396.  
  1397.  
  1398.  
  1399.  
  1400.  
  1401.  
  1402.  
  1403.  
  1404.  
  1405.  
  1406.  
  1407.  
  1408.  
  1409.  
  1410.  
  1411.  
  1412.  
  1413.  
  1414.  
  1415.  
  1416.  
  1417.  
  1418.  
  1419.  
  1420.  
  1421.  
  1422.  
  1423.  
  1424.  
  1425.  
  1426.  
  1427.  
  1428.  
  1429.  
  1430.  
  1431.  
  1432.  
  1433.  
  1434.  
  1435.  
  1436.  
  1437.  
  1438.  
  1439.  
  1440.  
  1441.  
  1442.  
  1443.  
  1444.  
  1445.                                          2-10
  1446.  
  1447.  
  1448.  
  1449.  
  1450.  
  1451.  
  1452.  
  1453.  
  1454.  
  1455.  
  1456.  
  1457.  
  1458.                                        COMPUTER VIRUSES AND RELATED THREATS
  1459.                                                                   CHAPTER 3
  1460.  
  1461.  
  1462.  
  1463.  
  1464.                             3. Virus Prevention in General
  1465.  
  1466.  
  1467.           To provide general  protection from attacks by  computer viruses,
  1468.  
  1469.           unauthorized users, and related threats,  users and managers need
  1470.           to eliminate or reduce vulnerabilities.  A general summary of the
  1471.           vulnerabilities that  computer viruses  and  related threats  are
  1472.           most likely to exploit is as follows:
  1473.  
  1474.              o lack of user  awareness - users  copy and share  infected
  1475.                software, fail to detect signs of virus activity,  do not
  1476.                understand proper security techniques
  1477.  
  1478.              o absence  of or  inadequate security  controls -  personal
  1479.                computers generally  lack software and  hardware security
  1480.                mechanisms that help  to prevent and detect  unauthorized
  1481.                use,  existing   controls  on   multi-user  systems   can
  1482.                sometimes be surmounted by knowledgeable users
  1483.  
  1484.              o ineffective  use of  existing  security controls  - using
  1485.                easily guessed passwords, failing to use access controls,
  1486.                granting users more access to resources than necessary
  1487.  
  1488.              o bugs  and  loopholes  in   system  software  -   enabling
  1489.                knowledgeable users to break into systems or exceed their
  1490.                authorized privileges
  1491.  
  1492.              o unauthorized use  - unauthorized  users can  break in  to
  1493.                systems,  authorized users can exceed levels of privilege
  1494.                and misuse systems
  1495.  
  1496.              o susceptibility  of  networks  to  misuse  - networks  can
  1497.                provide anonymous access to systems,  many are in general
  1498.                only as secure as the systems which use them
  1499.  
  1500.           As can be seen from this  summary, virus prevention requires that
  1501.  
  1502.           many  diverse  vulnerabilities   be  addressed.    Some   of  the
  1503.           vulnerabilities  can  be  improved  upon significantly,  such  as
  1504.           security controls that can be added or improved, while others are
  1505.           somewhat inherent in computing, such as  the risk that users will
  1506.           not use  security controls  or follow  policies, or  the risk  of
  1507.  
  1508.           unauthorized use of computers and networks.  Thus,  it may not be
  1509.  
  1510.  
  1511.                                          3-1
  1512.  
  1513.  
  1514.  
  1515.  
  1516.  
  1517.  
  1518.  
  1519.  
  1520.  
  1521.  
  1522.  
  1523.  
  1524.           COMPUTER VIRUSES AND RELATED THREATS
  1525.           CHAPTER 3
  1526.  
  1527.  
  1528.  
  1529.           possible  to  completely  protect  systems  from  all  virus-like
  1530.           attacks.   However, to  attain a realistic  degree of protection,
  1531.           all areas of vulnerability must be addressed; improving upon some
  1532.           areas at the expense of others will still leave significant holes
  1533.           in security.  
  1534.  
  1535.  
  1536.           To  adequately  address all  areas  of vulnerability,  the active
  1537.           involvement  of individual  users, the management  structure, and
  1538.           the  organization  in a  virus  prevention program  is essential.
  1539.           Such a program, whether formal or informal, depends on the mutual
  1540.  
  1541.           cooperation of the  three groups to identify  vulnerabilities, to
  1542.           take steps to correct them, and to monitor the results.
  1543.  
  1544.           A virus prevention program must be initially based upon effective
  1545.           system   computer  administration   that   restricts  access   to
  1546.  
  1547.           authorized  users,   ensures  that  hardware  and   software  are
  1548.           regularly monitored and maintained, makes  backups regularly, and
  1549.           maintains contingency  procedures for potential  problems.  Sites
  1550.           that do not maintain a basic computer administration program need
  1551.           to put  one into place, regardless of their  size or the types of
  1552.  
  1553.           computers used.  Many system vendors supply system administration
  1554.           manuals that describe the aspects of a basic program, and one can
  1555.           consult documents such as [FIPS73], or [NBS120].
  1556.  
  1557.           Once a basic  administration program is in  place, management and
  1558.  
  1559.           users need  to incorporate  virus prevention  measures that  will
  1560.           help to deter attacks by viruses and related threats, detect when
  1561.           they occur, contain the attacks to limit damage, and recover in a
  1562.           reasonable amount of  time without loss  of data.  To  accomplish
  1563.           these aims, attention needs to be focused on the following areas:
  1564.  
  1565.  
  1566.              o educating users  about malicious software in general, the
  1567.                risks  that  it  poses,  how  to  use  control  measures,
  1568.                policies, and  procedures to  protect themselves  and the
  1569.                organization
  1570.  
  1571.              o software management policies  and procedures that address
  1572.                public-domain software, and  the use  and maintenance  of
  1573.                software in general
  1574.  
  1575.  
  1576.  
  1577.                                          3-2
  1578.  
  1579.  
  1580.  
  1581.  
  1582.  
  1583.  
  1584.  
  1585.  
  1586.  
  1587.  
  1588.  
  1589.  
  1590.                                        COMPUTER VIRUSES AND RELATED THREATS
  1591.                                                                   CHAPTER 3
  1592.  
  1593.  
  1594.  
  1595.              o use of technical controls that  help to prevent and deter
  1596.                attacks by malicious software and unauthorized users
  1597.  
  1598.              o monitoring of user and software  activity to detect signs
  1599.                of attacks, to  detect policy violations, and  to monitor
  1600.                the overall  effectiveness of  policies, procedures,  and
  1601.                controls
  1602.  
  1603.              o contingency policies  and procedures  for containing  and
  1604.                recovering from attacks
  1605.  
  1606.           General  guidance  in each  of these  areas  is explained  in the
  1607.           following sections.
  1608.  
  1609.  
  1610.           3.1  User Education
  1611.  
  1612.  
  1613.           Education is  one of  the primary  methods by  which systems  and
  1614.           organizations can  achieve greater  protection from  incidents of
  1615.           malicious software  and unauthorized  use.   In situations  where
  1616.           technical controls do not provide complete protection (i.e., most
  1617.  
  1618.           computers),  it  is ultimately  people  and their  willingness to
  1619.           adhere to security  policies that will determine  whether systems
  1620.           and organizations  are protected.   By educating users  about the
  1621.           general  nature  of  computer  viruses  and related  threats,  an
  1622.           organization can improve  its ability  to deter, detect,  contain
  1623.  
  1624.           and recover from potential incidents.
  1625.  
  1626.           Users should be educated about the following:
  1627.  
  1628.              o how malicious software  operates, methods by which  it is
  1629.                planted  and  spread,  the  vulnerabilities exploited  by
  1630.                malicious software and unauthorized users
  1631.  
  1632.              o general security policies  and procedures and how  to use
  1633.                them
  1634.  
  1635.              o the policies to follow regarding the backup, storage, and
  1636.                use of  software, especially  public-domain software  and
  1637.                shareware
  1638.  
  1639.              o how  to use  the technical  controls they  have at  their
  1640.                disposal to protect themselves
  1641.  
  1642.  
  1643.                                          3-3
  1644.  
  1645.  
  1646.  
  1647.  
  1648.  
  1649.  
  1650.  
  1651.  
  1652.  
  1653.  
  1654.  
  1655.  
  1656.           COMPUTER VIRUSES AND RELATED THREATS
  1657.           CHAPTER 3
  1658.  
  1659.  
  1660.  
  1661.  
  1662.              o how to monitor their systems and software to detect signs
  1663.                of abnormal activity, what  to do or whom to  contact for
  1664.                more information
  1665.  
  1666.              o contingency procedures for containing and recovering from
  1667.                potential incidents
  1668.  
  1669.           User education,  while perhaps  expensive in  terms  of time  and
  1670.           resources required,  is ultimately a  cost-effective measure  for
  1671.           protecting  against   incidents   of   malicious   software   and
  1672.           unauthorized  use.  Users  who  are  better acquainted  with  the
  1673.           destructive potential of  malicious software  and the methods  by
  1674.  
  1675.           which it  can attack  systems may  in  turn be  prompted to  take
  1676.           measures to protect themselves.  The purpose of security policies
  1677.           and procedures will be more clear, thus users may be more willing
  1678.           to actively use them.  By  educating users how to detect abnormal
  1679.           system activity  and the resultant steps to follow for containing
  1680.  
  1681.           and recovering from potential  incidents, organizations will save
  1682.           money and time if and when actual incidents occur.
  1683.  
  1684.  
  1685.           3.2  Software Management
  1686.  
  1687.  
  1688.           As shown by  examples in Chapter 2,  one of the prime  methods by
  1689.           which malicious software  is initially copied onto  systems is by
  1690.           unsuspecting users.   When users  download programs from  sources
  1691.           such  as  software  bulletin  boards,  or public  directories  on
  1692.  
  1693.           systems or network servers, or in  general use and share software
  1694.           that has  not been obtained from a reputable source, users are in
  1695.           danger of  spreading malicious software.   To prevent  users from
  1696.           potentially spreading malicious software, managers need to
  1697.  
  1698.              o ensure  that  users understand  the  nature of  malicious
  1699.                software,  how it is generally  spread, and the technical
  1700.                controls to use to protect themselves
  1701.  
  1702.              o develop policies for  the downloading and use  of public-
  1703.                domain and shareware software
  1704.  
  1705.              o create  some mechanism for validating such software prior
  1706.                to allowing users to copy and use it
  1707.  
  1708.  
  1709.                                          3-4
  1710.  
  1711.  
  1712.  
  1713.  
  1714.  
  1715.  
  1716.  
  1717.  
  1718.  
  1719.  
  1720.  
  1721.  
  1722.                                        COMPUTER VIRUSES AND RELATED THREATS
  1723.                                                                   CHAPTER 3
  1724.  
  1725.  
  1726.  
  1727.  
  1728.              o minimize the exchange  of executable  software within  an
  1729.                organization as much as possible
  1730.  
  1731.              o do not create  software repositories on LAN servers or in
  1732.                multi-user system directories  unless technical  controls
  1733.                exist  to   prevent  users   from  freely   uploading  or
  1734.                downloading the software
  1735.  
  1736.           The  role  of  education  is  important,  as  users  who  do  not
  1737.           understand  the risks  yet who  are  asked to  follow necessarily
  1738.           restrictive policies may share and  copy software anyway.   Where
  1739.           technical controls  cannot prevent  placing new  software onto  a
  1740.           system, users are  then primarily responsible for the  success or
  1741.  
  1742.           failure of whatever policies are developed.
  1743.  
  1744.           A policy  that  prohibits any  copying  or use  of  public-domain
  1745.           software  may  be  overly  restrictive,  as  some  public  domain
  1746.           programs have proved  to be  useful.  A  less restrictive  policy
  1747.  
  1748.           would  allow some  copying, however  a  user might  first require
  1749.           permission from the appropriate manager.  A special system should
  1750.           be used  from which  to perform  the copy  and then  to test  the
  1751.           software.  This type of system, called an isolated system, should
  1752.           be configured so that there is no risk of spreading a potentially
  1753.  
  1754.           malicious program to other areas of  an organization.  The system
  1755.           should  not  be  used  by  other  users, should  not  connect  to
  1756.           networks, and should not contain any  valuable data.  An isolated
  1757.           system should also be used  to test internally developed software
  1758.           and updates to vendor software.
  1759.  
  1760.  
  1761.           Other policies for managing vendor  software should be developed.
  1762.           These  policies  should   control  how  and  where   software  is
  1763.           purchased, and should govern where the software  is installed and
  1764.           how it is to be used.  The following policies and  procedures are
  1765.  
  1766.           suggested:
  1767.  
  1768.              o purchase vendor software only from reputable sources
  1769.  
  1770.              o maintain the software properly and update it as necessary
  1771.  
  1772.              o don't use pirated software, as it may have been modified
  1773.  
  1774.  
  1775.                                          3-5
  1776.  
  1777.  
  1778.  
  1779.  
  1780.  
  1781.  
  1782.  
  1783.  
  1784.  
  1785.  
  1786.  
  1787.  
  1788.           COMPUTER VIRUSES AND RELATED THREATS
  1789.           CHAPTER 3
  1790.  
  1791.  
  1792.  
  1793.  
  1794.              o keep  records  of  where  software is  installed  readily
  1795.                available for contingency purposes
  1796.  
  1797.              o ensure that vendors can be  contacted quickly if problems
  1798.                occur
  1799.  
  1800.              o store the original  disks or tapes  from the vendor in  a
  1801.                secure location
  1802.  
  1803.  
  1804.           3.3  Technical Controls
  1805.  
  1806.           Technical  controls  are  the  mechanisms  used  to  protect  the
  1807.  
  1808.           security and integrity of  systems and associated data.   The use
  1809.           of technical controls can help  to prevent occurrences of viruses
  1810.           and related threats by deterring them or making it more difficult
  1811.           for them  to  gain access  to  systems  and data.    Examples  of
  1812.           technical controls include user authentication mechanisms such as
  1813.  
  1814.           passwords, mechanisms which provide selective levels of access to
  1815.           files and directories  (read-only, no  access, access to  certain
  1816.           users,  etc.),  and  write-protection  mechanisms  on  tapes  and
  1817.           diskettes.
  1818.  
  1819.  
  1820.           The different types of technical controls and the degree to which
  1821.           they  can provide protection and deterrence varies from system to
  1822.           system, thus the use  of specific types of controls  is discussed
  1823.           in Chapters  4 and 5.  However,  the following general points are
  1824.           important to note:
  1825.  
  1826.              o technical  controls  should  be  used  as   available  to
  1827.                restrict system access to authorized users only
  1828.  
  1829.              o in the multi-user environment, technical controls  should
  1830.                be  used  to  limit  users'  privileges  to  the  minimum
  1831.                practical level; they should work  automatically and need
  1832.                not be initiated by users
  1833.  
  1834.              o users and system managers must be  educated as to how and
  1835.                when to use technical controls
  1836.  
  1837.              o where  technical controls are weak or non-existent (i.e.,
  1838.                personal  computers), they  should  be supplemented  with
  1839.  
  1840.  
  1841.                                          3-6
  1842.  
  1843.  
  1844.  
  1845.  
  1846.  
  1847.  
  1848.  
  1849.  
  1850.  
  1851.  
  1852.  
  1853.  
  1854.                                        COMPUTER VIRUSES AND RELATED THREATS
  1855.                                                                   CHAPTER 3
  1856.  
  1857.  
  1858.  
  1859.                alternative   physical   controls   or   add-on   control
  1860.                mechanisms
  1861.  
  1862.           Managers need to determine which technical controls are available
  1863.           on their systems,  and then the  degree to which  they should  be
  1864.           used and whether  additional add-on controls are  necessary.  One
  1865.           way  to  answer  these  questions  is  to  first  categorize  the
  1866.           different classes of data being processed by a system or systems,
  1867.  
  1868.           and then to  rank the  categories according to  criteria such  as
  1869.           sensitivity to the  organization and vulnerability of  the system
  1870.           to attack.  The rankings should then help determine the degree to
  1871.           which  the  controls  should be  applied  and  whether additional
  1872.           controls are  necessary.   Ideally, those systems  with the  most
  1873.  
  1874.           effective controls should be used  to process the most  sensitive
  1875.           data, and vice-versa.   As an example, a personal  computer which
  1876.           processes  sensitive employee  information should  require add-on
  1877.           user authentication mechanisms, whereas  a personal computer used
  1878.           for general word processing may not need additional controls.
  1879.  
  1880.  
  1881.           It is important to note that  technical controls do not generally
  1882.           provide complete protection against viruses  and related threats.
  1883.           They may be cracked by determined  users who are knowledgeable of
  1884.           hidden  bugs and weaknesses,  and they may  be surmounted through
  1885.  
  1886.           the use of Trojan horse programs, as shown by examples in Chapter
  1887.           2.  An  inherent weakness  in technical controls  is that,  while
  1888.           deterring users and  software from objects  to which they do  not
  1889.           have  access,  they may  be  totally ineffective  against attacks
  1890.           which target objects that are accessible.  For example, technical
  1891.  
  1892.           controls may not prevent an authorized user from destroying files
  1893.           to which the user has authorized  access.  Most importantly, when
  1894.           technical controls  are not  used properly, they  may increase  a
  1895.           system's  degree of vulnerability.   It is  generally agreed that
  1896.           fully effective technical  controls will not be  widely available
  1897.  
  1898.           for some time.   Because of the immediate nature of  the computer
  1899.           virus threat,  technical controls  must be  supplemented by  less
  1900.           technically-oriented control  measures such as  described in this
  1901.           chapter.
  1902.  
  1903.  
  1904.  
  1905.  
  1906.  
  1907.                                          3-7
  1908.  
  1909.  
  1910.  
  1911.  
  1912.  
  1913.  
  1914.  
  1915.  
  1916.  
  1917.  
  1918.  
  1919.  
  1920.           COMPUTER VIRUSES AND RELATED THREATS
  1921.           CHAPTER 3
  1922.  
  1923.  
  1924.  
  1925.           3.4  General Monitoring
  1926.  
  1927.           An  important aspect of  computer viruses and  related threats is
  1928.           that they  potentially can cause  extensive damage within  a very
  1929.           small amount of time, such as minutes or seconds.  Through proper
  1930.  
  1931.           monitoring of software, system activity,  and in some cases  user
  1932.           activity,  managers  can increase  their  chances that  they will
  1933.           detect   early  signs  of  malicious  software  and  unauthorized
  1934.           activity.  Once the presence is  noted or suspected, managers can
  1935.           then  use  contingency  procedures to  contain  the  activity and
  1936.  
  1937.           recover  from whatever  damage has  been  caused.   An additional
  1938.           benefit of  general monitoring is that  over time, it can  aid in
  1939.           determining  the  necessary  level  or   degree  of  security  by
  1940.           indicating  whether security  policies, procedures,  and controls
  1941.           are working as planned.
  1942.  
  1943.  
  1944.           Monitoring  is  a  combination  of  continual system  and  system
  1945.           management activity.   Its effectiveness  depends on  cooperation
  1946.           between management and users.   The following items are necessary
  1947.           for effective monitoring:
  1948.  
  1949.  
  1950.              o user  education  -  users must  know,  specific  to their
  1951.                computing  environment,  what   constitutes  normal   and
  1952.                abnormal system activity and whom  to contact for further
  1953.                information - this  is especially important for  users of
  1954.                personal  computers,  which   generally  lack   automated
  1955.                methods for monitoring
  1956.  
  1957.              o automated system  monitoring tools - generally  on multi-
  1958.                user systems, to  automate logging or accounting  of user
  1959.                and  software  accesses  to accounts,  files,  and  other
  1960.                system objects  - can sometimes  be tuned to  record only
  1961.                certain types of accesses such as "illegal" accesses
  1962.  
  1963.              o anti-viral software  - generally  on personal  computers,
  1964.                these tools alert users of certain types of system access
  1965.                that are indicative of "typical" malicious software
  1966.  
  1967.              o system-sweep programs  - programs to  automatically check
  1968.                files for changes in size, date, or content
  1969.  
  1970.  
  1971.  
  1972.  
  1973.                                          3-8
  1974.  
  1975.  
  1976.  
  1977.  
  1978.  
  1979.  
  1980.  
  1981.  
  1982.  
  1983.  
  1984.  
  1985.  
  1986.                                        COMPUTER VIRUSES AND RELATED THREATS
  1987.                                                                   CHAPTER 3
  1988.  
  1989.  
  1990.  
  1991.              o network  monitoring  tools -  as  with system  monitoring
  1992.                tools, to record network accesses or attempts to access
  1993.  
  1994.           The statistics gained  from monitoring activities should  be used
  1995.           as input for periodic reviews of  security programs.  The reviews
  1996.           should  evaluate the effectiveness  of general system management,
  1997.  
  1998.           and associated security policies, procedures,  and controls.  The
  1999.           statistics will indicate  the need for  changes and will help  to
  2000.           fine tune the program so that security is distributed to where it
  2001.           is most necessary.   The reviews  should also incorporate  users'
  2002.           suggestions,  and  to  ensure  that  the program  is  not  overly
  2003.  
  2004.           restrictive, their criticisms.
  2005.  
  2006.  
  2007.           3.5  Contingency Planning
  2008.  
  2009.  
  2010.           The  purpose  of  contingency planning  with  regard  to computer
  2011.           viruses and related threats is to be able to  contain and recover
  2012.           completely from  actual attacks.  In many  ways, effective system
  2013.           management  that  includes  user  education,  use   of  technical
  2014.           controls,  software management,  and monitoring activities,  is a
  2015.  
  2016.           form  of  contingency  planning, generally  because  a  well-run,
  2017.           organized  system  or facility  is better  able to  withstand the
  2018.           disruption that could  result from a  computer virus attack.   In
  2019.           addition to effective system management activities, managers need
  2020.           to consider  other contingency procedures that  specifically take
  2021.  
  2022.           into account the nature of computer viruses and related threats.
  2023.  
  2024.           Possibly  the  most   important  contingency  planning   activity
  2025.           involves the use of backups.  The ability to recover from a virus
  2026.           attack depends upon maintaining regular,  frequent backups of all
  2027.  
  2028.           system data.   Each backup should be  checked to ensure  that the
  2029.           backup media has not  been corrupted.  Backup media  could easily
  2030.           be corrupted because of defects, because the backup procedure was
  2031.           incorrect, or perhaps because the backup software itself has been
  2032.           attacked and modified to corrupt backups as they are made.
  2033.  
  2034.  
  2035.           Contingency procedures for  restoring from backups after  a virus
  2036.           attack  are equally  important.   Backups may  contain  copies of
  2037.  
  2038.  
  2039.                                          3-9
  2040.  
  2041.  
  2042.  
  2043.  
  2044.  
  2045.  
  2046.  
  2047.  
  2048.  
  2049.  
  2050.  
  2051.  
  2052.           COMPUTER VIRUSES AND RELATED THREATS
  2053.           CHAPTER 3
  2054.  
  2055.  
  2056.  
  2057.           malicious  software  that   have  been  hiding  in   the  system.
  2058.           Restoring  the  malicious software  to  a  system  that has  been
  2059.           attacked could  cause a recurrence of the problem.  To avoid this
  2060.           possibility, software should  be restored only from  its original
  2061.           media:   the tapes or diskettes from the  vendor.  In some cases,
  2062.  
  2063.           this may  involve reconfiguring the software,  therefore managers
  2064.           must maintain copies of configuration  information for system and
  2065.           application software.   Because data is not  directly executable,
  2066.           it  can be restored from routine backups.  However, data that has
  2067.           been  damaged  may need  to be  restored  manually or  from older
  2068.  
  2069.           backups.    Command files  such  as  batch  procedures and  files
  2070.           executed  when  systems  boot  or  when  user log  on  should  be
  2071.           inspected to ensure that they have  not been damaged or modified.
  2072.           Thus,  managers  will  need  to  retain  successive  versions  of
  2073.           backups, and search through them when restoring  damaged data and
  2074.  
  2075.           command files.
  2076.  
  2077.           Other contingency procedures for containing virus attacks need to
  2078.           be developed.  The following are suggested; they are discussed in
  2079.           more detail in Chapters 4 and 5:
  2080.  
  2081.  
  2082.              o ensure that accurate  records are  kept of each  system's
  2083.                configuration,  including  the  system's   location,  the
  2084.                software  it   runs,  the  system's  network   and  modem
  2085.                connections,  and  the name  of  the system's  manager or
  2086.                responsible individual
  2087.  
  2088.              o create a  group  of  skilled users  to  deal  with  virus
  2089.                incidents and ensure that users  can quickly contact this
  2090.                group if they suspect signs of viral activity
  2091.  
  2092.              o maintain a security  distribution list at each  site with
  2093.                appropriate telephone numbers of managers to contact when
  2094.                problems occur
  2095.  
  2096.              o isolate critical systems from  networks and other sources
  2097.                of infection
  2098.  
  2099.              o place outside  network connections  on  systems with  the
  2100.                best  protections,  use  central  gateways to  facilitate
  2101.                rapid disconnects
  2102.  
  2103.  
  2104.  
  2105.                                          3-10
  2106.  
  2107.  
  2108.  
  2109.  
  2110.  
  2111.  
  2112.  
  2113.  
  2114.  
  2115.  
  2116.  
  2117.  
  2118.                                        COMPUTER VIRUSES AND RELATED THREATS
  2119.                                                                   CHAPTER 4
  2120.  
  2121.  
  2122.  
  2123.  
  2124.                      4. Virus Prevention for Multi-User Computers
  2125.                                and Associated Networks
  2126.  
  2127.           Virus prevention in the multi-user  computer environment is aided
  2128.  
  2129.           by the centralized system and  user management, and the  relative
  2130.           richness of technical controls.   Unlike personal computers, many
  2131.           multi-user    systems   possess    basic   controls    for   user
  2132.           authentication, for levels  of access  to files and  directories,
  2133.           and  for  protected regions  of  memory.   By  themselves,  these
  2134.  
  2135.           controls are not  adequate, but combined with other  policies and
  2136.           procedures that  specifically target viruses and related threats,
  2137.           multi-user systems  can greatly  reduce their  vulnerabilities to
  2138.           exploitation and attack.
  2139.  
  2140.  
  2141.           However, some relatively powerful multi-user  machines are now so
  2142.           compact as to be  able to be located  in an office or on  a desk-
  2143.           top.  These machines are still fully able to support a small user
  2144.           population, to connect to major  networks, and to perform complex
  2145.           real-time operations.  But  due to their size and  increased ease
  2146.  
  2147.           of operation, they  are more  vulnerable to unauthorized  access.
  2148.           Also,  multi-user  machines are  sometimes  managed by  untrained
  2149.           personnel  who  do not  have adequate  time  to devote  to proper
  2150.           system management and who may not possess  a technical background
  2151.           or  understanding  of  the  system's  operation.    Thus,  it  is
  2152.  
  2153.           especially important for organizations who use or are considering
  2154.           machines of this nature to pay  particular attention to the risks
  2155.           of attack by unauthorized users, viruses, and related software.
  2156.  
  2157.           The  following sections  offer guidance  and recommendations  for
  2158.  
  2159.           improving  the management  and reducing  the risk  of attack  for
  2160.           multi-user computers and associated networks.
  2161.  
  2162.  
  2163.           4.1  General Policies
  2164.  
  2165.  
  2166.           Two general policies are  suggested here.  They are  intended for
  2167.           uniform adoption throughout an organization,  i.e., they will not
  2168.  
  2169.  
  2170.  
  2171.                                          4-1
  2172.  
  2173.  
  2174.  
  2175.  
  2176.  
  2177.  
  2178.  
  2179.  
  2180.  
  2181.  
  2182.  
  2183.  
  2184.           COMPUTER VIRUSES AND RELATED THREATS
  2185.           CHAPTER 4
  2186.  
  2187.  
  2188.  
  2189.           be entirely effective if they are  not uniformly followed.  These
  2190.           policies are as follows:
  2191.  
  2192.              o An organization must assign a dedicated system manager to
  2193.                operate each multi-user computer.   The manager should be
  2194.                trained,  if  necessary,  to  operate  the  system  in  a
  2195.                practical and secure  manner.  This individual  should be
  2196.                assigned  the  management  duties  as  part  of  his  job
  2197.                description; the management duties should not be assigned
  2198.                "on top"  of the  individual's other  duties, but  rather
  2199.                adequate time should be taken  from other duties.  System
  2200.                management  is a  demanding and  time-consuming operation
  2201.                that can  unexpectedly require  complete dedication.   As
  2202.                systems are increasingly inter-connected via networks,  a
  2203.                poorly managed system that  can be used as a  pathway for
  2204.                unauthorized access  to  other  systems  will  present  a
  2205.                significant vulnerability to an organization.   Thus, the
  2206.                job of system  manager should be assigned  carefully, and
  2207.                adequate time be given  so that the job can  be performed
  2208.                completely.
  2209.  
  2210.              o Management needs to impress upon users the need for their
  2211.                involvement  and  cooperation in  computer  security.   A
  2212.                method  for  doing this  is  to create  an organizational
  2213.                security policy.  This policy should be a superset of all
  2214.                other  computer-related  policy,  and  should  serve   to
  2215.                clearly define what is  expected of the user.   It should
  2216.                detail  how  systems are  to be  used  and what  sorts of
  2217.                computing are permitted and not  permitted.  Users should
  2218.                read this policy  and agree  to it as  a prerequisite  to
  2219.                computer  use.   It  would also  be  helpful to  use this
  2220.                policy to create  other policies specific to  each multi-
  2221.                user system.
  2222.  
  2223.  
  2224.           4.2  Software Management
  2225.  
  2226.  
  2227.           Effective  software management  can help  to make  a  system less
  2228.           vulnerable to  attack and can make containment  and recovery more
  2229.           successful.  Carefully controlled access to software will prevent
  2230.           or  discourage  unauthorized  access.   If  accurate  records and
  2231.  
  2232.           backups  are  maintained, software  restoral can  be accomplished
  2233.           with  a minimum of lost  time and data.  A  policy of testing all
  2234.           new  software,  especially  public-domain   software,  will  help
  2235.  
  2236.  
  2237.                                          4-2
  2238.  
  2239.  
  2240.  
  2241.  
  2242.  
  2243.  
  2244.  
  2245.  
  2246.  
  2247.  
  2248.  
  2249.  
  2250.                                        COMPUTER VIRUSES AND RELATED THREATS
  2251.                                                                   CHAPTER 4
  2252.  
  2253.  
  2254.  
  2255.           prevent accidental infection  of a system by  viruses and related
  2256.           software.    Thus,  the  following  policies and  procedures  are
  2257.           recommended:
  2258.  
  2259.              o Use only licensed copies of  vendor software, or software
  2260.                that can be verified to be free of harmful code or  other
  2261.                destructive aspects.  Maintain complete information about
  2262.                the software, such  as the  vendor address and  telephone
  2263.                number,  the  license  number  and  version,  and  update
  2264.                information.   Store the  software in  a secure,  tamper-
  2265.                proof location.
  2266.  
  2267.              o Maintain configuration reports of all installed software,
  2268.                including the operating system.  This information will be
  2269.                necessary if the software must be re-installed later.
  2270.  
  2271.              o Prevent user access to system software and  data.  Ensure
  2272.                that  such  software   is  fully   protected,  and   that
  2273.                appropriate  monitoring  is  done to  detect  attempts at
  2274.                unauthorized access.
  2275.  
  2276.              o Prohibit users  from installing software.   Users  should
  2277.                first contact the system  manager regarding new software.
  2278.                The software should  then be tested on an isolated system
  2279.                to determine whether the software may contain destructive
  2280.                elements.  The isolated system should  be set up so that,
  2281.                to a practical  degree, it replicates the  target system,
  2282.                but does  not connect  to networks  or process  sensitive
  2283.                data.  A highly-skilled user knowledgeable about  viruses
  2284.                and related threats should perform the testing and ensure
  2285.                that  the  software  does  not  change  or  delete  other
  2286.                software or data.  Do not allow users to directly add any
  2287.                software  to  the  system, whether  from  public software
  2288.                repositories, or other systems, or their home systems.
  2289.  
  2290.              o Teach  users  to  protect  their  data  from unauthorized
  2291.                access.  Ensure that they know how to use access controls
  2292.                or  file  protection mechanisms  to  prevent others  from
  2293.                reading  or  modifying  their files.    As  possible, set
  2294.                default file protections such that when a user  creates a
  2295.                file, the file can  be accessed only by that user, and no
  2296.                others.  Each user should not permit others to use his or
  2297.                her account.
  2298.  
  2299.              o Do  not   set-up  directories   to   serve  as   software
  2300.                repositories  unless  technical  controls  are  used   to
  2301.  
  2302.  
  2303.                                          4-3
  2304.  
  2305.  
  2306.  
  2307.  
  2308.  
  2309.  
  2310.  
  2311.  
  2312.  
  2313.  
  2314.  
  2315.  
  2316.           COMPUTER VIRUSES AND RELATED THREATS
  2317.           CHAPTER 4
  2318.  
  2319.  
  2320.  
  2321.                prevent users from  writing to the directory.   Make sure
  2322.                that users contact the system  manager regarding software
  2323.                they wish to place in a software repository.  It would be
  2324.                helpful  to  track  where the  software  is  installed by
  2325.                setting up a  process whereby  users must first  register
  2326.                their  names  before  they  can  copy software  from  the
  2327.                directory.
  2328.  
  2329.              o If  developing  software, control  the update  process so
  2330.                that the  software is not modified without authorization.
  2331.                Use a  software  management and  control  application  to
  2332.                control  access  to  the  software  and to  automate  the
  2333.                logging of modifications.
  2334.  
  2335.              o Accept system and  application bug fixes or  patches only
  2336.                from  highly  reliable  sources,  such  as  the  software
  2337.                vendor.  Do  not accept  patches from anonymous  sources,
  2338.                such as received via a network.  Test the new software on
  2339.                an isolated system  to ensure that the  software does not
  2340.                make an existing problem worse.
  2341.  
  2342.  
  2343.           4.3  Technical Controls
  2344.  
  2345.           Many  multi-user  computers   contain  basic  built-in  technical
  2346.           controls.   These  include  user  authentication  via  passwords,
  2347.  
  2348.           levels of user  privilege, and  file access controls.   By  using
  2349.           these  basic  controls  effectively, managers  can  significantly
  2350.           reduce the risk of attack by  preventing or deterring viruses and
  2351.           related threats from accessing a system.
  2352.  
  2353.  
  2354.           Perhaps   the   most   important   technical   control   is  user
  2355.           authentication, with the most widely  form of user authentication
  2356.           being a username associated with a  password.  Every user account
  2357.           should use a password that is  deliberately chosen so that simple
  2358.           attempts  at  password  cracking  cannot  occur.    An  effective
  2359.  
  2360.           password should not consist of a  person's name or a recognizable
  2361.           word, but rather should consist of alphanumeric characters and/or
  2362.           strings of words  that cannot easily  be guessed.  The  passwords
  2363.           should be changed  at regular intervals,  such as every three  to
  2364.           six months.  Some systems include or can be modified to include a
  2365.  
  2366.           password history, to  prevent users  from reusing old  passwords.
  2367.  
  2368.  
  2369.                                          4-4
  2370.  
  2371.  
  2372.  
  2373.  
  2374.  
  2375.  
  2376.  
  2377.  
  2378.  
  2379.  
  2380.  
  2381.  
  2382.                                        COMPUTER VIRUSES AND RELATED THREATS
  2383.                                                                   CHAPTER 4
  2384.  
  2385.  
  2386.  
  2387.           For   more  information  on  effective  password  practices,  see
  2388.           [FIPS73].
  2389.  
  2390.           The  username/password mechanism  can  sometimes be  modified  to
  2391.           reduce opportunities  for password  cracking.  One  method is  to
  2392.  
  2393.           increase the running time of  the password encryption to  several
  2394.           seconds.   Another method is to  cause the user login  program to
  2395.           accept from three  to five incorrect  password attempts in a  row
  2396.           before disabling  the  user account  for several  minutes.   Both
  2397.           methods  significantly  increase the  amount  of time  a password
  2398.  
  2399.           cracker would spend  when making repeated attempts at  guessing a
  2400.           password.  A method for ensuring  that passwords are difficult to
  2401.           crack involves  the use  of a  program that  could systematically
  2402.           guess passwords,  and then  send warning messages  to the  system
  2403.           manager and corresponding users if successful.  The program could
  2404.  
  2405.           attempt passwords that  are permutations of each  user's name, as
  2406.           well as using words from an on-line dictionary.
  2407.  
  2408.           Besides  user  authentication,   access  control  mechanisms  are
  2409.           perhaps  the  next  most  important  technical control.    Access
  2410.  
  2411.           control mechanisms permit a system  manager to selectively permit
  2412.           or bar user access  to system resources regardless of  the user's
  2413.           level of privilege.  For example, a user at a low-level of system
  2414.           privilege  can be granted access to a  resource at a higher level
  2415.           of privilege without raising the user's privilege through the use
  2416.  
  2417.           of an access  control that specifically grants that  user access.
  2418.           Usually,  the access control  can determine  the type  of access,
  2419.           e.g.,  read  or  write.   Some  access  controls  can send  alarm
  2420.           messages  to audit logs  or the system  manager when unsuccessful
  2421.           attempts are  made  to access  resources protected  by an  access
  2422.  
  2423.           control.
  2424.  
  2425.           Systems which do not use access controls  usually contain another
  2426.           more  basic form  that grants  access based  on user  categories.
  2427.           Usually, there are four: owner, where only the user who "owns" or
  2428.           creates the resource  can access it;  group, where anyone in  the
  2429.           same group as the owner can access the resource; world, where all
  2430.           users can access  the resource, and system, which  supersedes all
  2431.           other user privileges.   Usually, a file or directory can  be set
  2432.  
  2433.  
  2434.                                          4-5
  2435.  
  2436.  
  2437.  
  2438.  
  2439.  
  2440.  
  2441.  
  2442.  
  2443.  
  2444.  
  2445.  
  2446.  
  2447.           COMPUTER VIRUSES AND RELATED THREATS
  2448.           CHAPTER 4
  2449.  
  2450.  
  2451.  
  2452.           up to allow any combination of the four.  Unlike access controls,
  2453.           this scheme doesn't permit access to resources on a specific user
  2454.           basis, thus if a user at a low level of privilege requires access
  2455.           to  a  system level  resource, the  user  must be  granted system
  2456.           privilege.    However,   if  used  carefully,  this   scheme  can
  2457.  
  2458.           adequately  protect  users'  files from  being  accessed  without
  2459.           authorization.  The  most effective  mode is to  create a  unique
  2460.           group  for each  user.   Some systems  may permit a  default file
  2461.           permission mask  to be set  so that every  file created would  be
  2462.           accessible only by the file's owner.
  2463.  
  2464.  
  2465.           Other technical control guidelines are as follows:
  2466.  
  2467.              o Do  not  use  the  same   password  on  several  systems.
  2468.                Additionally,  sets  of   computers  that  are   mutually
  2469.                trusting in the sense that login to one constitutes login
  2470.                to all should be carefully controlled.
  2471.  
  2472.              o Disable  or  remove  old  or unnecessary  user  accounts.
  2473.                Whenever users leave  an organization or no  longer use a
  2474.                system, change all passwords that the users had knowledge
  2475.                of.
  2476.  
  2477.              o Practice a  "least privilege"  policy, whereby  users are
  2478.                restricted to accessing resources on a need-to-know basis
  2479.                only.    User  privileges  should  be as  restricting  as
  2480.                possible without adversely  affecting the performance  of
  2481.                their  work.   To  determine  what  level  of  access  is
  2482.                required, err first  by setting privileges to  their most
  2483.                restrictive,  and  upgrade  them as  necessary.    If the
  2484.                system uses access controls, attempt to maintain a user's
  2485.                system privileges at  a low level while using  the access
  2486.                controls  to  specifically grant  access to  the required
  2487.                resources.
  2488.  
  2489.              o Users are generally able to determine other users' access
  2490.                to their files  and directories,  thus instruct users  to
  2491.                carefully maintain their files  and directories such that
  2492.                they are not accessible,  or at a minimum,  not writable,
  2493.                by  other  users.     As   possible,  set  default   file
  2494.                protections such  that files  and directories created  by
  2495.                each user are accessible by only that user.
  2496.  
  2497.  
  2498.  
  2499.  
  2500.                                          4-6
  2501.  
  2502.  
  2503.  
  2504.  
  2505.  
  2506.  
  2507.  
  2508.  
  2509.  
  2510.  
  2511.  
  2512.  
  2513.                                        COMPUTER VIRUSES AND RELATED THREATS
  2514.                                                                   CHAPTER 4
  2515.  
  2516.  
  2517.  
  2518.              o When  using modems,  do not  provide more  access to  the
  2519.                system than is necessary.  For  example, if only dial-out
  2520.                service  is required, set up the  modem or telephone line
  2521.                so  that dial-in  service is  not  possible.   If dial-in
  2522.                service  is   necessary,  use  modems  that   require  an
  2523.                additional  passwords  or  modems  that  use  a call-back
  2524.                mechanism.  These modems may work such that a caller must
  2525.                first  identify   himself  to   the  system.     If   the
  2526.                identification has been pre-recorded with  the system and
  2527.                therefore valid,  the system  then calls  back at  a pre-
  2528.                recorded telephone number.
  2529.  
  2530.              o If file  encryption mechanisms are  available, make  them
  2531.                accessible to users.  Users may wish to use encryption as
  2532.                a  further  means of  protecting  the confidentiality  of
  2533.                their files, especially  if the system is  accessible via
  2534.                networks or modems.
  2535.  
  2536.              o Include  software so  that users  can temporarily  "lock"
  2537.                their terminals from accepting keystrokes while they  are
  2538.                away.  Use software that  automatically disables a user's
  2539.                account if no  activity occurs after a  certain interval,
  2540.                such as 10 - 15 minutes.
  2541.  
  2542.  
  2543.           4.4  Monitoring
  2544.  
  2545.           Many  multi-user systems  provide a  mechanism for  automatically
  2546.  
  2547.           recording  some  aspects  of  user  and  system  activity.   This
  2548.           monitoring  mechanism,  if  used regularly,  can  help  to detect
  2549.           evidence of viruses and  related threats.  Early detection  is of
  2550.           great  value, because  malicious software  potentially can  cause
  2551.           significant damage within a matter of  minutes.  Once evidence of
  2552.  
  2553.           an  attack  has  been  verified,  managers  can  use  contingency
  2554.           procedures to contain and recover from any resultant damage.
  2555.  
  2556.           Effective  monitoring   also  requires   user  involvement,   and
  2557.           therefore,  user education.  Users must  have some guidelines for
  2558.  
  2559.           what constitutes normal and abnormal  system activity.  They need
  2560.           to be aware of such items  as whether files have been changed  in
  2561.           content,  date, or by access permissions,  whether disk space has
  2562.           become suddenly full, and whether  abnormal error messages occur.
  2563.  
  2564.  
  2565.  
  2566.                                          4-7
  2567.  
  2568.  
  2569.  
  2570.  
  2571.  
  2572.  
  2573.  
  2574.  
  2575.  
  2576.  
  2577.  
  2578.  
  2579.           COMPUTER VIRUSES AND RELATED THREATS
  2580.           CHAPTER 4
  2581.  
  2582.  
  2583.  
  2584.           They need to know whom to contact to report signs of  trouble and
  2585.           then the steps to take to contain any damage.
  2586.  
  2587.           The following  policies and procedures  for effective  monitoring
  2588.           are recommended:
  2589.  
  2590.  
  2591.              o Use  the  system   monitoring/auditing  tools  that   are
  2592.                available.    Follow the  procedures  recommended  by the
  2593.                system vendor, or start out by enabling the full level or
  2594.                most  detailed  level  of  monitoring.     Use  tools  as
  2595.                available to help read the logs, and determine what level
  2596.                of monitoring is adequate,  and cut back on the  level of
  2597.                detail  as  necessary.   Be  on the  guard  for excessive
  2598.                attempts to access  accounts or other resources  that are
  2599.                protected.  Examine the log regularly, at least weekly if
  2600.                not more often.
  2601.  
  2602.              o As  a  further aid  to  monitoring, use  alarm mechanisms
  2603.                found in some access  controls.  These mechanisms  send a
  2604.                message to the audit  log whenever an attempt is  made to
  2605.                access a resource protected by an access control.
  2606.  
  2607.              o If no system  monitoring is available, or  if the present
  2608.                mechanism is unwieldy or not sufficient,  investigate and
  2609.                purchase  other  monitoring  tools as  available.    Some
  2610.                third-party software companies sell monitoring tools  for
  2611.                major operating systems  with capabilities that supersede
  2612.                those of the vendor's.
  2613.  
  2614.              o Educate  users  so  that   they  understand  the   normal
  2615.                operating  aspects of the system.   Ensure that they have
  2616.                quick access  to an  individual or  group who  can answer
  2617.                their   questions   and   investigate   potential   virus
  2618.                incidents.
  2619.  
  2620.              o Purchase or build system sweep programs to checksum files
  2621.                at night, and report differences from previous runs.  Use
  2622.                a password checker to monitor whether passwords are being
  2623.                used effectively.
  2624.  
  2625.              o Always report,  log, and  investigate security  problems,
  2626.                even when the problems appear insignificant.  Use the log
  2627.                as input into regular security reviews.  Use the  reviews
  2628.                as a means  for evaluating the effectiveness  of security
  2629.                policies and procedures.
  2630.  
  2631.  
  2632.                                          4-8
  2633.  
  2634.  
  2635.  
  2636.  
  2637.  
  2638.  
  2639.  
  2640.  
  2641.  
  2642.  
  2643.  
  2644.  
  2645.                                        COMPUTER VIRUSES AND RELATED THREATS
  2646.                                                                   CHAPTER 4
  2647.  
  2648.  
  2649.  
  2650.              o Enforce  some  form   of  sanctions  against   users  who
  2651.                consistently  violate  or  attempt  to  violate  security
  2652.                policies and procedures.  Use the audit logs as evidence,
  2653.                and bar the users from system use.
  2654.  
  2655.  
  2656.  
  2657.           4.5  Contingency Planning
  2658.  
  2659.           As  stressed  in  Chapter  3,  backups  are  the  most  important
  2660.  
  2661.           contingency planning  activity.  A  system manager must  plan for
  2662.           the eventuality of having  to restore all software and  data from
  2663.           backup  tapes  for any  number  of  reasons, such  as  disk drive
  2664.           failure or upgrades.  It has been shown that viruses and  related
  2665.           threats  could potentially  and unexpectedly  destroy all  system
  2666.  
  2667.           information  or  render  it  useless,  thus managers  should  pay
  2668.           particular   attention  to  the  effectiveness  of  their  backup
  2669.           policies.   Backup  policies  will vary  from  system to  system,
  2670.           however they should be performed daily, with a minimum of several
  2671.           months backup history.   Backup  tapes should be  verified to  be
  2672.           accurate, and should be stored off-site in a secured location.
  2673.  
  2674.           Viruses and  related software threats  could go  undetected in  a
  2675.           system  for months  to years, and  thus could be  backed up along
  2676.           with  normal  system data.    If  such a  program  would suddenly
  2677.  
  2678.           trigger  and cause damage, it may  require much searching through
  2679.           old backups to determine  when the program first appeared  or was
  2680.           infected.   Therefore the safest  policy is to  restore programs,
  2681.           i.e., executable and  command files,  from their original  vendor
  2682.           media only.   Only system data  that is non-executable should  be
  2683.  
  2684.           restored from regular backups.  Of course, in the case of command
  2685.           files or batch procedures  that are developed or modified  in the
  2686.           course of daily system  activity, these may need to  be inspected
  2687.           manually to ensure that they have not been modified or damaged.
  2688.  
  2689.  
  2690.           Other recommended contingency planning activities are as follows:
  2691.  
  2692.              o Create a security distribution list  for hand-out to each
  2693.                user.  The list should include  the system manager's name
  2694.                and number, and other similar information for individuals
  2695.  
  2696.  
  2697.                                          4-9
  2698.  
  2699.  
  2700.  
  2701.  
  2702.  
  2703.  
  2704.  
  2705.  
  2706.  
  2707.  
  2708.  
  2709.  
  2710.           COMPUTER VIRUSES AND RELATED THREATS
  2711.           CHAPTER 4
  2712.  
  2713.  
  2714.  
  2715.                who can  answer  users'  questions  about  suspicious  or
  2716.                unusual system activity.   The list should  indicate when
  2717.                to contact these individuals, and where to reach  them in
  2718.                emergencies.
  2719.  
  2720.              o Coordinate with  other  system  managers,  especially  if
  2721.                their  computers  are  connected  to  the  same  network.
  2722.                Ensure that all can be contacted  quickly in the event of
  2723.                a network emergency  by using  some mechanism other  than
  2724.                the network.
  2725.  
  2726.              o Besides  observing physical  security for  the system  as
  2727.                well as its  software and backup media,  locate terminals
  2728.                in offices that can be locked or in other secure areas.
  2729.  
  2730.              o If users are accessing the  system via personal computers
  2731.                and terminal emulation  software, keep a record  of where
  2732.                the personal computers  are located and their  network or
  2733.                port address for monitoring  purposes.  Control carefully
  2734.                whether such users are uploading software to the system.
  2735.  
  2736.              o Exercise caution when  accepting system patches.   Do not
  2737.                accept patches that arrive over a network unless there is
  2738.                a high degree of certainty  as to their validity.  It  is
  2739.                best to accept patches only from the appropriate software
  2740.                vendor.
  2741.  
  2742.  
  2743.           4.6  Associated Network Concerns
  2744.  
  2745.           Multi-user  computers are  more often associated  with relatively
  2746.  
  2747.           large  networks  than  very  localized  local  area  networks  or
  2748.           personal  computer  networks  that  may   use  dedicated  network
  2749.           servers.  The viewpoint taken here is that wide area network  and
  2750.           large local  area network  security is  essentially a  collective
  2751.           function of the systems connected to the network, i.e., it is not
  2752.  
  2753.           practical for a controlling system to monitor all network traffic
  2754.           and differentiate  between authorized  and unauthorized  use.   A
  2755.           system manager  should generally assume that  network connections
  2756.           pose inherent risks of  unauthorized access to the system  in the
  2757.           forms  of unauthorized  users and  malicious software.   Thus,  a
  2758.  
  2759.           system manager  needs to  protect the  system from  network-borne
  2760.           threats and likewise exercise responsibility by ensuring that his
  2761.  
  2762.  
  2763.                                          4-10
  2764.  
  2765.  
  2766.  
  2767.  
  2768.  
  2769.  
  2770.  
  2771.  
  2772.  
  2773.  
  2774.  
  2775.  
  2776.                                        COMPUTER VIRUSES AND RELATED THREATS
  2777.                                                                   CHAPTER 4
  2778.  
  2779.  
  2780.  
  2781.           system is not  a source of such  threats, while at the  same time
  2782.           making  network connections available to users as necessary.  The
  2783.           accomplishment  of these aims  will require the  use of technical
  2784.           controls  to  restrict  certain types  of  access,  monitoring to
  2785.           detect violations, and a certain amount  of trust that users will
  2786.  
  2787.           use the controls and follow the policies.
  2788.  
  2789.           Some guidelines for using networks in a more secure manner are as
  2790.           follows:
  2791.  
  2792.              o Assume  that network  connections  elevate  the  risk  of
  2793.                unauthorized access.  Place network connections on system
  2794.                which  provide adequate  controls,  such  as strong  user
  2795.                authentication  and  access  control  mechanisms.   Avoid
  2796.                placing  network  connections  on  system  which  process
  2797.                sensitive data.
  2798.  
  2799.              o If the system permits, require  an additional password or
  2800.                form of authentication for accounts accessed from network
  2801.                ports.    If possible,  do  not permit  access  to system
  2802.                manager accounts from network ports.
  2803.  
  2804.              o If  anonymous   or  guest   accounts   are  used,   place
  2805.                restrictions  on  the  types  of  commands  that  can  be
  2806.                executed  from  the  account.    Don't permit  access  to
  2807.                software tools,  commands that  can increase  privileges,
  2808.                and so forth.
  2809.  
  2810.              o As  possible,  monitor usage  of the  network.   Check if
  2811.                network connections are made at odd hours, such as during
  2812.                the night, or if repeated attempts are made  to log in to
  2813.                the system from a network port.
  2814.  
  2815.              o When more  than  one computer  is connected  to the  same
  2816.                network,  arrange the  connections  so that  one  machine
  2817.                serves as a central gateway for the other machines.  This
  2818.                will allow a rapid disconnect from the network in case of
  2819.                an attack.
  2820.  
  2821.              o Ensure that users  are fully  educated in network  usage.
  2822.                Make  them  aware  of the  additional  risks  involved in
  2823.                network access.  Instruct them to be on the alert for any
  2824.                signs of tampering, and to  contact an appropriate person
  2825.                if they detect any suspicious activity.  Create a  policy
  2826.                for responsible network  usage that details what  sort of
  2827.  
  2828.  
  2829.                                          4-11
  2830.  
  2831.  
  2832.  
  2833.  
  2834.  
  2835.  
  2836.  
  2837.  
  2838.  
  2839.  
  2840.  
  2841.  
  2842.           COMPUTER VIRUSES AND RELATED THREATS
  2843.           CHAPTER 4
  2844.  
  2845.  
  2846.  
  2847.                computing activity will and will  not be tolerated.  Have
  2848.                users read the policy as a prerequisite to network use.
  2849.  
  2850.              o Warn  users to  be suspicious  of  any messages  that are
  2851.                received from unidentified or unknown sources.
  2852.  
  2853.              o Don't advertise  a system  to network  users by  printing
  2854.                more information than necessary on a welcome banner.  For
  2855.                example, don't include  messages such as "Welcome  to the
  2856.                Payroll Accounting System"  that may cause the  system to
  2857.                be more attractive to unauthorized users.
  2858.  
  2859.              o Don't network  to outside organizations  without a mutual
  2860.                review of security practices
  2861.  
  2862.  
  2863.  
  2864.  
  2865.  
  2866.  
  2867.  
  2868.  
  2869.  
  2870.  
  2871.  
  2872.  
  2873.  
  2874.  
  2875.  
  2876.  
  2877.  
  2878.  
  2879.  
  2880.  
  2881.  
  2882.  
  2883.  
  2884.  
  2885.  
  2886.  
  2887.  
  2888.  
  2889.  
  2890.  
  2891.  
  2892.  
  2893.  
  2894.  
  2895.                                          4-12
  2896.  
  2897.  
  2898.  
  2899.  
  2900.  
  2901.  
  2902.  
  2903.  
  2904.  
  2905.  
  2906.  
  2907.  
  2908.                                        COMPUTER VIRUSES AND RELATED THREATS
  2909.                                                                   CHAPTER 5
  2910.  
  2911.  
  2912.  
  2913.  
  2914.                      5. Virus Prevention for Personal Computers 
  2915.                                and Associated Networks
  2916.  
  2917.           Virus  prevention in  the personal  computer  environment differs
  2918.  
  2919.           from  that of the  multi-user computer environment  mainly in the
  2920.           following two respects:  the relative lack of technical controls,
  2921.           and  the  resultant  emphasis  this  places  on  less-technically
  2922.           oriented means of protection which  necessitates more reliance on
  2923.           user involvement.   Personal computers  typically do not  provide
  2924.  
  2925.           technical controls for such things  as user authorization, access
  2926.           controls, or memory protection that differentiates between system
  2927.           memory and memory used by user applications.  Because of the lack
  2928.           of controls and the resultant freedom  with which users can share
  2929.           and modify software, personal computers are more  prone to attack
  2930.  
  2931.           by viruses, unauthorized users, and related threats.
  2932.  
  2933.           Virus prevention in  the personal computer environment  must rely
  2934.           on  continual  user  awareness  to  adequately  detect  potential
  2935.           threats  and  then  to  contain  and  recover  from  the  damage.
  2936.  
  2937.           Personal   computer  users  are   in  essence  personal  computer
  2938.           managers, and must practice  their management as a part  of their
  2939.           general computing.   Personal computers generally do  not contain
  2940.           auditing features, thus a user needs to be aware at all  times of
  2941.           the computer's performance,  i.e., what it  is doing, or what  is
  2942.  
  2943.           normal or abnormal activity.  Ultimately, personal computer users
  2944.           need  to  understand  some  of  the  technical aspects  of  their
  2945.           computers in order to protect, deter,  contain, and recover.  Not
  2946.           all personal computer  users are technically oriented,  thus this
  2947.           poses  some  problems  and  places  even  more emphasis  on  user
  2948.  
  2949.           education and involvement in virus prevention.
  2950.  
  2951.           Because of the dependance on  user involvement, policies for  the
  2952.           personal  computer environment  are more  difficult to  implement
  2953.           than  in   the   multi-user  computer   environment.     However,
  2954.  
  2955.           emphasizing  these policies as  part of a  user education program
  2956.           will help to ingrain  them in users'  behavior.  Users should  be
  2957.           shown  via  examples what  can happen  if  they don't  follow the
  2958.           policies.   An example  where users  share infected  software and
  2959.  
  2960.  
  2961.                                          5-1
  2962.  
  2963.  
  2964.  
  2965.  
  2966.  
  2967.  
  2968.  
  2969.  
  2970.  
  2971.  
  2972.  
  2973.  
  2974.           COMPUTER VIRUSES AND RELATED THREATS
  2975.           CHAPTER 5
  2976.  
  2977.  
  2978.  
  2979.           then spread the  software throughout an organization  would serve
  2980.           to effectively illustrate  the point, thus making the  purpose of
  2981.           the policy  more clear and more  likely to be  followed.  Another
  2982.           effective method for  increasing user cooperation is  to create a
  2983.           list of effective personal computer management practices specific
  2984.  
  2985.           to  each personal computing  environment.   Creating such  a list
  2986.           would save users the problem of determining how best to enact the
  2987.           policies,  and would serve  as a convenient  checklist that users
  2988.           could reference as necessary.
  2989.  
  2990.  
  2991.           It will  likely be  years before  personal computers  incorporate
  2992.           strong  technical  controls  in  their  architectures.    In  the
  2993.           meantime,  managers  and  users  must  be  actively  involved  in
  2994.           protecting their computers from viruses and related threats.  The
  2995.           following sections provide guidance to help achieve that aim.
  2996.  
  2997.  
  2998.  
  2999.           5.1  General Policies
  3000.  
  3001.           Two general policies are suggested here.  The first requires that
  3002.  
  3003.           management  make  firm,  unambiguous decisions  as  to  how users
  3004.           should  operate  personal  computers, and  state  that  policy in
  3005.           writing.  This policy will be a general re-statement of all other
  3006.           policies affecting personal computer use.   It is important  that
  3007.           users  read  this  policy  and  agree  to  its  conditions  as  a
  3008.  
  3009.           prerequisite to  personal  computer use.    The purposes  of  the
  3010.           policy are  to  (1) ensure that users  are aware of all policies,
  3011.           and (2) impress upon users the  need for their active involvement
  3012.           in computer security.
  3013.  
  3014.  
  3015.           The second policy is that every  personal computer should have an
  3016.           "owner"  or  "system   manager"  who   is  responsible  for   the
  3017.           maintenance and security of the  computer, and for following  all
  3018.           policies and procedures associated with  the use of the computer.
  3019.           It would be preferable that the primary user of the computer fill
  3020.  
  3021.           this  role.    It  would   not  be  too  extreme  to   make  this
  3022.           responsibility a part of the user's job description.  This policy
  3023.           will require that resources  be spent on educating users  so that
  3024.           they can adequately follow all policies and procedures.
  3025.  
  3026.  
  3027.                                          5-2
  3028.  
  3029.  
  3030.  
  3031.  
  3032.  
  3033.  
  3034.  
  3035.  
  3036.  
  3037.  
  3038.  
  3039.  
  3040.                                        COMPUTER VIRUSES AND RELATED THREATS
  3041.                                                                   CHAPTER 5
  3042.  
  3043.  
  3044.  
  3045.  
  3046.  
  3047.           5.2  Software Management
  3048.  
  3049.           Due  to the wide variety of  software available for many types of
  3050.  
  3051.           personal computers, it  is especially important that  software be
  3052.           carefully controlled.  The following policies are suggested:
  3053.  
  3054.              o Use only licensed copies of  vendor software for personal
  3055.                computers.  Ensure  that the license numbers  are logged,
  3056.                that warranty information is completed, and  that updates
  3057.                or  update  notices  will be  mailed  to  the appropriate
  3058.                users.   Ensure that software versions are uniform on all
  3059.                personal  computers.     Purchase  software  from  known,
  3060.                reputable  sources  - do  not  purchase software  that is
  3061.                priced suspiciously low and do  not use pirated software,
  3062.                even on a  trial basis.   As possible, buy software  with
  3063.                built-in security features.
  3064.  
  3065.              o Do not install software that is  not clearly needed.  For
  3066.                example, software  tools such  as compilers  or debuggers
  3067.                should not  be installed on  machines where they  are not
  3068.                needed.
  3069.  
  3070.              o Store the original copies of vendor software in  a secure
  3071.                location for use when restoring the software.
  3072.  
  3073.              o Develop a clear policy for  use of public-domain software
  3074.                and  shareware.    It  is  recommended  that  the  policy
  3075.                prohibit   indiscriminate   downloading   from   software
  3076.                bulletin boards.   A  special isolated  system should  be
  3077.                configured to  perform the  downloading, as  well as  for
  3078.                testing downloaded and other software  or shareware.  The
  3079.                operation  of  the   system  should   be  managed  by   a
  3080.                technically skilled user who  can use anti-virus software
  3081.                and other techniques  to test new  software before it  is
  3082.                released for use by other users.
  3083.  
  3084.              o Maintain   an   easily-updated   database  of   installed
  3085.                software.  For each type of software, the database should
  3086.                list the computers  where the software is  installed, the
  3087.                license  numbers,  software  version  number, the  vendor
  3088.                contact  information, and the responsible person for each
  3089.                computer listed.  This database should be used to quickly
  3090.                identify users, machines, and  software when problems  or
  3091.  
  3092.  
  3093.                                          5-3
  3094.  
  3095.  
  3096.  
  3097.  
  3098.  
  3099.  
  3100.  
  3101.  
  3102.  
  3103.  
  3104.  
  3105.  
  3106.           COMPUTER VIRUSES AND RELATED THREATS
  3107.           CHAPTER 5
  3108.  
  3109.  
  3110.  
  3111.                emergencies  arise,  such as  when  a particular  type of
  3112.                software  is  discovered  to  contain  a virus  or  other
  3113.                harmful aspects.
  3114.  
  3115.              o Minimize software  sharing within  the organization.   Do
  3116.                not permit software to be  placed on computers unless the
  3117.                proper manager is  notified and the software  database is
  3118.                updated.    If computer  networks  permit software  to be
  3119.                mailed or otherwise transferred among machines,  prohibit
  3120.                this as a  policy.   Instruct users not  to run  software
  3121.                that has been mailed to them.
  3122.  
  3123.              o If using software repositories on LAN servers, set up the
  3124.                server  directory  such  that  users  can copy  from  the
  3125.                directory, but not add software to the directory.  Assign
  3126.                a user  to  manage the  repository;  all updates  to  the
  3127.                repository  should  be cleared  through  this individual.
  3128.                The software  should be tested  on an isolated  system as
  3129.                described earlier.
  3130.  
  3131.              o If  developing software,  consider  the  use of  software
  3132.                management  and  control  programs that  automate  record
  3133.                keeping for software  updates, and that provide  a degree
  3134.                of protection  against unauthorized modifications  to the
  3135.                software under development.
  3136.  
  3137.              o Prohibit users from  using software  or disks from  their
  3138.                home  systems.   A  home system  that  is used  to access
  3139.                software bulletin boards  or that  uses shared copies  of
  3140.                software  could  be   infected  with  viruses  or   other
  3141.                malicious software.
  3142.  
  3143.  
  3144.           5.3  Technical Controls
  3145.  
  3146.           As stated earlier, personal computers suffer from a relative lack
  3147.  
  3148.           of technical controls.  There are  usually no mechanisms for user
  3149.           authentication  and   for  preventing  users  or   software  from
  3150.           modifying  system  and  application  software.    Generally,  all
  3151.           software  and  hardware is  accessible  by the  personal computer
  3152.           user, thus the potential for misuse is substantially greater than
  3153.  
  3154.           in the multi-user computer environment.
  3155.  
  3156.  
  3157.  
  3158.  
  3159.                                          5-4
  3160.  
  3161.  
  3162.  
  3163.  
  3164.  
  3165.  
  3166.  
  3167.  
  3168.  
  3169.  
  3170.  
  3171.  
  3172.                                        COMPUTER VIRUSES AND RELATED THREATS
  3173.                                                                   CHAPTER 5
  3174.  
  3175.  
  3176.  
  3177.           However,  some  technical  controls  can  be  added  to  personal
  3178.           computers,  e.g., user  authentication  devices.   The  technical
  3179.           controls that do  not exist can  be simulated by other  controls,
  3180.           such as  a  lock on  an  office door  to  substitute for  a  user
  3181.           authentication device, or  anti-virus software to take  the place
  3182.  
  3183.           of  system  auditing  software.   Lastly,  some  of  the personal
  3184.           computer's accessibility can  be reduced, such as  by the removal
  3185.           of floppy diskette  drives or  by the use  of diskless  computers
  3186.           that  must  download  their software  from  a  LAN  server.   The
  3187.           following items are suggested:
  3188.  
  3189.  
  3190.              o Where technical controls  exist, use them.  If basic file
  3191.                access  controls are  available to make  files read-only,
  3192.                make  sure  that   operating  system   files  and   other
  3193.                executable files  are marked  as read-only.   Use  write-
  3194.                protect  tabs on  floppy  diskettes and  tapes.   If  LAN
  3195.                access  requires a  password, ensure  that passwords  are
  3196.                used  carefully  - follow    the guidelines  for password
  3197.                usage presented in Chapter 4 or see [FIPS73].
  3198.  
  3199.              o Use new cost-effective forms of  user identification such
  3200.                as magnetic access cards.   Or, setup other software such
  3201.                as  password   mechanism   that  at   a  minimum   deters
  3202.                unauthorized users.
  3203.  
  3204.              o If  using  a  LAN,   consider  downloading  the  personal
  3205.                computer's operating system and other applications from a
  3206.                read-only directory  on the  LAN server  (instead of  the
  3207.                personal computer's  hard disk).   If the  LAN server  is
  3208.                well  protected,  this  arrangement  would  significantly
  3209.                reduce  chances of  the software  becoming infected,  and
  3210.                would simplify software management.
  3211.  
  3212.              o Consider booting personal computers  from write-protected
  3213.                floppy diskettes (instead  of the computer's hard  disk).
  3214.                Use a unique diskette per computer, and keep the diskette
  3215.                secured when not in use.
  3216.  
  3217.              o Do not leave a personal  computer running but unattended.
  3218.                Lock the computer with a  hardware lock (if possible), or
  3219.                purchase  vendor add-on  software to "lock"  the keyboard
  3220.                using a password mechanism.   Alternatively, turn off the
  3221.                computer and lock  the office door.   Shut down and  lock
  3222.                the computer at the end of the day.
  3223.  
  3224.  
  3225.                                          5-5
  3226.  
  3227.  
  3228.  
  3229.  
  3230.  
  3231.  
  3232.  
  3233.  
  3234.  
  3235.  
  3236.  
  3237.  
  3238.           COMPUTER VIRUSES AND RELATED THREATS
  3239.           CHAPTER 5
  3240.  
  3241.  
  3242.  
  3243.              o When using modems connected to personal computers, do not
  3244.                provide more access to  the computer than necessary.   If
  3245.                only dial-out service is required, configure the modem so
  3246.                that  it  won't answer  calls.    If  dial-in service  is
  3247.                necessary,  consider  purchasing  modems  that require  a
  3248.                password or  that use  a call-back  mechanism to  force a
  3249.                caller to call from  a telephone number that is  known to
  3250.                the modem.
  3251.  
  3252.              o Consider   using   "limited-use"  systems,   whereby  the
  3253.                capabilities of a system  are restricted to only  what is
  3254.                absolutely  required.  For example, users  who run only a
  3255.                certain  application  (such  as word-processor)  may  not
  3256.                require  the flexibility of a  personal computer.  At the
  3257.                minimum,   do  not   install   applications  or   network
  3258.                connections where they are not needed.
  3259.  
  3260.  
  3261.           5.4  Monitoring
  3262.  
  3263.           Personal computer operating systems typically  do not provide any
  3264.  
  3265.           software or user monitoring/auditing features.  Monitoring, then,
  3266.           is largely a user function whereby the user must be aware of what
  3267.           the computer is doing, such as when the computer is accessing the
  3268.           disk or the  general speed of its response  to commands, and then
  3269.           must decide whether  the activity is  normal or abnormal.   Anti-
  3270.  
  3271.           viral software can  be added to the  operating system and run  in
  3272.           such  a way that the software flags  or in some way alerts a user
  3273.           when suspicious  activity occurs, such as when  critical files or
  3274.           memory regions are written.
  3275.  
  3276.  
  3277.           Effective monitoring depends on user education.  Users must  know
  3278.           what constitutes normal  and abnormal activity on  their personal
  3279.           computers.  They need to have  a reporting structure available so
  3280.           that they  can alert an informed individual  to determine whether
  3281.           there is indeed  a problem.  They need to know  the steps to take
  3282.  
  3283.           to  contain the damage, and how  to recover.  Thus, the following
  3284.           policies and procedures are recommended:
  3285.  
  3286.              o Form a team  of skilled  technical people to  investigate
  3287.                problems reported  by users.   This same  group could  be
  3288.                responsible for other aspects  of virus prevention,  such
  3289.  
  3290.  
  3291.                                          5-6
  3292.  
  3293.  
  3294.  
  3295.  
  3296.  
  3297.  
  3298.  
  3299.  
  3300.  
  3301.  
  3302.  
  3303.  
  3304.                                        COMPUTER VIRUSES AND RELATED THREATS
  3305.                                                                   CHAPTER 5
  3306.  
  3307.  
  3308.  
  3309.                as testing new software and  handling the containment and
  3310.                recovery from virus-related incidents.  Ensure that users
  3311.                have quick  access to this  group, e.g., via  a telephone
  3312.                number.
  3313.  
  3314.              o Educate users  so that they  are familiar with  how their
  3315.                computers function.  Show  them how to use such  items as
  3316.                anti-viral  software.    Acquaint  them  with  how  their
  3317.                computers boot, what  files are loaded, whether  start-up
  3318.                batch files are executed, and so forth.
  3319.  
  3320.              o Users need  to watch for  changes in  patterns of  system
  3321.                activity.   They  need to  watch  for program  loads that
  3322.                suddenly  take   longer,  whether   disk  accesses   seem
  3323.                excessive for  simple tasks,  do  unusual error  messages
  3324.                occur, do access  lights for disks  turn on when no  disk
  3325.                activity  should  occur,  is less  memory  available than
  3326.                usual, do  files  disappear mysteriously,  is there  less
  3327.                disk space than normal?
  3328.  
  3329.              o Users also need  to examine whether important  files have
  3330.                changed  in size,  date, or  content.   Such  files would
  3331.                include the operating system, regularly-run applications,
  3332.                and  other batch  files.   System sweep  programs may  be
  3333.                purchased  or  built  to  perform  checksums on  selected
  3334.                files, and then  to report whether changes  have occurred
  3335.                since the last time the program was run.
  3336.  
  3337.              o Purchase virus prevention  software as applicable.   At a
  3338.                minimum,  use  anti-viral software  to test  new software
  3339.                before  releasing it  to other  users.   However,  do not
  3340.                download or use pirated copies of anti-viral software.
  3341.  
  3342.              o Always  report, log,  and investigate  security problems,
  3343.                even when the  problems appear  insignificant.  Then  use
  3344.                the log as input into regular  security reviews.  Use the
  3345.                reviews as a  means for  evaluating the effectiveness  of
  3346.                security policies and procedures.
  3347.  
  3348.  
  3349.           5.5  Contingency Planning
  3350.  
  3351.           As described in Chapter 3, backups  are the single most important
  3352.  
  3353.           contingency procedure.   It is especially important  to emphasize
  3354.           regular  backups  for personal  computers,  due to  their greater
  3355.  
  3356.  
  3357.                                          5-7
  3358.  
  3359.  
  3360.  
  3361.  
  3362.  
  3363.  
  3364.  
  3365.  
  3366.  
  3367.  
  3368.  
  3369.  
  3370.           COMPUTER VIRUSES AND RELATED THREATS
  3371.           CHAPTER 5
  3372.  
  3373.  
  3374.  
  3375.           susceptibility  to misuse  and due  to the  usual requirement  of
  3376.           direct user involvement  in the backup procedure, unlike  that of
  3377.           multi-user computers.  Because of the second  factor, where users
  3378.           must  directly  copy  files  to one  or  more  floppy  diskettes,
  3379.           personal  computer  backups  are sometimes  ignored  or  not done
  3380.  
  3381.           completely.   To  help ensure  that backups  are done  regularly,
  3382.           external backup mechanisms that use a high-density tape cartridge
  3383.           can be purchased  and a user assigned to run the backup procedure
  3384.           on  a  regular  basis.    Additionally,  some  personal  computer
  3385.           networks  contain  a personal  computer  backup feature,  where a
  3386.  
  3387.           computer can directly access a network server's backup mechanism,
  3388.           sometimes in an off-line mode at a selected time.  If  neither of
  3389.           these mechanisms are available, then  users must be supplied with
  3390.           an adequate number of  diskettes to make complete backups  and to
  3391.           maintain a reasonable amount of backup history, with a minimum of
  3392.  
  3393.           several weeks.
  3394.  
  3395.           Users  should  maintain  the  original  installation  media   for
  3396.           software applications and  store it in a  secure area, such  as a
  3397.           locked cabinet, container, or  desk.  If a user  needs to restore
  3398.  
  3399.           software, the user should  use only the original media;  the user
  3400.           should not use  any other type of  backup or a copy  belonging to
  3401.           another user, as  they could be infected or damaged  by some form
  3402.           of malicious software.
  3403.  
  3404.  
  3405.           The effectiveness of  a backup policy can be  judged by whether a
  3406.           user  is able  to recover  with  a minimum  loss of  data  from a
  3407.           situation whereby  the user would  have to format  the computer's
  3408.           disk and  reload all  software.  Several  incidents of  malicious
  3409.           software have required  that users go to this length to recover -
  3410.  
  3411.           see [MACAFEE89].
  3412.  
  3413.           Other important contingency procedures are described below:
  3414.  
  3415.              o Maintain  a  database of  personal  computer information.
  3416.                Each record should  include items such as  the computer's
  3417.                configuration, i.e., network connections,  disks, modems,
  3418.                etc.,  the  computer's  location,  how  it is  used,  the
  3419.                software it runs, and the  name of the computer's primary
  3420.                user/manager.  Maintain this database to facilitate rapid
  3421.  
  3422.  
  3423.                                          5-8
  3424.  
  3425.  
  3426.  
  3427.  
  3428.  
  3429.  
  3430.  
  3431.  
  3432.  
  3433.  
  3434.  
  3435.  
  3436.                                        COMPUTER VIRUSES AND RELATED THREATS
  3437.                                                                   CHAPTER 5
  3438.  
  3439.  
  3440.  
  3441.                communication and identification  when security  problems
  3442.                arise.
  3443.  
  3444.              o Create a security  distribution list for each user.   The
  3445.                list should include  names of people  to contact who  can
  3446.                help identify the cause of unusual computer activity, and
  3447.                other  appropriate  security  personnel to  contact  when
  3448.                actual problems arise.
  3449.  
  3450.              o Create a group of skilled users who can respond to users'
  3451.                inquiries  regarding virus detection.   This group should
  3452.                be  able to determine when a  computer has been attacked,
  3453.                and how best to contain and recover from the problem.
  3454.  
  3455.              o Set up some means of  distributing information rapidly to
  3456.                all affected users  in the event  of an emergency.   This
  3457.                should not  rely upon a computer network,  as the network
  3458.                could actually  be attacked,  but could  use other  means
  3459.                such  as   telephone  mail  or  a   general  announcement
  3460.                mechanism.
  3461.  
  3462.              o Observe physical security for personal computers.  Locate
  3463.                them  in  offices  that can  be  locked.    Do not  store
  3464.                software and backups in unsecured cabinets.
  3465.  
  3466.  
  3467.  
  3468.           5.6  Associated Network Concerns
  3469.  
  3470.           Personal  computer  networks  offer  many  advantages  to  users,
  3471.  
  3472.           however  they  must be  managed  carefully  so that  they  do not
  3473.           increase  vulnerability  to viruses  and  related threats.   Used
  3474.           incorrectly,   they  can   become   an   additional  pathway   to
  3475.           unauthorized  access  to  systems,  and  can  be  used  to  plant
  3476.           malicious software such as network worms.   This section does not
  3477.  
  3478.           provide specific management guidance, as there are many different
  3479.           types of personal  computer networks with widely  varying degrees
  3480.           of similarity.   However, some general suggestions  for improving
  3481.           basic management are listed below:
  3482.  
  3483.              o Assign  a network  administrator,  and make  the required
  3484.                duties  part  of  the  administrator's  job  description.
  3485.                Personal  computer  networks  are  becoming  increasingly
  3486.                complex to administer, thus the administration should not
  3487.  
  3488.  
  3489.                                          5-9
  3490.  
  3491.  
  3492.  
  3493.  
  3494.  
  3495.  
  3496.  
  3497.  
  3498.  
  3499.  
  3500.  
  3501.  
  3502.           COMPUTER VIRUSES AND RELATED THREATS
  3503.           CHAPTER 5
  3504.  
  3505.  
  3506.  
  3507.                be  left to  an individual  who cannot  dedicate time  as
  3508.                necessary.
  3509.  
  3510.              o Protect the network server(s) by  locating them in secure
  3511.                areas.    Make sure  that  physical access  is restricted
  3512.                during off-hours.  If possible, lock or remove a server's
  3513.                keyboard to prevent tampering.
  3514.  
  3515.              o Do not provide  for more than one  administrator account,
  3516.                i.e., do not give  other users administrator  privileges.
  3517.                Similar  to  the  problem  of  multiple   system  manager
  3518.                accounts on  multi-user systems, this situation  makes it
  3519.                more  likely that a password will become known, and makes
  3520.                overall  management more  difficult  to  control.   Users
  3521.                should coordinate their requests through a single network
  3522.                administrator.
  3523.  
  3524.              o Do not  permit users to connect personal computers to the
  3525.                network  cable  without  permission.   The  administrator
  3526.                should keep an updated diagram of the network's topology,
  3527.                complete with corresponding network addresses and users.
  3528.  
  3529.              o Use  the  network monitoring  tools  that  are available.
  3530.                Track network usage and access to resources, and pinpoint
  3531.                unauthorized  access attempts.   Take  appropriate action
  3532.                when violations consistently occur, such as requiring the
  3533.                user  in  question  to attend  a  network  user  class or
  3534.                disabling the user's network account.
  3535.  
  3536.              o Ensure  that users know how to  properly use the network.
  3537.                Show them how to use all  security features.  Ensure that
  3538.                users  know  how  to use  passwords  and  access controls
  3539.                effectively -  see [FIPS73]  for information  on password
  3540.                usage.    Show  them the  difference  between  normal and
  3541.                abnormal network  activity or response.   Encourage users
  3542.                to contact  the  administrator  if  they  detect  unusual
  3543.                activity.  Log and investigate all problems.
  3544.  
  3545.              o Do  not give users more access  to network resources than
  3546.                they require.   If  using shared  directories, make  them
  3547.                read-only  if write permission is  not required, or use a
  3548.                password.   Encourage  users to  do the  same with  their
  3549.                shared directories.
  3550.  
  3551.              o Do not set up directories  for software repository unless
  3552.                (1) someone can first verify  whether the software is not
  3553.  
  3554.  
  3555.                                          5-10
  3556.  
  3557.  
  3558.  
  3559.  
  3560.  
  3561.  
  3562.  
  3563.  
  3564.  
  3565.  
  3566.  
  3567.  
  3568.                                        COMPUTER VIRUSES AND RELATED THREATS
  3569.                                                                   CHAPTER 5
  3570.  
  3571.  
  3572.  
  3573.                infected, and (2) users are not permitted to write to the
  3574.                directory without prior approval.
  3575.  
  3576.              o Backup the network  server(s) regularly.  If  possible or
  3577.                practical, backup  personal computers  using the  network
  3578.                server backup mechanism.
  3579.  
  3580.              o Disable  the  network  mail  facility  from  transferring
  3581.                executable  files,  if  possible.     This  will  prevent
  3582.                software  from  being  indiscriminately shared,  and  may
  3583.                prevent  network  worm programs  from  accessing personal
  3584.                computers.
  3585.  
  3586.              o For network guest or anonymous  accounts, limit the types
  3587.                of commands that can be executed.
  3588.  
  3589.              o Warn network users  to be suspicious  of any messages  or
  3590.                programs  that are received  from unidentified  sources -
  3591.                network  users  should  have a  critical  and  suspicious
  3592.                attitude  towards  anything  received   from  an  unknown
  3593.                source.
  3594.  
  3595.              o Always remove old  accounts or change passwords.   Change
  3596.                important passwords  immediately  when  users  leave  the
  3597.                organization or no longer require access to the network.
  3598.  
  3599.  
  3600.  
  3601.  
  3602.  
  3603.  
  3604.  
  3605.  
  3606.  
  3607.  
  3608.  
  3609.  
  3610.  
  3611.  
  3612.  
  3613.  
  3614.  
  3615.  
  3616.  
  3617.  
  3618.  
  3619.  
  3620.  
  3621.                                          5-11
  3622.  
  3623.  
  3624.  
  3625.  
  3626.  
  3627.  
  3628.  
  3629.  
  3630.  
  3631.  
  3632.  
  3633.  
  3634.           COMPUTER VIRUSES AND RELATED THREATS
  3635.           CHAPTER 5
  3636.  
  3637.  
  3638.  
  3639.  
  3640.  
  3641.  
  3642.  
  3643.  
  3644.  
  3645.  
  3646.  
  3647.  
  3648.  
  3649.  
  3650.  
  3651.  
  3652.  
  3653.  
  3654.  
  3655.  
  3656.  
  3657.  
  3658.  
  3659.  
  3660.  
  3661.  
  3662.  
  3663.  
  3664.  
  3665.  
  3666.  
  3667.  
  3668.  
  3669.  
  3670.  
  3671.  
  3672.  
  3673.  
  3674.  
  3675.  
  3676.  
  3677.  
  3678.  
  3679.  
  3680.  
  3681.  
  3682.  
  3683.  
  3684.  
  3685.  
  3686.  
  3687.                                          5-12
  3688.  
  3689.  
  3690.  
  3691.  
  3692.  
  3693.  
  3694.  
  3695.  
  3696.  
  3697.  
  3698.  
  3699.  
  3700.                                        COMPUTER VIRUSES AND RELATED THREATS
  3701.                                                                  APPENDIX A
  3702.  
  3703.  
  3704.  
  3705.  
  3706.                                       References
  3707.  
  3708.  
  3709.  
  3710.  
  3711.           BUNZEL88       Bunzel, Rick; Flu Season; Connect, Summer 1988.
  3712.  
  3713.           DENNING88      Denning,  Peter  J.;  Computer  Viruses;  American
  3714.                          Scientist, Vol 76, May-June, 1988.
  3715.  
  3716.  
  3717.           DENNING89      Denning,  Peter J.;  The  Internet Worm;  American
  3718.                          Scientist, Vol 77, March-April, 1989.
  3719.  
  3720.           FIPS73         Federal    Information     Processing    Standards
  3721.                          Publication   73,   Guidelines  for   Security  of
  3722.                          Computer   Applications;   National    Bureau   of
  3723.                          Standards, June, 1980.
  3724.  
  3725.           FIPS112        Federal    Information     Processing    Standards
  3726.                          Publication 112, Password  Usage; National  Bureau
  3727.                          of Standards, May, 1985.
  3728.  
  3729.           MACAFEE89      McAfee, John; The Virus  Cure; Datamation, Feb 15,
  3730.                          1989.
  3731.  
  3732.  
  3733.           NBS120         NBS  Special  Publication  500-120;   Security  of
  3734.                          Personal  Computer  Systems:  A Management  Guide;
  3735.                          National Bureau of Standards, Jan 1985.
  3736.  
  3737.           SPAFFORD88     Spafford, Eugene H.; The Internet Worm Program: An
  3738.                          Analysis; Purdue Technical Report  CSD-TR-823, Nov
  3739.                          28, 1988.
  3740.  
  3741.           THOMPSON84     Thompson,  Ken;  Reflections  on   Trusting  Trust
  3742.                          (Deliberate Software Bugs); Communications  of the
  3743.                          ACM, Vol 27, Aug 1984.
  3744.  
  3745.  
  3746.  
  3747.  
  3748.  
  3749.                                          A-1
  3750.  
  3751.  
  3752.  
  3753.  
  3754.  
  3755.  
  3756.  
  3757.  
  3758.  
  3759.  
  3760.  
  3761.  
  3762.           COMPUTER VIRUSES AND RELATED THREATS
  3763.           APPENDIX A
  3764.  
  3765.  
  3766.  
  3767.  
  3768.  
  3769.  
  3770.  
  3771.  
  3772.  
  3773.  
  3774.  
  3775.  
  3776.  
  3777.  
  3778.  
  3779.  
  3780.  
  3781.  
  3782.  
  3783.  
  3784.  
  3785.  
  3786.  
  3787.  
  3788.  
  3789.  
  3790.  
  3791.  
  3792.  
  3793.  
  3794.  
  3795.  
  3796.  
  3797.  
  3798.  
  3799.  
  3800.  
  3801.  
  3802.  
  3803.  
  3804.  
  3805.  
  3806.  
  3807.  
  3808.  
  3809.  
  3810.  
  3811.  
  3812.  
  3813.  
  3814.  
  3815.                                          A-2
  3816.  
  3817.  
  3818.  
  3819.  
  3820.  
  3821.  
  3822.  
  3823.  
  3824.  
  3825.  
  3826.  
  3827.  
  3828.                                        COMPUTER VIRUSES AND RELATED THREATS
  3829.                                                                  APPENDIX B
  3830.  
  3831.  
  3832.  
  3833.  
  3834.                                   Suggested Reading
  3835.  
  3836.  
  3837.           In addition to the references listed in Appendix A, the following
  3838.  
  3839.           documents  are   suggested  reading  for  specific   and  general
  3840.           information  on  computer viruses  and  related forms,  and other
  3841.           related security information.
  3842.  
  3843.  
  3844.  
  3845.           Brenner, Aaron; LAN Security; LAN Magazine, Aug 1989.
  3846.  
  3847.           Cohen,  Fred;  Computer  Viruses,  Theory  and  Experiments;  7th
  3848.           Security Conference, DOD/NBS Sept 1984. 
  3849.  
  3850.  
  3851.           Computer Viruses - Proceedings of  an Invitational Symposium, Oct
  3852.           10/11, 1988;
  3853.           Deloitte, Haskins, and Sells; 1989
  3854.  
  3855.           Dvorak, John; Virus Wars: A Serious Warning; PC Magazine; Feb 29,
  3856.           1988. 
  3857.  
  3858.           Federal   Information   Processing   Standards  Publication   83,
  3859.           Guideline on User Authentication Techniques  for Computer Network
  3860.           Access Control; National Bureau of Standards, Sept, 1980.
  3861.  
  3862.  
  3863.           Federal   Information   Processing   Standards  Publication   87,
  3864.           Guidelines  for  ADP  Contingency  Planning;  National Bureau  of
  3865.           Standards, March, 1981.
  3866.  
  3867.  
  3868.           Fiedler, David and Hunter, Bruce  M.; Unix System Administration;
  3869.           Hayden Books, 1987
  3870.  
  3871.           Fitzgerald, Jerry; Business  Data Communications: Basic Concepts,
  3872.           Security, and Design; John Wiley and Sons, Inc., 1984
  3873.  
  3874.  
  3875.           Gasser, Morrie; Building  a Secure Computer System;  Van Nostrand
  3876.           Reinhold, New York, 1988.
  3877.  
  3878.  
  3879.  
  3880.                                          B-1
  3881.  
  3882.  
  3883.  
  3884.  
  3885.  
  3886.  
  3887.  
  3888.  
  3889.  
  3890.  
  3891.  
  3892.  
  3893.           COMPUTER VIRUSES AND RELATED THREATS
  3894.           APPENDIX B
  3895.  
  3896.  
  3897.  
  3898.           Grampp, F. T. and Morris, R.  H.; UNIX Operating System Security;
  3899.           AT&T Bell Laboratories Technical Journal, Oct 1984. 
  3900.  
  3901.           Highland,  Harold  J.;  From  the  Editor  --  Computer  Viruses;
  3902.           Computers & Security; Aug 1987. 
  3903.  
  3904.  
  3905.           Longley, Dennis and Shain, Michael; Data and Computer Security
  3906.  
  3907.           NBS Special  Publication 500-120;  Security of  Personal Computer
  3908.           Systems: A Management  Guide; National  Bureau of Standards,  Jan
  3909.  
  3910.           1985.
  3911.  
  3912.           Parker,  T.; Public  domain software  review: Trojans  revisited,
  3913.           CROBOTS, and ATC; Computer Language; April 1987.
  3914.  
  3915.  
  3916.           Schnaidt, Patricia; Fasten  Your Safety  Belt; LAN Magazine,  Oct
  3917.           1987.
  3918.  
  3919.           Shoch, J. F. and Hupp, J. A.; The Worm Programs: Early Experience
  3920.           with a Distributed Computation; Comm of ACM, Mar 1982.
  3921.  
  3922.  
  3923.           White, Stephen and Chess, David; Coping with Computer Viruses and
  3924.           Related  Problems;  IBM Research  Report  RC 14405  (#64367), Jan
  3925.           1989.
  3926.  
  3927.  
  3928.           Witten, I.  H.; Computer (In)security: infiltrating open systems;
  3929.           Abacus (USA) Summer 1987. 
  3930.  
  3931.  
  3932.  
  3933.  
  3934.  
  3935.  
  3936.  
  3937.  
  3938.  
  3939.  
  3940.  
  3941.  
  3942.  
  3943.  
  3944.  
  3945.  
  3946.                                          B-2
  3947.  
  3948.  
  3949.  
  3950.  
  3951.  
  3952.  
  3953.  
  3954.  
  3955. -------------END OF FORWARDED MESSAGE(S)-------------
  3956. Comment: I got the above from one of the authors, John P. Wack.  He has
  3957. okayed my idea of making it available from the NIC.  Action: SCC
  3958.  
  3959.