Authorization 04
Bookmarked!This exercise is one of our challenges on Authorisation issues
When developers started using databases for storing information, they initially wrote a lot of SQL code manually. Soon, they realized the need for more efficient methods, leading to the creation of Object-Relational Mapping (ORM) systems that allow database queries without extensive SQL knowledge. For instance, in Ruby's ActiveRecord, simple commands can generate and execute queries, making life easier for developers.
However, these conveniences come with security risks. One significant issue is Mass-Assignment, where an attacker can overwrite object attributes if the developer hasn't properly protected them. In this lab, we examine a web application where users can register with two privilege levels: User and Admin. The admin attribute is set on the user object, and by manipulating the request or the webpage, an attacker can gain admin access. Methods to achieve this include modifying the page directly, saving and modifying the page offline, or using a proxy to intercept and alter legitimate requests.