Tiberiu Georgescu

Tiberiu Georgescu

Tiberiu Georgescu este asistent universitar şi asistent de cercetare în cadrul Departamentului de Informatică Economică al Academiei de Studii Economice din Bucureşti. În prezent, el este în curs de a obţine titlul de doctor în Ştiinţe Economice.

Principalele arii de interes sunt securitatea cibernetică, inteligenţa artificială şi IoT-ul. Tiberiu a publicat mai multe articole în jurnale şi conferinţe internaţionale recunoscute.

Alături de activitatea academică, Tiberiu este preocupat şi de mediul de afaceri, fiind unul dintre cei trei fondatori ai companiei Chess Coders (https://chesscoders.com/). Chess Coders este o companie tânără, orientată spre tehnologii software moderne și spre inovație. Proiectul Cybersecurity Analyzer, care a câstigat marele premiu al competiției PatriotFest 2018, este doar începutul; Chess Coders dorește să dezvolte cât mai multe soluții inovative care să contribuie la dezvoltarea societăţii.

Pe lângă preocupările din domeniul IT, Tiberiu este şi unul dintre cei mai bine cotaţi jucători de şah din România, deţinând titlul de Mare Maestru Internaţional. În anul 2018, a câştigat titlul de campion naţional, iar în 2019 pe cel de vicecampion.

Nume: Georgescu Tiberiu-Marian

Email: tiberiugeorgescu@ase.ro

Companie: Chess Coders SRL, www.chesscoders.com

Instituţie: Academia de Studii Economice din Bucureşti

Cybersecurity Analyzer

Cybersecurity Analyzer este o soluţie software inovatoare care analizează şi înţelege text din domeniul securităţii cibernetice. Soluţia este disponibilă la adresa www.cybersecurityanalyzer.com.

Având în spate o ontologie de aproximativ 10.000 de elemente, soluţia identifică aspectele relevante din domeniul securităţii cibernetice. Cybersecurity Analyzer este o soluţie de inteligenţă artificială. Asemănătoare cu un om, aceasta are capacitatea de a înţelege textul, având definite clase de concepte, relaţii şi entităţi.

Soluţia software are la bază algoritmi de Machine Learning, devenind mai performantă pe măsură ce este antrenată. Pornind de la rezultatelor obţinute, este extras feedback, iar modelul este automat îmbunătăţit. Cybersecurity Analyzer a fost deja antrenată cu peste 300.000 de cuvinte.

Cybersecurity Analyzer poate fi adaptată pentru depistarea şi interpretarea automată a discuţiilor dintre hackeri. De asemenea, soluţia poate fi utilizată ca instrument pentru informare rapidă şi învăţare atât pentru experţii din domeniul securităţii cibernetice, cât şi pentru orice persoană interesată să utilizeze calculatorul sau telefonul în siguranţă.

Aplicaţia înţelege şi analizează documente în limba engleză. Limba aleasă este engleza, datorită volumului imens de conţinut disponibil. În viitor, modelul poate fi adaptat şi pentru limba română.

Caracterul inovativ al proiectului este dat de:

  • abilităţile modelului de Machine Learning de a realiza analiza cognitivă a documentelor specifice domeniului securităţii cibernetice;
  • metodele şi tehnicile de antrenare ale modelului utilizate.

Spre deosebire de alte soluţii existente pe piaţă, Cybersecurity Analyzer se remarcă printr-o serie de aspecte precum:

  • capacitate ridicată de a identifica entităţi din domeniu securităţii cibernetice şi relaţiile dintre acestea, surprinzând doar aspectele relevante;
  • performanţele deosebite ale soluţiei dezvoltate în raport cu alte proiecte similare;
  • costuri de dezvoltare şi implementare foarte mici.

Arhitectura soluţiei Cybersecurity Analyzer

Figura 1 ilustrează arhitectura prototipului. Aceasta este structurată pe patru niveluri: (1) încărcarea datelor, (2) analiza datelor, (3) stocarea datelor şi (4) prezentarea datelor. Legăturile dintre niveluri sunt realizate prin intermediul unor API-uri de tip REST.

Figura 1: Arhitectura prototipului Cybersecurity Analyzer

La baza soluţiei Cybersecurity Analyzer se află componente de NLP adaptate pentru domeniul securităţii cibernetice. Acestea au fost implementate utilizând instrumente disponibile în IBM Cloud. Watson Knowledge Studio a fost utilizat pentru implementarea modelului bazat pe ontologii şi Machine Learning.

Pentru a utiliza soluţia vor fi parcurşi următorii paşi: (1) Navigare la www.cybersecurityanalyzer.com; (2) Încărcare document; (3) Vizualizare rezultate.

În cadrul interfeţei grafice pot fi încărcate documente de tip text. Figura 2 ilustrează un grafic obţinut la încărcarea documentului predefinit Web Application Security, disponibil pe site. În cadrul acestuia, au fost identificate 15 categorii de clase, cele mai multe entităţi fiind de tip Software (71). Prin selectarea (click-stângă) unei clase reprezentate în grafic, pot fi vizualizate toate entităţile corespunzătoare clasei respective. Figura 3  ilustrează cele 16 entităţi identificate pentru clasa Attack.

Figura 2: Imaginea de ansamblu cu privire la entităţile şi clasele identificate

Figura 3: Entităţi ale clasei Attack

Vizualizarea relaţiilor dintre entităţi poate fi realizată individual pentru fiecare frază. Figura 3 prezintă relaţiile existente în fraza: This vulnerability enables remote attackers to target other users of the application, potentially gaining access to their data, performing unauthorized actions on their behalf, or carrying out other attacks against them. Numeroase relaţii sunt identificate, fiind reprezentate sub forma unor săgeţi de la entitatea părinte către cea copil. Entităţile sunt colorate în funcţie de clasa din care fac parte, conform graficului prezentat în figura 2.

Figura 4: Reprezentarea relaţiilor dintre entităţi

Un exemplu de relaţie care reiese din figura 4 este: Remote attackers exploits vulnerability.

Modul în care Cybersecurity Analyzer identifică entităţile şi relaţiile dintre acestea poate fi asemănat cu mecanismele cognitive ale oamenilor. După ce modelul a atins maturitatea, autorul a constatat cu surprindere că prototipul reuşeşte să identifice corect entităţi pe care acesta nu le-a întâlnit anterior, în ciuda faptului că el a fost singura persoană care a antrenat modelul!

Analiza performanţelor

În vederea validării rezultatelor, s-au luat în considerare principalii indicatori de performanţă specifici domeniului Machine Learning: Scorul F1, Precizia şi Recuperarea (Recall) Indicatorii sunt calculaţi pentru cele două funcţionalităţi de bază ale soluţiei: recunoaşterea entităţilor (NER) şi extragerea de relaţii.

Scorul F1 poate fi interpretat ca o medie armonică a valorilor indicatorilor de precizie şi recuperare, încadrându-se în intervalul [0,1], unde 1 este valoarea maximă.

Legendă:

  • Adevărat Pozitiv se referă la elementele de securitate corect identificate în document.
  • Adevărat Negativ se referă la confuzii privind securitatea, excluse în mod corect.
  • Fals Pozitiv – false chestiuni de securitate, dar adnotate.
  • Fals Negativ – elemente de securitate care au fost scăpate la adnotarea automata.

Pentru ca modelul să fie considerat valid este necesară atingerea unei valori a scorului F1 la nivel agregat de cel puţin 0,5. Figura 5 ilustrează evoluţia scorurilor F1 la nivel agregat, atât pentru recunoaşterea entităţilor, cât şi pentru extragerea relaţiilor.

Figura 5: Evoluţia indicatorilor Scor F1, Precizie şi Recuperare

Aşa cum se poate observa, la nivel de recunoaştere a entităţilor, modelul a atins un nivel de performanţă relativ ridicat, încă de la primele versiuni testate, valorile scorului F1 fiind de aproximativ 0,7. Acest lucru poate fi pus pe seama faptului că primele seturi de antrenare, testare şi oarbe aveau o omogenitate mare, constând în documente de tip CVE. Ulterior documentele utilizate au fost diversificate, iar seturile de antrenare au conţinut structuri şi abordări diferite.

Pe baza evaluărilor efectuate pe cele 15 versiuni ale modelului, cele mai bune performanţe au fost obţinute de versiunea 1.13, unde Scorul F1 obţinut pentru NER este 0,81, iar pentru extragerea relaţiilor 0,58. Antrenarea ulterioară a modelului realizată după versiunea 1.13 nu numai că nu a crescut valorile indicatorilor de performanţă, ci din contră, le-a scăzut.

Comparaţie între rezultatele returnate de modelul dezvoltat şi cel general

În vederea ilustrării performanţelor obţinute cu ajutorul modelului de învăţare automată dezvoltat, este realizată o comparaţie între rezultatele returnate de modelul general, pus la dispoziţie de IBM şi modelul realizat pentru domeniul securităţii cibernetice.

A fost ales ca document de test un text compus din 10 CVE-uri, acesta este disponibil la adresa http://www.cybersecurityanalyzer.com/ sub numele de Common Vulnerabilities. Ambele figuri sunt capturi de ecran obţinute în urma utilizării interfeţei web Cybersecurity Analyzer. Figura 6 prezintă un grafic cu clasele şi numărul de entităţi identificate pentru fiecare clasă de modelul dezvoltat de autor, iar figura 7  prezintă aceleaşi tipuri de rezultate pentru modelul general, pus la dispoziţie de IBM Cloud.

    Figura 6: Rezultatele modelului dezvoltat              Figura 7: Rezultatele modelului general

 

Întrucât modelul general nu este specializat pentru domeniul securităţii cibernetice, acesta identifică doar aspecte generale, precum Locaţia, Organizaţii sau Companii.

Sinteza indicatorilor de performanţă pentru Cybersecurity Analyzer şi alte proiecte similare

Consultând literatura de specialitate au fost identificate patru lucrări în care sunt utilizate tehnologii similare pentru analiza cognitivă de text. Tabelul 1 ilustrează o comparaţie între proiectele prezentate în cele patru lucrări şi Cybersecurity Analyzer. Principala diferenţă la nivel de abordare constă în faptul că modelul dezvoltat conţine mult mai multe tipuri de clase şi de relaţii decât celelalte modele, acest aspect sporind semnificativ complexitatea.

Tabelul 1. Sinteza indicatorilor de performanţă pentru Cybersecurity Analyzer şi alte proiecte similare

Concluzii

Indicatorii de performanţă obţinuţi demonstrează validitatea modelului de Machine Learning dezvoltat, atât pentru funcţionalităţile de NER, cât şi pentru extragerea relaţiilor. Comparaţia cu proiectele asemănătoare identificate în literatura de specialitate ilustrează că Cybersecurity Analyzer prezintă performanţe superioare, având indicatorul F1 superior atât pentru NER, cât şi pentru extragerea relaţiilor.

Există un interes sporit în vederea dezvoltării de soluţii software de indexare semantică şi analiză cognitivă a documentelor despre securitate cibernetică scrise în limba română. Soluţiile descrise în această lucrare pot fi adaptate şi pentru limba română prin ajustarea ontologiilor şi antrenarea modelelor de învăţare automată cu seturi de documente specifice.

Se are în vedere proiectarea şi dezvoltarea de soluţii echivalente, dar pentru alte domenii, prin păstrarea unor arhitecturi similare şi dezvoltarea de mini-ontologii şi modele de învăţare automată personalizate.

Partajează