MESTERSÉGES INTELLIGENCIÁVAL A MALWARE-KÉSZÍTŐK ELLEN

A mesterséges intelligenciára támaszkodó módszer segítségével könnyebb lesz azonosítani a kártékony kódok íróit, de plágium-gyanú alkalmával is jó szolgálatot tehet az újítás.
Víg Ferenc (J.o.k.e.r)
Víg Ferenc (J.o.k.e.r)
2018. aug. 14. 8:00
Mesterséges intelligenciával a malware-készítők ellen

A programozóknak rendszerint sajátos stílusuk van, már ami a kód-formázását és a különböző technikai megoldásokat illeti, de ezt a stílust elég nehéz felismerni, főleg, ha az alkotó direkt valaki más stílusát próbálja másolni. A Wired információi szerint hamarosan könnyebb lesz azonosítani a különböző programok íróit, ehhez pedig néhány kódrészlet is elegendő lesz, így a kártékony kódok íróit könnyebben le lehet majd buktatni, valamint azokat is, akik jogtalanul emelnek át kódrészleteket egy program forráskódjából a saját alkalmazásukéba.

A kutatók a mesterséges intelligenciát hívták segítségül a probléma megoldásához, ami nyers kódban és lefordított binárisokban egyaránt hatékonyan fel tudja ismerni a kód készítőjét. Ehhez természetesen arra is szükség van, hogy rendelkezzenek olyan kódrészletekkel, amelyek biztosan az adott programozótól származnak, csak úgy lehet sikeres az azonosítás.

A megfelelően tréningezett neurális hálózat képes felismerni az adott programozók munkáját a kód struktúrája alapján, ehhez természetesen a programozótól származó mintakódokat használja. A sikeres azonosításhoz nem szükséges több ezer sornyi mintát használni, az esetek többségében elég lehet néhány kódrészlet is.

A Google Code Jamre támaszkodó tesztben a mesterséges intelligenciára támaszkodó technológia viszonylag pontosan megállapította, mely programkódok mely programozóhoz tartoznak, de azért bőven hibázott is. A mintakészlet összesen 600 programozó kódjaiból állt össze, mindegyiktől 8 példakódot használtak fel, az azonosítás pedig 83%-os hatásfokkal történt, ami alapvetően nem rossz, de még van hova fejlődni.

A technológia persze így is nagy segítség lehet egy-egy vizsgálat alkalmával, hiszen segítségével könnyebben és gyorsabban meg lehet majd állapítani, hogy a különböző kártékony kódok mögött mely programozó, illetve programozó-csapat bújik meg. A plágium-gyanúnak is sokkal könnyebben és eredményesebben utána lehet járni, ugyanis a mesterséges intelligencia nagyon gyorsan ki tudja szűrni az azonos programrészeket és az azonos programozói stílust is hamar felismeri, így nehezebb lesz a programkódok illegális átemelése. Ez mindenképpen jó hír.

A pozitívumok mellett azonban a negatívumokról is érdemes említést tenni. Az új módszernek köszönhetően az anonimitás mindenképpen csorbát szenved, hiszen a nyílt munkák mögött álló programozókat is könnyebb lesz azonosítani, hiába vált az ember felhasználói fiókokat és hiába törekszik a „nyomok eltűntetésére”. Tehát az algoritmus végleges változatát úgy kell majd használniuk az illetékeseknek, hogy egészséges egyensúly maradjon a biztonság és az esetenként szükséges anonimitás között. Hogy ezt sikerül-e kivitelezni? Idővel kiderül.

Hírlevél feliratkozás
A feliratkozással elfogadom a Felhasználási feltételeket és az Adatvédelmi nyilatkozatot.

5 hozzászólás

A komment írásához előbb jelentkezz be!
FELULET
FELULET
2018. aug. 14. 8:16
#1

"a kód struktúrája alapján, "

XD
Mer arról híresek a vírus fejlesztők, hogy kiadják a forráskódot... meg még ha valahogy meg is szereznék, gl hf egy noname embert megtalálni csak kód alapján a 7,4milliárból...

Ez csak egyszerű marketing fogás, semmi több. Próbálják eladni a mesterséges "inteligenciát"....

BiroAndras
BiroAndras
2018. aug. 15. 11:04

Megint olyan dologban próbálsz okosabb lenni, amihez nem értessz.
A fordító csak a legalacsonyabb szinten rendezi át a kódot, egy lépéssel feljebb már megmarad a kód struktúrája. Ezen kívül egy rakás más jellegzetességgel is lehet dolgozni. Például milyen könyvtárakat használ, és azon belül milyen osztályokat. A C++-hoz iszonyú mennyiségű könyvtár van, és maga a nyelv is rengeteg különböző megoldást kínál ugyanazokra a problémákra. És gyakorlatilag minden más népszerű nyelv futás közben készíti el a végleges kódot, vagyis a program fájlban sokkal több megmarad a forráskód struktúrájából.
Arról nem is beszélve, hogy sok kártevő szkript nyelveket használ, ahol egyáltalán nincs bináris.

Vissza az oldal tetejére