cs:services:mentat:reporting

Reporting

Zpět na hlavní stránku systému Mentat

Reportovací nástroj je klíčovou komponentou systému Mentat. Jeho úkolem je v pravidelných intervalech zpracovávat nově přijaté události a prostřednictvím emailu automaticky rozesílat hlášení přímo odpovědným správcům v koncových sítích.

Reporty

V tuto chvíli systém generuje dva typy reportů: summary a extra. Oba typy reportů jsou generovány vždy zpětně za určité časové období a pro každou úroveň závažnosti zvlášť. Tento přístup umožňuje optimalizovat míru agregace tak, aby méně závažné události byly hlášeny méně často a tedy i s delším zpožděním, ale zato mnohem více agregované, zatímco závažnější události mnohem častěji a tedy s menším zpožděním od okamžiku detekce. Více informací o reportovacím algoritmu lze nalézt v samostatné sekci.

Summary report obsahuje za daný časový interval souhrn všech událostí dané závažnosti a týkajících se všech IP adres v dané koncové síti. To je vhodné např. pro hromadné zpracování všech hlášených událostí, automatické generování statistik, případně pro udržování obecného přehledu o zranitelnostech v dané síti. Souhrnný report přijde pro každou úroveň závažnosti a daný časový interval vždy právě jeden.

Extra report obsahuje za daný časový interval vždy události dané závažnosti a týkající se pouze jediné IP adresy z dané koncové sítě. To je vhodné např. pro redistribuci hlášení dále přímo konkrétním správcům daného zařízení nebo pro jednoduchou manipulaci a párování událostí v rámci nějakého interního tiketovacího systému.

Všechny reporty jsou odesílány s následujícími hodnotami hlaviček identifikujícími jako odesílatele systém Mentat:

  • From: CESNET-CERTS Reporting < reporting@cesnet.cz >
  • Reply-To: abuse@cesnet.cz
  • Return-Path: reporting@cesnet.cz

Předmět odesílaných emailů vypadá následujícím způsobem:

[Unikátní identifikátor] Závažnost - Popisný text

Např.:

  # Ukázka předmětů souhrnných reportů - *summary*
  [M20151125L-Dg2ur] Nízká - Upozornění na možné problémy ve Vaší síti
  [M20151125M-Dg2ur] Střední - Upozornění na možné problémy ve Vaší síti
  [M20151125H-Dg2ur] Vysoká - Upozornění na možné problémy ve Vaší síti
  [M20151125C-Dg2ur] Kritická - Upozornění na možné problémy ve Vaší síti

  # Ukázka předmětů extra reportů - *extra*
  [M20151125L-Dg2ur] Nízká - Upozornění na možné problémy týkající se stroje 192.168.0.1
  [M20151125M-Dg2ur] Střední - Upozornění na možné problémy týkající se stroje 192.168.0.1
  [M20151125H-Dg2ur] Vysoká - Upozornění na možné problémy týkající se stroje 192.168.0.1
  [M20151125C-Dg2ur] Kritická - Upozornění na možné problémy týkající se stroje 192.168.0.1

Unikátní identifikátor v hranatých závorkách jednoznačně identifikuje dané hlášení a jeho formát je významový. Pro ukázkový příklad M20151125L-Dg2ur je význam jednotlivých součástí následující:

  • M - konstanta, M jako systém Mentat
  • 20151125 - datum vygenerování reportu ve formátu YYYYMMDD
  • L - kód závažnosti události, jedna z možností (L = Low, M = Medium, H = High, C = Critical)
  • Dg2ur - náhodný řetězec pro rozlišení jednotlivých reportů generovaných v rámci jednoho dne

U časových značek uvedených přímo v reportu je vždy uvedena i příslušná časová zóna. Časové značky v datových přílohách jsou uvedeny vždy pouze v UTC.

Uvedené časy jsou okamžiky údajné detekce. Některé služby a systémy (zejména externí, jako např. ShadowServer) bohužel občas posílají informace o událostech i s několikadenním zpožděním. Informace z těchto systémů tedy mají spíše zdravotní charakter, systém Mentat jim přiřazuje nízkou úroveň závažnosti a je na správci v dané síti, zda jim bude věnovat pozornost, či nikoliv.

Pro lepší automatizované zpracovaní generovaných reportů jsou přidávány následující rozšiřující emailové hlavičky:

Hlavička Význam
X-Mentat-Report-Class Třída reportu, pro pravidelné reporty událostí má konstantní hodnotu: „events“
X-Cesnet-Report-Id Unikátní identifikátor reportu (deprecated/zavrženo)
X-Mentat-Report-Id Unikátní identifikátor reportu
X-Mentat-Report-Parent-Id Unikátní identifikátor nadřazeného souhrnného reportu
X-Cesnet-Report-Type Typ reportu, jedna z možností: „summary“/„extra“ (deprecated/zavrženo)
X-Mentat-Report-Type Typ reportu, jedna z možností: „summary“/„extra“
X-Cesnet-Report-Severity Závažnost reportu, jedna z možností: „low“, „medium“, „high“, „critical“ (deprecated/zavrženo)
X-Mentat-Report-Severity Závažnost reportu, jedna z možností: „low“, „medium“, „high“, „critical“
X-Cesnet-Report-Srcip IP adresa původce události, pouze u reportů typu „extra“ (deprecated/zavrženo)
X-Mentat-Report-Src-IP IP adresa původce události, pouze u reportů typu „extra“
X-Mentat-Report-Event-Count Celkový počet událostí v reportu
X-Mentat-Report-Time-Window Časové okno reportu jako dvě časové značky ISO 8601 format (YYYY-MM-DDTHH:MM:SS) spojené řetězcem _, např. 2018-07-13T10:30:00___2018-07-13T10:50:00
X-Mentat-Report-Test-Data Příznak, zda report obsahuje pouze testovací data a může být v produkčním prostředí ignorován.

K vygenerovanému reportu jsou dále přiložena všechna relevantní data ve strojově zpracovatelném formátu CSV a/nebo JSON (v závislosti na konfiguraci). V závislosti na konfiguraci mohou být přílohy také komprimovány. Důrazně doporučujeme používat pouze přílohy typu JSON, neboť data v nich obsažená jsou vždy kompletní. V přílohách typu CSV je v důsledku serializace a z důvodů alespoň jakés-takés použitelnosti obsažena pouze část z kompletních dat. Přílohy typu CSV by měly být považovány za zavržené.

Názvy souborů příloh jsou generovány podle následujícího schématu:

security-report-[Unikátní identifikátor].[Typ]

Např.:

security-report-M20151125L-Dg2ur.json
security-report-M20151125L-Dg2ur.json.zip
security-report-M20151125L-Dg2ur.csv
security-report-M20151125L-Dg2ur.csv.zip

Reportování lze pro každou koncovou síť optimalizovat vhodným nastavením filtrů tak, aby události bez skutečné hodnoty pro cílové správce nebyly hlášeny. Tato a další nastavení lze nakonfigurovat pro každou koncovou síť zvlášť prostřednictvím webového rozhraní. Tato nastavení je oprávněn dělat buď administrátor systému Mentat, nebo uživatel s oprávněním spravovat danou skupinu. Více informací o možnostech webového rozhraní z hlediska běžného uživatele lze nalézt na samostatné stránce.

Všechny vygenerované reporty jsou dostupné v HTML formátu i prostřednictvím webového rozhraní, kde lze využít i další funkce a propojení s ostatními komponentami rozhraní.

Popis reportovacího mechanismu

Návrh nového reportéru a reportovacího mechanismu vychází z připomínek nashromážděných v průběhu provozu předchozí verze. Klíčové připomínky byly následující:

  1. Pozdržení již nahlášených problémů po určitou dobu
  2. Možnost zasílání souhrnných reportů za větší časový interval (den, týden), nastavitelné intervaly reportování

Obě připomínky v sobě v podstatě skrývají určitou formu agregace dat. A v případě agregace je vždy nutné najít optimální kompromis mezi co největším agregačním intervalem (po kterém zpravidla touží přijímající strana a který znamená menší množství přijatých zpráv) a mezi rozumným časovým zpožděním při odeslání hlášení (neboť týden stará data jsou již obvykle k ničemu). Zároveň jsme dospěli i k rozdílu závažnosti mezi jednotlivými událostmi: určité události nejsou příliš závažné a skutečně není nutné zasílat upozornění častěji než řekněme jednou denně/týdně, ale včasné informování o kritičtější události může znamenat výrazné omezení konečných škod v napadeném systému/síti. Byli jsme tedy donuceni k zavedení hodnocení událostí z hlediska námi navrhované závažnosti z našeho pohledu jakožto operátorů páteřní sítě. Navrhovaná klasifikace je prezentovaná na stránkách týmu CESNET-CERTS.

Nový reportovací algoritmus funguje podle následujícího schématu:

  1. Rozdělení nových událostí přijatých za určitý časový úsek do skupin podle úrovní závažnosti
  2. Pro každou skupinu událostí dané úrovně závažnosti poté provede samostatné zpracování
    1. Agregace zpráv podle cílového abuse kontaktu/skupiny (whois dotaz na IP adresu zdrojů události)
    2. Získání konfigurace reportování pro danou úroveň závažnosti a cílový abuse kontakt/skupinu
    3. Vygenerování a odeslání reportu na definovanou emailovou adresu

Samotný reportovací algoritmus, který provádí vlastní zpracování dat, je konfigurovatelný pomocí následující trojice hodnot:

  1. period - Perioda, se kterou se report pravidelně generuje
  2. threshold - Doba, po kterou se o daném nahlášeném incidentu mlčí a neobjevuje se v následujících reportech. Klíčem pro zapamatování je kombinace (IP adresa|klasifikace události)
  3. relapse - Heuristika, která určuje, v jakém případě budou zamlčená data zpětně odeslána (detekce vyřešení/nevyřešení daného incidentu)

Princip fungování reportovacího algoritmu ilustruje následující obrázek: Princip fungování reportovacího algoritmu

Výchozí nastavení reportovacího algoritmu reflektuje proces incident handlingu v týmu CESNET-CERTS a vypadá následujícím způsobem:

Stupeň závažnosti (severity) Popis Period Threshold Relapse
Nízká - Low Informační charakter 24h (1d) 168h (7d) 48h (2d)
Střední - Medium Vážná událost, vyřešit do 2 dní 2h 48h (2d) 24h (1d)
Vysoká - High Velmi vážná událost, vyřešit ASAP ASAP (10min) 2h 0
Kritická - Critical Kritická událost, vyřešit ASAP ASAP (10min) 0 0

Zpět na hlavní stránku systému Mentat

Poslední úprava: 18.09.2018 20:42