Ph.d.-studerende Jacob Harer (til venstre) og forskningsprofessor Peter Chin arbejdede sammen med forskere fra Draper om at udvikle teknologi, der kunne finde den slags softwarefejl, som ofte udnyttes af hackere. Kredit:Jackie Ricciardi
Efterhånden som mængden af digital information i virksomhedens netværk fortsætter med at vokse, så vokser antallet af cyberangreb, og deres omkostninger. En leverandør af cybersikkerhed, Juniper Networks, anslår, at omkostningerne ved databrud på verdensplan vil nå op på 2,1 billioner USD i 2019, omkring fire gange så meget som omkostningerne ved brud i 2015.
Nu, to dataloger fra Boston University, arbejder med forskere hos Draper, en ikke-for-profit ingeniørløsningsvirksomhed beliggende i Cambridge, har udviklet et værktøj, der kan gøre det sværere for hackere at finde vej ind i netværk, hvor de ikke hører hjemme.
Peter Chin, en forskningsprofessor i datalogi og tilknyttet Rafik B. Hariri Institute for Computing and Computational Science &Engineering, og Jacob Harer, en fjerde års ph.d. studerende i datalogi, arbejdet sammen med Draper-forskere om at udvikle teknologi, der kan scanne softwaresystemer for den slags sårbarheder, som ofte bruges af cyberkriminelle til at få adgang. Værktøjet, som brugte dyb læring til at træne neurale netværk til at identificere mønstre, der indikerer softwarefejl, kan scanne millioner af linjer kode på få sekunder, og vil en dag have evnen til at rette de kodefejl, den opdager.
Chin siger ideen til projektet, kaldet DeepCode og finansieret af DARPA (Defense Advanced Research Projects Agency) MUSE-programmet og Air Force Research Laboratory, kom til ham for fire år siden, mens han holdt en forelæsning til sin maskinlæringsklasse (CS 542). Chin beskrev gennembrudsresultatet for forskere ved Google og Stanford University, som brugte deep learning til at lære et neuralt netværk at spotte almindelige mønstre i millioner af billeder og bruge mønstrene til at identificere katte i YouTube-videoer. Han spekulerede på, om et lignende netværk kunne mine store data fra open source-programmer og finde mønstre, der indikerer softwaresårbarheder.
Chin vidste, at det var muligt at repræsentere et softwareprogram visuelt, som en kontrolflowgraf. Han vidste også, at der var et bibliotek med mere end 10, 000 almindelige kodefejl, kaldet CWE (Common Weakness Enumerations), som var blevet sammensat af National Institute of Standards and Technology (NIST). Hvis disse almindelige kodningsfejl i NIST's CWE kunne præsenteres som et billede, ræsonnerede han, et neuralt netværk kunne tænkes at blive trænet på dem til at finde fælles mønstre for sårbarheder, ligesom Stanfords neurale netværk lærte at identificere fælles træk ved katte.
Med den første inspiration, Hage, som på det tidspunkt var chefforsker i beslutningssystemer ved Draper samt professor ved BU, var med til at sikre finansiering til projektet fra DARPA. Han, Harer (en Draper Fellow ved BU), og kolleger hos Draper begyndte at teste hans antagelser på computerprogrammer baseret på open source C- og C++-funktioner.
Siden starten af projektet i 2014, forskerne har indset, at de havde brug for mere end blot et billede fra kontrolflowgrafen for at spotte sårbarheder. De har siden forbedret deres teknikker, tilføje yderligere funktioner, såsom en parset repræsentation for kode svarende til den, der bruges af moderne compilere, og de har vedtaget netværk, der almindeligvis bruges til naturlig sprogbehandling. Deres forskning, som Chin siger illustrerer løftet om sådanne universitets-/industripartnerskaber, er nu beskrevet i to artikler, "Automatisk sårbarhedsdetektion i kildekode ved hjælp af dyb repræsentationslæring, " som er blevet accepteret på IEEE ICMLA 2018, og "Lære at reparere softwaresårbarheder med generative kontradiktoriske netværk, ", som blev accepteret ved 2018 NIPS.
Chin siger DeepCodes anden funktion, rettelse af kodningsfejl, er stadig et fungerende projekt. "Det er meget svært, " siger han. "At rette dårlig software er meget som at rette dårlig grammatik. Nogen kunne sige 'jeg gik på markedet', når de skulle have sagt 'jeg gik på markedet'. Du træner netværket i at identificere det forkerte mønster og erstatte det med det rigtige mønster. Det er i hvert fald grundtanken."
Harer siger, at et problem er, at forskere ikke ved nok om, hvordan maskinerne genkender sårbarheder. "Disse neurale netværksmodeller er meget sorte boksmodeller, " siger han. "De er trænet i enorme mængder data, og vi håber på en måde, at de kan finde ud af, hvad der foregår. Dette er et problem med deep learning generelt."
Hage, Harer, og Draper-forskere vil fortsætte med at arbejde på DeepCode, og planlægger at tilbyde en version, der kan implementeres på en bærbar computer og sendes til virksomheder, hvoraf de fleste er tilbageholdende med at dele deres kode med eksterne parter, selv for en undersøgelse, der kunne spare dem for titusindvis af millioner af dollars.
Sidste artikel14-årige FaceTime-fejlopdagelse kan rasle Apple
Næste artikelDirekte afkølet elmotor lavet af polymermaterialer