'DieHard' wards off memory attacks
A U.S. computer scientist and a Microsoft researcher have devised a program that drastically reduces application crashes and can prevent some types attack by altering the way applications use memory.
The program, called DieHard, officially launched over the holidays, following development that was funded by large grants from Microsoft, Intel and the US' National Science Foundation.
Developers Emery Berger, a computer scientist from the University of Massachusetts Amherst, and Microsoft's Ben Zorn, have made DieHard freely available for noncommercial use at their Web site.
The problems Berger wanted to address were caused by the fact that despite the huge amount of memory installed in today's PCs, "programmers are still writing code as if memory is in short supply."
That leads to errors such as double-frees, invalid frees, and various types of overflow. Berger said DieHard eliminates or makes less dangerous many of these problems by making chunks of memory available at various locations, and assigning addresses randomly.
Address-space randomization is a technique used in some versions of Linux and in Windows Vista, but Berger said DieHard is a much more thorough application of the idea. Without randomization, attackers can easily locate where applications store sensitive data such as passwords. Attackers also commonly use memory errors to execute malicious code and take control of systems.
DieHard also secretly launches multiple copies of some applications, so that when one application is about to crash it can be shut down, while the others continue to run.
He said DieHard completely prevents double-free and invalid-free errors from having any effect, reduces the likelihood of dangling pointer errors and moderate buffer overflows. It prevents certain library-based heap overflows and all but eliminates heap corruption.
The program is available for Windows XP, Windows Vista and Linux, but the Windows versions only protect the Firefox browser so far. The Linux version protects any application launched once DieHard is running.
Programmers on either Windows or Linux can use DieHard to protect any application they are developing.
One caveat is that DieHard noticeably increases memory usage -- a rise of 50 to 75 percent, according to Berger. Application performance shouldn't be noticeably altered, though, as long as the system has sufficient memory.
» posted by abennett
Techworld.com
Sign up for ITworld's Daily newsletter
Follow ITworld on Twitter @IT_world
Esther Schindler
If the comments are ugly, the code is ugly
claird
SVG a graphics format for 21st century
pasmith
Take Chrome OS for a test spin
Sandra Henry-Stocker
Solaris Tip: Have Your Files Changed Since Installation?
jfruh
Android fragments vs. the iPhone monolith
mikelgan
What Gizmodo missed about the Pro WX Wireless USB disk drive
Sidekick: The Good News & the Bad News
Either way you look at it Microsoft Data Center management did not follow standards or best practices in this failure. In which case it makes me wonder more about the outsourcing of corporate data much less personal data.
- mburton325
Join the conversation here
Quick, practical advice for IT pros. Made fresh daily.
Want to cash in on your IT savvy? Send your tip to tips@itworld.com. If we post it, we'll send you a $25 Amazon e-gift card.













