Exploit Analysis: Request-Baskets v1.2.1 Server-side Request Forgery (SSRF)

Security Lit Limited
4 min readSep 2
Photo by Mika Baumeister on Unsplash

In the world of cybersecurity, vulnerabilities and exploits are constantly evolving. One such vulnerability is the Server-side Request Forgery (SSRF), which allows attackers to manipulate a vulnerable server into making potentially malicious requests on their behalf. In this blog post, we will dive into an example exploit that leverages an SSRF vulnerability in Request-Baskets v1.2.1, a popular application for managing HTTP request mocking and forwarding. The exploit is authored by Iyaad Luqman K (init_6) and is assigned the CVE identifier CVE-2023–27163.

Understanding Server-side Request Forgery (SSRF)

Server-side Request Forgery (SSRF) is a type of security vulnerability where an attacker tricks a server into making unauthorized requests to other internal or external resources. The attacker can manipulate the server to fetch data from or interact with unintended resources, potentially leading to data exposure, privilege escalation, or even remote code execution.

Exploit Details

Application Overview: Request-Baskets v1.2.1

Request-Baskets is a tool that allows users to create virtual baskets, which mock endpoints to which HTTP requests are forwarded. These baskets can be configured to send requests to specified locations. The exploit leverages a weakness in the application’s handling of user-provided input to orchestrate an SSRF attack.

Exploit Walkthrough

The exploit script provided is written in Bash and is designed to demonstrate the SSRF vulnerability in Request-Baskets v1.2.1. Let’s break down the steps of the exploit:

  1. Input Validation and Help Message: The script checks the number of arguments provided. If the argument count is insufficient or if the user provides the “-h” or “ — help” option, a help message detailing the correct usage of the script is displayed.
  2. User Inputs: The user is expected to provide two arguments:
  • <URL>: The base URL of the target Request-Baskets server (e.g.,
  • <TARGET>: The URL of the attacker's server.