Live data from Hacker News

Ken Thompson's Unix Password

leahneukirchen.org

491–500 of 665 posts

Re: Ken Thompson's Unix Password

#491

Earlier quoted context omitted.

I was expelled from university for pulling off the exact same exploit with the "workstation only" feature in Novell. In my case, they put a computer in every dorm room, and every single one of them had a domain-wide administrator account cached in its SAM file. It was inevitable that a student would find it. It's been almost 15 years now but I believe the password was rac3c4r or something trivial like that. I ran Oph…

>I never once used it for evil: never read anyone's email, never viewed anyone's private files, never poked around the academic file shares for test solutions, never tried to steal credit card numbers or social security numbers from the finance office's file share. I don't understand this justification. The system owners can't know that to be true and have to proceed as if the systems are compromised. Would you still…

It's not a justification. What I did was wrong. I'm just telling you what I did and why I did it. I wasn't interested in hurting anyone or in gaining any advantage for myself, only in breaking the system.

Also, I didn't actually go in anyone's house. If passwords are really so inherently private even apart from their access implications, maybe we shouldn't be sharing Ken Thompson's old password.

Re: Ken Thompson's Unix Password

#492

Earlier quoted context omitted.

>I never once used it for evil: never read anyone's email, never viewed anyone's private files, never poked around the academic file shares for test solutions, never tried to steal credit card numbers or social security numbers from the finance office's file share. I don't understand this justification. The system owners can't know that to be true and have to proceed as if the systems are compromised. Would you still…

> Would you still feel safe if a burglar broke into your house and left a note saying they didn't take anything? That doesn't make it okay, but it certainly should result in a much lesser sentence than if the perpetrator had damaged or stolen property.

No. The serious crime is breaking in. Usually when someone's house is broken into they don't care about the stuff at all. They care that their personal space and sense of security has been violated. Also the criminal doesn't know what they'll find when they get in in but they are setting up a situation that can escalate quickly. Kids home alone? Someone with a shotgun? The very act of breaking in means they are ready to commit violence. If someone breaks into our house and sleeps there all weekend while we are on vacation, but doesn't take anything, does that deserve a lesser sentence than if they took a $100 TV? Not in my opinion.

Re: Ken Thompson's Unix Password

#493
Since this password list appears to come from one of the original systems on which UNIX and C were developed, it would be fun to see the names and original passwords of all the luminaries. I merged together the author's work, the original /etc/passwd, and the comments from the mailing list:

  root:OVCPatZ8RFmFY:Ernie Co-vax --> cowperso
  daemon:*:The devil himself --> (login not allowed)
  bill:.2xvLVqGHJm8M:Bill Joy --> (password still unknown)
  ozalp:m5syt3.lB5LAE:Ozalp Babaoglu --> 12ucdort
  sklower:8PYh/dUBQT9Ss:Keith Sklower --> theik!!!
  kridle:4BkcEieEtjWXI:Bob Kridle --> jilland1
  kurt:olqH1vDqH38aw:Kurt Shoens --> sacristy
  schmidt:FH83PFo4z55cU:Eric Schmidt --> wendy!!!
  hpk:9ycwM8mmmcp4Q:Howard Katseff --> graduat;
  tbl:cBWEbG59spEmM:Tom London --> ..pnn521
  jfr:X.ZNnZrciWauE:John Reiser --> 5%ghj
  mark:Pb1AmSpsVPG0Y:Mark Horton --> uio
  dmr:gfVwhuAMF0Trw:Dennis Ritchie --> dmac
  ken:ZghOT0eRm4U9s:Ken Thompson --> p/q2-q4!
  sif:IIVxQSvq1V9R2:Stuart Feldman --> axolotl
  scj:IL2bmGECQJgbk:Steve Johnson --> pdq;dq
  pjw:N33.MCNcTh5Qw:Peter J. Weinberger --> uucpuucp
  bwk:ymVglQZjbWYDE:Brian W. Kernighan --> /.,/.,
  uucp:P0CHBwE/mB51k:UNIX-to-UNIX Copy --> whatnot
  srb:c8UdIntIZCUIA:Steve Bourne --> bourne
  finger::The Finger Program --> (no pw but runs a program, not a login shell)
  who::The Who Program --> (no password but runs a program, not a login shell)
  w::The W Program --> (no password but runs a program, not a login shell)
  mckusick:AAZk9Aj5/Ue0E:Kirk McKusick --> foobar
  peter:Nc3IkFJyW2u7E:Peter Kessler -- ...hello
  henry:lj1vXnxTAPnDc:Robert Henry --> sn74193n
  jkf:9ULn5cWTc0b9E:John Foderaro --> sherril.
  fateman:E9i8fWghn1p/I:Richard Fateman --> apr1744
  fabry:d9B17PTU2RTlM:Bob Fabry --> 561cml..
  network:9EZLtSYjeEABE:(no name listed) --> network (runs a program, not a login shell)
  tty:: --> (no password but runs a program, not a login shell)
It's amusing to see that even very smart people picked passwords just like people do today:

- spouses' names (jilland1, wendy!!!, sherril.)

- birth dates (apr1744 might be April 17, 1944)

- the first word that came to your mind (whatnot, foobar, ...hello)

- though a few were thoughtful (sn74193n is a synchronous binary counter from the 7400-series chip family and likely immune to dictionary attack in that era)

- easy to type patterns on a keyboard (/.,/., or 5%ghj)

- obscure words (axolotl is a Mexican walking fish)

- different languages (12ucdort is 1,2,3,4 in Turkish)

- and some people didn't care (Steve Bourne, inventor of the Bourne shell, picked "bourne")

Re: Ken Thompson's Unix Password

#494
post #440
post #346

Earlier quoted context omitted.

In my opinion this was a pretty crappy thing to do. Password could contain personal and potentially embarrassing information, even if that wasn't the case here.

Pike was piqued, too.

Here's his message. Says he knew it already by sitting near Ken.

https://inbox.vuxu.org/tuhs/CAKzdPgw0Vz8UFbK7c_Jr+RHGMssSxN=...

Re: Ken Thompson's Unix Password

#495
post #404

Earlier quoted context omitted.

MD5 is vulnerable to collision attacks, which allows the attacker to control both messages, m and m', and find a case where h(m) == h(m'). But if a hash, h(m), is given, finding m' where h(m) == h(m') is much more difficult, it's known as a second-preimage attack. "Image" basically means "output", "preimage" means "input", "second-preimage attack" means "find another input that has the same output already given here"…

A second-preimage attack is where you want to find m' where h(m) == h(m')... and you know m already. This is not very useful for password hashing; it would give you a second password that would also work to log into the account, but what's the point of that if you already know the first password? The relevant attack for password hashing is a regular preimage attack, where you don't know m (and it would be acceptable…

You don't need to know m, just h(m) which is commonly found in database breaches

Re: Ken Thompson's Unix Password

#496

I remember cracking the password from a Windows system in high school. There was a centralized login mechanism using Novell but everything was cached locally. So you could boot a Linux CD and copy the password file to a memory stick, and crack at home. I think I used lophtcrack? The head admin account for the entire school district (basically root) had the password “north”. It took like a fraction of a second to crac…

I did this in college to hack the digital sign on the Purnell Center at CMU. Did not get expelled. Also good times.

Re: Ken Thompson's Unix Password

#497
Right after finishing Electronics vocational school I spent the next year working as an intern at Unicamp (Campinas University in Brazil). The job was at the computer lab of the School of Electrical and Computer Engineering[1]. This was before ethernet (yeah, I' that old), so dumb terminals were linked to the CPUs through RS-232 cables - when I was not burning my fingertips soldering DB-25 connectors I was tinkering with every computer I could get my hands on.

I saw /etc/passwd and asked my boss how to decrypt the passwords. He told me it was a one-way encryption, so the login program would just encrypt the password you provided and compare to the encrypted value. He went on explaining the old crypt algorithm and even made a bet I could not guess his password. He said it was related to a movie.

So at 17 I was hooked and started studying the sources. In the end I just patched and recompiled the passwd binary to store clean text passwords in a hidden file. Later I learned this was called a trojan horse.

And even now, 30 years later, I remember his face when I told the movie was Citizen Kane and his password was "rosebud".

Thank you Miguel and Gorgonio for teaching me about C and Unix! This knowledge paid my rent for 3 decades and I still love the job.

[1] http://www.internationaloffice.unicamp.br/english/teaching/g...

[2] https://en.wikipedia.org/wiki/RS-232

Re: Ken Thompson's Unix Password

#498

Earlier quoted context omitted.

Dang, well done. I spent three solid semesters wasting my "Computer Science" electives on breaking into the Novell system... I found tons of these encrypted passwords, and it never occurred to me to just crack one. I did find plenty of other ways to get in, though :)

Yea historically the SAM file on windows has always been a weak spot because of its NTLM hashing scheme. By breaking passwords larger than 7 letters into multiple sub-password hashes it virtually guaranteed rainbow tables would destroy its security.

I used this weakness whilst working at British Telecom to legally break into some NT boxes on behalf of a FTSE 100 company whos system my team got asked to take over.

They had had a bad break up with another supplier and had lost access.

I used our Art directors MAC to break in - I did consider setting up a diy cracking farm using all our suns and running it over night but I suspect that the security department might not have approved.

Re: Ken Thompson's Unix Password

#499
post #97

Earlier quoted context omitted.

> e.g., if "j9^vl4JO" is wrong, what is the correct password? Shouldn't that remain utterly trivial to brute though? If we're assuming all the standard face keys+shifted, I think that's 94 characters. If it's fully unknown then search space is 94^8 or about 6E15, not good but if it's an adaptive hash sizable. But if it's only a one character error, wouldn't you just brute through each of the 8 one by one with only 94…

You don't think the special character could be a mistake? Seems plausible the correct password might be j(6vl4JO...

>You don't think the special character could be a mistake?

Not that it makes any real difference here with such a small search space, but in this scenario (known typo, information revealed) it's less likely. Remember, we're considering a human typing something out on a keyboard, so the probabilities aren't fully random. If we're trying to use probabilities to cut down the search space further, a caret character requires shifting well away from the home row (shift-6 US standard qwerty) so it's more likely to represent active intent. Perhaps it could be % or & (shift-5/shift-7), but if you know someone is trying to type a password out and has made a typo then a left/right neighbor with shifting preserved is an easy place to start guessing.

Obviously, this whole thing is such an awful idea and breaks everything so badly that it's all kind of theoretical anyway, hopefully no software has had behavior like this for a long time. And any actual brute force program today has far more sophisticated pattern attacks based on the enormous corpus of password leaks and knowledge there now is, which is why it's foolish to try to try to be clever with passwords rather then just generating something fully randomized.

Re: Ken Thompson's Unix Password

#500
post #483

I remember cracking the password from a Windows system in high school. There was a centralized login mechanism using Novell but everything was cached locally. So you could boot a Linux CD and copy the password file to a memory stick, and crack at home. I think I used lophtcrack? The head admin account for the entire school district (basically root) had the password “north”. It took like a fraction of a second to crac…

Our high school network ran on Novell NetWare, but I wasn't anywhere near smart enough to crack anything so I just wrote a little program in QBASIC that looked like the NetWare login prompt which rejected all login attempts but dumped what was entered into a text file, and left it running on one of the PCs in the computer room. It wasn't even a compiled program, it was just running inside QBASIC's IDE. Yet it was run…

This is fiendishly clever; you more than made up for a lack of technical skills by exploiting the wetware angle. Lovely little story :)
Post reply on HN