crossjoin

command module
v1.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 29, 2023 License: GPL-3.0 Imports: 5 Imported by: 0

README

Crossjoin

Example output

Description

crossjoin is a utility designed for security testing and fuzzing tasks. It takes multiple input files and creates all possible permutations (the Cartesian product) of their lines. This can be useful for generating comprehensive lists of potential URLs or other input data for fuzzing and penetration testing purposes.

For example, with input files containing HTTP protocols, domain names, and URL paths respectively, crossjoin will generate all possible combinations of these components, thereby creating a comprehensive list of URLs.

Twitter URL

Installation

You can download a release from the Releases page.

Alternatively, you can compile it yourself. You need to have Go installed on your system.

go install github.com/d3mondev/crossjoin@latest

Usage

crossjoin file1 file2 file3 [...fileN]

Each file should contain a set of strings (lines) to be used in the permutations. crossjoin will then output the permutations to the console.

If standard input (stdin) is provided, the program will use it as the first input.

command | crossjoin file1 file2 ...

Example

Given the following 3 files:

protocols.txt:
http://
https://
domains.txt:
example.com
www.example.com
paths.txt:
/index.html
/admin/

Running crossjoin with these files as input will produce:

$ crossjoin protocols.txt domains.txt paths.txt

http://example.com/index.html
http://example.com/admin/
http://www.example.com/index.html
http://www.example.com/admin/
https://example.com/index.html
https://example.com/admin/
https://www.example.com/index.html
https://www.example.com/admin/

Documentation

The Go Gopher

There is no documentation for this package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL