Skip to content

Hugo-C/jarm-online

Repository files navigation

jarm_online

This repository provides a way to compute JARM hash via a web server.
The API is written in Rust and leverage underneath a rust library.
The GUI is made with Vue.js with the future goal to store previously computed hash, their maliciousness (based on a list of known hash) and their overlap with top visited websites.

Live version: jarm.online

Website
Docker publish
dependency status

Setup

API/GUI can be setup via docker.
To run the service, simply use:

docker-compose up

A full set up from scratch can be used via ansible with ansible_playbook.yml (tested on ubuntu 22.04.1 LTS minimal)
For development see GUI's README to spinup the GUI locally and leverage auto-reload.

API Endpoints

The list of endpoints currently available (see also examples).

Scan a website to obtain it's jarm fingerprint

GET api/v1/jarm?host=<host>&port=<port>

It takes a required host parameter and optionally port (default to 443).

Retrieve domains from tranco top 1 million that match a jarm hash

GET api/v1/tranco-overlap?jarm_hash=<jarm-hash>

The returned list is ordered by top tranco rank first

Retrieve recently scanned hosts

GET api/v1/last-scans

The returned list is ordered by oldest scans first. No pagination is proposed.

Images statistics

image RAM usage image size (compressed)
jarm_online_api Netdata ram usage Docker Image Size (tag)
jarm_online_gui Netdata ram usage Docker Image Size (tag)

GUI looks