Haitallisen JavaScript-koodin tunnistaminen koneoppimismenetelmiä käyttäen
Tekijät
Päivämäärä
2018Tekijänoikeudet
Julkaisu on tekijänoikeussäännösten alainen. Teosta voi lukea ja tulostaa henkilökohtaista käyttöä varten. Käyttö kaupallisiin tarkoituksiin on kielletty.
Tutkimuksessa tutkitaan haitallisen JavaScript-ohjelmakoodin tunnistamista koneoppimismenetelmin opetettujen luokittelijoiden avulla. Tutkimusaiheen valintaan vaikuttivat seuraavat kolme tekijää. Tekijöistä ensimmäinen oli JavaScript-ohjelmointikielen rooli yhtenä keskeisimmistä, edelleen suosiotaan kasvattavista web-teknologioista. Toisena tekijänä oli JavaScriptin käytön yleistyminen tietoturvallisuutta vastaan suoritetuissa hyökkäyksissä. Kolmantena tekijänä puolestaan oli koneoppimismenetelmien roolin korostuminen haittaohjelmien tunnistamisessa. Teoreettiselta taustaltaan tutkimus liittyy haitallisen ohjelmakoodin staattiseen analyysiin ja haitallisen ohjelmakoodin tunnistamiseen koneoppimismenetelmin.
Tutkimuksessa keskitytään erityisesti tutkimaan luokittelijan opettamisessa käytettävien ominaispiirteiden ominaisuuksien ja opettamiseen valitun koneoppimismenetelmän vaikutusta luokittelijoiden suoriutumiseen haitallisten ja ei-haitallisten JavaScript-tiedostojen luokittelusta väärien positiivisten luokittelujen osuuden, väärien negatiivisten luokittelujen osuuden ja luokittelun tarkkuuden suhteen. Tutkimuksen tulosten tuottamiseen käytetään tilastollisia menetelmiä ja silmämääräistä analyysia. Käytettyinä tilastollisina menetelminä ovat Kruskal-Wallisin testi, Dunnin testi ja keskiarvovertailu. Tutkimuksessa huomataan, että ominaispiirteiden ominaisuuksilla ja valitulla koneoppimismenetelmällä on yleisesti vaikutusta luokittelijoiden suoriutumiseen JavaScript-tiedostojen luokittelusta. Tutkimuksessa saadut tulokset ovat yleisesti samankaltaisia muiden samaan aihepiiriin liittyvien tutkimusten tulosten kanssa väärien positiivisten luokittelujen osuuden, väärien negatiivisten luokittelujen osuuden ja luokittelun tarkkuuden suhteen.
Tutkimuksen tuloksista on mahdollista tehdä ainakin seuraavat kolme johtopäätöstä. Ensimmäiseksi, luodessa haitallisen JavaScript-koodin tunnistamiseen erikoistuneita luokittelijoita, kannattaa parhaan suorituskyvyn saavuttamiseksi, kokeilla eri mahdollisuuksia ainakin opetukseen ja testaamiseen käytettävien tiedostojen määrissä, käytettävien haitallisten tiedostojen määrässä opetusaineistossa, käytettävissä ominaispiirteissä, ominaispiirteiden valintaan käytettävissä menetelmissä ja käytettävässä koneoppimismenetelmässä. Toiseksi, pelkkien JavaScript-ohjelmakoodin staattisesta esitysmuodosta eristettyjen n-grammien avulla näyttää olevan mahdollista opettaa haitallisen JavaScript-koodin tunnistamiseen erikoistuneita luokittelijoita, joiden suorituskyky kilpailee monimutkaisempien ominaispiirteiden avulla opetettujen luokittelijoiden kanssa. Kolmanneksi, jo suhteellisen pienillä tiedostomäärillä näyttää olevan mahdollista opettaa JavaScript-koodin tunnistamiseen erikoistuneita luokittelijoita, joiden suorituskyky kilpailee suuremmilla aineistoilla opetettujen luokittelijoiden kanssa.
...
Asiasanat
Metadata
Näytä kaikki kuvailutiedotKokoelmat
- Pro gradu -tutkielmat [29556]
Samankaltainen aineisto
Näytetään aineistoja, joilla on samankaltainen nimeke tai asiasanat.
-
Performance analysis of obfuscated JavaScript
Häyrynen, Mikko (2022)Obfuskaatiolla pyritään muuntamaan lähdekoodi lukukelvottomaan muotoon siten, että sen semantiikka säilyy muuttumattomana. Tämä tutkielma kartoittaa erilaisia JavaScript-ohjelmointikielessä käytettyjä obfuskaatiomenetelmiä. ... -
Factors and actors leading to the adoption of a JavaScript framework
Pano, Amantia; Graziotin, Daniel; Abrahamsson, Pekka (Kluwer Academic Publishers, 2018)The increasing popularity of JavaScript has led to a variety of JavaScript frameworks that aim to help developers to address programming tasks. However, the number of JavaScript frameworks has risen rapidly to thousands ... -
JavaScript-sovelluskehyksillä toteutettujen asiakassovellusten ylläpidettävyyden vertailu
Tarvainen, Seppo (2018)JavaScript-sovelluskehysten käyttö helpottaa asiakaspuolen sovelluskehitystä ja parantaa sovelluksen ylläpidettävyyttä. Oikean työkalun valitseminen on ohjelmoijalle kuitenkin haastava tehtävä teknologioiden nopean ... -
JavaScript ja takaisinkutsut suomalaisilla verkkosivuilla : takaisinkutsumenetelmän yleisyys ja ongelmat
Tarvainen, Riia (2016)JavaScript on hyvin paljon käytetty ohjelmointikieli ja verkkosivuilla vallitsevassa asemassa. JavaScript-kieliset ohjelmat sisältävät kuitenkin paljon virheitä. Verkkokeskusteluissa ”takaisinkutsuhelvetti”, eli tilanne ... -
JavaScript : ennen ja nyt
Aho, Petteri (2015)JavaScript on saanut kritiikkiä hitaudesta ja lisäksi se on kärsinyt maineesta lelukielenä, joka on hyödyllinen vain suhteellisen yksinkertaisiin tehtäviin. Aikaisemmin web-sivut oli rakennettu pelkän HTML:n avulla ...
Ellei toisin mainittu, julkisesti saatavilla olevia JYX-metatietoja (poislukien tiivistelmät) saa vapaasti uudelleenkäyttää CC0-lisenssillä.