SAFE

A szoftverek különböző szempontok szerinti vizsgálata közül talán az egyik legfontosabb a megbízhatóság kérdése. Egy megbízható szoftvert biztonságosnak tekintünk, amennyiben a kibertámadásoknak ellenáll. Többféleképpen vizsgálhatjuk a szoftverek biztonságát, azonban általánosan elmondható, hogy minél előbb fedezzük fel a hibát, annál olcsóbb annak a javítása. Ezért a statikus elemző módszerek, melyek a program forráskódja alapján, annak futtatása nélkül is képesek tulajdonságokat vizsgálni, segítségünkre lehetnek. 

A forráskód szisztematikus vizsgálatával felderíthetjük azokat a pontokat a forráskódban, melyek potenciálisan biztonsági hibához vezethetnek, azaz sérülékennyé teszik a kódot. A forráskód vizsgálatához statikus elemzési módszereket használunk, melyek lehetővé teszik a forráskód automatikus, hatékony ellenőrzését. Elemzésink nyelvspecifikusak, az Erlang programozási nyelvhez készültek, a RefactorErl keretrendszerre építve.

Eredmények

Feltártuk az Erlang programozási nyelven írt szoftverek biztonsági sérülékenységi fajtáit. Elemzéseket definiáltunk az Erlang programokban előforduló biztonsági sérülékenységek detektálására.  Ezeket az elemzéseket megvalósítottuk a RefactorErl statikus elemző és transzformáló keretrendszerben. Az sérülékenységi elemzések, az ellenőrzők („checkerek”) futhatnak különálló módon, automatizáltan a teljes forráskódra, de lehetőséget biztosítunk a célzott keresésre is. Ehhez az ellenőrzőket integráltuk a RefactorErl szemantikus lekérdező nyelvébe. 

Erre építve, az Erlang Solutions-zel közösen létrehoztunk egy olyan szolgáltatást, mely során az Erlang/Elixir szoftverek sérülékenységi elemzését végezzük el és egy audit jelentést adunk a felhasználóknak az eredményről: Security Audit for Erlang/Elixir

Használata növelheti a szoftver megbízhatóságát 

Segít a biztonsági sérülékenységek felderítésében

Csökkenti a sérülékenységek okának azonosítására fordított időt 

Támogatja a code-review folyamatát

Automatizáltan és célzottan is használható