Ajax Security

ยท
ยท Addison-Wesley Professional
เจˆ-เจ•เจฟเจคเจพเจฌ
504
เจชเฉฐเจจเฉ‡
เจฏเฉ‹เจ—

เจ‡เจธ เจˆ-เจ•เจฟเจคเจพเจฌ เจฌเจพเจฐเฉ‡

The Hands-On, Practical Guide to Preventing Ajax-Related Security Vulnerabilities

More and more Web sites are being rewritten as Ajax applications; even traditional desktop software is rapidly moving to the Web via Ajax. But, all too often, this transition is being made with reckless disregard for security. If Ajax applications arenโ€™t designed and coded properly, they can be susceptible to far more dangerous security vulnerabilities than conventional Web or desktop software. Ajax developers desperately need guidance on securing their applications: knowledge thatโ€™s been virtually impossible to find, until now.

Ajax Security systematically debunks todayโ€™s most dangerous myths about Ajax security, illustrating key points with detailed case studies of actual exploited Ajax vulnerabilities, ranging from MySpaceโ€™s Samy worm to MacWorldโ€™s conference code validator. Even more important, it delivers specific, up-to-the-minute recommendations for securing Ajax applications in each major Web programming language and environment, including .NET, Java, PHP, and even Ruby on Rails. Youโ€™ll learn how to:

ยท Mitigate unique risks associated with Ajax, including overly granular Web services, application control flow tampering, and manipulation of program logic

ยท Write new Ajax code more safelyโ€”and identify and fix flaws in existing code

ยท Prevent emerging Ajax-specific attacks, including JavaScript hijacking and persistent storage theft

ยท Avoid attacks based on XSS and SQL Injectionโ€”including a dangerous SQL Injection variant that can extract an entire backend database with just two requests

ยท Leverage security built into Ajax frameworks like Prototype, Dojo, and ASP.NET AJAX Extensionsโ€”and recognize what you still must implement on your own

ยท Create more secure โ€œmashupโ€ applications

Ajax Security will be an indispensable resource for developers coding or maintaining Ajax applications; architects and development managers planning or designing new Ajax software, and all software security professionals, from QA specialists to penetration testers.

เจฒเฉ‡เจ–เจ• เจฌเจพเจฐเฉ‡

Billy Hoffman is the lead researcher for HP Security Labs of HP Software. At HP, Billy focuses on JavaScript source code analysis, automated discovery of Web application vulnerabilities, and Web crawling technologies. He has worked in the security space since 2001 after he wrote an article on cracking software for 2600, โ€œThe Hacker Quarterly,โ€ and learned that people would pay him to be curious. Over the years Billy has worked a variety of projects including reverse engineering file formats, micro-controllers, JavaScript malware, and magstripes. He is the creator of Stripe Snoop, a suite of research tools that captures, modifies, validates, generates, analyzes, and shares data from magstripes. Billyโ€™s work has been featured in Wired, Make magazine, Slashdot, G4TechTV, and in various other journals and Web sites. Billy is a regular presenter at hacker conferences including Toorcon, Shmoocon, Phreaknic, Summercon, and Outerz0ne and is active in the South East hacking scene. Occasionally the suits make him take off the black t-shirt and he speaks at more mainstream security events including RSA, Infosec, AJAXWorld, and Black Hat. Billy graduated from the Georgia Institute of Technology in 2005 with a BS in Computer Science with specializations in networking and embedded systems. He lives in Atlanta with his wife and two tubby and very spoiled cats.

Bryan Sullivan is a software development manager for the Application Security Center division of HP Software. He has been a professional software developer and development manager for over 12 years, with the last five years focused on the Internet security software industry. Prior to HP, Bryan was a security researcher for SPI Dynamics, a leading Web application security company acquired by HP in August 2007.While at SPI, he created the DevInspect product, which analyzes Web applications for security vulnerabilities during development. Bryan is a frequent speaker at industry events, most recently AjaxWorld, Black Hat, and RSA. He was involved in the creation of the Application Vulnerability Description Language (AVDL) and has three patents on security assessment and remediation methodologies pending review. He is a graduate of the Georgia Institute of Technology

with a BS in Applied Mathematics. When heโ€™s not trying to break the Internet, Bryan spends as much time as he can on the golf links. If any Augusta National members are reading this, Bryan would be exceedingly happy to tell you everything he knows about Ajax security over a round or two.

เจ‡เจธ เจˆ-เจ•เจฟเจคเจพเจฌ เจจเฉ‚เฉฐ เจฐเฉ‡เจŸ เจ•เจฐเฉ‹

เจ†เจชเจฃเฉ‡ เจตเจฟเจšเจพเจฐ เจฆเฉฑเจธเฉ‹

เจชเฉœเฉเจนเจจ เจธเฉฐเจฌเฉฐเจงเฉ€ เจœเจพเจฃเจ•เจพเจฐเฉ€

เจธเจฎเจพเจฐเจŸเจซเจผเฉ‹เจจ เจ…เจคเฉ‡ เจŸเฉˆเจฌเจฒเฉˆเฉฑเจŸ
Google Play Books เจเจช เจจเฉ‚เฉฐ Android เจ…เจคเฉ‡ iPad/iPhone เจฒเจˆ เจธเจฅเจพเจชเจค เจ•เจฐเฉ‹เฅค เจ‡เจน เจคเฉเจนเจพเจกเฉ‡ เจ–เจพเจคเฉ‡ เจจเจพเจฒ เจธเจตเฉˆเจšเจฒเจฟเจค เจคเฉŒเจฐ 'เจคเฉ‡ เจธเจฟเฉฐเจ• เจ•เจฐเจฆเฉ€ เจนเฉˆ เจ…เจคเฉ‡ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ•เจฟเจคเฉ‹เจ‚ เจตเฉ€ เจ†เจจเจฒเจพเจˆเจจ เจœเจพเจ‚ เจ†เจซเจผเจฒเจพเจˆเจจ เจชเฉœเฉเจนเจจ เจฆเจฟเฉฐเจฆเฉ€ เจนเฉˆเฅค
เจฒเฉˆเจชเจŸเจพเจช เจ…เจคเฉ‡ เจ•เฉฐเจชเจฟเจŠเจŸเจฐ
เจคเฉเจธเฉ€เจ‚ เจ†เจชเจฃเฉ‡ เจ•เฉฐเจชเจฟเจŠเจŸเจฐ เจฆเจพ เจตเฉˆเฉฑเจฌ เจฌเฉเจฐเจพเจŠเจœเจผเจฐ เจตเจฐเจคเจฆเฉ‡ เจนเฉ‹เจ Google Play 'เจคเฉ‡ เจ–เจฐเฉ€เจฆเฉ€เจ†เจ‚ เจ—เจˆเจ†เจ‚ เจ†เจกเฉ€เจ“-เจ•เจฟเจคเจพเจฌเจพเจ‚ เจธเฉเจฃ เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค
eReaders เจ…เจคเฉ‡ เจนเฉ‹เจฐ เจกเฉ€เจตเจพเจˆเจธเจพเจ‚
e-ink เจกเฉ€เจตเจพเจˆเจธเจพเจ‚ 'เจคเฉ‡ เจชเฉœเฉเจนเจจ เจฒเจˆ เจœเจฟเจตเฉ‡เจ‚ Kobo eReaders, เจคเฉเจนเจพเจจเฉ‚เฉฐ เฉžเจพเจˆเจฒ เจกเจพเจŠเจจเจฒเฉ‹เจก เจ•เจฐเจจ เจ…เจคเฉ‡ เจ‡เจธเจจเฉ‚เฉฐ เจ†เจชเจฃเฉ‡ เจกเฉ€เจตเจพเจˆเจธ 'เจคเฉ‡ เจŸเฉเจฐเจพเจ‚เจธเจซเจฐ เจ•เจฐเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉ‹เจตเฉ‡เจ—เฉ€เฅค เจธเจฎเจฐเจฅเจฟเจค eReaders 'เจคเฉ‡ เฉžเจพเจˆเจฒเจพเจ‚ เจŸเฉเจฐเจพเจ‚เจธเจซเจฐ เจ•เจฐเจจ เจฒเจˆ เจตเฉ‡เจฐเจตเฉ‡ เจธเจนเจฟเจค เจฎเจฆเจฆ เจ•เฉ‡เจ‚เจฆเจฐ เจนเจฟเจฆเจพเจ‡เจคเจพเจ‚ เจฆเฉ€ เจชเจพเจฒเจฃเจพ เจ•เจฐเฉ‹เฅค