Caronte is a tool to analyze the network flow during capture the flag events of type attack/defence. It reassembles TCP packets captured in pcap files to rebuild TCP connections, and analyzes each connection to find user-defined patterns. The patterns can be defined as regex or using protocol specific rules. The connection flows are saved into a database and can be visualized with the web application. REST API are also provided.
Features
curl
, either locally or remotely, or via the GUIcurl
, fetch
and python requests
Installation
There are two ways to install Caronte:
Run with Docker
The only things to do are:
git clone https://github.com/eciavatta/caronte.git
caronte
folder, run docker-compose up -d
http://localhost:3333
Manually installation
The first thing to do is to install the dependencies:
Next you need to compile the project, which is composed of two parts:
go mod download && go build
cd frontend && yarn install && yarn build
Before running Caronte starts an instance of MongoDB https://docs.mongodb.com/manual/administration/install-community/ that has no authentication. Be careful not to expose the MongoDB port on the public interface.
Run the binary with ./caronte
. The available configuration options are:
-bind-address address where server is bind (default “0.0.0.0”)
-bind-port port where server is bind (default 3333)
-db-name name of database to use (default “caronte”)
-mongo-host address of MongoDB (default “localhost”)
-mongo-port port of MongoDB (default 27017)
Configuration
The configuration takes place at runtime on the first start via the graphical interface or via API. It is necessary to setup:
server_address
: the ip address of the vulnerable machine. Must be the destination address of all the connections in the pcaps. If each vulnerable service has an own ip, this param accept also a CIDR address. The address can be either IPv4 both IPv6flag_regex
: the regular expression that matches a flag. Usually provided on the competition rules pageauth_required
: if true a basic authentication is enabled to protect the analyzeraccounts
array, which contains the credentials of authorized usersDocumentation
The backend, written in Go language, it is designed as a service. It exposes REST API that are used by the frontend written using React. The list of available APIs with their explanation is available here: https://app.swaggerhub.com/apis-docs/eciavatta/caronte/WIP
Screenshots
Below there are some screenshots showing the main features of the tool.
Main window, with connections list and stream content
Main window, with the timeline expanded
Rules and services view
Searches and pcaps view
Kali Linux 2024.4, the final release of 2024, brings a wide range of updates and…
This Go program applies a lifetime patch to PowerShell to disable ETW (Event Tracing for…
GPOHunter is a comprehensive tool designed to analyze and identify security misconfigurations in Active Directory…
Across small-to-medium enterprises (SMEs) and managed service providers (MSPs), the top priority for cybersecurity leaders…
The free and open-source security platform SecHub, provides a central API to test software with…
Don't worry if there are any bugs in the tool, we will try to fix…