home *** CD-ROM | disk | FTP | other *** search
Text File | 2003-06-11 | 100.2 KB | 3,423 lines |
-
-
-
-
-
-
-
-
-
-
- Coping with the Threat of Computer Security Incidents
-
- A Primer from Prevention through Recovery
-
- Russell L. Brand ?
-
-
- June 8, 1990
-
-
-
- Abstract
-
- As computer security becomes a more important issue in
- modern society, it begins to warrant a systematic
- approach. The vast majority of the computer security
- problems and the costs associated with them can be
- prevented with simple inexpensive measures. The most
- important and cost effective of these measures are
- available in the prevention and planning phases. These
- methods are presented followed by a simplified guide to
- incident handling and recovery.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ---------------------------
- ?Copyright ?c Russell L. Brand 1989, 1990 Permission to copy
- granteddprovidede eachscopyfincludes attributionoand the pversion
- information. This permission extends for one year minus one day
- from June 8, 1990; past that point, the reader should obtain a
- newer copy of the article as the information will be out of date.
-
-
- 0
-
-
-
-
-
-
- Contents
-
-
- 1 Overview 4
-
- 2 Incident Avoidance 5
-
- 2.Passwords :: :: :: :: :: :: :: :: ::: :: :: :: :: :: :: :: : 5
-
- 2.1Joe's :: :: :: :: :: :: :: :: ::: :: :: :: :: :: :: :: : 6
-
- 2.1Same Passwords on Different Machines :: :: :: :: :: :: : 6
-
- 2.1Readable Password Files :: :: ::: :: :: :: :: :: :: :: : 7
-
- 2.1Many faces of a person : :: :: ::: :: :: :: :: :: :: :: : 9
-
- 2.1Automated Checks for Dumb Passwords : :: :: :: :: :: :: : 9
-
- 2.1Machine Generated Passwords :: ::: :: :: :: :: :: :: :: :10
-
- 2.1The Sorrows of Special Purpose Hardware :: :: :: :: :: :12
-
- 2.1Is Writing Passwords Down that Bad? : :: :: :: :: :: :: :13
-
- 2.1The Truth about Password Aging ::: :: :: :: :: :: :: :: :13
-
- 2.1How do you change a password : ::: :: :: :: :: :: :: :: :13
-
- 2.Old Password Files :: :: :: :: :: ::: :: :: :: :: :: :: :: :14
-
- 2.Dormant Accounts : :: :: :: :: :: ::: :: :: :: :: :: :: :: :14
-
- 2.3VMS :: :: :: :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :14
-
- 2.Default Accounts and Objects : :: ::: :: :: :: :: :: :: :: :14
-
- 2.4Unix : :: :: :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :16
-
- 2.4VMS :: :: :: :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :17
-
- 2.4CMS :: :: :: :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :18
-
- 2.File Protections : :: :: :: :: :: ::: :: :: :: :: :: :: :: :18
-
- 2.Well Known Security Holes : :: :: ::: :: :: :: :: :: :: :: :19
-
- 2.New Security Holes :: :: :: :: :: ::: :: :: :: :: :: :: :: :20
-
-
- 1
-
-
-
-
-
-
- 2.7CERT : :: :: :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :20
-
- 2.7ZARDOZ :: :: :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :21
-
- 2.7CIAC : :: :: :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :21
-
- 2.Excess Services :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :21
-
- 2.Search Paths :: :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :21
-
- 2.Routing : :: :: :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :21
-
- 2.Humans :: :: :: :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :22
-
- 2.1Managers :: :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :22
-
- 2.1Secretaries :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :22
-
- 2.1Trojan Horses : :: :: :: :: :: ::: :: :: :: :: :: :: :: :22
-
- 2.1Wizards : :: :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :23
-
- 2.1Funders : :: :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :23
-
- 2.Group Accounts :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :23
-
- 2..rhosts and proxy logins :: :: :: ::: :: :: :: :: :: :: :: :24
-
- 2.Debugging :: :: :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :24
-
- 2.Getting People Mad at You : :: :: ::: :: :: :: :: :: :: :: :24
-
-
- 3 Pre-Planning your Incident Handling 25
-
- 3.Goals: :: :: :: :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :25
-
- 3.1Maintaining and restoring data ::: :: :: :: :: :: :: :: :25
-
- 3.1Maintaining and restoring service :: :: :: :: :: :: :: :26
-
- 3.1Figuring how it happenned : :: ::: :: :: :: :: :: :: :: :26
-
- 3.1Avoiding the Future Incidents and Escalation : :: :: :: :26
-
- 3.1Avoiding looking foolish :: :: ::: :: :: :: :: :: :: :: :27
-
- 3.1.Finding out who did it :: :: ::: :: :: :: :: :: :: :: :27
-
-
- 2
-
-
-
-
-
-
- 3.1Punishing the attackers :: :: ::: :: :: :: :: :: :: :: :27
-
- 3.Backups : :: :: :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :27
-
- 3.2Why We Need Back Ups :: :: :: ::: :: :: :: :: :: :: :: :28
-
- 3.2How to form a Back Up Strategy that Works : :: :: :: :: :29
-
- 3.Forming a Plan :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :30
-
- 3.Tools to have on hand :: :: :: :: ::: :: :: :: :: :: :: :: :31
-
- 3.Sample Scenarios to Work on in Groups :: :: :: :: :: :: :: :31
-
-
- 4 Incident Handling 33
-
- 4.Basic Hints: :: :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :33
-
- 4.1Panic Level :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :33
-
- 4.1Call Logs and Time Lines :: :: ::: :: :: :: :: :: :: :: :33
-
- 4.1Accountability and Authority : ::: :: :: :: :: :: :: :: :33
-
- 4.1Audit Logs : :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :33
-
- 4.1Timestamps : :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :34
-
- 4.Basic Techniques : :: :: :: :: :: ::: :: :: :: :: :: :: :: :34
-
- 4.2Differencing :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :34
-
- 4.2Finding : :: :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :34
-
- 4.2Snooping :: :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :34
-
- 4.2Tracking :: :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :34
-
- 4.2Psychology : :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :34
-
- 4.Prosecution: :: :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :35
-
- 4.Exercise: :: :: :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :35
-
- 5 Recovering From Disasters 36
-
- A Micro Computers 36
-
-
- 3
-
-
-
-
-
-
- B VMS Script 39
-
-
- C Highly Sensitive Environments 42
-
- D Handling the Press 44
-
- D.Spin Control :: :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :44
-
- D.Time Control :: :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :44
-
- D.Hero Making: :: :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :44
-
- D.Discouraging or Encouraging a Next Incident :: :: :: :: :: :45
-
- D.Prosecution: :: :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :45
-
- D.No Comment : :: :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :45
-
- D.Honesty : :: :: :: :: :: :: :: :: ::: :: :: :: :: :: :: :: :45
-
- E Object Code Protection 46
-
-
- F The Joy of Broadcast 47
-
- G Guest Accounts 48
-
- G.Attack Difficulty Ratios :: :: :: ::: :: :: :: :: :: :: :: :48
-
- G.Individual Sponsors : :: :: :: :: ::: :: :: :: :: :: :: :: :48
-
- G.The No Guest Policy : :: :: :: :: ::: :: :: :: :: :: :: :: :48
-
-
- H Orange Book 49
-
- I Acknowledgements 50
-
-
-
-
-
-
-
-
-
-
-
-
- 4
-
-
-
-
-
-
- 1 Overview
-
-
- Since 1984, I have been periodically distracted from my
- education, my research and from my personal life to help handle
- computer emergencies. After presenting dozens of papers,
- tutorials talks on computer security, Roger Anderson and George
- Michale arranged for me to lead a one day intensive seminar on
- the practical aspects of computer security in an unclassified
- networked environment for IEEE Compcon. This primer was written
- as a basic text for this type seminar and has been used for about
- 2 dozen of them in the past year , and is still in draft form.
-
- The text is divided into four main sections with a number of
- appendices. The first two major sections of this document
- contain the material for the morning lecture. The two following
- sections contain the afternoon lecture contain the afternoon's
- material. The remaining appendices include material that is of
- interest to those people who have to deal with other computer
- security issues.
-
- Since this primer is a direct and simple ``how to guide'' for
- cost-effective solutions to computer security problems, it does
- not contain as many stories and examples as my other tutorials.
- Those readers interested in these stories or who are having
- difficulty convincing people in their organization of the need
- for computer security are referred to Attack of the Tiger Team,
- when it becomes available. and those readers interested in
- comprehensive list of computer security vulnerabilities should
- contact the author regarding the Hackman project.
-
- Suggestions, questions and other comments are always welcome.
- Please send comments to primer@cert.sei.cmu.edu. I hope to
- publish a this set of notes in a more complete form in the
- future. When sending comments or questions, please mention that
- you were reading version CERT 0.6 of June 8, 1990.
-
-
- Russell L. Brand
- brand@lll-crg.llnl.gov
- 1862 Euclid Ave, Suite 136
- Berkeley, CA 94709
-
-
-
-
-
-
-
-
- 5
-
-
-
-
-
-
- 2 Incident Avoidance
-
-
- ``An ounce of prevention is worth a pound of cure.'' In computer
- security this is an understatement by a greater factor than can
- be easily be believed. Very little has historically been done to
- prevent computer break-ins and I have been told by a number of
- the country's top computer scientists that ``Computer Security is
- a waste of time.'' The belief that security measures or
- preventive medicine is a waste has led to giant expenditures to
- repair damage to both computers and people respectively. Must of
- my surprise, several system managers reviewing this document were
- sure that even basic preventative measures would not be cost
- effective as compared to repairing disasters after they occurred.
-
- The vast majority of the security incidents are caused by one of
- about a dozen well understood problems. By not making these
- mistakes, you can prevent most of the problems from happening to
- your systems and avoid untold hassles and losses. Almost every
- site that I survey and almost every incident that did not involve
- insiders was caused by one of these problems. In the most of the
- insider cases, no amount of computer security would have helped
- and these are in many ways demonstrated problems with physical
- security or personnel policy rather than with computer security
- per se.
-
- Most of the security incidents are caused by ``attackers'' of
- limited ability and resources. Because of this and because there
- are so many easy targets, if you provide the most basic level of
- protection, most of the attackers will break into some other site
- instead of bothering yours. There are of course exceptional
- cases. If you are believed to have highly sensitive information
- or are on a ``hit list'' of one type or another, you may
- encounter more dedicated attackers. Readers interested in more
- comprehensive defensive strategies should consult the appendices.
-
- Over all, prevention of a problem is about four orders of
- magnitude cheaper than having to handling it in the average case.
- Proper planning can reduce the cost of incident handling and
- recovery and is discussed in the section on planning. In
- addition to whatever other measures are taken, the greatest
- incremental security improvement will be obtained be implementing
- the simple measures described below.
-
-
-
-
-
-
-
- 6
-
-
-
-
-
-
- 2.1 Passwords
-
-
- While ``good passwords'' is not a hot and sexy topic and will
- never command the prestige of exploitable bugs in the operating
- system itself, it is the single most important topic in incident
- prevention. Doing everything else entirely correctly is almost
- of no value unless you get this right!
-
-
- 2.1.1 Joe's
-
- A ``Joe'' is an account where the username is the same as the
- password. This makes the password both easy to remember and easy
- to guess. It is the single most common cause of password
- problems in the modern world.
-
- In 1986, there was popular conjecture that every machine had a
- Joe. There was fair amount of random testing done and in fact a
- Joe was found on each and every machine tested. These included
- machines that had password systems designed to prevent usernames
- from being used as passwords.
-
- This summer, while I was testing a series of sensitive systems,
- where hundred of thousands of dollars were spent to remove
- security holes including re-writing a fair fraction of the
- operating system, there were Joes.
-
- It is worthwhile to include a process in your system batching
- file (cron on unix) to check for Joes explicitly. The most
- common occurrences of Joes is the initial password that the
- system administrators set for an account which has never been
- changed. Often this initial password is set by the administrator
- with the expectation the user will change it promptly. Often the
- user doesn't know how to change it or in fact never logs in at
- all. In the latter case a dormant account lies on the system
- accomplishing nothing except wasting system resources and
- increasing vulnerabilities.
-
-
-
- 2.1.2 Same Passwords on Different Machines
-
- Many years ago when a computing center had a single mainframe the
- issue of a user having the same password on multiple machines was
- moot. As long the number of machines that a user accessed was
- very small, it was reasonable to request that a person to use a
- different password on each machine or set of machines. With a
-
-
- 7
-
-
-
-
-
-
- modern workstation environment, it is no longer practical to
- expect this from a user and a user is unlikely to comply if
- asked. There are a number of simple compromise measures that can
- and should be taken.
-
- Among these measures is requesting that privileged users have
- different passwords for their privileged accounts than for their
- normal use account and for their accounts on machines at other
- centers. If the latter is not the case, then anyone who gains
- control of one of these ``other'' machines which you have no
- control over, has gained privileged access to yours as well.
-
- The basic question of when passwords should be the same is
- actually a simple one. Passwords should be the same when the two
- machines are (1) logically equivalent (as in a pool of
- workstations), (2) ``trust each other'' to the extent that
- compromising one would compromise the others in other ways, or
- (3) are run by the same center with the same security measures.
- Passwords should be different when the computers are (1) run by
- different organizations, (2) have different levels of security or
- (3) have different operating systems.
-
- Lest this seems too strict, be assured that I have on several
- occasions broken into machines by giving privileged users on the
- target machines accounts on one of my own and exploiting their
- use of the same password on both. Further, machines with
- different operating systems are inherently vulnerable to
- different ``programming bugs'' and hence by having the same
- passwords on the two machines, each machine is open to the all
- the bugs that could exist on either system.
-
- It is interesting (but of little practical value) to note that an
- attacker can gain a cryptographic advantage by having two
- different encrypted strings for the same password. This would
- happen when the user has the same password on two machines but it
- has been encrypted with different salts. In principle, this
- makes hostile decryption much easier. In practice, the attack
- methods that are most often used do not exploit this.
-
- The worst offenders of the ``shared password problem'' are
- network maintenance people and teams. Often they want an account
- on every local area net that they service, each with the same
- password. That way they can examine network problems and such
- without having to look up hundreds of passwords.
-
- While the network maintainers are generally (but not always) good
- about picking reasonable passwords and keeping them secret, if
- any one machine that they are using has a readable password file
-
-
- 8
-
-
-
-
-
-
- (discussed below) or is ever compromised, this password is itself
- compromised and an attacker can gain unauthorized access to
- hundreds or thousands of machines.
-
-
- 2.1.3 Readable Password Files
-
-
- A readable password file is an accident waiting to happen. With
- access to the encrypted password an attacker can guess passwords
- at his leisure without you being able to tell that he is doing
- so. Once he has a correct password, he can then access your
- machine as that user. In the case of certain operating systems,
- including older versions of VMS, there is a well know inversion
- for the password encryption algorithm and hence the attacker
- doesn't need to guess at all once he can read the password file.
-
- Changing the encryption method to some other method that is also
- publically known doesn't help this set of problems, even if the
- crypto-system itself is much stronger. The weakness here is not
- in the crypto-system but rather in the ease of making guesses.
-
- It is vital to protect your password file from being read. There
- are two parts to this. First you should prevent anonymous file
- transfers from be able to remove a copy of the password file.
- While this is generally very easy to do correctly, there is a
- common mistake worth avoiding. Most file transfer facilities
- allow you to restrict the part of the file system from which
- unauthenticated transfers can be made. It is necessary to put a
- partial password file in this subsection so that an anonymous
- agent knows ``who it (itself) is''. Many sites have put complete
- password files here defeating one of the most important purposes
- of the restrictions. (Of course without this restriction ``World
- Readable'' takes on a very literal meaning:::)
-
- The second part of the solution is somewhat harder. This is to
- prevent unprivileged users who are using the system from reading
- the encrypted password from the password file. The reason that
- this is difficult is that the password file has a great deal of
- information that people and programs need in it other than the
- passwords themselves. Some version of some operating systems
- have privileged calls to handle the details of all this and hence
- their utilities have already been written to allow protection of
- the encrypted passwords.
-
- Most of the current versions of Unix are not among of these
- systems. Berkeley has distributed a set of patches to
- incorporate this separation (called shadow passwords) and the
-
-
- 9
-
-
-
-
-
-
- latest version of the SunOS has facilities for it. For those who
- are using an operating system that does not yet have shadow
- passwords and cannot use one of the new releases, a number of ad
- hoc shadowing systems have been developed. One can install
- shadow passwords by editing the binaries of /bin/login,
- /bin/passwd and similar programs that actually need to use the
- password fields and then modify /etc/vipw to work with both the
- diminished and shadow password files.
-
- Of course, since most of us use broadcast nets, there is a real
- danger of passwords being seen as they go over the wire. This
- class of problems is discussed in the the Joys of Broadcast
- appendix and the Guests appendix.
-
- Kerberos, developed at MIT's Athena project has an alternative
- means of handling passwords. It allows one to remove all the
- passwords from the normal use machines and to never have them
- broadcasted in clear text. While Kerberos is vulnerable to a
- number of interesting password guessing and cryptographic attacks
- and currently has problems with multi-home machines (Hosts with
- more than one IP address), it does provide the first practical
- attempt and network security for a university environment.
-
- An often overlooked issue is that of passwords for games. Many
- multiplayer computer games, such as ``Xtrek'' and ``Empire''
- require the user to supply a password to prevent users from
- impersonating one another during the game. Generally these
- passwords are stored by the game itself and are in principle
- unrelated to the passwords that the operating system itself uses.
- Unfortunately, these passwords are generally stored unencrypted
- and some users use the same password as they do for logging into
- the machine itself. Some games now explicitly warn the users not
- use his login passwords. Perhaps these games will eventually
- check that the password is indeed not the same as the login
- password.
-
-
- 2.1.4 Many faces of a person
-
-
- A single individual can have many different relationships to a
- computer at different times. The system programmers are acting
- as ``just users'' when they read their mail or play a computer
- game. In many operating systems, a person gets all of his
- privileges all of the time. While this is not true in Multics,
- it is true in the default configuration of almost every other
- operating system. Fortunately a computer doesn't know anything
- about ``people'' and hence is perfectly happy to allow a single
-
-
- 10
-
-
-
-
-
-
- person have several accounts with different passwords at
- different privilege levels. This helps to prevent the
- accidentally disclosure of a privileged password. In the case
- where the privileged user has his unprivileged account having the
- same password as his unprivileged account on other machines it
- will at least be the case that his privileges are not compromised
- when and if this other machine is compromised.
-
- The one case where it is especially important to have separate
- accounts or passwords for a single individual is for someone who
- travels to give demos. One can be assured that his password will
- be lost when he is giving a demo and something breaks. The most
- common form of ``breakage'' is a problem with duplex of of delay.
- It would nice if all that was lost was the demo password and for
- the demo password to be of no use to an attacker.
-
-
- 2.1.5 Automated Checks for Dumb Passwords
-
-
- Automated checks for dumb passwords come in three varieties. The
- first is to routinely run a password cracker against the
- encrypted passwords and notice what is caught. While this is a
- good idea, it is currently used without either of the other two
- mechanisms we will describe. Since it is computationally less
- efficient than the others by about a factor of 50,000, it should
- be used to supplement the others rather than be used exclusively.
- Among its many virtues is that an automated checking system that
- reads the encrypted passwords does not require having source for
- the operating system or making modification an system
- modifications.
-
- The second method of preventing dumb password is to alter the
- password changing facility so that it doesn't accept dumb
- passwords. This has two big advantages over the first method.
- The first of these is computational. The second is more
- important. By preventing the user from selecting the poor
- password to begin with, one doesn't need an administrative
- procedure to get him to change it later. It can all happen
- directly with no human intervention and no apparent
- accountability. As a general rule, people are not happy about
- passwords and really don't want to hear from another person that
- they need to change their password yet again.
-
- While this change does require a system modification, it can
- often be done without source code by writing a pre-processor to
- screen the passwords before the new password is passed to the
- existing utilities. The weakness in this approach lies with the
-
-
- 11
-
-
-
-
-
-
- users who are not required to use the new style of password
- facility. As a result, one finds that facilities that use only
- this method have good passwords for everyone except the system
- staff and new users who have had their initial passwords set by
- the system staff.
-
- The third method is designed primarily to catch the bad passwords
- that are entered in despite the use of the second method. Once
- could check the ``dumbness'' of a password with each attempted
- use. While this is computationally more expensive than the
- second method, it generally catches everyone. Even the system
- programmers tend to use the standard login utility. It has the
- nice feature of locking out anyone that finds a way to circumvent
- the second method. This generally requires a small amount of
- system source and risks causing embarrassment to ``too clever''
- system staff members.
-
- In terms of dumb passwords, there are a number of ``attack
- lists''. An attack list is a list of common passwords that an
- attacker could use to try to login with. Several of these have
- been published and more are constantly being formed. These lists
- are used for the automated password guesser and they may also be
- used directly in the second and third method described above.
- With the second and third method one may also use criteria
- including minimum length, use of non-alphabetic characters, etc.
- Finally, information about the individual user found in standard
- system files can be scanned to see if the user has incorporated
- this information into his password.
-
-
- 2.1.6 Machine Generated Passwords
-
-
- Most users hate machine generated passwords. Often they are
- unrememberable and accompanied by a warning to ``Never write them
- down'' which is a frustrating combination. (We will discuss the
- the writing down of passwords later.) Machine generated
- passwords come in four basic types
-
-
- Gibberish. This is the most obvious approach to randomness.
- Independently selected several characters from the set of
- all printable characters. For a six character password,
- this gives about 40 bits of randomness. It is very hard to
- guess and perhaps even harder to remember.
- Often a little bit of post processing is done on these
- passwords as well as on the random syllables discussed
- below. This post processing removes passwords that might
-
-
- 12
-
-
-
-
-
-
- prove offensive to the user. When a potentially offensive
- password is generated, the program simply tries again. The
- user often behaves the same way and runs the randomizer over
- and over again until a password that seems less random and
- more memorable to him is selected. In principle, the clever
- user could write a program that kept requesting new random
- passwords until an English word was chosen for him; this
- would take much too long to be practical.
-
- Numbers. Numbers are a lot like letters. People don't try to
- pronounce them and there are very few numbers that are
- ``offensive'' per se. An eight digit random number has
- about 26 bits of randomness in it and is of comparable
- strength to a 4 character random password chosen from the
- unrestricted set of printable characters. (The amount of
- randomness in a password is the log (base 2) of the number
- of possible passwords if they were all equally likely to
- occur.)
- Eight digit numbers are hard to remember. Fortunately
- ``chunking'' them into groups (as 184---25---7546) makes
- this less difficult than it would otherwise be.
-
- Syllables. This is by far the most common method currently used.
- The idea is to make non-words that are easy to remember
- because they sound like words. A three syllable, eight
- letter non-word often has about 24 bits of randomness in it
- making it not quite as strong as an 8 bit number but
- hopefully a little bit more memorable.
- The principle here is good. In fact, this pseudo-word idea
- should work very well. In practice it fails miserably
- because the standard programs for generating these
- pseudo-syllables are very poor. Eventually we may find a
- good implementation of this and see a higher level of user
- acceptance.
-
- Pass Phrases. Pass phrases are the least common way to implement
- machine generated passwords. The idea here is very simple.
- Take 100 nouns, 100 verbs, 100 adjective and 100 adverbs.
- Generate an eight digit random number. Consider it as four
- 2 digit random numbers and use that to pick one of each of
- the above parts of speech. The user is then given a phrase
- like ``Orange Cars Sleep Quickly.'' The words within each
- list are uniquely determined by their first two characters.
- The user may then type the phrase, the first few letters of
- each word or the eight digit number.
- The phrases are easy to remember, the system remains just as
- secure if you publish the list of words and has about 26
- bits of randomness. One can adapt the system down to three
-
-
- 13
-
-
-
-
-
-
- words with 20 bits of randomness and still be sufficiently
- safe for most applications.
-
-
- I believe that machine generated passwords are generally a bad
- solution to the password problem. If you must use them, I
- strongly urge the use of pass-phrases over the other methods. In
- any event, if your center is using machine generated passwords,
- you should consider running an occasional sweep over the entire
- user file system looking for scripts containing these passwords.
- Proper selection of your password generation algorithm can make
- this much easier than it sounds.
-
- As with almost all password issues, the user of a single computer
- center which gives him one machine generated password for access
- to all the machines he will use will not have nearly the level of
- difficulty as the user who uses computers at many centers and
- might have to remember dozens or even hundreds of such passwords.
-
-
- 2.1.7 The Sorrows of Special Purpose Hardware
-
-
- With the problems of broadcast networks and user selecting bad
- passwords or rebelling at machine generated password, some
- facilities have turned to special purpose hardware that generates
- keys dynamically. Generally these devices look like small
- calculators (or smart card) and when a user enters a short
- password (often four digits) they give him a password that is
- good for a single use. If the person wants to login again, he
- must get a new password from his key-generator.
-
- With a few exceptions, the technology of these devices works very
- well. The exceptions include systems with bad time
- synchronization, unreliable or fragile hardware or very short
- generated keys. In at least one case the generated keys were so
- short that it was faster to attack the machine by guessing the
- password ``1111'' than by guessing at the user generated
- passwords it replaced.
-
- Despite the technology of these devices working well and the
- installation generally being almost painless, there are two
- serious problems with their use. The first is cost. Buying a
- device for a user of large center can easily cost more than an
- additional mainframe. The second problem is more serious. This
- is one of user reluctance. Most users are unwilling to carry an
- extra device and the people who are users of many centers are
- even less willing to hold a dozen such devices and remember which
- is which.
-
- 14
-
-
-
-
-
-
- In one center, these devices were used only for privileged
- accesses initiated from insecure locations. Only a handful of
- them had to be made. (Being innovative, the center staff built
- them from old programmable calculators.) They were used only by
- the ``on call'' system programmer when handling emergencies and
- provided some security without being to obtrusive.
-
-
- 2.1.8 Is Writing Passwords Down that Bad?
-
-
- One of the first things that we were all told when we began using
- timesharing is that one should never write down passwords. I
- agree that the users should not record their passwords on-line.
- There have been a large number of break-ins enable by a user
- having a batch script that would include a clear-text password to
- let them login to another machine.
-
- On the other hand, how often has your wallet been stolen? I
- believe that a password written down in wallet is probably not a
- serious risk in comparison to other the problems including the
- selection of ``dumb'' password that are easier to remember. In
- classified systems, this is, of course, not permitted.
-
-
- 2.1.9 The Truth about Password Aging
-
-
- Some facilities force users to change their passwords on a
- regular basis. This has the beneficial side effect of removing
- dormant accounts. It is also the case that it limits the utility
- of a stolen password.
-
- While these are good and worthwhile effects, most system
- administrators believe that changing passwords on a regular basis
- makes it harder for an attacker to guess them. In practice, for
- an attacker that has gotten the crypt text of the password file,
- he generally only needs a few hours to find the passwords of
- interest and hence frequent changes do not increase the
- difficulty of his task. For the attacker who is guessing without
- a copy of the encrypt password, even changing the password every
- minute would at most double the effort he would be required to
- expend.
-
-
-
-
-
-
-
- 15
-
-
-
-
-
-
- 2.1.10 How do you change a password
-
-
- Users should be told to change their passwords whenever they have
- reason to expect that another person has learned their passwords
- and after each use of an ``untrusted'' machine. Unfortunately
- many users are neither told this, nor how to change the password.
- Be sure both to tell you users how to change their passwords and
- include these instructions in the on-line documentation in an
- obvious place. Users should not be expected to realize the
- password changing is (1) an option for directory maintenance
- under TOPS-20 and many versions of CMS, (2) is spelled passwd
- under unix or (3) is an option to set under VMS.
-
-
- 2.2 Old Password Files
-
-
- It is often the case at sites running shadow password systems,
- someone forgets to prevent the shadow password file from being
- publically readable. While this is easy to prevent by having a
- batch job that routinely revokes read permissions that were
- accidently granted, there is an interesting variant of this
- problem that is harder to prevent.
-
- When password files are edited, some editors leave backup files
- that are publically readable. In fact when a new system is
- installed a password file is often created by extracting
- information from the password files of many existing systems.
- The collection of password files is all too often left publically
- readable in some forgotten disk area where it is found by an
- attacker weeks or months later. The attacker then uses this data
- to break into a large number of machines.
-
-
- 2.3 Dormant Accounts
-
- While requiring annual password changes does eventually remove
- dormant accounts, it is worthwhile to try a more active approach
- for their removal. The exact nature of this approach will vary
- from center to center.
-
-
-
- 2.3.1 VMS
-
- In VMS, the account expiration field is a good method of retiring
- dormant accounts, but care should be taken as no advance notice
-
-
- 16
-
-
-
-
-
-
- is given that an account is near expiration.
-
- Also VMS security auditing makes the removal of expired users a
- bad idea. Because one of the most common errors is typing the
- password on the username line, DEC suppresses any invalid
- username from the logs until a breaking attempt is detected. But
- if the username is valid and the password wrong, the username is
- logged.
-
-
- 2.4 Default Accounts and Objects
-
-
- One of the joys of many operating systems is that they come
- complete with pre-built accounts and other objects. Many
- operating systems have enabled either accounts or prelogin
- facilities that present security risks.
-
- The standard ``accounts'' for an attacker to try on any system
- include the following:
-
-
- Open. A facility to automatically create new accounts. It is
- often set by default to not require either a password or
- system manager approval to create the new accounts.
- Help. Sometimes the pre-login help is too helpful. It may
- provide phone numbers or other information that you wouldn't
- want to advertise to non-users.
-
- Telnet. Or Terminal. An account designed to let someone just use
- this machine as a stepping stone to get to another machine.
- It is useful for hiding origins of an attack.
-
- Guest. Many operating systems are shipped with guest accounts
- enabled.
- Demo. Not only are several operating systems shipped with a demo
- account, but when installing some packages, a demo account
- is automatically created. All too often the demo account
- has write access to some of the system binaries (executable
- files).
-
- Games. Or Play. Often the password is Games when the account
- name is Play. In some cases this account has the ability to
- write to the Games directory allowing an attacker to not
- only play games, and snoop around, but to also insert Trojan
- horses at will.
-
- Mail. Quite often a system is shipped with or is given an
- unpassworded mail account so that people can report problems
-
- 17
-
-
-
-
-
-
- (like their inability to login) without logging in. In
- two-thirds of the systems that I have observed with such an
- account, it was possible to break into the main system
- through this account.
-
-
- Often these default accounts are normal accounts with an
- initialization file (.login, .profile, login.cmd, login.bat,
- etc.) or alternate command line interpreter to make it do
- something non-standard or restrict its action. These are
- generally called, ``Captive Accounts'' or ``Turnkey Logins.''
- Setting up a restricted login so that it stays restricted is very
- hard. It should of course be very easy, but in most cases a
- mistake is made.
-
-
- Subjobs. It is often the case that a restricted account is set up
- to only run a single application. This single application
- program is invoked by a startup script or instead of the
- standard command interpreter. Very often this program has
- an option to spawn a subprocess.
- In some cases this might be an arbitrary job (e. g. the
- /spawn option to Mail in VMS or ``:!'' to vi in unix) or
- might be limited to a small number of programs. In the
- former case the problem is immediate, in the latter case, it
- is often the case that one of these programs in turn allows
- arbitrary spawning.
- A carefully written subsystem will prevent this (and all
- other such problems). Generally these subsystems are
- created quickly rather than carefully.
-
- Editors. Most editors are sufficiently powerfully that if the
- restricted system can use an editor, a way can be found to
- cause problems.
-
- Full Filenames. Many restricted subsystems presume that by
- resetting the set of places the command interpreter looks
- for executable programs (called its ``search path'')
- functionality can be restricted. In unix this might be done
- by altering the Path variable or the logical names table in
- VMS.
- All too often the clever attacker is able to defeat this
- plan by using the complete filename of the file of interest.
- Sometimes non-standard names for the file are necessary to
- circumvent a clever restriction program.
-
- Removable Restriction Files. When a system relies on an
- initialization file to provide protection, it is important
- that this file cannot be altered or removed. If an
-
- 18
-
-
-
-
-
-
- restricted application is able to write to its ``home
- directory'' where these initialization files are kept it can
- often free itself.
-
- Non-standard Login. Some network access methods do not read or
- respect the startup files. Among these are many file
- transfer systems. I have often been able to gain privileged
- access to a machine by using the the login and password from
- a captive account with the file transfer facility that
- didn't know that these accounts weren't ``normal.'' Many
- file transfer facilities have methods for disabling the use
- of selected accounts.
-
- Interrupts. It is sad that a number of the captive accounts won't
- withstand a single interrupt or suspend character. Try it
- just to be sure.
-
- Making sure that you have not made any of the above listed
- mistakes is of course not sufficient for having a perfectly safe
- system. Avoiding these mistakes, or avoiding the use of captive
- accounts at all, is enough to discourage the vast majority of
- attackers.
-
- Each operating system for each vendor has some particular default
- accounts that need to be disabled or otherwise protected.
-
-
- 2.4.1 Unix
-
-
- Under unix there are a lot of possible default accounts since
- there are so many different vendors. Below is a partial list of
- the default accounts that I have successfully used in the past
- that are not mentioned above.
-
-
- Sysdiag. Or diag. This is used for doing hardware maintenance
- and should have a password.
-
- Root. Or Rootsh or rootcsh or toor. All to often shipped without
- a password.
- Sync. Used to protect the disks when doing an emergency shutdown.
- This account should be restricted from file transfer and
- other net uses.
-
- Finger. Or Who or W or Date or Echo. All of these have
- legitimate uses but need to be set up to be properly
- captive.
-
-
- 19
-
-
-
-
-
-
- Among the things that one should do with a new unix system is
-
-
- grep :: /etc/passwd
-
-
- to see what unpassworded accounts exist on the system. All of
- these are worth special attention.
-
-
- 2.4.2 VMS
-
- Since VMS is available from only one vendor, the default account
- here are better known. On large systems, these appear with
- standard well known passwords. On smaller systems, these
- accounts appear with no passwords at all. With the exception of
- Decnet, all have been eliminated on systems newer than version
- 4.6.
-
-
- Decnet
-
- System
- Systest
-
- Field
-
- UETP
-
- Many of the networking and mail delivery packages routinely added
- to VMS systems also have well know password. In the past six
- months these accounts have been commonly used to break into VMS
- systems.
-
-
- MMPONY
-
- PLUTO
-
- The password on all of these accounts should be reset when a new
- system is obtained. There are many problems with the DECNET
- account and the with the Task 0 object. System managers should
- obtain one of the standard repair scripts to remove these
- vulnerabilities.
-
-
-
-
-
-
- 20
-
-
-
-
-
-
- 2.4.3 CMS
-
-
- It has been many years since I have seriously used CMS. At last
- glance the default configuration seemed to include well know
- passwords for two accounts.
-
-
- rcsc
- operator
-
-
-
- 2.5 File Protections
-
- With file protections simple measures can avoid most problems.
- Batch jobs should be run on a regular basis to check that the
- protections are correct.
-
-
- Writable Binaries and System Directories. The most common problem
- with file protections is that some system binary or
- directory is not protected. This allows the attacker to
- modify the system. In this manner, an attacker will alter a
- common program, often the directory listing program to
- create a privileged account for them the next time that a
- privileged user uses this command.
- When possible the system binaries should be mounted
- read-only. In any event a program should systematically
- find and correct errors in the protection of system files.
- ``Public'' areas for unsupported executable should be
- moderated and these executable should never be used by
- privileged users and programs. System data files suffer
- from similar vulnerabilities.
-
- Readable Restricted System Files. Just as the encrypted passwords
- need to be protected, the system has other data that is
- worth protecting. Many computers have passwords and phone
- numbers of other computers stored for future use. The most
- common use of this type of information is for network mail
- being transported via UUCP or protected DECNET. It is
- difficult to rework these systems so that this information
- would not be necessary and hence it must be protected. You
- have an obligation to protect this data about your neighbors
- just as they have a responsibility to protect similar data
- that they have about you.
-
- Home Dir's and Init Files Shouldn't Be Writable. Checking that
- these directories and files can be written only by the owner
-
- 21
-
-
-
-
-
-
- will prevent many careless errors. It is also worthwhile to
- check that peoples mail archives are not publically
- readable. Though this is not directly a security threat, it
- is only one more line of code while writing the rest of
- this.
-
- In many versions of the common operating systems special
- checks are placed in the command interpreters to prevent
- them from using initialization files that were written by a
- third party. In this case there are still at least two
- types of interesting attacks. The first is to install a
- Trojan horse in the person's home directory tree rather than
- in the initialization file itself and the second is to
- simple remove the initialization files themselves. Often
- security weaknesses are remedied through the proper
- initialization file and without these files the
- vulnerabilities are re-introduced.
- No Unexpected Publically Writable Files or Directories. There are
- of course places and individual files that should be
- publically writable but these are stable quantities and the
- script can ignore them. In practice user seems to react
- well to being told about files that they own that are
- publically overwritable.
-
- When Parents aren't Owners. While it is not unusual for someone
- to have a link to a file outside of his directory structure,
- it is unusual for there to be a file to be in his home
- directory that is owned by someone else. Flagging this when
- the link-count is ``1'' is worthwhile.
-
-
- Automated scripts can find these errors before they are
- exploited. In general a serious error of one of the types
- described above is entered into a given cluster university system
- every other week.
-
-
- 2.6 Well Known Security Holes
-
-
- While hundreds of security holes exist in commonly used programs,
- a very small number of these account for most of the problems.
- Under modern version of VMS, most of them relate to either DECNET
- or creating Mailboxes.
-
- Under unix, a handful of programs account for most of the
- problems. It is not that these bugs are any worse or easier to
- exploit than the others, just that they are well known and
-
-
- 22
-
-
-
-
-
-
- popular. The interested reader is referred to the Hackman
- Project for a more complete listing.
-
-
- Set-Uid Shell Scripts. You should not have any set-uid shell
- scripts. If you have system source, you should consider
- modifying chmod to prevent users from creating set-uid
- programs.
-
- FTP. The file transfer utilities has had a number of problems
- both in terms of configuration management (remembering to
- disallow accounts like ``sync'' from being used to transfer
- files) and legitimate bugs. Patched version are available
- for most systems.
- Login on the Sun 386i and under Dec Ultrix 3.0, until a better
- fix is available,
-
- chmod 0100 /bin/login
-
- to protect yourself from a serious security bug.
- Sendmail. Probably the only program with as many security
- problems as the yellowpages system itself. Again a patched
- version should be obtained for your system.
-
- TFTP. This program should be set to run as an unprivileged user
- and/or chrooted.
-
- Rwalld. This program needs to be set to run as an unprivileged
- user.
- Mkdir. Some versions of unix do not have an atomic kernel call to
- make a directory and hence can leave the inodes in a ``bad''
- state if it is interrupted at just the right moment. If
- your system is one of these it is worthwhile to write a
- short program that increases the job priority of a job while
- it is making a directory so as to make it more difficult to
- exploit this hole.
-
- YP & NFS. Both present giant security holes. It is important to
- arrange to get patches as soon as they become available for
- these subsystems because we can expect more security
- problems with them in the future. Sun has recently started
- a computer security group that will help solve this set of
- problems.
-
-
- While the ambitious and dedicated system manager is encouraged to
- fix all of the security problems that exist, fixing these few
- will discourage most of the attackers.
-
-
- 23
-
-
-
-
-
-
- 2.7 New Security Holes
-
-
- New security holes are always being found. There are a number of
- computer mailing lists and advisory groups the follow this.
- Three groups of particular interest are CERT, ZARDOZ and CIAC.
-
-
- 2.7.1 CERT
-
- Cert is a DARPA sponsored group to help internet sites deal with
- security problems. They may be contacted as
- cert@cert.sei.cmu.edu. They also maintain a 24 hour phone number
- for security problems at (412) 268-7090.
-
-
-
- 2.7.2 ZARDOZ
-
- Neil Gorsuch moderates a computer security discussion group. He
- may be contacted as zardoz!security-request@uunet.UU.NET
- or security-request@cpd.com.
-
-
- 2.7.3 CIAC
-
-
- CIAC is the Department of Energy's Computer Incident Advisory
- Capability team led by Gene Schultz. This team is interested in
- discovering and eliminating security holes, exchanging security
- tools, as well as other issues. Contact CIAC as
- ciac@tiger.llnl.gov.
-
-
- 2.8 Excess Services
-
-
- Every extra network service that a computer offers potentially
- poses an additional security vulnerability. I am emphatically
- not suggesting that we remove those services that the users are
- using, I am encouraging the removal of services that are unused.
- If you are not getting a benefit from a service, you should not
- pay the price in terms of system overhead or security risk.
- Sometimes, as with rexecd under unix, the risks are not
- immediately apparent and are caused by unexpected interactions
- that do not include any bugs per se.
-
-
-
-
- 24
-
-
-
-
-
-
- 2.9 Search Paths
-
-
- If a user has set his search path to include the current
- directory (``.'' on Unix), he will almost always eventually have
- a serious problem. There are a number of security
- vulnerabilities that this poses as well as logistical ones.
- Searching through the all of the users initialization files
- and/or through the process table (with ps -e on unix) can detect
- this problem.
-
-
- 2.10 Routing
-
-
- Routing can provide a cheap partial protection for a computer
- center. There are some machines that don't need to talk to the
- outside world at all. On others, one would might like to be able
- to initiate contact outward but not have any real need to allow
- others to contact this machine directly.
-
- In an academic computer when administrative computers are placed
- on same network as the student machines, limiting routing is
- often a very good idea. One can set up the system such that the
- users on administrative machines can use the resources of the
- academic machines without placing them at significant risk of
- attack by the student machines.
-
- Ideally one would wish to place the machines that need to be
- protected on their own local area net with active routers to
- prevent an attacker from ``listening in'' on the broadcast net.
- This type of an attack is becoming increasingly popular.
-
-
- 2.11 Humans
-
- In almost all technological systems, the weakest link is the
- human beings involved. Since the users, the installers and the
- maintainers of the system are (in the average case) all humans,
- this is a serious problem.
-
-
-
- 2.11.1 Managers
-
- Managers, bosses, center directors and other respected people are
- often given privileged accounts on a variety of machines.
- Unfortunately, they often are not as familiar with the systems as
-
-
- 25
-
-
-
-
-
-
- the programmers and system maintainers themselves. As a result,
- they often are the targets of attack. Often they are so busy
- that do not take the security precautions that others would take
- and do not have the same level of technical knowledge. They are
- given these privileges as a sign of respect. They often ignore
- instructions to change passwords or file protections
-
- The attackers rarely show this level of respect. They break into
- the unprotected managerial account and use it as a vector to the
- rest of the system or center. This leads to an embarrassing
- situations beyond the break-in itself as the manager is made to
- look personally incompetent and is sometimes accused of being
- unfit for his position.
-
- Prevent this type of situation form occurring by giving
- privileges only to people that need and know how to use them.
-
-
- 2.11.2 Secretaries
-
-
- Secretaries are often give their bosses passwords by their
- bosses. When a secretary uses his bosses account, he has all the
- privileges that his boss would have and generally does not have
- the training or expertise to use them safely.
-
- It is probably not possible to prevent bosses from giving their
- passwords to their secretaries. Still one can reduce the need
- for this by setting up groups correctly. One might consider
- giving ``bosses'' two separate accounts one for routine use and
- one for privileged access with a hope that they will only share
- the former with their secretary.
-
-
- 2.11.3 Trojan Horses
-
-
- Having an ``unsupported'' or ``public'' area on disk where users
- place binaries for common use simplifies the placement of Trojan
- horse programs. Having several areas for user maintained
- binaries and a single user responsible for each reduces but does
- not eliminate this problem.
-
-
- 2.11.4 Wizards
-
- Wizards and system programmers often add their own security
- problems. They are often the ones to create privileged programs
-
-
- 26
-
-
-
-
-
-
- that are needed and then forgotten about without being disabled.
- Thinking that an account doesn't need to be checked/audited
- because it is owned by someone that should know better than to
- make a silly mistake is a risky policy.
-
-
- 2.11.5 Funders
-
-
- Funders are often giving accounts on the machines that they
- ``paid for.'' All to often these accounts are never used but not
- disabled even though they are found to be dormant by the
- procedures discussed above. Again, this is a mistake to be
- avoided.
-
-
- 2.12 Group Accounts
-
-
- A group account is one that is shared among several people in
- such a way that one can't tell which of the people in the group
- is responsible for a given action.
-
- Those of you familiar with Hardin's ``The Tragedy of The Common''
- will understand that this is a problem in any system computer or
- otherwise. Part of the problem here is with passwords.
-
-
- 1. You can't change the password easily. You have to find
- everyone in the group to let them know.
- 2. If something Dumb happens you don't know who to talk to
- about it.
-
- 3. If someone shares the group password with another person,
- you can never find out who did or who all the people who
- knew the password were.
-
-
- Group accounts should always be avoided. The administrative work
- to set up several independent accounts is very small in
- comparison to the extra effort in disaster recovery for not doing
- so.
-
- One must not only avoid the explicit group accounts, but also the
- implicit ones. This is where an individual shares his password
- with dozens of people or allows dozens, perhaps hundreds of them
- to use his through proxy logins or .rhosts.
-
-
-
- 27
-
-
-
-
-
-
- 2.13 .rhosts and proxy logins
-
-
- Just as some people trust each other, some accounts trust each
- other and some machines trust each other. There are several
- mechanism for setting up a trust relationship. Among these are
- hosts.equiv, .rhosts, and proxy logins.
-
- These mechanisms essentially allow a user to login from one
- machine to another without a password. There are three basic
- implications to this.
-
-
- 1. If you can impersonate a machine, you can gain access to
- other machines without having to provide passwords or find
- bugs.
- 2. Once you get access to one account on one machine, you are
- likely to be able to reach many other accounts on other
- machines.
-
- 3. If you gain control of a machine, you have gained access to
- all the machines that trusts it.
-
-
- Various experiments have shown that by starting almost anywhere
- interesting, once one has control of one medium size machine, one
- can gain access to tens of thousands of computers. In my most
- recent experiment, starting from a medium size timesharing
- system, I gained immediate access to 150 machines and surpassed
- 5000 distinct machines before completing the second recursion
- step.
-
-
- 2.14 Debugging
-
-
- About one third of the security holes that I have come across
- depend on a debugging option being enabled. When installing
- system software, always check that all the ``debugging'' options
- that you are not using are disabled.
-
-
- 2.15 Getting People Mad at You
-
- It is sad but true that a small number of sites have gotten
- groups of hackers angry at them. In at least two cases, this was
- because the hackers had found an interesting security hole, had
-
-
-
- 28
-
-
-
-
-
-
- tried to contact the administrators of the center and were given
- a hard time when they were seriously trying to help.
-
- When one is given a ``tip'' from someone that won't identify
- themselves about a security problem, it is generally worth
- investigating. It is not worth trying to trick the informant
- into giving his phone number to you. It almost never works, and
- it is the ``type of dirty trick'' that will probably get people
- mad at you and at the very least prevent you from getting early
- warnings in the future.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 29
-
-
-
-
-
-
- 3 Pre-Planning your Incident Handling
-
-
- 3.1 Goals
-
-
- Despite your best plans to avoid incidents they may very well
- occur. Proper planning can reduce their serverity, cost and
- inconvenience levels. There are about half dozen different goals
- that one can have while handling an incident.
-
-
- 1. Maintain and restore data.
- 2. Maintain and restore service.
-
- 3. Figure out how it happenned.
-
- 4. Avoid the future incidents and escalation.
- 5. Avoid looking foolish.
-
- 6. Find out who did it.
-
- 7. Punish the attackers.
-
- The order shown above is what I believe the order of priorities
- generally should be. Of course in a real situation there are
- many reasons why this ordering might not be appropriate and we
- will discuss the whens and why of changing our priorities in the
- next section.
-
- For any given site, one can expect that a standard goal
- prioritization can be developed. This should be done in advance.
- There is nothing so terrible as being alone in a cold machine
- room at 4 on a Sunday morning trying to decide whether to shut
- down the last hole to protect the system or try to get a phone
- trace done to catch the attacker. It is similarly difficult to
- decide in the middle of a disaster whether you should shut down a
- system to protect the existing data or do everything you can to
- continue to provide service.
-
- Noone who is handling the technical side of an incident wants to
- make these policy decisions without guidance in the middle of a
- disaster. One can be sure that these decisions will be replayed
- an re-analyzed by a dozen ``Monday Morning Quarterbacks'' who
- will explain what should have been done could not be bothered to
- make up a set of guidelines before.
-
- Let us look at each of these goals in a little more detail.
-
-
- 30
-
-
-
-
-
-
- 3.1.1 Maintaining and restoring data
-
-
- To me, the user data is of paramount importance. Anything else
- is generally replacable. You can buy more disk drives, more
- computers, more electrical power. If you lose the data, though a
- security incident or otherwise, it is gone.
-
- Of course, if the computer is controlling a physical device,
- there may be more than just data at stake. For example, the most
- important goal for the computer in Pacemaker is to get the next
- pulse out on time.
-
- In terms of the protection of user data, there is nothing that
- can take the place of a good back-up strategy. During the week
- that this chapter was written, three centers that I work with
- suffered catastrophic data loss. Two of the three from air
- conditioning problems, one from programmer error. At all three
- centers, there were machines with irreplacable scientific data
- that had never been backed up in their lives.
-
- Many backup failures are caused by more subbtle problems than
- these. Still it is instructive to note that many sites never
- make a second copy of their data. This means than any problem
- from a defective disk drive, to a water main break, to a typing
- mistake when updating system software can spell disaster.
-
- If the primary goal is that of maintaining and restoring data,
- the first thing to do during an incident needs to be to check
- when the most recent backup was completed. If it was not done
- very recently, an immediate full system dump must be made and the
- system must be shutdown until it is done. Of course, one can't
- trust this dump as the attacker may have already modified the
- system.
-
-
- 3.1.2 Maintaining and restoring service
-
- Second to maintaining the data, maintaining service is important.
- Users have probably come to rely on the computing center and will
- not be pleased if they can't continue to use it as planned.
-
-
-
- 3.1.3 Figuring how it happenned
-
- This is by far the most interesting part of the problem and in
- practice seems to take precident over all of the others. It of
-
-
- 31
-
-
-
-
-
-
- course strongly conflicts with the two preceeding goals.
-
- By immediately making a complete copy of the system after the
- attack, one can analyze it at one's leisure. This means that we
- don't need to worry about normal use destroying evidence of about
- the attacker re-entering to destroy evidence of what happenned.
-
- Ultimately, one may never be able to determine how it happenned.
- One may find several ways that ``could have happenned''
- presenting a number of things to fix.
-
-
- 3.1.4 Avoiding the Future Incidents and Escalation
-
-
- This needs to be an explicit goal and often is not realized until
- much too late. To avoid future incidents one of course should
- fix the problem that first occurred and remove any new security
- vulnerabilities that were added either by the attackers or by the
- system staff while trying to figure out what was going on.
-
- Beyond this, one needs to prevent turning a casual attacker who
- may not be caught into dedicate opponent, to prevent enticing
- other attackers and to prevent others in one's organization and
- related organizations from being forced to introduce restrictions
- that would be neither popular nor helpful.
-
-
- 3.1.5 Avoiding looking foolish
-
-
- Another real world consideration that I had not expected to
- become an issue is one of image management. In practice, it is
- important not to look foolish in the press, an issue that we will
- discuss more fully in an appendix. Also it is important for the
- appropriate people within the organization to be briefed on the
- situation. It is embarrising to find out about an incident in
- one's own organization from a reporter's phone call.
-
-
- 3.1.6 Finding out who did it
-
- This goal is often over emphasized. There is definitely a value
- in knowing who the attacker was so that one can debrief him and
- discourage him from doing such things in the future.
-
- In the average case, it effort to determine the attackers
- identity than it is worth unless one plans to prosecute him.
-
-
- 32
-
-
-
-
-
-
- 3.1.7 Punishing the attackers
-
-
- This merits of this goal have been seriously debated in the past
- few years. As a practical matter it is very difficult to get
- enough evidence to prosecuter someone and very few succesful
- prosecutions. If this is a one of the goals, very careful record
- keeping needs to be done at all times during the investigation,
- and solving the problem will be slowed down as one waits for
- phone traces and various court orders.
-
-
- 3.2 Backups
-
-
- It should be clear that accomplishing most of the goals requires
- having extra copies of the data that is stored on the system.
- These extra copies are called ``Backups'' and generally stored on
- magnetic tape.
-
- Let us consider two aspects of keeping backup copies of your
- data. First, we will look at why this important and what the
- backups are used for and then we will examine the charateristics
- of a good backup strategy.
-
-
- 3.2.1 Why We Need Back Ups
-
- Good back ups are needed for four types of reasons. The first
- three of these are not security related per se, though an
- insufficeint back up strategy will lead to problems with these
- first three as well.
-
- If a site does not have a reliable back up system, when an
- incident occurs, one must seriously consider immediate shutdown
- of the system so as not to endanger the user data.
-
-
- User Errors. Every once in a while, a user delete a file or
- overwrites data and then realizes that he needs it back. In
- some operating systems, ``undelete'' facilities or version
- numbering is enough to protect him, if he notices his
- mistake quickly enough. Sometimes he doesn't notice the
- error for a long time, or deletes all of the versions, or
- expunges them and then wants the data back.
- If there is no backup system at all, the users data is just
- plain lost. If there is a perfect backup system, he quickly
- is able to recover from his mistake. If there is a poor
-
-
- 33
-
-
-
-
-
-
- back up system, his data may be recovered in a corrupted
- form or with incorrect permission set on it.
-
- There have been cases where back up systems returned data
- files to be publically writeable and obvious problems have
- ensued from it. Perhaps as seriously, there are sites that
- have stored all of the back up data in a publically readable
- form, including the data that was protected by the
- individual user.
- System Staff Errors. Just as users make mistakes, staff members
- do as well. In doing so, they may damage user files, system
- files or both. Unless there is a copy of the current system
- files, the staff must restore the system files from the
- original distribution and then rebuild all of the site
- specific changes. This is an error prone process and often
- the site specific changes including removing unwanted
- debugging features that pose security vulnerabilities.
-
- Hardware/Software Failures. Hardware occassionally fails. If the
- only copy of the data is on a disk that has become
- unreadable it is lost. Software occasionally fails. Given
- a serious enough error, it can make a disk unreadable.
-
- Security Incidents. In this document, our main concern is with
- security incidents. In determining what happen and
- correcting it, backups are essential.
- Basically, one would like to return every file to the state
- before the incident except for those that are being modified
- to prevent future incidents. Of course, to do this, one
- needs a copy to restore from. Naively, one would think that
- using that modification date would allow us to tell which
- files need to be updated. This is of course not the case.
- The clever attack will modify the system clock and/or the
- timestamps on files to prevent this.
- In many attacks, at one the following types of files are
- modified.
-
- ? The system binary that controls logging in.
- ? The system authorization file lists the users and their
- privileges.
-
- ? The system binary that controls one or more daemons.
- ? The accounting and auditing files.
- ? User's startup files and permission files.
-
- ? The system directory walking binary.
-
-
- Now that we understand why we need back ups in order to recover
-
- 34
-
-
-
-
-
-
- 3.2.2 How to form a Back Up Strategy that Works
-
-
- There are a few basic rules that provide for a good backup
- strategy.
-
-
- ? Every file that one cares about must be included.
- ? The copies must be in non-volitile form. While having two
- copies of each file, one on each of two separate disk drives
- is good for protection from simple hardware failures, it is
- not defense from an intelligent attacker that will modify
- both copies, of from a clever system staffer who saves time
- by modifying them both at once.
-
- ? Long cycles. It may take weeks or months to notice a
- mistake. A system that reuses the same tape every week will
- have destroyed the data before the error is noticed.
-
- ? Separate tapes. Overwriting the existing backup before
- having the new one completed is an accident waiting to
- happen.
- ? Verified backups. It is necessary to make sure that one can
- read the tapes back in. One site with a programming bug in
- its back up utility had a store room filled with unreadable
- tapes!
-
-
-
- 3.3 Forming a Plan
-
- While the first major section (avoidance) contained a lot of
- standard solutions to standard problems, planning requires a
- great deal more thought and consideration. A great deal of this
- is list making.
-
-
- Calls Lists. If there a system staffer suspects security incident
- is happening right now, who he should call?
- And if he gets no answer on that line?
-
- What if the people are the call list are no longer employees
- or have long since died?
- What if it Christmas Day or Sunday morning?
-
- Time--Distance. How long will it take for the people who are
- called to arrive?
- What should be done until they get there?
-
-
- 35
-
-
-
-
-
-
- This a user notices. If a user notices something odd, who should
- he tell?
-
- How does he know this?
- Threats and Tips. What should your staffers do if they receive a
- threat or a tip-off about a breakin?
-
- Press. What should a system staffer do when he receives a call
- from the press asking about an incident that he, himself
- doesn't know about?
- What about when there is a real incident underway?
-
- Shutting Down. Under what circumstances should the center be
- shutdown or removed from the net?
- Who can make this decision?
-
- When should service be restored?
- Prosecution. Under what circumstances do you plan to prosecute?
-
- Timestamps. How can you tell that the timestamps have been
- altered?
- What should you do about it?
-
- Would running NTP (the network time protocal) help?
- Informing the Users. What do you tell the users about all this?
-
- List Logistics. How often to you update the incident plan?
- How does you system staff learn about it?
-
-
- 3.4 Tools to have on hand
-
-
- File Differencing Tools
-
- Netwatcher
-
- Spying tools
-
- Backup Tapes
-
- Blanks Tapes
-
- Notebooks
-
-
-
-
-
-
- 36
-
-
-
-
-
-
- 3.5 Sample Scenarios to Work on in Groups
-
-
- In order to understand what goal priorities you have for you
- center and as a general exercise in planning, let us consider a
- number of sample problems. Each of these is a simplified version
- of a real incident. What would be appropriate to do if a similar
- thing happenned at your center? Each new paragraph indicates new
- information that is received later.
-
-
- ? A system programmer notices that at midnight each night,
- someone makes 25 attempts to guess a username--password
- combination
- Two weeks later, he reports that each night it is the same
- username--password combination.
-
- ? A system programmer gets a call reporting that a major
- underground cracker newsletter is being distributed from the
- administrative machine at his center to five thousand sites
- in the US and Western Europe.
- Eight weeks later, the authorities call to inform you the
- information in one of these newsletters was used to disable
- ``911'' in a major city for five hours.
-
- ? A user calls in to report that he can't login to his account
- at 3 in the morning on a Saturday. The system staffer can't
- login either. After rebooting to single user mode, he finds
- that password file is empty.
- By Monday morning, your staff determines that a number of
- privileged file transfer took place between this machine and
- a local university.
- Tuesday morning a copy of the deleted password file is found
- on the university machine along with password files for a
- dozen other machines.
-
- A week later you find that your system initialization files
- had been altered in a hostile fashion.
- ? You receive a call saying that breakin to a government lab
- occurred from one of your center's machines. You are
- requested to provide accounting files to help trackdown the
- attacker.
-
- A week later you are given a list of machines at your site
- that have been broken into.
- ? A user reports that the last login time/place on his account
- aren't his.
-
-
-
- 37
-
-
-
-
-
-
- Two weeks later you find that your username space isn't
- unique and that unauthenticated logins are allowed between
- machines based entirely on username.
-
- ? A guest account is suddenly using four CPU hours per day
- when before it had just been used for mail reading.
- You find that the extra CPU time has been going into
- password cracking.
-
- You find that the password file isn't one from your center.
- You determine which center it is from.
-
- ? You hear reports of computer virus that paints trains on
- CRT's.
- You login to a machine at your center and find such a train
- on your screen.
- You look in the log and find not notation of such a feature
- being added.
-
- You notice that five attempts were made to install it within
- an hour of each before the current one.
- Three days later you learn that it was put up by a system
- administrator locally who had heard nothing about the virus
- scare or about your asking about it.
-
- ? You notice that your machine has been broken into.
- You find that nothing is damaged.
- A high school student calls up and apologizes for doing it.
-
- ? An entire disk partition of data is deleted. Mail is
- bouncing bouncing because the mail utilities was on that
- partition.
- When you restore the partition, you find that a number of
- system binaries have been changed. You also notice that the
- system date is wrong. Off by 1900 years.
-
- ? A reporter calls up asking about the breakin at your center.
- You haven't heard of any such breakin.
- Three days later you learn that there was a breakin. The
- center director had his wife's name as a password.
-
- ? A change in system binaries is detected.
- The day that it is corrected they again are changed.
-
- This repeats itself for some weeks.
-
-
-
-
-
- 38
-
-
-
-
-
-
- 4 Incident Handling
-
-
- The difficulty of handling an incident is determined by several
- factors. These include the level of preparation, the sensitivity
- of the data, and the relative expertise levels of the attacker(s)
- and the defender(s). Hopefully, preliminary work in terms of
- gathering tools, having notification lists, policies and most
- importantly backup tapes, will make the actual handling much
- easier.
-
- This section is divided into three parts. The first of these
- deal with general principles. The second presents some
- particular (simple) techniques that have proven useful in the
- past. Finally, the third section presents a description of a
- simulation exercise based a set of real attacks.
-
-
- 4.1 Basic Hints
-
-
- There are a number of basic issues to understand when handling a
- computer incident. Most of these issues are present in handling
- most of these issues and techniques are relevant in a wide
- variety of unusual and emergency situations.
-
-
- 4.1.1 Panic Level
-
-
- It is critical to determine how much panic is appropriate. In
- many cases, a problem is not noticed until well after it has
- occurred and another hour or day will not make a difference.
-
-
- 4.1.2 Call Logs and Time Lines
-
- All (or almost all) bad situations eventually come to an end. At
- that point, and perhaps at earlier points, a list of actions and
- especially communications is needed to figure out what happened.
-
-
- 4.1.3 Accountability and Authority
-
-
- During an incident it is important to remind people what
- decisions they are empowered to make and what types of decisions
- that they are not. Even when this is explicitly discussed and
-
-
- 39
-
-
-
-
-
-
- formulated in a contingency plan, people have a tendency to
- exceed their authorities when they are convinced that they know
- what should be done.
-
-
- 4.1.4 Audit Logs
-
-
- Audit logs need to be copied to a safe place as quickly as
- possible. It is often the case that an attacker returns to a
- computer to destroy evidence that he had previously forgotten
- about.
-
-
- 4.1.5 Timestamps
-
- The second most powerful tool (second only to backup tapes) in an
- incident handlers arsenal is timestamps. When in doubt as to
- what to do, try to understand the sequencing of the events. This
- is especially true when some of the actions will change the value
- on the system clock.
-
-
-
- 4.2 Basic Techniques
-
- There are five basic sets of techniques for understanding what
- has happened.
-
-
- 4.2.1 Differencing
-
-
- Differencing is that act of comparing the state of a part of the
- computer system to the state that it was in previously. In some
- cases we have compared every executable system file with the
- corresponding file on the original distribution tape to find what
- files the attacker may have modified. Checksums are often used
- to decrease the cost of differencing. Sometimes people look only
- for differences in the protection modes of the files.
-
-
- 4.2.2 Finding
-
-
- Finding is generally cheaper than differencing. Finding is the
- act of looking at a part of a computer system for files that have
- been modified during a particular time or have some other
- interesting property.
-
- 40
-
-
-
-
-
-
- 4.2.3 Snooping
-
-
- Snooping is the act of placing monitors on a system to report the
- future actions of an attacker. Often a scripting version of the
- command line interpreter is used or a line printer or PC is
- spliced in to the incoming serial line.
-
-
- 4.2.4 Tracking
-
- Tracking is the use of system logs and other audit trails to try
- to determine what an attacker has done. It is particularly
- useful in determining what other machines might be involved in an
- incident.
-
-
-
- 4.2.5 Psychology
-
- A wide range of non-technical approaches have been employed over
- the years with an even wider range of results. Among these
- approaches have been leaving messages for the attacker to find,
- starting talk links, calling local high school teachers, etc.
-
-
- 4.3 Prosecution
-
-
- Prosecution has historically been very difficult. Less than a
- year ago, the FBI advised me that it was essentially impossible
- to succeed in a prosecution. More recently, FBI agent Dave
- Icove, (icove@dockmaster.cnsc.mil, 703--640--1176) has assured me
- that the FBI will be taking a more active role in the prosecution
- of computer break-ins and has expressed interest in lending
- assistance to investigation where prosecution is appropriate.
-
-
- 4.4 Exercise
-
-
- The bulk of this class hour is reserved for an incident handling
- simulation. A facility will be described. A consensus policy
- for incident handling will be agreed upon and then the simulation
- will begin.
-
- During the simulation, the effects of the attackers actions and
- those of third parties will be described. The participants can
-
-
- 41
-
-
-
-
-
-
- choose actions and take measurements and will be informed of the
- results of those actions and measurements. In a sufficiently
- small working group that had several days, we would run a
- software simulation; but as many of the actions take hours (ega
- full system comparison to the original distribution), we will
- proceed verbal in the short version of this workshop.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 42
-
-
-
-
-
-
- 5 Recovering From Disasters
-
-
- Incident recovery is the final portion of the of the incident
- handling process. Like the other portions of incident handling,
- it is not particularly difficult but is sufficiently intricate to
- allow for many errors.
-
-
- Telling everyone that is over. For a large incident, it is not
- unusual to have contacted people at a dozen or more sites.
- It is important to let everyone know that you are done and
- to be sure to give your colleagues the information that they
- need. It is also important that your staff knows that
- things are over so that they can return to normal work.
- Generally a lot of people need to thanked for the extra
- hours and effort that they have contributed.
- Removing all Tools. Many of the tools that were installed and
- using during an incident need to removed from the system.
- Some will interfere with performance. Others are worth
- stealing by a clever attacker. Similarly a future attacker
- that gets a chance to look at the tools will know a lot
- about how you are going to track him. Often extra accounts
- are added for handling the incident. These need to be
- removed.
-
- File and Service Restoration. Returning the file system to a
- ``known good state'' is often the most difficult part of
- recovery. This is especially true with long incidents.
-
- Reporting Requirements. Often, especially if law enforcement
- agencies have become involved, a formal report will be
- required.
- History. After everything is over, a final reconstruction of the
- events is appropriate. In this way, everyone on your staff
- is telling the same story.
-
- Future Prevention. It is important to make sure that all of the
- vulnerabilities that were used in or created the incident
- are secured.
-
-
- Just after an incident, it is likely to be a good time to create
- sensible policies where they have not existed in the past and to
- request extra equipment or staffing to increase security.
- Similarly, it is a logical time for someone else to demand
- stricter (nonsensical) policies to promote security.
-
-
-
- 43
-
-
-
-
-
-
- A Micro Computers
-
-
- While the bulk of this book and class has concerned multi-user
- computers on networks, micro computers are also worth some
- attentions.
-
- Basically there are four issues that cause concern.
-
-
- Shared Disks. In many settings, micro computers are shared among
- many users. Even if each user brings his own data, often
- the system programs are shared on communal hard-disk,
- network or library or floppies. This means that a single
- error can damage the work of many people. Such errors might
- include destruction of a system program, intentional or
- accidental modification of a system program or entry of a
- virus.
- To combat this, systematic checking or reinstallation of
- software from a known protected source is recommended. In
- most shared facilities, refreshing the network, hard-disk or
- floppy-library weekly should be considered. Shared floppies
- should be write protected and the original copies of
- programs should be kept under lock and key and used only to
- make new copies.
- Trusted server the provide read only access to the system
- files have been successfully used in some universities. It
- is absolute critical that these machines be used only as
- servers.
-
- Viruses. A number of computer viruses have been found for
- micro-computers. Many experts consider this problem to be
- practically solved for Macintoshes an soon to be solved for
- IBM-style PC's.
- Two basic types of anti-viral software are generally
- available. The first type is installed into the operating
- and watches for virus's trying to infect a machine.
- Examples of this on the Mac include Semantic's SAM (Part 1),
- Don Brown's vaccine and Chris Johnson's Gate Keeper.
- The second type of anti-viral software scans the disk to
- detect and correct infected programs. On the Mac, SAM (Part
- 2), H. G. C. Software's Virex, and John Norstab's Disinfinct
- are commonly used disk scanners.
-
- On the PC type of machines we find three types of virus.
- The first of these is a boot sector virus that alters the
- machine language start up code found on the diskette. The
- second infects the command.com startup file and the third
- alters the exe (machine language executable files).
-
- 44
-
-
-
-
-
-
- Flu Shot Plus by Ross Greenberg is an example of a program
- to deal with command.com & some exe virus. Novirus and
- cooperatively built by Yale, Alemeda and Merit is one of the
- boot track repair systems.
- There are a number of electronic discussion groups that deal
- with computer virus. On BITNET (and forwarded to other
- networks), virus-l supports discussion about PC and Mac
- virus, while valert is used to announce the discovery of new
- ones. Compuserve's macpro serves as a forum to discuss
- Macintosh viruses.
-
- Network. The third is issue is the placement of single user
- computers on networks. Since there is little or no
- authentication on (or of) these machines, care must be taken
- to not place sensitive files upon them in such a
- configuration.
-
- Reliability. Finally there is a reliability issue. Most single
- user computers were never designed for life and time
- critical applications. Before using such a computer in such
- an application, expert advise should be sought.
-
- In the use of single user computers, there are some basic issues
- that need be considered and some simple advice that should be
- given.
-
- In the advice column, there are a few basic points.
-
-
- 1. Where practical, each user should have his own system disks
- and hence be partially insulated from potential mistakes.
- 2. When people are sharing disks have an explicit check out
- policy logging the users of each disk. Be sure to set the
- write-protect them and teach the users how to write protect
- there own system disks. (Most PC programs are sold on
- write-protected disks, this is not true of most Macintosh
- programs.
-
- 3. Keep a back up copy of all system programs and system
- programs to allow for easy restoration of the system.
- 4. Write lock originals and keep them under lock and key for
- emergency use only.
-
- 5. Have an explicit policy and teach users about software theft
- and software ethics.
-
- 6. Teach users to back up their data. Just as with large
- computers, the only real defense from disaster is
- redundancy.
-
- 45
-
-
-
-
-
-
- Even when the computer center is not providing the machines
- themselves, it should generally help to teach users about
- backups, write protection, software ethics and related issues.
- Most PC users do not realize that they are their own system
- managers and must take the responsibility of care for their
- systems or risk the consequences.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 46
-
-
-
-
-
-
- B VMS Script
-
-
- This script is courtesy of Kevin Oberman of Lawrence Livermore
- National Labs. It is used on DEC VMS systems to close a number
- of the standard created by the normal installation of DECNET.
- Rather than typing this in by hand, please request one by
- electronic mail. This DCL script is provided for reference
- purposes only and is not guaranteed or warranted in any way.
-
-
- $ Type SYS$INPUT
-
- countpandedure changes the password for the default DECnet ac-
- sets up a new account for FAL activity. It prevents unautho-
- rized users
- from making use of the default DECnet account for any pur-
- pose except
- file transfer.
-
- This procedure assumes a default DECnet account named DECNET us-
- ing a
- directory on SYS$SYSROOT. If this is not the case on this sys-
- tem, do
- readypinceed! It will use UIC [375,375]. If this UIC is al-
- use, do not continue.
-
- $ Read/End=Cleanup/Prompt="Continue [N]: " SYS$COMMAND OK
- $ If .NOT. OK Then Exit
- $ Say := "Write SYS$OUTPUT"
- $ Current_Default = F$Environment("DEFAULT")
- $ Has_Privs = F$Priv("CMKRNL,OPER,SYSPRV")
- $ If Has_Privs Then GoTo Privs_OK
- $ Say "This procedure requires CMKRNL, OPER, and SYSPRV."
- $ Exit
- $POnvControl_Y Then GoTo Cleanup
- $ On Error Then GoTo Cleanup
- $ Set Terminal/NoEcho
- $ Read/End=Cleanup/Prompt="Please enter new default DECnet pass-
- word: " -
- SYS$Command DN_Password
- $ Say " "
- $ If F$Length(DN_Password) .GT. 7 Then GoTo DN_Password_OK
- $ Say "Minimum password length is 8 characters"
- $ GoTo Privs_OK
- $DN_Password_OK:
- $ Sayd"E"d=Cleanup/Prompt="Enter new FAL password: " SYS$COMMAND FAL_Password
- $ If F$Length(FAL_Password) .GT. 7 Then GoTo FAL_Password_OK
-
-
- 47
-
-
-
-
-
-
- $ Say "Minimum password length is 8 characters"
- $ GoTo DN_Password_OK
- $FAL_Password_OK:
- $ Set Terminal/Echo
- $ Type SYS$INPUT
-
- The FAL account requires a disk quota. This quota should be large
- enough to accomodate the the files typically loaded into this account.
- formldefaultqouta be exhausted, the system will fail to per-
- DECnet file transfers.
-
- It is also advisable to clear old files from the direc-
- tory on a daily
- basis.
-
- $ If .NOT. F$GetSYI("CLUSTER_MEMBER") Then GoTo Not_Cluster
- $ Say "This system is a cluster member.
- $ Read/Prom="Has this procedure already been run on another clus-
- ter member: "-
- $ IfSClusterCTheneGoTo No_Create
- $Not_Cluster:
- $ Read/End=Cleanup -
- /Prompt="Disk quota for FAL account (0 if quotas not en-
- abled): " -
- SYS$COMMAND Quota
- $ If F$Type(Quota) .EQS. "INTEGER" Then GoTo Set_Quota
- $ Say "Diskquota must be an integer"
- $ GoTo FAL_Password_OK
- $Set_Quota:
- $ Say "Setting up new FAL account."
- $ Set NoOnult SYS$SYSTEM
- $ UAF := "$Authorize"
- $ UAF Copy DECNET FAL/Password='FAL_Password'/UIC=[375,375]/Directory=[FAL]
- $ Create/Directory SYS$SYSROOT:[FAL]/Owner=[FAL]
- $No_Create:
- $ NCP := "$NCP"
- $ NCP Define Object FAL USER FAL Password 'FAL_Password'
- $ NCP Set Object FAL USER FAL Password 'FAL_Password'
- $ If (Quota .eq. 0) .OR. Cluster Then GoTo NO_QUOTA
- $ Say "Entering disk quota for FAL account.
- $ Set Default SYS$SYSTEM
- $ Open/WritetQuota"SET_QUOTA'PID'.COM
- $ Write Quota "$ Run SYS$SYSTEM:DISKQUOTA"
- $ Write Quota "Add FAL/Perm=''Quota'"
- $ Close Quota
- $ @SET_QUOTA'PID'
- $ Delete SET_QUOTA'PID'.COM;
- $No_Quota:
-
-
- 48
-
-
-
-
-
-
- $ Say "Resetting default DECNET account password"
- $ NCP Define Executor Nonpriv Password 'DN_Password'
- $ NCP Set Executor Nonpriv Password 'DN_Password'
- $ UAF Modify DECNET/Password='DN_Password'
- $Cleanup:
- $ Set Default 'Current_Default'
- $ Set Terminal/Echo
- $ Exit
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 49
-
-
-
-
-
-
- C Highly Sensitive Environments
-
-
- An computing environment should be considered highly sensitive
- when it is potentially profitable to covert the data or when
- great inconvenience and losses could result from errors produced
- there. In particular, you should consider you site sensitive if
- any of the following conditions apply:
-
-
- 1. You process data that the government considers sensitive.
- 2. You process financial transactions such that a single
- transaction can exceed $25,000.00 or the total transactions
- exceed 2.5 Million dollars.
-
- 3. You process data whose time of release is tightly controlled
- and whose early release could give significant financial
- advantage.
-
- 4. Your function is life critical.
- 5. Your organization has enemies that have a history of
- ``terrorism'' or violent protests.
-
- 6. Your data contains trade secrete information that would be
- of direct value to a competitor.
-
-
- Essentially money is more directly valuable than secrets and a
- ``vilian'' can potentially steal more from one successful attack
- on one financial institution than he will ever be able to get
- selling state secrets for decades. There is significant concern
- that the electrical utility companies and and bank conducting
- electronic funds transfer will be targets of terrorists in thee
- next decade.
-
- For centers the must support sensitive processing it is strongly
- advised to completely separate the facilities for processing this
- data from those facilities used to process ordinary data and to
- allow absolutely no connection from the sensitive processing
- systems to the outside world. There is No substitute for
- physical security and proper separation will require an attacker
- to compromise physical security in order to penetrate the system.
- Techniques for coping with the remaining ``insider threat'' are
- beyond the scope of this tutorial.
-
- In analysis of computing in sensitive environments, there are two
- different security goals. The first is that of protecting the
- system. All of the advice in this booklet should be considered
-
-
- 50
-
-
-
-
-
-
- as a first step towards that goal. The second goal is the
- protection of job or ``Technical Compliance.'' This is is the
- goal of showing that all of the regulations have been followed
- and that protecting the system has been done with ``due
- diligence.''
-
- It is important to realize that these two security goals are
- separate and potentially conflicting. It may be necessary to
- work towards the latter the goal and that is often more a legal
- and bookkeeping question than a technical one. It is also beyond
- the scope of this work.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 51
-
-
-
-
-
-
- D Handling the Press
-
-
- Often media inquiries can absorb more time than all of the others
- issues in incident handling combined. It is important to
- understand this and to use your public affairs office if it
- exists. In the excitement, people, especially those who are not
- experience speakers will often forget that they are not empowered
- to speak for the center and that nothing is ever really said,
- ``Off the record.''
-
-
- D.1 Spin Control
-
-
- The phrase ``Spin Control'' was first used in political circles.
- It refers to altering the perceptions about an incident rather
- than the delaying with the facts of the incident themselves.
- Consider the two statements.
-
-
- 1. To keep our machines safe, we decided to disconnect them
- from the network.
- 2. We were forced to shut down our network connections to
- prevent damage to our machines.
-
-
- I have found that the giving the press a state like the former
- tends to produce a laudatory piece about one's staff while a
- statement like the latter, produces an embarrassing piece. The
- two statements are of course essentially identical.
-
- Your public affairs group is probably familiar with these issues
- and can help you form press statements
-
-
-
- D.2 Time Control
-
- With a sufficiently large incident, the media attention can
- absorb almost unbounded amounts of time. The press will often
- call employees at home. It is important the staff that are
- solving a problem understand that the solving the incident is
- more important that dealing with the press. At the very least
- insist that all press representatives go through the public
- affairs often so that the standard questions can be easily and
- time-efficiently be answered.
-
-
-
- 52
-
-
-
-
-
-
- D.3 Hero Making
-
-
- The press likes to find outstanding heroes and villains. As a
- result, the media will tend to make one of your staff members
- into a hero if at all possible from them to do so. It is more
- likely than not that the Hero will not be the person who has
- worked the hardest or the longest.
-
-
- D.4 Discouraging or Encouraging a Next Incident
-
-
- The attention that an incident receives greatly affect the
- likelihood of future incidents at that particular site. It
- probably also influences the decision process or potential future
- crackers in the community at large. Claiming that your site is
- invulnerable is an invitation to a future incident. Giving the
- media step by step instructions on how to break in to a computer
- is also not a wonderful idea.
-
- I (personally) suggest stressing the hard work of your staff and
- the inconvenience to the legitimate users and staff members. To
- the extent practical portray the cracker as inconsiderate and
- immature and try to avoid making him seem brilliant at one
- extreme or the attack seem very simple at the other.
-
-
- D.5 Prosecution
-
- If you considering prosecution, you need to consult with your
- legal counsel and law enforcement official for advise on press
- handling.
-
-
-
- D.6 No Comment
-
- One common strategy for avoiding (or at least bounding) time loss
- with the press is to simply decline to comment on the situation
- at all. IF you are going to adopt this approach, your public
- affairs office can advise you on techniques to use. It is
- important to tell everyone who is involved in the incident that
- they should not discuss the situation; otherwise people will leak
- things accidently. Also, without correct information from your
- center, the press may print many inaccurate things that represent
- their best guesses.
-
-
-
- 53
-
-
-
-
-
-
- D.7 Honesty
-
-
- I recommend against trying to mislead the press. It is hard to
- keep a secret forever and when and if the press finds that you
- have lied to them, the negative coverage that you may receive
- will probably far exceed the scope of the actual incident.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 54
-
-
-
-
-
-
- E Object Code Protection
-
-
- To keep object code safe from human attackers and virus, a
- variety of techniques may be employed.
-
-
- Checksums. Saving the checksums of each of the system files in a
- protected area an periodically comparing the stored checksum
- with those computed from the file's current contents is a
- common and moderately effective way to detect the alteration
- of system files.
- Source Comparisons. Rather than just using a checksum the
- complete files may be compared against a known set of
- sources. This requires a greater storage commitment.
-
- File Properties. Rather the computing a checksum, some facility
- store certain attributes of files. Among these are the
- length and location on the physical disk. While these
- characteristics are easy to preserve, the naive attacker may
- not know that they are important.
-
- Read-Only Devices. Where practical, the system sources should be
- stored on a device that does not permit writing. On many
- system disk partitions may be mounted as ``Read-Only.''
- Dates. On many systems the last modification date of each file is
- stored and recent modifications of system files are reported
- to the system administrator.
-
- Refresh. Some system automatically re-install system software
- onto there machines on a regular basis. Users of TRACK
- often do this daily to assure that systems have not be
- corrupted.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 55
-
-
-
-
-
-
- F The Joy of Broadcast
-
-
- The majority of the local area nets (LAN's) use a system called
- broadcast. It is somewhat like screaming in a crowded room.
- Each person tends to try to ignore messages that weren't meant
- for them.
-
- In this type of environment, eaves-dropping is undetectable.
- Often passwords are sent unencrypted between machines. Such
- passwords are fair game to an attacker.
-
- Various cryptographic solutions including digital signature and
- one time keys have been used to combat this problem. Kerberos,
- developed at the MIT Athena project is available without cost and
- presents one of the few promising potential solutions to the
- broadcast problem.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 56
-
-
-
-
-
-
- G Guest Accounts
-
-
- The computer center guest policy is among the most hotly debated
- topics at many computer centers. From a security standpoint, it
- should be obvious that an attacker who has access to a guest
- account can break into a computer facility more easily.
-
-
- G.1 Attack Difficulty Ratios
-
-
- Basically it is a factor of ten easier to break into a machine
- where you can easily get as far as a login prompt that one where
- you can't. Being able to reach the machine through a standard
- networking discipline and open connections to the daemons is
- worth another order of magnitude. Access to a machine that is
- run by the same group is worth another factor of three and access
- to a machine on the same LAN would grant a factor of three beyond
- that. Having a guest account on the target machine makes the
- attack still another order of magnitude easier.
-
- Essentially, having a guest account on the target simplifies an
- attack at least a thousand fold from having to start cold.
-
-
- G.2 Individual Sponsors
-
-
- I strongly suggest requiring each guest to have an individual
- staff sponsor who takes responsibility for the actions of his
- guest.
-
-
- G.3 The No Guest Policy
-
-
- In centers that prohibit guests, staff members often share their
- passwords with their guests. Since these are generally
- privileged accounts, this is a significant danger.
-
-
-
-
-
-
-
-
-
-
- 57
-
-
-
-
-
-
- H Orange Book
-
-
- You have doubtlessly by now heard of the ``Orange Book'' and
- perhaps of the whole rainbow series.
-
- Much of the ``Orange Book'' discusses discretionary and mandatory
- protection mechanism and security labeling. Another section
- deals with ``covert channels'' for data to leak out. While most
- of these issues are not important in a university, the ideas of
- protecting password files (even when encrypted), individual
- accountability of users and password aging are worth implementing
- in an unclassified environment.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 58
-
-
-
-
-
-
- I Acknowledgements
-
-
- -- Help of a lot of people. -- copies were sent out to 48 people
- for peer review
-
-
- Jerry Carlin. For examples from his training course.
- Joe Carlson. For help with spelling and grammar.
-
- James Ellis. For help with organization.
-
- Alan Fedeli.
- Paul Holbrook. For help getting this document distributed.
-
- David Muir. For help with spelling, grammar and comments about
- computer games.
-
- Kevin Oberman. For help with VMS issues, spelling and grammar.
- Mike Odawa. For help with the microcomputers section.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 59
-
-
-