RAG-pohjainen järjestelmä kyberturvallisuusuutis- ja haavoittuvuusilmoitusten tuottamiseksi
Safdari, Hasan (2025)
Safdari, Hasan
2025
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2025111828410
https://urn.fi/URN:NBN:fi:amk-2025111828410
Tiivistelmä
Opinnäytetyössä kehitettiin RAG-pohjainen järjestelmä
kyberturvallisuusuutisten ja ohjelmistohaavoittuvuuksien käsittelyyn. Järjestelmä hakee tietoa eri lähteistä ja tuottaa niistä lyhyitä tiivistelmiä. Lisäksi se voi lähettää ilmoituksia, kun haavoittuvuuksia löytyy käytetyistä ohjelmista. Tavoitteena on helpottaa asiantuntijoiden työtä ja nopeuttaa reagointia uusiin uhkiin.
Järjestelmä hyödyntää Retrieval-Augmented Generation (RAG) -menetelmää, jossa yhdistetään suurten kielimallien (LLM) tuottokyky ulkoisiin tietolähteisiin, kuten uutissivustoihin ja haavoittuvuustietokantoihin. Toteutuksessa käytettiin Python ohjelmointikieltä ja sen kirjastoja, kuten FastAPI, PyTorch ja BeautifulSoup, sekä PostgreSQL-tietokantaa pgvector-laajennuksella upotettujen tekstiesitysten tallennukseen. Järjestelmä koostuu useista moduuleista, jotka vastaavat uutisten keruusta, tiedon poiminnasta, tiivistämisestä ja automaattisten hälytysten muodostamisesta. Lisäksi mukana on RAG-chat-ominaisuus, jonka avulla käyttäjä voi kysyä ajankohtaisia kysymyksiä kyberturvallisuuteen liittyen ja saada vastauksia järjestelmän tietokannasta.
Prototyyppiä testattiin arvioiden sen tiivistysten laatua, hälytysten tarkkuutta ja suorituskykyä verrattuna manuaalisiin prosesseihin. Tulokset osoittivat, että RAG-pohjainen lähestymistapa paransi tiedon ajantasaisuutta ja vähensi asiantuntijoiden työkuormaa. Järjestelmä osoittautui tehokkaaksi työkaluksi erityisesti silloin, kun tarvitaan nopeaa ja luotettavaa tietoa uusista uhkista. Testausvaiheen perusteella järjestelmä saavutti hyvän tarkkuuden haavoittuvuuksien tunnistamisessa ja tarjosi selkeitä etuja perinteisiin menetelmiin verrattuna.
kyberturvallisuusuutisten ja ohjelmistohaavoittuvuuksien käsittelyyn. Järjestelmä hakee tietoa eri lähteistä ja tuottaa niistä lyhyitä tiivistelmiä. Lisäksi se voi lähettää ilmoituksia, kun haavoittuvuuksia löytyy käytetyistä ohjelmista. Tavoitteena on helpottaa asiantuntijoiden työtä ja nopeuttaa reagointia uusiin uhkiin.
Järjestelmä hyödyntää Retrieval-Augmented Generation (RAG) -menetelmää, jossa yhdistetään suurten kielimallien (LLM) tuottokyky ulkoisiin tietolähteisiin, kuten uutissivustoihin ja haavoittuvuustietokantoihin. Toteutuksessa käytettiin Python ohjelmointikieltä ja sen kirjastoja, kuten FastAPI, PyTorch ja BeautifulSoup, sekä PostgreSQL-tietokantaa pgvector-laajennuksella upotettujen tekstiesitysten tallennukseen. Järjestelmä koostuu useista moduuleista, jotka vastaavat uutisten keruusta, tiedon poiminnasta, tiivistämisestä ja automaattisten hälytysten muodostamisesta. Lisäksi mukana on RAG-chat-ominaisuus, jonka avulla käyttäjä voi kysyä ajankohtaisia kysymyksiä kyberturvallisuuteen liittyen ja saada vastauksia järjestelmän tietokannasta.
Prototyyppiä testattiin arvioiden sen tiivistysten laatua, hälytysten tarkkuutta ja suorituskykyä verrattuna manuaalisiin prosesseihin. Tulokset osoittivat, että RAG-pohjainen lähestymistapa paransi tiedon ajantasaisuutta ja vähensi asiantuntijoiden työkuormaa. Järjestelmä osoittautui tehokkaaksi työkaluksi erityisesti silloin, kun tarvitaan nopeaa ja luotettavaa tietoa uusista uhkista. Testausvaiheen perusteella järjestelmä saavutti hyvän tarkkuuden haavoittuvuuksien tunnistamisessa ja tarjosi selkeitä etuja perinteisiin menetelmiin verrattuna.
