How I found a critical bug affecting the organization and changed money in the credit balance.
Welcome back to my new article! I’m abdelhy khaled , a noob security researcher .
So today, we’re going to explore an intriguing vulnerability that many bug hunters tend to overlook & It is nothing but an input validation bypass lead to changed money in the credit balance user from 0$ to unlimited $.
What is Input Validation ?
Input validation is the process of checking user-provided data to ensure it meets required formats and constraints. It’s essential for security, preventing issues like SQL injection, cross-site scripting (XSS), buffer overflow, command injection, directory traversal and others…
My target provide is a `premium` Web Hosting Solutions , lets go to understand function to gather
As you can see Adjust Resources CPU minimum is 8 CPU , MEM is 16 GP , Disk I/O is 16 MB/s “ this is a logic Resources”
Now click in button apply and send request :
POST /v2/api/hosting/{ID}/upgrade HTTP/2
Host: target.com
-----------
{"type":"config_options","billing_cycle":"monthly","step":1,"config":{"configoption[177]":755,"configoption[178]":8,"configoption[179]":16,"configoption[180]":16},"product_id":193,"payment_method":"wiretransfercheque"}
As you can see via 3 parameter “configoption[178]”:8
& “configoption[179]”:16 & “configoption[180]”:16 this is minimum CPU , MEM and Disk , you can set it and not allow set below this value
So as attacker i found When I thought about changing the minimum value for these resources, I found that a lot of money is added every time I reduce the value. The amount of money in my account increases, and I realized that I was able to purchase more paid products.
This is lead to lose money this costumer and Bypassing Authentication and verification results in money being added to the victim’s account out of nothing Due to misconfiguration in input verification and and Violating safe design principles , so quickly reported the company about this critical bug that affects the company’s financials.
Thank you for taking the time to read this piece. Kindly remember to leave a comment sharing your thoughts on the blog if you liked them.