Insufficient authorization: Hardening Web application authorization

Insufficient authorization: Hardening Web application authorization

Apparently, the recent CitiGroup breach was due to an insufficient authorization error. Can you explain a bit about how this error works and how to prevent it?

    Requires Free Membership to View

    SearchSecurity.com members gain immediate and unlimited access to breaking industry news, virus alerts, new hacker threats, highly focused security newsletters, and more -- all at no cost. Join me on SearchSecurity.com today!

    Michael S. Mimoso, Editorial Director

    By submitting your registration information to SearchSecurity.com you agree to receive email communications from TechTarget and TechTarget partners. We encourage you to read our Privacy Policy which contains important disclosures about how we collect and use your registration and other information. If you reside outside of the United States, by submitting this registration information you consent to having your personal data transferred to and processed in the United States. Your use of SearchSecurity.com is governed by our Terms of Use. You may contact us at webmaster@TechTarget.com.

The recent CitiGroup breach was due to insufficient authorization within one of the company's Web applications, and is a common Web security error. However, it can be difficult to identify with automated tools. “Failure to Restrict URL Access” is one of the OWASP Top 10 Web Application Security Risks, and prevention of such attacks is mandated by PCI compliance. The exploit works because the Web application doesn’t check to see if a direct Web request is authorized to access certain data for authenticated users. Basically, the Web application assumes that, if a user is authenticated, the user is authorized to access the webpage and data. Thus, the attacker can manipulate the URL used in the Web application by changing the account number encoded in the URL. In the case of the CitiGroup breach, when the attacker changed the account number, he or she was able to access the data.

Methods to prevent Web application authorization attacks can be broken down into at least two different types: Web application changes and system-level changes. System-level changes could include adding limits to the number of requests a client system can make of a Web app in a short period of time, which could slow the attack and give an organization more time to detect it. Web application changes could be more complicated, since it may not be possible to be automate them. Preventing this specific type of attack requires following the OWASP recommendations and checking authorizations for all page accesses, both of which are possible, but are easier said than done.  

This was first published in October 2011

Join the conversationComment

Share
Comments

    Results

    Contribute to the conversation

    All fields are required. Comments will appear at the bottom of the article.