Feeds

Stay focused on fuzzy tests, warn security experts

Stop when you get that warm feeling

Seven Steps to Software Security

RSA The idea of throwing random test data at a program to see if it cracks has been around in one form or another since the beginning of software development. A formalized approach called fuzzing, based on Professor Barton Miller's work at the University of Wisconsin in the late 1980s, is undergoing a revival as a means of testing the security of applications.

Devised as a way to test Unix systems, fuzzing - or fault-injection testing - has benefited from the explosion in web development, with browser rivals Microsoft and Mozilla recently enthusing about the technique. There's been a proliferation of tools and late last year we saw publication of the Sulley framework, to automate attacks by testers.

No surprise, then, fuzzing is a hot topic at this week's RSA conference in San Francisco, California, where the security community will give their take on using this technique to protect your applications. Their view: don't rely exclusively on fuzzing.

"Fuzzing has been a round a while - but we are seeing it becoming much higher profile now. Everyone wants it although they don't necessarily understand it," principal security consultant for Leviathan Security Michael Eddington told Reg Dev ahead of his RSA presentation.

Eddington hopes to give RSA attendees a better grasp of fuzzing. The top line is fuzzing needs to be factored into the development lifecycle along with other security tests. "The advantage of fuzzing is that it gets round the problem of making assumptions in testing - it stops us being too smart and missing the obvious," Eddington said.

"Potentially any crash you get with fuzzing could turn out to be a security issue. So you need to include it in the lifecycle and probably re-use it several times. But it is only one of the tests you need along side other techniques such as code review and static analysis."

Brian Chess, chief scientist at Fortify Software and also at RSA, warned there are scenarios where fuzz testing can become counter productive.

"Fuzzing is useful for finding bugs in bad code. The number-one mistake application developers make in testing is that they expect data to arrive in a certain order and fuzzing can get round this. But the trick is to know when to stop fuzzing and how to move on to other techniques such as static analysis," he said.

Chess advocates established code-coverage metrics - such as statement coverage - to work out when fuzzing has done its job. "Once the code-coverage metric has flattened out you know that its time to move on to other test methods. It's important to find the balance between dynamic-testing techniques like fuzzing and static analysis," Chess said.®

Mobile application security vulnerability report

More from The Register

next story
Yorkshire cops fail to grasp principle behind BT Fon Wi-Fi network
'Prevent people that are passing by to hook up to your network', pleads plod
HIDDEN packet sniffer spy tech in MILLIONS of iPhones, iPads – expert
Don't panic though – Apple's backdoor is not wide open to all, guru tells us
NEW, SINISTER web tracking tech fingerprints your computer by making it draw
Have you been on YouPorn lately, perhaps? White House website?
LibreSSL RNG bug fix: What's all the forking fuss about, ask devs
Blow to bit-spitter 'tis but a flesh wound, claim team
BMW's ConnectedDrive falls over, bosses blame upgrade snafu
Traffic flows up 20% as motorway middle lanes miraculously unclog
Attackers raid SWISS BANKS with DNS and malware bombs
'Retefe' trojan uses clever spin on old attacks to grant total control of bank accounts
Manic malware Mayhem spreads through Linux, FreeBSD web servers
And how Google could cripple infection rate in a second
Mozilla fixes CRITICAL security holes in Firefox, urges v31 upgrade
Misc memory hazards 'could be exploited' - and guess what, one's a Javascript vuln
prev story

Whitepapers

Designing a Defense for Mobile Applications
Learn about the various considerations for defending mobile applications - from the application architecture itself to the myriad testing technologies.
How modern custom applications can spur business growth
Learn how to create, deploy and manage custom applications without consuming or expanding the need for scarce, expensive IT resources.
Reducing security risks from open source software
Follow a few strategies and your organization can gain the full benefits of open source and the cloud without compromising the security of your applications.
Boost IT visibility and business value
How building a great service catalog relieves pressure points and demonstrates the value of IT service management.
Consolidation: the foundation for IT and business transformation
In this whitepaper learn how effective consolidation of IT and business resources can enable multiple, meaningful business benefits.