The Open Web Application Security Project (OWASP) recently made Sprajax available for free download. It is an open source security scanner developed specifically to scan Ajax Web applications for potential security vulnerabilities. I have no doubt that this will become a great tool, but at present I wouldn't call it comprehensive. You can download Sprajax at the site. AT OWASP you will also find advice on developing secure Ajax applications and you can sign up to receive a complementary security scan from Acunetix Ltd.
On the other hand, if your budget allows for an Ajax vulnerability-assessment tool, you may consider Cenzic Inc.'s updated Hailstorm product. The newly updated tool can now scan Ajax-enabled applications. Although not every XML- and SOA-specific vulnerability is covered, Hailstorm can use an internal browser to detect errors based on actual responses received from the application, which is much better than relying on signature-based scans. The product can also perform session-based assessments of vulnerabilities like session hijacking, a tactic that signature-based scans cannot detect. SPI Dynamics Inc.'s WebInspect is another scanner worth reviewing. One of its many tests checks for authentication and authorization of dynamic links to scripts on the server.
Finally, when you develop your Ajax applications, try to keep them as uncomplicated as possible. Reducing and simplifying any Ajax call will make it easier to evaluate the possible types of requests that a page or application generates. Also, make sure to document and explain how the application communicates with the server and how it handles responses. This will make it easier to evaluate whether there is a possible security flaw in the code. The key coding discipline of never trusting data from the client still applies. Any security controls should be implemented on the server and never be under the control of the user.
This was first published in December 2006