https://github.com/roerohan/bird
A simple website directory enumeration tool built with Golang.
https://github.com/roerohan/bird
bruteforce dirb directory-enumeration gobuster golang hacking-tool hacktoberfest
Last synced: 10 months ago
JSON representation
A simple website directory enumeration tool built with Golang.
- Host: GitHub
- URL: https://github.com/roerohan/bird
- Owner: roerohan
- License: mit
- Created: 2020-11-24T14:52:20.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2020-11-25T07:10:37.000Z (over 5 years ago)
- Last Synced: 2024-06-20T01:50:14.456Z (almost 2 years ago)
- Topics: bruteforce, dirb, directory-enumeration, gobuster, golang, hacking-tool, hacktoberfest
- Language: Go
- Homepage:
- Size: 1.18 MB
- Stars: 8
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
[![Issues][issues-shield]][issues-url]
bird
A simple website directory enumeration tool built with `golang`.
Explore the docs »
View Demo
·
Report Bug
·
Request Feature
## Table of Contents
* [About the Project](#about-the-project)
* [Built With](#built-with)
* [Getting Started](#getting-started)
* [Prerequisites](#prerequisites)
* [Installation](#installation)
* [Usage](#usage)
* [Roadmap](#roadmap)
* [Contributing](#contributing)
* [License](#license)
* [Contributors](#contributors-)
## About The Project
`bird` is a simple, multithreaded website directory enumeration tool. `bird` takes a list of URLs, a list of status codes which represent that the enumeration was successful, and a wordlist for fuzzing. Then, it can _parallely_ enumerate routes on all the URLs with words from the wordlist provided and report the route which returned one of the success codes.
### Built With
* [Golang](https://golang.org/)
## Getting Started
To get a local copy up and running follow these simple steps.
### Prerequisites
To build a binary from source, you need the go runtime. Otherwise, you can just get the binary from the [GitHub release](https://github.com/roerohan/bird/releases/).
* golang
### Installation
You can get the binary for your Operating System directly using `wget`, or download it from the [GitHub releases](https://github.com/roerohan/bird/releases/).
```
wget https://github.com/roerohan/bird/releases/download/v0.1.6/bird
```
If you want to get it using the `go` CLI, follow the steps below.
1. Get the package using `go get`.
```sh
go get github.com/roerohan/bird
```
Alternatively, you can clone the repository and build it from source.
1. Clone the Repo
```sh
git clone https://github.com/roerohan/bird.git
```
2. Install NPM packages
```sh
cd bird
go build -o ./bin/bird
```
3. Use the binary inside the bin folder.
```sh
./bin/bird -u https://github.com -s 200 -w ./wordlist/common.txt
```
## Usage
```
Usage of bird:
-s value
Status code for success, default 200
-u value
Target URL to be bruteforced [required]
-w string
Path to wordlist [required]
```
A sample wordlist is provided [here](./wordlist/comon.txt).
An advantage of using `bird` is that you can fuzz multiple websites in parallel, as you can see in the second example below.
### Examples
1. To enumerate `https://github.com` with success codes 200, 302.
```sh
bird -u https://github.com -w ./wordlist/common.txt -s 200 -s 302
```
2. To enumerate `https://github.com` and `https://csivit.com` with success code 200, 302. These sites will be enumerated in parallel.
```sh
bird -u https://github.com -u https://csivit.com -w ./rockyou.txt -s 200 -s 302
```
3. The default status code is `200`, so it is not necessary to pass the flag `-s`.
```sh
bird -u https://github.com -w ./wordlist/common.txt
```
## Roadmap
See the [open issues](https://github.com/roerohan/bird/issues) for a list of proposed features (and known issues).
## Contributing
Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are **greatly appreciated**.
1. Fork the Project
2. Create your Feature Branch (`git checkout -b feature/AmazingFeature`)
3. Commit your Changes (`git commit -m 'feat: Add some AmazingFeature'`)
4. Push to the Branch (`git push origin feature/AmazingFeature`)
5. Open a Pull Request
You are requested to follow the contribution guidelines specified in [CONTRIBUTING.md](./CONTRIBUTING.md) while contributing to the project :smile:.
## License
Distributed under the MIT License. See [`LICENSE`](./LICENSE) for more information.
[roerohan-url]: https://roerohan.github.io
[issues-shield]: https://img.shields.io/github/issues/roerohan/bird.svg?style=flat-square
[issues-url]: https://github.com/roerohan/bird/issues