Vi presenterar runtime-verktyg för att hjälpa Linux-communityn att verifiera att Linux Security Modules (LSM)-ramverket är korrekt. LSM-ramverket består av en uppsättning behörighetskrokar som infogas i Linuxkärnan för att göra det möjligt att utföra ytterligare behörigheter (t.ex. för obligatorisk åtkomstkontroll). Jämfört med systemanropsinterposition har behörighet inom kärnan både säkerhets- och prestandafördelar, men det är svårare att verifiera att placeringen av LSM-krokarna säkerställer att alla kärnans säkerhetskänsliga operationer är auktoriserade. Vi har undersökt både statiska och runtime analystekniker för denna verifiering, och har funnit dem vara komplementära. Statisk analys är mer komplex att genomföra och tenderar att generera fler falska positiva, men täckning av alla typsäkra genomförandevägar är möjlig. Runtime analys saknar kod och indata täckning av statisk analys, men tenderar att vara enklare att samla in användbar information. Den största förenklingsfaktorn i vår körtidskontrollmetod är att vi kan utnyttja det faktum att de flesta av LSM-krokarna är rätt placerade för att identifiera felplacerade krokar. Våra verktyg för kontroll av körtid samlar in de nuvarande LSM-behörigheterna och hittar inkonsekvenser i dessa behörigheter. Vi beskriver vårt tillvägagångssätt för att utföra runtime-verifiering, utformningen av verktygen som implementerar detta tillvägagångssätt och de onormala situationer som finns i en LSM-patched Linux 2.4.16-kärna.
I REF analyseras riktigheten hos LSM-krokars placering i Linuxkärnan.
Runtime verification of authorization hook placement for the linux security modules framework
{'venue': "CCS '02", 'journal': None, 'mag_field_of_study': ['Computer Science']}