Xref: utzoo comp.unix.internals:2833 alt.security:2562 Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!wuarchive!cs.utexas.edu!sun-barr!olivea!tymix!cirrusl!ss168!dhesi From: dhesi%cirrusl@oliveb.ATC.olivetti.com (Rahul Dhesi) Newsgroups: comp.unix.internals,alt.security Subject: Re: BSD tty security, part 3: How to Fix It Message-ID: <3140@cirrusl.UUCP> Date: 17 May 91 20:16:46 GMT References: <19270@rpp386.cactus.org> <25833:May1416:43:4291@kramden.acf.nyu.edu> <3136@cirrusl.UUCP> <19306@rpp386.cactus.org> Sender: news@cirrusl.UUCP Reply-To: Rahul Dhesi Lines: 60 In the discussion, Dan mentioned using a secure attention key (SAK) sequence for security. John objected, saying that the SAK sequence would have to be disabled for some purposes, such as UUCP. I responded: A secure attention key sequence, to be secure, must use an out-of-band channel. As an analogous example, the DTR line to a modem is out-of-band and cannot be defeated no matter what you send on the data lines. John F Haugh II responds (quite correctly): Not everything has an out of band channel to send a SAK sequence along on. For example, what would you use as the SAK sequence on a 3 wire dumb ASCII terminal that is hardwired to a port switch that is used by any number of other terminals with various baud rates and keyboards? There are no spare lines to dork with. Send a break? Do all dumb ASCII keyboards include a BREAK key? It can't be defeated, but not every keyboard has one. Dan will, of course, have his own response to this (as he always does :-). Although it's true that not all hardware guarantees an out-of-band channel to support a secure attention key, it turns out that there is a simple method of using in-band signalling that is *virtually* foolproof. The good folks at Bizcomp patented this some years ago. (Maybe I should say the "bad" folks, because they then proceeded to sue everybody in sight.) The idea is to have a secure attention sequence that includes guard pauses before and after. In the case of the most popular application of this patent, the sequence used is: (1 second pause) +++ (1 second pause) When the above happens on the data line, a modem that understands it goes into command mode. I said *virtually* foolproof because there is a finite, though infinitesimal, chance that a genuine data stream will include the same sequence. If it does, you are in trouble. It doesn't happen in practice, probably for the same reason that an ideal gas in a box never collects all in one corner, though the quantum mechanics (mechanicists? machinists?) will tell you that, given enough time, it *will* happen. Probably 99.9% of dumb terminals have a real break key. Users of the remaining 0.1% may have to do something like this: 1. pause for 3 to 5 seconds 2. rapidly hit the + key 10 times 3. pause for 3 to 5 seconds 4. hit the return key The chances of the pauses accidentally occuring in the same way in a data stream are probably very small. To make the sequence even more foolproof you can increase the pauses, or require a longer sequence like: (pause) +++ (pause) --- (pause) &&& (pause) -- Rahul Dhesi UUCP: oliveb!cirrusl!dhesi