Basic SSRF against another back end system
Description
This lab has a stock check feature which fetches data from an internal system.
To solve the lab, use the stock check functionality to scan the internal 192.168.0.X
range for an admin interface on port 8080, then use it to delete the user carlos
.
Approach
Upon accessing the lab, I navigated straight to the homepage and delved into exploring the "check the stock" functionality. It immediately caught my attention as it initiated a POST
request to /product/stock
, passing a parameter named stockApi
. This parameter seemed pivotal as it was intended to fetch data from another URL.
Determined to explore further, I decided to manipulate this parameter to discern which site was active. Given that it was within the pool of 192.168.0.X and hosted on port 8080, I sought to test each potential IP address. To streamline this process, I leveraged Burp Intruder.
Utilizing Burp Intruder, I highlighted the last digit of the IP in the request and added a parameter marker by selecting "Add ยง". This setup enabled me to automate the insertion of payloads.
Next, within the payloads tab, I specified the payload type as "Numbers" and instructed it to range from 1 to 255 with a step of 1 before initiating the attack.
Upon launching the attack and patiently waiting, I observed a response with a 200 status code, confirming the validity of the URL in that particular request.
The payload indicated the successful response came from 192.168.0.204. Armed with this information, I accessed the admin panel, only to encounter a permission issue when attempting to delete the user "Carlos". However, leveraging the power of Server-Side Request Forgery (SSRF), I executed a direct request to delete the user:
Executing this request swiftly removed the user "Carlos", marking the successful resolution of the lab.
Last updated