This is a Rust port of m4ll0k ssrf.py
script.
Precompiled binaries for bssrf are available in the releases tab. Just pick your platform and extract the archive that contains the binary.
If you want to build it yourself you will need to install Rust, you can get the official installation from the Rust website.
To build BulkSSRF:
$ git clone https://github.com/junnlikestea/bulkssrf
$ cd bulkssrf
$ cargo build --release
$ ./target/release/bssrf --version
With a list of urls in a file:
bssrf -f path/to/file.txt -l xyzburpcollaborator.com
Using a tool like gau
to feed bssrf urls:
gau hackerone.com | bssrf -l xyzburpcollaborator.com
By default the program has timeout set to 5 seconds, but you can alter that with the -t
flag, you can also add various debugging
info with the -v
for verbose flag:
gau hackerone.com | bssrf -v -t 10 -l xyzburpcollaborator.com
If you want to feed the traffic through an http proxy you can use the -p
or -replay-proxy
flag.
gau hackerone.com | bssrf -l xyzburpcollaborator.com -p http://127.0.0.1:8080
BulkSSRF uses async concurrent http requests under the hood. If you encounter an error similar to "Too many open files" it means that there isn't enough available file descriptors on your system. You can fix this by increasing the limits available. There are lots of different guides available to increase the limits, but here is one for linux. I actually ran into this problem while writing the code.
Developers have/has no responsibility or authority over any kind of:
- Legal or Law infringement by third parties and users.
- Malicious use capable of causing damage to third parties.
- Illegal or unlawful use of bulkssrf.
Thanks to 0xatul for the feedback!