Sunteți pe pagina 1din 6

Splunk și utilitatea într-un Chatbot SaaS

Splunk este o platformă software folosită pentru monitorizarea, căutarea, analiza și


vizualizarea datelor în timp real. Poate captura, indexa și corela evenimente în timp real și
poate produce grafice, alerte, tablouri de bord și diverse vizualizări.

Splunk poate procesa cantități imense de date din surse diferite permițând o înțelegere mai
bună a lor. Este folositor în mai multe domenii ca securitate, internet of things (IoT),
business analytics, operații IT cât și monitorizarea operațiilor unui SaaS.

Printre produsele oferite de Splunk, putem număra:


1. Splunk IT Service Intelligence (ITSI) – este un serviciu ce permite o vizibilitate
ridicată în performanța și sănătatea serviciilor și infrastructurii IT.
2. Splunk User Behavior Analytics (UBA) – este un serviciu ce se folosește de machine
learning pentru a detecta comportament anormal, potențial malițios al utilizatorilor.

Splunk User Behavior Analytics (UBA) poate detecta amenințări externe și interne, le poate
atribui un grad de severitate, legându-le la contextul necesar pentru investigare și răspuns.
Pentru aceasta, UBA are nevoie de următoarele module pentru a funcționa corect:
1. Colectarea de Date:
a. UBA ingerează, integreasă și se folosește de datele generate de mașină din
surse variate dintr-o rețea. Acestea pot fi date din endpoint-uri, servere, trafic
de rețea și loguri din aplicații și dispozitive de rețea.
2. Detectarea de Anomalii și Machine Learning:
a. se folosește de algoritmi de machine learning pentru a stabili o linie de bază a
ceea ce constituie comportament normal al utilizatorilor, dispozitivelor și
aplicației în rețeaua unei organizații.
b. După ce se stabilește linia de bază, sistemul poate detecta deviații de la norma
stabilită – anume anomalii. Ca exemplu de anomalii ar putea fi descărcarea
subită a unui volum mare de date, încercări succesive și eronate de
autentificare sau accesul de date senzitive la ore neuzuale.
3. Identificarea Amenințării
a. Corelând aceste anomalii, Splunk UBA poate identifica amenințări potențiale.
Spre exemplu, o singură anomalie poate nu este o problemă serioasă, dar o
serie de anomalii petrecându-se în același timp poate indica o breșă de
securitate sau comportament intern malițios.
4. Investigarea Amenințării:
a. O dată ce potențialele amenințări au fost identificate, Splunk UBA furnizează
o analiză și un context detaliat pentru fiecare incident. Aceste date pot ajuta
echipa de securitate să înțeleagă ce se întâmplă și să continue investigarea.
5. Gradarea Riscului și Alertare:
a. Fiecărei amenințări i se dă un scor de risc, ce poate ajuta organizația să
prioritizeze rezolvarea lor. Amenințările de grad înalt pot fi adresate imediat,
în timp ce de grad scăzut pot fi lăsate la urma cozii de investigare.
b. De asemeni, atunci când o amenințare de grad înalt este detectată, systemul
poate trimite alerte către echipa de securitate.

Integrarea Splunk într-o aplicație Chatbot Software as a Service poate furniza beneficii
pentru analiza datelor, monitorizare și securitate. O astfel de integrare se poate face astfel:
1. Transmiterea datelor
a. În primul rând se vor trimite datele din aplicație către Splunk. Pentru aceasta
e nevoie să fie setat un mecanism de trimitere a datelor către indexatorul
Splunk pentru a fi stocat și analizat.
2. Indexarea datelor
a. O dată ce primește datele, Splunk va indexa datele și le va pregăti pentru
căutare.
b. Cu toate că indexarea este automată, aceasta poate fi configurată pentru a
schimba modul în care datele sunt analizate, cum sunt despărțite în
evenimente, în ce index se scriu, cât pot fi reținute, etc.
3. Creare de Panouri de Bord și Alert:
a. După ce datele sunt indexate, Splunk poate fi folosit pentru a crea Panouri de
Control, vizualizări și alerte.
4. Implementare UBA:
a. Pentru a implementa User Behavior Analytics, trebuie setat modulul UBA și
configurat pentru a analiza datele ce vin din aplicație. Aceasta setare poate
însemna marcarea a ceea ce înseamnă comportament normal, setarea
algoritmilor de detecție anomalii și configurarea gradării de risc și a
sistemului de alerte.
5. Integrarea cu API:
a. În unele cazuri se poate integra Splunk direct în aplicația SaaS folosind API-
ul REST. Astel, folosind API-ul se pot rula căutări direct din aplicație, se pot
afișa panourile de bord direct, etc.

Pentru proiectul de Chatbot, diferite tipuri de date pot fi de folos pentru analiza,
monitorizarea și securitatea aplicației, spre exemplu:
1. Loguri de convorbire:
a. Fiind sursele primare de date ale unui chatbot, aceste loguri pot ajuta la a
înțelege cum utilizatorii interacționează cu sistemul, ce întrebări apar și cum
răspunde sistemul.
2. Date de utilizare:
a. Ca exemplu de date se pot urmări pot fi numărul de utilizatori pe zi, lungimea
medie a unei conversații, sau timpul din zi când sistemul este cel mai folosit.
3. Loguri de eroare:
a. Dacă sistemul întâmpină o eroare, spre exemplu, nu înțelege și nu poate
răspunde unei întrebări sau nu poate accesa un serviciu intern, atunci acest
semnal trebuie logat și trimis către splunk. Analiza acestor loguri poate ajuta
la identificare și rezolvarea problemelor în codul sau configurația sistemului.
4. Metrici de performanță:
a. Acestea pot fi timpul de răspuns al sistemului, încărcarea pe server sau
numărul de requesturi îndeplinite.
5. Date despre comportamentul utilizatorilor:
a. Se pot urmări tipurile de întrebări adresate de către utilizatori, cum au
continuat după ce au primit un răspuns, etc.
6. Loguri de securitate:
a. Orice eveniment conex cu securitatea trebuie logat și trimis către Splunk.
Acestea pot fi încercări de autentificare eșuate, schimbări la configurația
sistemului, sau modele de comportament suspecte.
O dată ce datele de la Chatbot vor fi ingerate și indexate de către Splunk, acestea pot fi
căutate, analizate și vizualizate. Folosind Splunk Search Processing Language (SPL) putem
efectua căutări complexe și crea diferite rapoate, panouri de bord și alerte.

Pentru a crea o alertă de securitate pentru multiple încercări de autentificare eșuate, putem
urma următorii pași:
1. Se crează un query SPL:
a. index=main sourcetype=access_logs status=failed action=login | stats count by
user, ip | where count > 5
b. Acest query caută în indexul ‚main’ evenimente de tipul ‚access_logs’ unde
statusul este ‚failed’ și acțiunea este ‚login’. Le grupează apoi după utilizator și
adresă IP, le numără și le compară să găsească evenimentele ce se repetă de mai
mult de 5 ori.
2. Crearea unei alerte:
a. Navigăm către ‚Search & Reporting’ în Splunk
b. Rulăm query-ul SPL
c. Dăm click pe ‚Save As’ și alegem ‚Alert’
d. Îi putem da un nume și în configurăm diverse setări, ca momentul când să ruleze.
e. Alegem ce acțiune să se execute când alerta este declanșată, ca trimiterea unui
email către echipa de securitte, crearea unui tichet în sistemul de ticheting sau
apelarea unui webhook din alt sistem.
3. Testarea și monitorizarea alertei:
a. După ce s-a creat alerta, este important să fie testată și monitorizată pentru a ne
asigura că funcționează corect. De asemeni este indicat să fie revizuită periodic
pentru a ne asigura că alerta încă mai este relevantă.

Alte tipuri de alerte ce pot fi setate pentru sistemul de Chatbot pot fi:
1. Detectarea Frustării Utilizatorului:
a. Dacă sistemul eșuează în a înțelege utilizatorul de mai multe ori utilizatorul va
deveni frustrat. O alertă poate fi setată pentru a notifica un operator uman
b. index=chatbot_logs sourcetype=user_queries status=failed | stats count by user |
where count > 3 in last 5min
2. Timp de Răspuns Ridicat:
a. Atunci când timpul de răspuns depășește un prag predefinit, poate indica
probleme de performanță
b. index=chatbot_logs sourcetype=response_times | stats avg(response_time) as
avgResponseTime | where avgResponseTime > 2
3. Monitorizarea Ratei de Eroare:
a. Ar putea fi create alerte pentru rate mari de eroare, indicând probleme potențiale
cu chatbot-ul.
b. index=chatbot_logs sourcetype=errors | stats count by error_type | where count >
10 in last 15min
4. Metrici de folosire:
a. Alertele pot fi configurate pentru activități neobișnuite, cum ar fi o creștere sau o
scădere bruscă a utilizării, care ar putea indica o problemă
b. index=chatbot_logs sourcetype=usage_logs | stats count by user | where count >
threshold in last 1h
5. Securitate
a. Alertele pentru activități suspecte, cum ar fi un utilizator care încearcă în mod
repetat să efectueze acțiuni pentru care nu are permisiunea, pot fi valoroase
pentru identificarea potențialelor probleme de securitate.
b. index=chatbot_logs sourcetype=security_logs action=denied | stats count by user
| where count > 3 in last 10min
6. Sănătatea sistemului:
a. Alertele pot fi configurate pentru valorile de sănătate ale sistemului, cum ar fi
utilizarea CPU, utilizarea memoriei, spațiul pe disc etc. Acestea pot ajuta la
identificarea momentului când sistemul este supus stresului sau când este nevoie
să fie mărite resursele.
b. index=system_logs sourcetype=cpu_usage | stats avg(cpu_usage) as
avgCpuUsage | where avgCpuUsage > 80

În concluzie, integrarea Splunk într-un chatbot SaaS poate îmbunătăți semnificativ


capacitatea de a monitoriza, analiza și securiza serviciul. Acesta oferă un instrument puternic
pentru înțelegerea interacțiunilor utilizatorilor și îmbunătățirea performanței chatbot-ului,
asigurând totodată că sistemul rămâne sigur și fiabil.

S-ar putea să vă placă și