Hugo-C / jarm-online

Compute JARM hash online via a GUI/API
https://jarm.online
MIT License
1 stars 1 forks source link
fingerprinting security-scanner

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](https://jarm.online/) [![Website](https://img.shields.io/website?down_color=lightgrey&style=for-the-badge&up_color=brightgreen&up_message=online&url=https%3A%2F%2Fjarm.online%2F)](https://jarm.online/) [![Docker publish](https://github.com/Hugo-C/jarm-online/actions/workflows/docker-publish.yml/badge.svg)](https://github.com/Hugo-C/jarm-online/actions/workflows/docker-publish.yml) [![dependency status](https://deps.rs/repo/github/Hugo-C/jarm-online/status.svg)](https://deps.rs/repo/github/Hugo-C/jarm-online)

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