Tools - zcabrer/proxylab GitHub Wiki
Proxy Lab Tools Documentation
Welcome to the Proxy Lab Tools Documentation! This page provides detailed descriptions of all the tools available in Proxy Lab, along with instructions on how to use them. Each tool is designed to help you test and debug various aspects of web applications and proxies.
Table of Contents
- 1. Headers
- 2. Post Body
- 3. Query String
- 4. File Upload and Download
- 5. Request Timeout
- 6. HTTP Status Code Generator
1. Headers Tool
Description
The Headers Tool allows you to inspect and modify HTTP request and response headers. This is particularly useful for testing proxy tools, header rewrites, and header injections (e.g., x-forwarded-for, x-forwarded-port).
How to Use
- Navigate to the Headers Tool.
- View the general information about the request, including URL, status, method, and remote address.
- Inspect the request headers (as seen by the server) and response headers (sent by the server).
- Add custom request or response headers using the "Add Headers" section:
- Click the + button to add a new header field.
- Enter the header name and value.
- Submit the headers using the Submit button.
- Reset the headers to their default state using the Reset button.
2. Post Body Tool
Description
The Post Body Tool allows you to submit an HTTP POST request to the server. You can select the content type, input custom body content, and view the server's response.
How to Use
- Navigate to the Post Body Tool.
- Select a content type from the dropdown menu. If "Other" is selected, input a custom content type.
- (Optional) View examples for the selected content type.
- Enter the body content in the provided text area.
- Click the Submit button to send the POST request.
- View the server's response and the content length in the response display section.
3. Query String Tool
Description
The Query String Tool helps you create and submit query strings to the server. This is ideal for testing how proxies handle query string manipulations.
How to Use
- Navigate to the Query String Tool.
- Input a raw query string in the format
key1=value1&key2=value2. - Click the Submit button to send the query string to the server.
- The server will echo back the response status code and the submitted query string for verification.
4. File Upload and Download Tool
Description
This tool allows you to test file uploads and downloads. It is useful for evaluating upload/download limits and performance.
How to Use
Upload Files
- Navigate to the File Upload and Download Tool.
- Select files to upload using the file input field (supports multiple files).
- Ensure the total file size does not exceed 1.5GB (5-file limit).
- Click the Upload button to submit the files.
- View the upload duration and server response.
Download Files
- Select a file size from the dropdown menu (e.g., 1MB, 10MB, 100MB, 1GB).
- Click the Download button to initiate the download.
- The server will generate and return a random text file of the specified size.
5. Request Timeout Tool
Description
The Timeout Tool allows you to test how proxies handle delayed responses. You can specify a timeout duration, and the server will delay its response accordingly.
How to Use
- Navigate to the Request Timeout Tool.
- Enter a timeout duration in seconds (minimum: 1 second, maximum: 86,400 seconds or 24 hours).
- Click the Initiate Request button to send the request.
- The server will wait for the specified duration before responding.
- View the server's response and any associated timer display.
6. HTTP Status Code Generator
Description
The HTTP Status Code Generator allows you to test how proxies and clients handle specific HTTP responses. You can input a valid HTTP status code, and the server will respond with the specified code.
How to Use
- Navigate to the HTTP Status Code Generator.
- Enter a valid HTTP status code (e.g., 200, 404, 500) in the input field.
- Select the request method (POST or GET).
- Click the Generate button to send the request.
- View the server's response with the specified status code.
These tools are designed to help you test and debug various scenarios in web applications and proxies. Explore each tool to understand its capabilities and how it can assist in your testing workflows.