Skip to content
KitploitKITPLOIT
ToolsBlog
Submit
ToolsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
crlfuzz — A fast tool to scan CRLF vulnerability written in Go | Kitploit
Tools/GitHubGitHub/dwisiswant0/crlfuzz
Vulnerability ScannersWeb SecurityFuzzing
GitHubdwisiswant0/crlfuzz

crlfuzz

A fast tool to scan CRLF vulnerability written in Go

View Repository
1.6k1455 days agoReviewed by Kitploit

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share

CRLFuzz

made-with-Go go-report license contributions welcome godoc

A fast tool to scan CRLF vulnerability written in Go


Resources

  • Installation
    • from Binary
    • from Source
    • from GitHub
  • Usage
    • Basic Usage
    • Flags
    • Target
      • Single URL
      • URLs from list
      • from Stdin
    • Method
    • Data
    • Adding Headers
    • Using Proxy
    • Concurrency
    • Silent
    • Verbose
    • Version
    • Library
  • Help & Bugs
  • License
  • Version

Installation

from Binary

The installation is easy. You can download a prebuilt binary from releases page, unpack and run! or with

root@kitploit:~
▶ curl -sSfL https://git.io/crlfuzz | sh -s -- -b /usr/local/bin

from Source

If you have go1.13+ compiler installed and configured:

root@kitploit:~
▶ GO111MODULE=on go install github.com/dwisiswant0/crlfuzz/cmd/crlfuzz@latest

In order to update the tool, you can use -u flag with go get command.

from GitHub

root@kitploit:~
▶ git clone https://github.com/dwisiswant0/crlfuzz
▶ cd crlfuzz/cmd/crlfuzz
▶ go build .
▶ mv crlfuzz /usr/local/bin

Usage

Basic Usage

Simply, CRLFuzz can be run with:

root@kitploit:~
▶ crlfuzz -u "http://target"

Flags

root@kitploit:~
▶ crlfuzz -h

This will display help for the tool. Here are all the switches it supports.

Target

You can define a target in 3 ways:

Single URL

root@kitploit:~
▶ crlfuzz -u "http://target"

URLs from list

root@kitploit:~
▶ crlfuzz -l /path/to/urls.txt

from Stdin

In case you want to chained with other tools.

root@kitploit:~
▶ subfinder -d target -silent | httpx -silent | crlfuzz

Method

By default, CRLFuzz makes requests with GET method. If you want to change it, you can use the -X flag.

root@kitploit:~
▶ crlfuzz -u "http://target" -X "GET"

Output

You can also save fuzzing results to a file with -o flag.

root@kitploit:~
▶ crlfuzz -l /path/to/urls.txt -o /path/to/results.txt

Data

If you want to send a data request using POST, DELETE. PATCH or other methods, you just need to use -d flag.

root@kitploit:~
▶ crlfuzz -u "http://target" -X "POST" -d "data=body"

Adding Headers

May you want to use custom headers to add cookies or other header parts.

root@kitploit:~
▶ crlfuzz -u "http://target" -H "Cookie: ..." -H "User-Agent: ..."

Using Proxy

Using a proxy, proxy string can be specified with a protocol:// prefix to specify alternative proxy protocols.

root@kitploit:~
▶ crlfuzz -u "http://target" -x http://127.0.0.1:8080

Concurrency

Concurrency is the number of fuzzing at the same time. Default value CRLFuzz provide is 25, you can change it by using -c flag.

root@kitploit:~
▶ crlfuzz -l /path/to/urls.txt -c 50

Silent

If you activate this silent mode with the -s flag, you will only see vulnerable targets.

root@kitploit:~
▶ crlfuzz -l /path/to/urls.txt -s | tee vuln-urls.txt

Verbose

Unlike silent mode, it will display error details if there is an error with the -v flag.

root@kitploit:~
▶ crlfuzz -l /path/to/urls.txt -v

Version

To display the current version of CRLFuzz with the -V flag.

root@kitploit:~
▶ crlfuzz -V

Library

You can use CRLFuzz as a library.

root@kitploit:~
package main

import (
	"fmt"

	"github.com/dwisiswant0/crlfuzz/pkg/crlfuzz"
)

func main() {
	target := "http://target"
	method := "GET"

	// Generates a potentially CRLF vulnerable URLs
	for _, url := range crlfuzz.GenerateURL(target) {
		// Scan against target
		vuln, err := crlfuzz.Scan(url, method, "", []string{}, "")
		if err != nil {
			panic(err)
		}

		if vuln {
			fmt.Printf("VULN! %s\n", url)
		}
	}
}

Help & Bugs

If you are still confused or found a bug, please open the issue. All bug reports are appreciated, some features have not been tested yet due to lack of free time.

License

CRLFuzz released under MIT. See LICENSE for more details.

Version

Current version is 1.4.0 and still development.

Download Tool
FlagDescription
-u, --urlDefine single URL to fuzz
-l, --listFuzz URLs within file
-X, --methodSpecify request method to use (default: GET)
-o, --outputFile to save results
-d, --dataDefine request data
-H, --headerPass custom header to target
-x, --proxyUse specified proxy to fuzz
-c, --concurrentSet the concurrency level (default: 25)
-s, --silentSilent mode
-v, --verboseVerbose mode
-V, --versionShow current CRLFuzz version
-h, --helpDisplay its help