Microsoft Corp.'s massive security update yesterday marked the completion of the sixth year of the company's move to a monthly patch release schedule.

Since moving to a monthly schedule in October 2003, Microsoft has released about 400 security bulletins based on an informal count of releases in its bulletin archives. The bulletins address about 745 vulnerabilities across almost every Microsoft product.

More than half of the bulletins, or about 230, addressed security vulnerabilities that were described by Microsoft as "critical." The company typically uses this definition for vulnerabilities that allow attackers to take full administrative control of a system from a remote location.

More vulnerabilities are being discovered in Microsoft products than when the company first moved to a monthly patch schedule.

The total number of flaws disclosed and patched by the software maker so far this year stands at around 160, more than the 155 or so that Microsoft reported for all of 2008. The number of flaws reported in Microsoft products over the last two years is more than double the number of flaws disclosed in 2004 and 2005, the first two full years of Patch Tuesdays.

The last time Microsoft did not release any patches on a Patch Tuesday was March 2007, more than 30 months ago. In the past six years, Microsoft had just four patch-free months -- two of which were in 2005. In contrast, the company has issued patches for 10 or more vulnerabilities on more than 20 occasions and patches for 20 or more flaws in a single month on about 10 occasions, including yesterday.

The increase in the number of flaws being discovered comes at a time when attackers are getting much faster at exploiting them. A survey by security vendor Qualys earlier this year showed that 80% of vulnerability exploits are available within 10 days of the vulnerability's disclosure. Nearly 50% of the vulnerabilities patched by Microsoft in its security updates for April this year already had known exploits by the time the patches were available.

The numbers highlight Microsoft's continuing challenges on the security front, said David Rice, president of the Monterey Group, a security consultancy in Monterey, Calif. and author of Geekonomics: The Real Cost of Insecurity Software. But it is important to keep them in perspective, he added.

Other major vendors, such as Oracle Corp. and Apple Inc., have also announced large numbers of vulnerabilities over the past few years, Rice said. But neither of these two vendors have invested anywhere near the money and resources that Microsoft has spent on security over the past several years, largely because of the lack of incentive for them to do so, he said.

Unlike other sectors, such as the automobile industry, where a vehicle's safety rating has an impact on product sales, software vendors have not been penalized by consumers for buggy software. Many have therefore chosen not to invest in increased product security, he said.

"Apple and Oracle are classic examples of companies that have not invested in security to the same level that Microsoft has," Rice said.

David Jordan, chief information security officer at Virginia's Arlington County government, is growing impatient at the continuing number of flaws disclosed by Microsoft. "These updates are necessary, but the vulnerabilities they fix are most unwelcome," Jordan said.

"Much like auto recalls, one has to wonder how some of this stuff got to production so many years down the road," he said. "We've just recently retired our IBM mainframe, but back in the day, there was in software development a phrase known as 'zero tolerance for defects.'"

Jordan said such an attitude toward software development would be welcome today.

Microsoft's huge installed base and the popularity of its products make it a prime target for hackers looking for software vulnerabilities to exploit, which is one of the reasons so many flaws continue to be found. "Microsoft has gargantuan cash reserves, and they are doing all they need to do. If they are still meeting with so much failure, it means they may have reached a glass ceiling" in terms of their ability to reduce flaws, he said.

The sheer number of patches Microsoft releases each month shows the company may have reached the "inherent limits" of the software debugging process, said Amichai Shulman, CTO at security vendor Imperva in a blog post.

Microsoft could not be reached for comment at deadline.

Microsoft has been investing more than any other company in secure coding practices with its software development life cycle process, Shulman said. Yet in the past year, the number of vulnerabilities is still on the rise. "There is a point in time in which any increase in QA resources (and time) has a negligible effect over software quality," he said. "This is giving us an excellent perspective about the inherent limitations of SDLC as the first and last line of defense when it comes to information security," he said.

"The crooks tend to spend the majority of their effort on Windows," because of it huge market share, said Tim O'Pry, CTO at the Henssler Financial Group in Kennesaw, Ga. While the sheer number of patches released by Microsoft is "a royal PIA for system administrators," Microsoft is getting better at locking down some of the bigger holes in their operating systems, he said.

One big reason why Microsoft is still reporting so many vulnerabilities is because they have "decided to drag the ball and chain of backward compatibility with them from the DOS days," O'Pry said. But overall, "I think Microsoft is doing a reasonable job considering the huge installed base and their attempts to break as little as possible," from a backward compatibility standpoint, he said.

Matt Kesner, chief technology officer at Fenwick & West LLP in Mountain View, Calif., said it isn't surprising that during times of economic trouble there are more attempts to exploit systems.

"So, on the one hand we applaud Microsoft's continuing efforts to patch its software in a timely manner," he said. "On the other hand, the number of patches shows that security still isn't a primary consideration when software is written."