Microsoft has slammed security researchers for publishing exploit code for a hole in MSN Messenger.

In a statement, the software giant singled out Finjan Software and Core Security Technologies for publishing code to test for vulnerabilities shortly after software patches were released to plug the holes. It claimed the tests were then used to develop working attacks. The statement then cited an increased risk to Messenger and Office XP users.

Finjan released code to test for a hole its researchers discovered in Microsoft Office XP, and that Microsoft fixed with a patch described in Security Bulletin MS05-005. Finjan discovered and then publicised code to test for the vulnerability on the same day Microsoft released its bulletin, Microsoft said.

The buffer overflow in question affects a process that passes Web URLinformation to Office XP applications and could be used by malicious hackers to hide attacks in HTML links embedded in e-mails or Web pages.

Microsoft also criticised Core Security Technologies of Boston for publishing a proof of concept for a hole in an MSN Messenger component called "libpng", which is used to display PNG image files. On Tuesday, Microsoft released a patch, MS05-009, that fixed several holes in libpng for the PNG hole and labeled the vulnerability "critical." An exploit based on that proof of concept was posted on the Internet shortly thereafter, Microsoft stated.

The actions by Finjan and Core could allow malicious hackers to launch attacks on Microsoft customers who have not had time to install patches for the affected software, said Stephen Toulouse, program manager at Microsoft's Security Response Center. "We're concerned that hackers will take this information and use it. Once you have code that describes how to get from A to B to C, it's not hard to get to Z if that's your goal," he said.

Toulouse cited the SQL Slammer worm, which targeted Microsoft's SQL Server database as an example of proof of concept code that was modified to create a virulent Internet worm.

Microsoft encourages security researchers to wait before publishing the code, Toulouse said, adding that 90 days is an accepted standard within the security research community to delay publication of proof of concept code.

An executive at Core Security denied that the company had done anything wrong, saying that publishing proof of concept code for security vulnerabilities is part of his company's job. "We develop proof of concept code for people to test for a vulnerability, not to give an attacker control," said Max Caceres, director of product management at Core Security.

He said there are many ways that exploit writers could develop code to trigger a vulnerability and he is not sure that his company's proof of concept played any role in the release of the PNG exploit. "As soon as any vendor releases a patch to the world, it's a clear map to a vulnerability," he said. Toulouse said that proof of concept code helps exploit writers and malicious hackers more than innocent customers.

"In my thinking, proof of concept code benefits attackers more than anyone else. We try to give enough information to allow customers to assess the threat to their network, without crossing the line into giving details that attackers can use to leverage that vulnerability," he said.

Microsoft will continue to work with third-party security researchers to encourage responsible practices for disclosing security vulnerabilities. The company is also on the lookout for automated attacks, such as worms and viruses, that use some of the recently released exploits, Toulouse said.