Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/girorme/binoculo
Binoculo is a lightning-fast banner grabbing tool built with Elixir, designed to swiftly retrieve service banners from target hosts
https://github.com/girorme/binoculo
banner-grabbing elixir networking pnscan redteam security security-tools sockets
Last synced: 2 months ago
JSON representation
Binoculo is a lightning-fast banner grabbing tool built with Elixir, designed to swiftly retrieve service banners from target hosts
- Host: GitHub
- URL: https://github.com/girorme/binoculo
- Owner: girorme
- License: mit
- Created: 2020-02-02T05:47:36.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2024-08-21T22:23:44.000Z (4 months ago)
- Last Synced: 2024-08-22T23:40:32.902Z (4 months ago)
- Topics: banner-grabbing, elixir, networking, pnscan, redteam, security, security-tools, sockets
- Language: Elixir
- Homepage:
- Size: 2.87 MB
- Stars: 18
- Watchers: 2
- Forks: 0
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
![main-ci](https://github.com/girorme/binoculo-daemon/actions/workflows/elixir.yml/badge.svg?branch=main)
[![Coverage Status](https://coveralls.io/repos/github/girorme/binoculo/badge.svg?branch=main&a=1)](https://coveralls.io/github/girorme/binoculo?branch=main)
[![License](https://img.shields.io/badge/License-MIT-blue)](https://github.com/girorme/binoculo-daemon/blob/main/LICENSE)![usage](repo_assets/logo.png)
Binoculo is a lightning-fast banner grabbing tool built with Elixir, designed to swiftly retrieve service banners from target hosts. With its high-speed functionality, Binoculo efficiently collects service information across multiple ports, aiding in network reconnaissance and analysis.
![binoculo](https://github.com/user-attachments/assets/13d7d90b-0c63-4943-9490-44c381e56e99)
## Requirements
- Docker
- Optional: Elixir to run via your host machine## Features
Fast Network Scanning
> Utilize the enhanced multi-process task functionality in Binoculo for rapid network scans. Leverage concurrent processing to swiftly gather information across numerous hosts and ports, providing quick insights into your network's services.Search engines Integration
> Seamlessly integrate Binoculo with Meilisearch (current), enabling lightning-fast search capabilities over your scan results. Index and query your collected data with Meilisearch's powerful search engine, enabling efficient retrieval of network service information.Specific Banner Searches
> Perform targeted searches for specific service banners. Refine your queries to focus on precise service types or versions, streamlining your network reconnaissance efforts.HTTP Write
> Send commands over HTTP to communicate with services and perform actions, enhancing your network exploration capabilities## Commands
```
Binoculo: You Know, for Banner Grabbing! Version: 1.1.1
Author: Girorme
A banner grabbing toolUSAGE:
Binoculo [-v] --range host_notation --port port(s) [--output output] [--write write] [--read read]
Binoculo --version
Binoculo --helpFLAGS:
-v Verbosity level
OPTIONS:
--range CIDR or IP range: 192.168.1.0/24 or 192.168.1.0..192.168.1.255
-p, --port Port(s) to scan: 80,443,8080 or 80-8080 or 21,80-8080
-o, --output Output file
-w, --write Write cutom payload to socket, e.g: GET / HTTP/1.1
-r, --read Save only responses that match with this string, e.g: Apache
```## Usage
There is a "binoculo" bash script that you can run:- Start meilisearch container
- Start front dashboard to filter and visualize results
- Run binoculo via docker for ease of use**The command below runs via docker**
```
$ ./binoculo -r 192.168.101.1/24 -p 21,22 --output my_result.txt
```Finishing the scan you can get the results via `output/my_result.txt` generated by the `--output` switch
## More features
- Write custom payload to socket (inspired by pnscan :bowtie:)
```
$ ./binoculo --range 192.168.101.1/24 -p 80 --output result.txt -w "GET / HTTP/1.1"
```- Save only matching criteria (inspired by pnscan :bowtie:)
```
$ ./binoculo --range 192.168.101.1/24 -p 80 --output result.txt -w "HEAD / HTTP/1.1" -r "Apache"
```- Save only matching multiple criteria (AND operator) (inspired by pnscan :bowtie:)
```
$ ./binoculo --range 192.168.101.1/24 -p 80 --output result.txt -w "HEAD / HTTP/1.1" -r "Apache,php"
```### Meilisearch integration ⭐
```
$ ./binoculo --meili
```The command above launches a meilisearch container!
_You can now access `localhost:7700` to get results via meilisearch_
**Meilisearch print**
![image](https://github.com/girorme/binoculo/assets/54730507/8654ec1e-5562-41f5-928d-4e8033e139e6)---
## Update
To update to the latest version use the command below:> ./binoculo -u
---
## Architecture
![image](repo_assets/binoculo-arch.png)