Developer's Toolkit

Blog archive

Secrecy or Openness?

The recent controversy surrounding the presentation at the Black Hat Conference of security vulnerabilities in Cisco's Internetwork Operating System used in routers once again raises the question of whether the security of web sites, data, and networks are best served through the wide distribution of known security issues so that everyone is on an equal footing, or secrecy, until those vulnerabilities can be addressed by the responsible parties.

Good arguments can be made either way. By fostering and supporting open communication about vulnerabilities, we can ensure that the word gets out quickly and equitably to those who need to fix the problem or become more vigilant. And details of the problem reach both hackers and their potential victims equally, rather than just the hackers. Last, publicity of a vulnerability may encourage the vendor to address the problem more quickly.

But not all customers are created equal. Some, despite the best efforts, will never get the word, or will decide for whatever reasons to risk being less than secure for the sake of cost or skill or opportunity. They can find themselves at the mercy of a broad community of both hackers and general publicity-seekers, simply because the information was made public.

And a vendor's point of view is also reasonable and valid. Were I a decision-maker at Cisco, I would honestly believe that I should have an opportunity to make good before my customers fell before the onslaught of unscrupulous hackers. And there are no doubt legal minds who advise maintaining silence, lest the company be held liable before there is a chance for any action to be taken.

As a proponent of democratic principles, my instinct leans toward openness. Not only does little good come from keeping secrets, but secrets invariably get leaked. And leaks mean that those who are paying attention are likely to have an advantage over those who are not.

And while secrecy provides the opportunity for the vendor to address the problem, that is assuming that those responsible parties are, in fact, responsible. It is easy to believe that those companies who release software that is subsequently found to be vulnerable are really protecting their image, and of course their sales, rather than dropping everything to make the problem right. I personally have found myself in situations where I wanted to do the right thing for customers, only to find that others had drastically different interpretations of what the right thing was, and who the right thing was for.

Nevertheless, there does not seem to be any middle ground in this debate. Legally, there are a myriad of laws that appear to cover this issue, including liability and tort law, privacy law, trade secret and patent law, and freedom of speech. Freedom of speech may eventually triumph in a relatively free society, but the cost in money and time could be too high if a vendor such as Cisco seeks to apply one of the myriad of laws protecting its own interests.

In this great debate between transparency and secrecy in protecting our technology assets, we must still opt for the former. Society's ideal is openness rather than secrecy. Hardware and software providers may take the legally safe route, but that is a short-sighted attitude that does not well serve the business, the user community, or the society at large. It is possible to cite good and even compelling reasons for protecting such information, but they simply do not stand up against the principles by which we live.

Posted by Peter Varhol on 08/03/2005


comments powered by Disqus

Featured

  • Full Stack Hands-On Development with .NET

    In the fast-paced realm of modern software development, proficiency across a full stack of technologies is not just beneficial, it's essential. Microsoft has an entire stack of open source development components in its .NET platform (formerly known as .NET Core) that can be used to build an end-to-end set of applications.

  • .NET-Centric Uno Platform Debuts 'Single Project' for 9 Targets

    "We've reduced the complexity of project files and eliminated the need for explicit NuGet package references, separate project libraries, or 'shared' projects."

  • Creating Reactive Applications in .NET

    In modern applications, data is being retrieved in asynchronous, real-time streams, as traditional pull requests where the clients asks for data from the server are becoming a thing of the past.

  • AI for GitHub Collaboration? Maybe Not So Much

    No doubt GitHub Copilot has been a boon for developers, but AI might not be the best tool for collaboration, according to developers weighing in on a recent social media post from the GitHub team.

  • Visual Studio 2022 Getting VS Code 'Command Palette' Equivalent

    As any Visual Studio Code user knows, the editor's command palette is a powerful tool for getting things done quickly, without having to navigate through menus and dialogs. Now, we learn how an equivalent is coming for Microsoft's flagship Visual Studio IDE, invoked by the same familiar Ctrl+Shift+P keyboard shortcut.

Subscribe on YouTube