I was watching a video today (more on that later) that reminded me of some history. It also brought to mind that too few defenders these days build forensics capture into their systems to help identify intruders. They also don't have active defenses, countermeasures and chaff in place to slow down attackers and provide more warning of problems.
Back in the late 1980s and early 1990s, I quietly built some counterhacking and beaconing tools that I installed in a "fake front" machine on our local network. People who tried to break into it might get surprises and leave me log info about what they were up to, and things they downloaded would not do what they thought or might beacon me to indicate where the code went. This was long before honeypots were formalized, and before firewalls were in common use. Some of my experiences contributed to me writing the first few papers on software forensics (now called digital forensics), development of Tripwire, and several of my Ph.D. students's theses topics.
I didn't talk about that work much at the time for a variety of reasons, but I did present some of the ideas to students in classes over the years, and in some closed workshops. Tsutomu Shimomura, Dan Farmer and I traded some of our ideas on occasion, along with a few others; a DOD service branch contracted with a few companies to actually built some tools from my ideas, a few of which made it into commercial products. (And no, I never got any royalties or credit for them, either, or for my early work on firewalls, or security scanning, or.... I didn't apply for patents or start companies, unfortunately. It's interesting to see how much of the commercial industry is based around things I pioneered.)
I now regret not having actually written about my ideas at the time, but I was asked by several groups (including a few government agencies) not to do so because it might give away clues to attackers. A few of those groups were funding my grad students, so I complied. You can find a few hints of the ideas in the various editions of Practical Unix & Internet Security because I shared several of the ideas with my co-author, Simson Garfinkel, who had a lot of clever ideas of his own. He went on to found a company, Sandstorm Enterprises, to build and market some professional tools in roughly this space; I was a minor partner in that company. (Simson has continued to have lots of other great ideas, and is now doing wonderful things with disk forensics as a faculty member at the Naval Postgraduate School.)
Some of the ideas we all had back then continue to be reinvented, along with many new and improved approaches. Back in the 1980s, all my tools were in Unix (SunOS, mostly), but now there are possible options in many other systems, with Windows and Linux being the main problems. Of course, back in the 1980s the Internet wasn't used for commerce, Linux hadn't been developed, and Windows was not the widespread issue it it now. There also wasn't a WWW with its problems of cross-site scripting and SQL injection. Nonetheless, there were plenty of attackers, and more than enough unfound bugs in the software to enable attacks.
For the sake of history, I thought I'd document a few of the things I remember as working well, so the memories aren't lost forever. These are all circa 1989-1993:
There were many other tools and tripwires in place, of course, but the above were some of the most successful.
What does successful mean? Well, they helped me to identify several penetrations in progress, and get info on the attackers. I also identified a few new attacks, including the very subtle library substitution that was documented in @Large: The Strange Case of the World's Biggest Internet Invasion. The substitute with backdoor in place had the identical size, dates and simple checksum as the original so as to evade tools such as COPS and rdist. Most victims never knew they had been compromised. My system caught the attack in progress. I was able to share details with the Sun response team — and thereafter they started using MD5 checksums on their patch releases. That incident also inspired some of my design of Tripwire.
In another case, I collected data on some people who had broken into my system to steal the Morris Worm source code. The attacks were documented in the book Underground . The author, Suelette Dreyfus, assisted by Julian Assange (yes, the Wikileaks one), never bothered to contact me to verify what she wrote. The book suggests that my real account was compromised, and source code taken. However, it was the fake account, my security monitors froze the connection after a few minutes, and the software that was accessed was truncated and neutered. Furthermore, the flaws that were exploited to get in were not on my machine — they were on a machine operated by the CS staff. (Dreyfuss got several other things wrong, but I'm not going to do a full critique.)
There were a half-dozen other incidents where I was able to identify new attacks (now known as zero-day exploits) and get the details to vendors. But after a while, interest dropped off in attacking my machine as new, more exciting opportunities for the kiddies came into play, such as botnets and DDOS attacks. And maybe the word spread that I didn't keep anything useful or interesting on my system. (I still don't.) It's also the case that I got much more interested in issues that don't involve the hands-on, bits & bytes parts of security — I'm now much more interested in fundamental science and policy aspects. I leave the hands-on aspects to the next generation. So, I'm not really a challenge now — especially as I do not administer my system anymore — it's done by staff.
I was reminded of all this when someone on Twitter posted the URL of a video taken at Notacon 2011 (Funnypots and Skiddy Baiting: Screwing with those that screw with you by Adrian "Iron Geek" Crenshaw). It is amusing and reminded me of the stories, above. It also showed that some of the same techniques we used 20 years ago are still applicable today.
Of course, that is also depressing. Now, nearly 20 years later, lots of things have changed but unfortunately, security is a bigger problem, and law enforcement is still struggling to keep up. Too many intrusions occur without being noticed, and too little information is available to track the perps.
There are a few takeaways from all the above that the reader is invited to consider:
Also, you might watch Iron Geek's video to inspire some other ideas if you are interested in this general area — it's a good starting point. (And another, related and funny post on this general topic is here, but is possibly NSFW.)
In conclusion, I'll close with my 3 rules for successful security:
Comments
What a lovely post. I have only one thing to add:
If your system has something valuable and people want it, you should assume that will be penetrated even if it is not on a network.
A little while ago, I was trying to explain to someone that his “disconnected” machine was actually quite connected—-the links are high latency, but also high bandwidth. If the machine were actually disconnected, then we would have to write all of its software from scratch, and anything it computed would be useless, since no one would ever be able to view the output.
Excellent Post!
And good timing in posting it, given the current rush to make so many devices that were once stand-alone (cars, phones, medical devices, SCADA systems, etc.) web enabled…
Unless we wise-up, the cyber world is headed for frightening times…
Some of your comment reminded me of Bob Morris (Snr) who died a few days ago.
One of his “rules of effective computer security” was,
1, Don’t own a computer.
2, Don’t turn a computer on.
3, Don’t use a computer.
Which was a more explicit version of “Never underestimate the time and resources a determined adversary will devote to reading your communications”...
On a more uptodate note on network “trap systems” such as Honeypots, many people make the mistake of faking many machines on the network by using one physical machine and multiple virtual machines on it.
As all of the virtual machines have one thing in common (the single physical machine) unless great care is taken they will have certain charecteristics that are the same for all the virtual machines.
One of which is timestamps on network packets, because they all share the same base CPU Xtal the clock drift will be the same for all the virtual machines. This can be spotted with what apears at the trap network as the most rudimentary of script kiddy enumeration techniques and thus may not even get logged…
However an asstute attacker will now have reason to belive the network is not what it is pretending to be and not use their hard earned zero day on it. Thus the trap only catches the less skilled of attackers.
Such is the issues of trying to catch the people you realy want to catch not the script kiddies and other wanabes and pretenders.
Absolutely right. If you try to share all the knowledge you have - such as techniques and strategies. Then, you are just creating your greatest rival. Thank you for the wonderful share.
Well, I’ve spent the past hour or so reading posts here dating back to 2009, on security issues, and starting with “Do we need a new internet”, and I agree with Gene Spafford in General (pardon the pun, but his short answer “NO”!).
However, fast forward to now…I find it amusing we (society) have not really gotten any further ahead with security issues in cyberspace, perfect example with the millions of online gamer credit card info recently hacked and stolen!
As I’ve said since the www became public domain; “The internet started with the Government, and will end with the Government” I’m just surprised it’s gone on (Un-Controlled) for well over 20 years now^^^
The only sure firewall (pun intended) security is to disconnect! Have one pc for online use with all the best or free zone alarms installed, with another pc/hard-drive or flash drive (not connected) to the www for important files - locked up in a fireproof safe!
Sad but true - this is the only solution until the www gets $HUTDOWN !
C+
I guess that explains a few things
Very insightful article. Thanks!
I am using a USB device to do everything online called an IronKey device…you can store data and the personal edition has the Firefox browser builtin which gives you awesome encryption for your data and online shopping and browsing.
Don’t leave home without it.