The Target and Threat Context
During my recent engagement with a client utilizing the Website Factory platform, I was tasked with assessing the security posture of their web application, which was built using React for the frontend and Node.js with MongoDB for the backend. The application is crucial for their business as it supports direct customer interactions and data transactions, making it essential to secure against vulnerabilities that could lead to data exposure or manipulation.
As I evaluated the system, I was particularly focused on user authentication and authorization mechanisms. Given that sensitive data and personal information are handled regularly, any vulnerability could result in severe reputational damage and loss of customer trust. It was in this context that I began to explore the possibility of Insecure Direct Object References (IDOR), a concerning vulnerability listed in the OWASP Top 10.
My investigation revealed several areas in the application's API routes where access control mechanisms may be insufficient. Specifically, the routes handling user data requests caught my attention. I suspected that these endpoints did not adequately validate whether the requesting user had permissions to access the specified resources, indicating a potential for unauthorized data exposure.