Git Product home page Git Product logo

lucaderi / sgr Goto Github PK

View Code? Open in Web Editor NEW
14.0 14.0 106.0 347.43 MB

Progetti Corso Gestione di Rete

Home Page: https://didattica.di.unipi.it/laurea-in-informatica/insegnamenti/lista-dei-corsi/?anno=2019

Makefile 3.43% C 52.31% Shell 4.87% C++ 6.99% Yacc 0.14% Assembly 0.11% Roff 1.09% HTML 10.39% Lex 0.07% JavaScript 2.11% CSS 0.64% M4 0.11% TeX 4.11% Java 4.81% XSLT 0.01% Perl 0.02% Python 6.55% PHP 0.09% CMake 0.02% Lua 2.11%
monitoring network snmp traffic

sgr's People

Contributors

89oinotna avatar alessandrodgr avatar alessio-perugini avatar alexnicco98 avatar deedervel avatar dependabot[bot] avatar fcarli3 avatar fexed avatar flack90 avatar fsciulli avatar gianluca2414 avatar gioleppe avatar irfanto05 avatar looganxx avatar lucaderi avatar lucarioshiny avatar marcopiangatello avatar mariucci0 avatar nicomaio avatar overflow404 avatar rasoini avatar riccardoc19 avatar salvatore-fumia avatar samueleintaschi avatar simo-r avatar simonericci97 avatar the90frank avatar thomastoc avatar tmacchioni avatar tommasolencioni avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

sgr's Issues

Progetto Stagno - Implementazione Nuovi Flow Check (#6416 e #6417)

Implementing two new flow checks: one for reporting when visiting a "rare" (i.e. not popular) domain name for the selected ntop instance. Before emitting the first alert, ntopng must have a "learning period" for knowing what domains are popular or rare. The second one is similiar but the check is on the destination IP address of a flow.

Progetto Simone Passera

Il progetto consiste nel monitoraggio del sensore di temperatura (DS18B20) collegato tramite GPIO ad un Raspberry Pi. Attraverso richieste SNMP sarà possibile leggere il valore della temperatura presente nella stanza. Applicando l’algoritmo Double Exponential Smoothing sul valore letto, sarà possibile stimare un limite superiore e inferiore alla temperatura nel futuro prossimo. Il Raspberry invierà tramite un bot su Telegram, un messaggio di allerta in caso di superamento di tali limiti, oppure se la temperatura nella stanza oltrepassa una soglia massima impostata manualmente.
Sarà possibile visualizzare il grafico della temperatura, attraverso una semplice pagina web raggiungibile all’ indirizzo del Raspberry Pi.

ipt_geofence performance evaluation

Report sulle performance di https://github.com/ntop/ipt_geofence analizzate tramite l'invio e il forward di pacchetti fra due macchine in una rete isolata.
I pacchetti sono stati forgiati con scapy e catturati con Wireshark e tcpdump.
Oltre a qualche breve, ma istruttiva, osservazione tramite Wireshark, abbiamo applicato alcuni dei principi visti a lezione per calcolare delle statistiche sui .pcap delle catture con l'ausilio di uno script python.
Il tutto discusso in un report realizzato in latex in inglese.
Francesco Lorenzoni - Salvatore Guastella - Yuri Caprini
@salvogs @yuricaprini

Progetto Rymarchuk - Brugnano - Zocco: Aggiunta della feature "Rare/Unusual Domain Flow Check" a ntopng

Il progetto consiste nell'aggiunta di una feature a ntopng relativa alla issue #6416 . La feature consiste di implementare il controllo ( check ) delle comunicazione verso le destinazione rare all'interno di una istanza ntop, e nel caso di un esito positivo lanciare un alert. Per definire se una destinazione è rara o meno il check deve svolgere un periodo di apprendimento ( per ogni host istanziato ).

L'algoritmo consiste nella fase di apprendimento delle abitudini del host e successivamente in una correzione dinamica per togliere le destinazioni che non vengono contattati da tanto tempo ( dopo un x tempo che identifica una epoca ) . Utilizziamo le ndpi_bitmap come strutture dati per contenere le informazioni relative alle destinazioni abituali degli host. Se un nuovo flow avviene verso una destinazione che non è presente nella bitmap allora viene lanciato un alert.

Progetto Casella

Il progetto consiste in un programma C che preso in input un file csv di dati storici del meteo ( dati presi da https://www.ncdc.noaa.gov/cdo-web/ ) ne legge i contenuti e crea un archivio rra. Inoltre attraverso l'algoritmo di predizione Holt-Winters implementato ella libreria nDPI vengono identificate anomalie nelle osservazioni della temperatura ( valori che cadono al di fuori delle fasce di fiducia vengono considerate anomalie ).

L'uso di Holt-Winters nasce dal fatto che le temperature registrate seguono una stagionalità ovvero dopo un certo periodo la serie si "ripete".

Infine attraverso rrdtool viene prodotto un grafico per visualizzare la serie temporale.

Progetto Ceroni-Ferretti - Utilizzo di IntelOwl

Il progetto consiste nello sviluppo di uno strumento per l'analisi di un file PCAP al fine di riconoscere indirizzi IP potenzialmente malevoli. Tale strumento utilizzerà il tool IntelOwl per svolgere l'analisi degli indirizzi IP. Gli IP, una volta estratti dal file, verranno filtrati utilizzando delle blacklist di indirizzi noti così da non sovraccaricare il tool e non usare inutilmente risorse.

Progetto Boni Braccini - Integrazione di Dionaea Honepot con Prometheus e Grafana

Integrazione di Prometheus per il monitor di Dionaea e Cowrie Honeypot .Verranno realizzati collectors promethus che permetteranno di estrapolare i dati da Dionaea e Cowrie e di ottenere metriche dagli ambienti dove vengono eseguiti (docker).
Inoltre verrà implementato a codice (nei collector Prometheus) il calcolo della Z-Score sulle time series delle connessioni, così da poter rappresentare possibili outlier.
Le time series ottenute verranno utilizzate per fare il training di un modello Prophet il quale forecast paragonato ai valori osservati sarà utile per un eventuale anomaly detection.
Il tutto verrà visualizzato tramite la realizzazione di una Dashboard su Grafana

Progetto Maestripieri - Zerini: Analisi serie temporali

Estensione dell'API di nDPI con la funzione "ndpi_predict_linear", che consente di predire un valore di una data serie temporale in un determinato istante, utilizzando la regressione lineare semplice.
Fase di testing effettuata cercando di prevedere l'occupazione di memoria e disco tra un giorno oppure una settimana.

Progetto Cau - Tool for http malware check from pcap file

Implementing a tool to check for malwares transited via http protocol.
Given a pcap file, looks for http flows and extracts all executable files. Theses files are then sent to an external analyser to check wether they can infect the host that received the analyzed http flow.

Estensione Wireshark con listener in Lua

Questa estensione scritta in Lua consiste nell' integrare un listener in Wireshark che, dato un host X , fa una statistica degli host contattati da X , del numero di pacchetti che sono stati scambiati per ogni host e stima quante volte X è stato contattato a sua volta.
Le approssimazioni vengono calcolate sfruttando l' algoritmo HyperLogLog e i risultati vengono visualizzati in una finestra.

Individuazione nervosismo all'interno di una serie temporale

Il progetto prende in input una serie temporale e dopo aver calcolato la deviazione standard sui primi n elementi (configurabile) che indica il normale comportamento del segnale, lavorando su finestra mobile di k elementi (configurabile) cerca di individuare quando un segnale diviene "nervoso", ovvero quando oscilla in modo evidente intorno ad un punto (nel nostro caso, la media dei k elementi).
Il sinonimo di nervosismo sarà definito quando la deviazione standard dell'insieme di punti nella finestra è 3 volte maggiore di quella calcolata inizialmente.
Stampa su linea di comando il momento di inizio e fine del nervosismo
E alla fine dell'esecuzione, se attiva l'opzione -p, stampa un grafo con in evidenza l'arco temporale in cui la funzione è stata segnalata come nervosa

2022-06-24 09 24 58

Progetto GR 2022 - lua extension for wireshark

The project consist in an extension for Wireshark writted in Lua.
The purpose of this extension is help analysing capture.
The main function will detects problems at the transport layer (p.e. duplicate ack - frame retransmission - syn segment without ack). Furthermore, involved hosts will be highlighted.

Progetto Ferrari-Stanganini ricerca blackhole

Data la libreria pcap analizziamo i pacchetti prendendo in considerazione solo quelli con il protocollo tcp e si segnalano i possibili blackhole. Tenendo aggiornato lo stato degli host si controlla se tornano a funzionare.

Progetto Buzi: Aggiunta funzione a ipt_geofence per il calcolo del tempo di ban

Per il momento, nel progetto ho individuato i seguenti punti:

  • Aggiungere la possibilità di scegliere il nome dell'output file da linea di comando.
  • Poter scegliere se il formato del file deve essere serializzato o json.
  • Poter scegliere di salvare un file in ogni caso, può essere utile come log.
  • Aggiunta della funzione per il calcolo del tempo di ban necessario con parametri configurabili.

Progetto Raspberry Pi (Simone Passera)

Il progetto consiste nel monitoraggio del sensore di temperatura (DS18B20) collegato tramite GPIO ad un Raspberry Pi. Attraverso richieste SNMP sarà possibile leggere il valore della temperatura presente nella stanza. Applicando l’algoritmo Double Exponential Smoothing sul valore letto, sarà possibile stimare un limite superiore e inferiore alla temperatura nel futuro prossimo. Il Raspberry invierà tramite un bot su Telegram, un messaggio di allerta in caso di superamento di tali limiti, oppure se la temperatura nella stanza oltrepassa una soglia massima impostata manualmente.
Sarà possibile visualizzare il grafico della temperatura, attraverso una semplice pagina web raggiungibile all’ indirizzo del Raspberry Pi.

Progetto Difranco Lavorini - Monitor SNMP

Implementazione di uno strumento per il monitoraggio di utilizzo di CPU, RAM e Disco tramite SNMP. Tramite l’utilizzo di uno script in python e la libreria Easy SNMP si acquisiscono informazioni del Sistema che verranno memorizzate in un database (InfluxDB) per il monitoraggio. Attraverso Single Exponential Smoothing (implentato nello script python) viene calcolato il valore atteso. Tramite l’uso di task create con InfluxDB vengono generati allarmi nel caso di anomalie (per esempio utilizzo della CPU eccessivo o troppo distante dal valore atteso), questi allarmi verranno notificati tramite un bot di Telegram.

Progetto Fiderio

Il progetto consiste in un programma in python che interroga con SNMP l'host sull'utilizzo di CPU, RAM e disco, applica il double exponential smoothing sui valori letti per predirli al tempo t+1 e crea un range all'esterno del quale verrà segnalato un warning su telegram.
Esiste anche una soglia superiore limite oltre il quale verrà sempre mandato un messaggio di warning (oltre 90%).
I vari valori verranno immagazzinati su InfluxDB dove sarà possibile visualizzare i dati anche sotto forma di grafici e tabelle.
I warning di telegram verranno inviati dai tasks di InfluxDB in base ai valori ricevuti.

aggiunta blocco di statistiche su ndpiReader

Il progetto, che mi era stato assegnato ad ottobre 2021 tramite email ([email protected]), prevede di aggiungere un altro blocco di statistiche ulteriore che venivano stampati dal tool ndpiReader per ogni flusso analizzato. Nel progetto vengono raccolti i nomi al dominio:

  • flow->ssh_tls.server_info
  • flow->host_server_name

che vengono messi in una hash table e vengono ordinati per numero di occorrenze in modo che alla fine del programma possiamo stampare, dal maggiore al minore per numero di occorrenze, i top nomi al dominio contattati durante la comunicazione risultate dai flussi raccolti a partire dai file .pcap.

Tool recupero dati con SNMP

Il progetto si occupa di interrogare l'agent attraverso il protocollo SNMP, per recuperare Uptime, RAM totale ed in uso, CPU utilizzata, carico sulla CPU e si utilizza il calcolo del Z-Score per individuare i processi che hanno allocato troppa memoria rispetto al resto.
Prevede due modalita' di utilizzo:

  • Una per far girare il programma di continuo, con un intervallo specificato in un config. file. Inoltre in questa modalita' il programma si occupera' anche di mandare eventuali notifiche se e' stato correttamente configurato il config. file.
  • Una per fare una singola richiesta delle statistiche, senza mandare notifiche.

Viene utilizzato anche InfluxDB per caricare i dati monitorati sul database e Grafana per la visualizzazione
Malentacchi Maurizio

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.