perry@MCL.UNISYS.COM (Dennis Perry) (11/09/88)
There has been some discussion regarding passwords and how people use 'silly' ones such as their name, etc. Left to thier own initiative, people will not come up with passwords which maximize their effectiveness. At Los Alamos, and here at Unisys, a program is available to generate pronouncable passwords, but composed at random. These password programs can be made to run inplace of the option of inputting your own. Each time you type the 'passwd' command, the system gives you a new one. If you don't like it, you can get another until you find one you lik These passwords are 8 characters long and difficult to guess, if not impossible, by a human, although I am sure that a machine could try. Along with passwords should be some monitoring of attempts to login. If the frequency is high then some attempt should be made to shut the login feature off for some period of time. At Los Alamos, with password checking, any attempt to login in that results in more than 3 failures results in that login name being 'blacklisted' and no further attempts are allowed. I stongly encourage everyone to use such a password generator and not allow people to generate their own passwords. Password aging is also something that could and probably should be done. If it is manual, once a year is probably enough. This allows people to memorize their passwords for a reasonable period of time. They can always request a new password if they believe that their password has been compromized. Better would be to age the password based on usage, rather than time. Even better would be smart cards which changed passwords each time one logged on, a one time password. Further, encryption of data based on a smart card and exchange of keys for periods of data short compared to decryption attack capability would be even better. There are lots of things that computers could do for us to make the systems we use more secure and add very little incovenience to our life style on the Internet or in the Academic environment. We just have to implement them. dennis
WANCHO@WSMR-SIMTEL20.ARMY.MIL ("Frank J. Wancho") (11/10/88)
Concerning pseudo-random, semi-pronounceable password generation, please see RFC 972. The original algorithm was written in BASIC by Paul D. Merillar and Arthur A. Key. The implementation in our PWDGEN server, a variation of our local CHGPWD program, came from Sandia Labs, written in FORTRAN, and uses a system-wide 36-bit seed rather than a clock-based seed. Marshall Rose converted that program to C... From your message, it seems that the algorithm has found its way around, and that's good to see. From the source code: Basically "random pronounceable words" are built by alternating Vowels and Consonants. However, there are "Digraphs", and these are presorted according to END, MIDDLE, and START positions. Not going into combinatorial analysis, with seven characters the "possible" combinations exceed 20 Million. (I haven't computed how many are possible with eight characters...) --Frank
steve@NOTE.NSF.GOV (Stephen Wolff) (11/15/88)
> I stongly encourage everyone to use such a password generator > and not allow people to generate their own passwords. Password generators may be ok, but the paswords they generate suffer from a dreadful sameness, and when you're trying to maintain accounts on a dozen or more machines without writing anything down... I strongly urge system administrators to publicize **and enforce** their rules for choosing passwords, and let folks pick their own. -s
ahill@CC5.BBN.COM ("Alan R. Hill") (11/15/88)
Dennis, Bravo! If adminstrators follow your advice the network systems will be 1000 times harder to penetrate. At least they will have done the minimum required effort to protect their systems. Security generally requires one's best effort to prevent and detect. It amazes me that we have to have yearly events of this type to convince people that the systems need improvement. I have known about the security holes in Unix for almost ten years. Regards, Alan
perry@MCL.UNISYS.COM (Dennis Perry) (11/15/88)
Steve, actually the password generator can be tuned to give passwords with different 'dialects'. We used the generator at Los Alamos to generate over 6000 passwords a year and I don't recall any of mine being the same or even close. One should note that if passwords are private, and not shared, the saem passwords can be used by different people and they are just as secure. This is similar to key for automobiles, there are only so many locks. My key probable works in a 1000 different cars, or more, but I don't know which ones. But, you are correct if you need your own password on a dozen different machines. In those cases, I would use a generator to generate my 'key' and than make the locks all the same, or at least minimize the number of keys I have to carry. Again, I think that eventually hardware smard cards are the answer to our lifestyle problems of too many keys. dennis
kwe@bu-cs.BU.EDU (kwe@bu-it.bu.edu (Kent W. England)) (11/15/88)
In article <8811090956.AA07706@LANAI.MCL.UNISYS.COM> perry@MCL.UNISYS.COM (Dennis Perry) writes: > >At Los Alamos, and here at Unisys, a program is available to generate >pronouncable passwords, but composed at random. These password programs >can be made to run inplace of the option of inputting your own. Each >time you type the 'passwd' command, the system gives you a new one. If you >don't like it, you can get another until you find one you lik These >passwords are 8 characters long and difficult to guess, if not impossible, > >dennis Nice idea. Can you get this into Berkeley and Sun? :-) When I was at InterOp I stopped by the Sytek booth to look at their telnet server. I was not impressed, except by a neat little gizmo they had for their terminal server administrators. It looked like a calculator. To use it you enter a PIN, like at your favorite ATM machine. Then when you log onto a secure port to administer your Sytek terminal server, the login program gives you a sequence of numbers. You enter the numbers into the little gizmo and it gives you a bunch of numbers back. You enter these into the login program and you are in. Anyone catching this sequence over the net cannot duplicate it, they don't have the little calculator gizmo and your PIN. There must be a name for this kind of security system. Anyone know? Is this kind of system available elsewhere? How secure is this concept? I thought it sounded like it might be useful for system administrators. Kent England, Boston University
henry@utzoo.uucp (Henry Spencer) (11/16/88)
In article <8811090956.AA07706@LANAI.MCL.UNISYS.COM> perry@MCL.UNISYS.COM (Dennis Perry) writes: >... At Los Alamos, with password checking, any attempt to login >in that results in more than 3 failures results in that login name being >'blacklisted' and no further attempts are allowed. This feature, of course, opens up a nice "denial of service" attack: if you have access to the machine, and know somebody's login name, just try to login as them three times with nonsense passwords. Presto, they can't login until they go see the security people. Particularly useful if you have just broken into the system and want to keep the sysadmins off until you finish doing your dirty work. >I stongly encourage everyone to use such a password generator and not >allow people to generate their own passwords. Unfortunately, this opens up two other problems. First, a much higher probability that passwords will be written down rather than memorized. Second, some vulnerabilities if the password generator is poorly built, e.g. if it uses a 16-bit random-number generator! >Password aging is also something that could and probably should be done. But done well, not done poorly as it was in Unix System V. -- Sendmail is a bug, | Henry Spencer at U of Toronto Zoology not a feature. | uunet!attcan!utzoo!henry henry@zoo.toronto.edu
zeleznik@wasatch.UUCP (Michael Zeleznik) (11/16/88)
In article <26010@bu-cs.BU.EDU>, kwe@bu-cs.BU.EDU (kwe@bu-it.bu.edu (Kent W. England)) writes: > > When I was at InterOp I stopped by the Sytek booth to look at > their telnet server. I was not impressed, except by a neat little > gizmo they had for their terminal server administrators. It looked > like a calculator. To use it you enter a PIN, like at your favorite > ATM machine. Then when you log onto a secure port to administer your > Sytek terminal server, the login program gives you a sequence of > numbers. You enter the numbers into the little gizmo and it gives you > a bunch of numbers back. You enter these into the login program and > you are in. Anyone catching this sequence over the net cannot > duplicate it, they don't have the little calculator gizmo and your > PIN. > There must be a name for this kind of security system. Anyone > know? > Is this kind of system available elsewhere? How secure is > this concept? I thought it sounded like it might be useful for system > administrators. > > Kent England, Boston University This is generally called a one-time-password approach (analogous to cryptographic one-time-pads), or a personal password generator. There are different flavors, but the bottom line (as you point out) is that each login authentication number is different (can't be reused), and thus there aren't any passwords to keep secret, and you needn't protect the passwords while they are in use, since they can't be reused. Racal-Guardata (Orange, CA) makes the Watchword (this previously was the Sytek 'Passport' that you saw); host system issues a challenge, you type it into the small calculator with your PIN which gives you a response, you type that back to the system, and you are authenticated. Each challenge from the system is different, along with each response, so any response can not be reused by anyone. In addition to your normal PIN, there is a duress PIN; the Watchword will generate different responses depending on the PIN, so the remote system can tell if you are being forced to login, for example. We prototyped a version of the Sytek Passport for an application system, and it worked very nicely. Only problem was having to have this small calculator around, which is kind of a pain. If they put it in a true credit card unit, it would be great. Security Dynamics (Cambridge, MA) makes one that is time based, called the SecurID. A number on a credit card sized calculator changes every so many seconds, in sync with software on the host. Thus, you just type in the current displayed number. Again, the numbers are not repeated, so there is no need to encrypt anything. They claim to handle clock drift and such, but the last time I thought about this, it seemed there may be a window of vulnerability if you need to quickly login across a number of remote hosts. Another variation on this approach is a hand held device which reads the challenge directly from the CRT screen (number is encoded by modulating the light output by sending characters at encoded rates) and gives you the response which you type in. One manufacturer of this type is Gordian Systems, Palo Alto, CA, and the device is called the Gordian Systems Access Key. These systems are also capable of providing REVERSE authentication, having the system provide a challenge response pair, which you can verify on your personal hardware. Depending on the approach used, this can either be provided in the product, or would have to be user implemented. Even a system like Kerberos could use this in place of the fixed user password, to eliminate that vulnerability (the time interval while the password is stored in the user node before it is destroyed; if a trojan horse grabs it only once...). All three of these systems are in the NSA's evaluated products list, under sub-systems, but I have only looked at the condensed versions (in the INFOSEC Products and Services Catalogue), which don't say much. Since the authentication values can be very long and very random, most of the conventional "password" attacks are obviated. However, conventional cryptanalytic attacks are possible, and the quality of the cryptographic algorithm which generates the responses is the key to the security. The Watchword uses DES; the SecurID used a proprietary scheme the last I looked at it; don't know about the others. The Watchword (if not the others also) is in a tamper resistant enclosure. I'm not a cryptographer/cryptanalyst, so I can't really comment on the relative security of the algorithms. Clearly, the database of user key data is a major vulnerability, which must be protected. The NSA explicitly points this out for the Gordian Systems product. From what I remember, the SecurID product had the authentication server run on a physically isolated PC for that reason. Michael Zeleznik Computer Science Dept. University of Utah zeleznik@cs.utah.edu Salt Lake City, UT 84112 (801) 581-5617
jgm@kokab.cc.deakin.OZ (John Moorfoot) (11/16/88)
In article <26010@bu-cs.BU.EDU> kwe@bu-it.bu.edu (Kent England) writes: >In article <8811090956.AA07706@LANAI.MCL.UNISYS.COM> > perry@MCL.UNISYS.COM (Dennis Perry) writes: >> > When I was at InterOp I stopped by the Sytek booth to look at >their telnet server. I was not impressed, except by a neat little >gizmo they had for their terminal server administrators. It looked >like a calculator. To use it you enter a PIN, like at your favorite >ATM machine. Then when you log onto a secure port to administer your >Sytek terminal server, the login program gives you a sequence of >numbers. You enter the numbers into the little gizmo and it gives you >a bunch of numbers back. You enter these into the login program and >you are in. Anyone catching this sequence over the net cannot >duplicate it, they don't have the little calculator gizmo and your >PIN. > There must be a name for this kind of security system. Anyone >know? > Is this kind of system available elsewhere? How secure is >this concept? I thought it sounded like it might be useful for system >administrators. This sounds like PFX from Sytek. The s/w runs on a PC attached to a secure port on the host, and each user has a calculator which generates a response from a prompt issued from the server. It is as secure as the port to which the PC is attached. A host program asks the PC for a challenge for a user, and the PC returns the challenge and two possible responses. The calculator can be programmed to accept two separate PINs, and will give a response to the challenge dependant on the PIN entered. This provides an adiitional degree of security, as the second PIN can be used (for instance) if the user is under duress. The PC can be connected to a printer to provide an audit trail of operations on the PC database, and it can also provide a facility for disable a user for authentication without deleting the user's record. John Moorfoot ARPA: jgm%charlie.oz.au@uunet.uu.net UUCP: ...!uunet!munnari!charlie.oz!jgm
jim@cs.strath.ac.uk (Jim Reid) (11/17/88)
In article <8811090956.AA07706@LANAI.MCL.UNISYS.COM> perry@MCL.UNISYS.COM (Dennis Perry) writes: >.... description of a password generating program >I stongly encourage everyone to use such a password generator and not >allow people to generate their own passwords. This is probably not a good idea. Programs which generate passwords can all too easily generate a small number of potential passwords. All that an intruder needs to do is establish the algorithm used (no doubt based on a pseudo-random number generator) and then create a list of all the potential passwords that the program generates. That list - which might be quite small (say 50-100,000) - could then be encrypted and compared with the entries in the password file. This would only take a few hours CPU time to do. If all the user's passwords were forcibly chosen by a password generating program, the intruder would get every password on that computer! Insisting that people use password generating programs (or enforcing password ageing for that matter) is potentially dangerous. They give the illusion of security (having frequent password changes and/or "random" passwords) when in fact the choice of passwords in use is quite likely to be sub-optimal. Jim -- ARPA: jim%cs.strath.ac.uk@ucl-cs.arpa, jim@cs.strath.ac.uk UUCP: jim@strath-cs.uucp, ...!uunet!mcvax!ukc!strath-cs!jim JANET: jim@uk.ac.strath.cs "JANET domain ordering is swapped around so's there'd be some use for rev(1)!"
gillies@p.cs.uiuc.edu (11/17/88)
Password generators are a *nice idea*. But I wouldn't rush out and start using them without some thorough testing: (1) Can you give me *an estimate* of the number of pronounceable 8-character words? Will this program generate all of them? If not, exactly how many different words will it generate? (2) What if I know, to within 1 minute, the time of creation of the login (or last password change), and the password/random number algorithm. Can I exhaustively search for the password, assuming the random number generator gets its seed from the clock? (3) How *random* is the random number generator? What is the period of the generator? What is the approximate "loss of randomness" when mapping this number onto a password? (i.e. if the map is not "onto", on the average, how many seeds result in a given password?) (4) Are some passwords generated much more frequently than others, by this password generation program?
perry@MCL.UNISYS.COM (Dennis Perry) (11/18/88)
Henry, you point out several interesting points that are not too difficult to solve. The latter one about writing down passwords is relatively easy. The passwords are pronouncable and easily remembered. Now, you may argur that since you did not think it up, it is too hard, but in practice, this is not a problem. The first potential problem is the log on name. Los Alamos does not use 'names', but user numbers, which are assigned to employees and people authorized for accounts on the system. If you know something about Los Alamos or people who work there you know a little about the system, an outside hacker most likely would not. In fact, we have watched many hackers (all login attempts are logged) try all kinds of names, but none with the right 'type' of number. One of the things I did not say in my previous message (I was not trying to give a definitive statement about how Los Alamos does things, since I am no longer employed there) is that the first thing a user has to get right is is login name. This can be done many times, but since attempts are logged, it soon becomes apparent that someone is trying to get in. When I left we were thinking about makeing the loging of login attempts a real-time system which would alert the operations desk which could then take action to shut down the port under attack. So, a user would not normally be denied service except for the case where his name was known to the hacker, or he guessed a valid user number at random. In addition, if a hacker were to get in, he still must get passed the account checking, i.e. does he have an account with money in the bank, and then he must logon to the machine itself, for which he may or may not be authorized. Again, there are lots of things we can NOT do, but that doesn't help much. Reasonable passwords are a good investment in system management. Password aging is a good investment in system managment. To remove these responsibilites from humans and entrust them to machines would make it even better, since now we only have to worry about losing a 'smart' card, and that can be reported and logged in the system. In addition to a smart card, some of the type of things I was looking at at DARPA was to usa biological information to verify that the person useing the equipment was authorized. Retina scans from 3-4 feet now seem doable and would be non intrusive. So, the general ideas of useing something one know, something one has (object), and something one is (bio) would make a fairly tight system. (please spare me the objections of plucking out someone's eyes to defeat the system, dead eye don't focus and retina scans pick that up too!) dennis
ron@ron.rutgers.edu (Ron Natalie) (11/18/88)
Great, denial of serivce is almost as bad. We need some obnoxious person causing all the users to be blacklisted. I typed bad passwords to perry on mcl three times, I guess you either can't read this or you don't have that code turned on. -Ron
hal@GATEWAY.MITRE.ORG (Hal Feinstein) (11/18/88)
Before anyone falls too deeply in love with pronunceable passwords and rushes off to install it maybe you should take a look at some others who've used it. I put pronunceable passwords into a network authentication server about three years ago which had lots of office-type workers, not computer people. My goal: add some kind of psychological memory jog to help people remember them. Random strings no one remembers and most people write'em down. Fine! We'll do pronunceable passwords. I based it on the algorithm used by multics. They hated it and wrote 'em down. Now, years later I am a user of a multics system with pronunceable passwords, and I hate it! Yes, I've been tempted to write'em down. A better system is pass phrases which uses DES and a standard feedback chainning technique to develop a 64-bit result from a variable length phrase. A lot of password generation schemes beat the dictionary attack such as a few small words glued together with a number or other symbol. They are easier to remember than 8 characters of bizarre text.
pcg@aber-cs.UUCP (Piercarlo Grandi) (11/19/88)
In article <7178@charlie.OZ> jgm@charlie.oz.au (John Moorfoot) writes: In article <26010@bu-cs.BU.EDU> kwe@bu-it.bu.edu (Kent England) writes: >In article <8811090956.AA07706@LANAI.MCL.UNISYS.COM> > perry@MCL.UNISYS.COM (Dennis Perry) writes: >> > When I was at InterOp I stopped by the Sytek booth to look at >their telnet server. I was not impressed, except by a neat little >gizmo they had for their terminal server administrators. It looked >like a calculator. To use it you enter a PIN, like at your favorite >ATM machine. Then when you log onto a secure port to administer your >Sytek terminal server, the login program gives you a sequence of >numbers. You enter the numbers into the little gizmo and it gives you >a bunch of numbers back. You enter these into the login program and >you are in. Anyone catching this sequence over the net cannot >duplicate it, they don't have the little calculator gizmo and your >PIN. [ ........ ] A host program asks the PC for a challenge for a user, and the PC returns the challenge and two possible responses. The calculator can be programmed to accept two separate PINs, and will give a response to the challenge dependant on the PIN entered. This provides an adiitional degree of security, as the second PIN can be used (for instance) if the user is under duress. [ ......... ] Actually all these systems just transform a "what you know" security to a "what you have" security. There is no inherent improvement in the overall security level, and actually it may be lower (more components to compromise, etc...). As to systems that auotmatically generate passwords, usually the cardinality of the set of distinct passwords they can possibly generate is vastly smaller than the cardinality of possible passwords, and therefore they make it terribly easy to generate a list of all possible passwords. What's the point of having a key space of 127^8 (8 ASCII chars) if the password generators can only generate a few thousand or dozen thousand different passwords (e.g. most generators based on trigraphs). All these issues have been hashed to death in the past. This is a TCP/IP group. Let's make some specific TCP/IP comments on security -- a system that supports TCP/IP protocols must provide all security itself. Security MUST be end-to-end, and MUST be based on powerful encryption, such as RSA, and authentication MUST be based on something like zero-knowledge proofs, and the human link still remains the weakest. Protecting things like portions of the socket/host address spaces will only stop children. My general feeling is that security is NOT terribly important for a lot of people, and that as somebody pointed out, it involves a total approach, and is thus TERRIBLY expensive if done seriously. For example, one of the attacks to a system is to send a fake os upgrade tape labeled as though it were from the manufacturer... To foil these attacks you must involve the manufacturer in your security approach. -- Piercarlo "Peter" Grandi INET: pcg@cs.aber.ac.uk Sw.Eng. Group, Dept. of Computer Science UUCP: ...!mcvax!ukc!aber-cs!pcg UCW, Penglais, Aberystwyth, WALES SY23 3BX (UK)
david@ms.uky.edu (David Herron -- One of the vertebrae) (11/20/88)
This is interesting. You say that your users *hated* pronouncable but non-word passwords. Hmm.. But that's the only sort of password I ever have. (Example: Burple; don't worry, that password is a couple of years old and isn't in use anywhere.). Perhaps it's not just pronouncability that people want. At least for me, most of my passwords are sniglet type things, that is there usually is something which might mean something. After all, pronouncability isn't all there is to something being rememberable. Now, why is this discussion occuring in comp.protocols.tcp-ip/info-tcp-ip? And the similar discussions going on in other groups. We *need* to have comp.security, and gateway it into a mailing list for those who cannot receive news. -- <-- David Herron; an MMDF guy <david@ms.uky.edu> <-- ska: David le casse\*' {rutgers,uunet}!ukma!david, david@UKMA.BITNET <-- <-- Controlled anarchy -- the essence of the net.
perry@MCL.UNISYS.COM (Dennis Perry) (11/20/88)
Ron, we don't need you going around to check to see if anybody has done anything to protect their machines. I don't remember you being appointed Internet Cop! Also, you did not get into mcl did you? I rest my case. dennis