SecOpen: Säkrande av Öppna Utvecklingsplattformar
Forskningsprojekt, 2012
– 2015
Vi bevittnar en revolution i hur människor kommunicerar med varandra, genom exempelvis sociala medier såsom Facebook eller Twitter, smartphones som iPhone eller Android och dylikt. Framgången för denna nya era kommer delvis från möjligheten att tillhandahålla tredjeparts program till slutanvändaren. Dessa program, utvecklade av oberoende programmerare och företag, bidrar med extra funktionalitet. IT-industrin verkar skifta mot en modell baserad på öppna utvecklingsplattformar, där öppen innebär att så gott som vem som helst kan utveckla ett program för att berika användarupplevelsen. Trots att fördelarna med detta tillvägagångssätt är uppenbara, förenklar modellen också närvaron av säkerhetshot, d.v.s. vem som helst kan potentiellt utveckla och med stor spridning distribuera skadlig programvara. Tyvärr ger de säkerhetsmekanismer som existerar i dagens utvecklingsplatformar otillräckligt skydd, med avseende på sekretess och integritet, av användarens data. Språkbaserad informationsflödessäkerhet, ett forskningsområde baserat på en fusion av programspråkstekniker och datasäkerhet, framstår som en passande teknologi för att säkra öppna utvecklingsplattformar. Denna teknologi kan följa hur information flödar inuti program och upptäcka icke tillåten hantering av informationen, för att på så sätt bevara dess sekretess och integritet. Denna ansökan ämnar utarbeta grundläggande principer tänkta att fungera som en bas för framtida verktyg för att upprätthålla säkerhet. Mer specifikt utvecklar vi fyra idéer som tillsammans underlättar adaptionen av denna teknologi på öppna utvecklingsplattformar. Till att börja med föreslår vi en enkel märkningsmodell för att lägga till säkerhetspolicys till data i plattformar med ömsesidig misstro. Märkningsmodellen behöver formaliseras och det måste bevisas att den uppfyller den förväntade strukturen. För det andra interagerar de allra flesta av dagens program med databaser. Med detta i åtanke föreslår vi hur man kan applicare säkerhetspolicys på värden lagrade i databaser så att förändringar i säkerhetspolicyn på ett enkelt sätt kan återspeglas. För det tredje utformar vi en mekanism som kan upprätthålla säkerhetspolicys knutna till data och som också avvisar färre oskyldiga program jämfört med traditionella metoder inom forskningsområdet för informationsflödesanalys. Vi kommer att bevisa att upprätthållningsmekanismen är korrekt. Slutligen, för att utvärdera våra teoretiska resultat, föreslår vi utveckling av prototyper i form av säkerhetsbibliotek. Att bidra med säkerhet genom programmeringsbibliotek låter utvecklaren fritt välja ett av de programspråk för vilket ett sådant bibliotek finns, vilket ökar sannolikheten att den programspråkbaserade teknologin tillämpas. Vi kommer att utföra vår forskning genom att tillämpa formell semantik, typsystem, omskrivningstekniker, samt olika former av statisk analys. Genom att lägga den formella grunden för de fyra idéer som presenterats ovan, samt bevisa dess korrekthet, tror vi att det är möjligt att säkra öppna utvecklingsplattformar inom en nära framtid.
Deltagare
Alejandro Russo (kontakt)
Programvaruteknik
Finansiering
Vetenskapsrådet (VR)
Projekt-id: 2011-6220
Finansierar Chalmers deltagande under 2012–2015