Skip to content

r0psteev/cthulu-net

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Cthulu Framework


Intro

CTHULU is a distributed scanner, which spreads the pool of ip addresses to scan over a group of relatively medium capacity devices (horizontal scaling botnet-style), in order to reduce scan time.

Demo: https://youtu.be/mk22sYc7R1o

Setup

I. Backend

  1. Start server, operator-cli, operator-dashboard services
$  docker compose up
  • server listens on port 5000 of your host
  • operator-cli listens on port 5001 of your host
  • operator-dashboard listend on port 3000 (https) of your host
  1. Install Grafana Infinity Plugin, and create default infinity DataSource
  • Search for Infinity Plugin

Pasted image 20221102032217.png

  • Install Infinity Plugin

Pasted image 20221102032336.png

  • Create Infinity DataSource

Pasted image 20221102032451.png

  1. Import the json dashboard ./operator/BotNet Master.json

Pasted image 20221102033331.png

After import you should obtain this dashboard. Not the most creative but i bet you can customize it and make pull request )).

Pasted image 20221102033550.png

II. Bot client

  1. Change ip address of server in ./bot/main.go
func main() {
    sys := &bot.LinuxSystem{}
    sys.Init()
    tasker := bot.TaskerProxy{Url: "http://server:5000"}
    tracker := bot.TrackerProxy{Url: "http://server:5000"}
  1. Build the bot client binary
$ ls
bot  go.mod  main.go
$ go mod tidy
$ go build -o botclient .
$ ls
bot  botclient  go.mod  main.go
$
  1. Copy and Run the botclient binary to workstations you want to use as WorkerBots within your network.

Pasted image 20221102041624.png

Pasted image 20221102042433.png

III. Monitor bots added to pool

Pasted image 20221102044024.png

IV. Provide ip subnets to scan and monitor

To connect as an operator and schedule scan jobs, connect to the operator cli on port 5001

Pasted image 20221102050201.png

Pasted image 20221102050701.png

Architecture (at least the intended on :) )

Pasted image 20221102051110.png

Uml Modelling

uml

TODO:

  • Add nginx reverse-proxy to docker-compose.yml

About

Distributed network scanner

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published