TechRepublic : A ZDNet Tech Community

Programming and Development

Host: Justin James
Contact

Make your apps more secure with these tips from Microsoft's Bret Arsenault

Microsoft’s Chief Security Officer Bret Arsenault talks shop with Justin James. Hear what he says developers need to do better to make their applications more secure.

—————————————————————————————————————

A simple fact of life in the IT industry is that, even if you do not use Microsoft products, how secure the company’s products are will most likely end up impacting your work one way or the other.

A few years ago, Microsoft began releasing its Security Intelligence Report (SIR) in order to provide an accurate assessment of the latest threats to its products. Each report covers a six-month period. In early December 2008, I had the chance to speak with Bret Arsenault, Microsoft’s Chief Security Officer, about the SIR: Volume 5 (January 2008 - June 2008).

I find this issue of the SIR interesting for two reasons. First, for a full year’s worth of reporting periods, the number of reported High vulnerabilities has decreased. The second data point that interests me is the fact that more than 90% of HTML-borne threats affecting Windows Vista actually target third-party products — not Microsoft products. Bret said that this shift makes a lot of sense, and I tend to agree with him. Windows Vista’s security is not perfect, but it is now hardened to the point that the OS is no longer the lowest hanging fruit on the tree. In addition, as he pointed out, the data that the bad guys really want tends to be locked up inside the application now and not the OS.

Bret and I talked in-depth about what developers need to do better to make their applications more secure. He said the security holes developers are seeing are the same ones that we have been seeing for years: buffer overruns, data hardcoded into the applications, and many other bad practices.

At a technical level, applications are still not modular enough; in addition, many applications do not perform automatic updates. I asked Bret about the possibility of allowing third-party developers to participate in the Microsoft Update program, and he said it is not currently being discussed as an option.

What developers need now are the same remedies that have been recommended for quite some time. It is a matter of educating developers and helping them to become more rigorous in their practices. He said that developers need to be retrained and suggested that they should all learn about the SDL process and security, preferably as part of the training program for new developers (in other words, baked into a Computer Science or IS/IT degree program). He and I agree that it takes weeks, if not months, to give developers a good background in secure development techniques and that a couple of lunch ‘n learn training sessions or a few hours with a consultant is not sufficient.

Another large part of the problem is that developers are extremely pressed for time. They often learn new things in the trenches and, as a result, do not realize the security implications of the way they are writing code. On that note, he pointed me to Microsoft’s new site for providing security information to developers: HelloSecureWorld. He also mentioned that users are still on the hook too; there is nothing any developer can do in the face of a user who clicks “Yes” to everything. In addition, he reminded me about the Microsoft Security Assessment Tool (MSAT) and the User Awareness and Education Toolkit, which systems administrators can use to evaluate their security situation and teach users about safe computing.

I know the situation that Microsoft faces is pretty challenging. The company has so many conflicting requirements, such as maintaining backwards compatibility while making the security tighter. At the same time, it is good to see Microsoft taking the situation seriously and finally seeing some positive results — even if it has taken so long to get some relief.

Thanks again to Bret for speaking with me. I really enjoyed our conversation.

Also, be sure to read Chad Perrin’s post about the 25 most dangerous programming errors, which is a list that has been compiled by security experts from all over the world.

J.Ja

Disclosure of Justin’s industry affiliations: Justin James has a working arrangement with Microsoft to write an article for MSDN Magazine. He also has a contract with Spiceworks to write product buying guides.

—————————————————————————————————————

Get weekly development tips in your inbox
Keep your developer skills sharp by signing up for TechRepublic’s free Web Developer newsletter, delivered each Tuesday. Automatically subscribe today!

Justin JamesJustin James is an employee of Levit & James, Inc. in a multidisciplinary role that combines programming, network management, and systems administration. He has been blogging at TechRepublic since 2005. Read his full bio and profile.

Print/View all Posts Comments on this blog

Programming and security Justin James | 01/19/09
Why ? Tony Hopkinson | 01/19/09
Management's fault Saurondor | 01/19/09
nice apotheon | 01/19/09
Agreed Justin James | 01/19/09
thanks Saurondor | 01/20/09
excellent apotheon | 01/20/09
Tools and processes Tony Hopkinson | 01/21/09
Do Microsoft understand security ? oz penguin | 01/20/09
Length of time to produce the report Justin James | 01/20/09
published in Jan oz penguin | 01/21/09
Probably an update to the page Justin James | 01/21/09
copyright oz penguin | 01/22/09
When do they start writing it? Justin James | 01/22/09
copyright oz penguin | 01/22/09
The source of the data is suspect Jaqui | 01/20/09
LOL Justin James | 01/20/09
uac is like gnome and kde? Jaqui | 01/20/09
To the end user, they are identical Justin James | 01/21/09
two weeks or so apotheon | 01/21/09
UAC's first 2 weeks Justin James | 01/22/09
UAC ain't all it's cracked up to be. apotheon | 01/22/09
UAC and heuristics Justin James | 01/22/09
the devil's in the details apotheon | 01/23/09
The fact that you can turn it off Tony Hopkinson | 01/23/09
I somehow forgot... Justin James | 01/23/09
It's easy to forget. apotheon | 01/27/09
Uh, tips? chris@... | 01/20/09
They're in there Justin James | 01/20/09
Thanks for all the links. apotheon | 01/20/09
It was a topic I meant to cover Justin James | 01/21/09
Like the 'Where's the Beef' commercial :) robo_dev | 01/20/09
Coincidentally . . . apotheon | 01/20/09
Sadly... Justin James | 01/21/09
end-user testing and developer testing apotheon | 01/21/09
Developer testing ? :p Tony Hopkinson | 01/21/09
"developer" testing apotheon | 01/21/09
I was pretty sure you weren't that naive Tony Hopkinson | 01/22/09
big fan oz penguin | 01/22/09
Those testing types have been known Tony Hopkinson | 01/22/09

What do you think?

White Papers, Webcasts, and Downloads

Recent Entries

TR on Twitter

Archives

TechRepublic Blogs



500 Things Every Technology Professional Needs to Know
Did you know Microsoft's RegClean does not work with XP but you can use shareware to clean your registry? Did you know most wireless access points don't have encryption enabled by default? Did you know there are 500 tidbits of information contained in TechRepublic's 500 Things Every Technology Professional Needs to Know that will help you become a successful IT professional.
Buy Now
Administrator's Guide to TCP/IP, Second Edition
Maintain your critical TCP/IP system and ensure reliable, safe remote access. Get the expert advice and solutions to handle Windows networking, Cisco routing, documentation, and troubleshooting.
Buy Now

SmartPlanet

Click Here