ARMmbed / ARMmbed/uvisor

RTOS is running with uVisor privileges

Open
#235 2 comments 0 reactions 0 assignees View on GitHub
enhancement future uvisor RTOS support issue
Dominant language
C
Stars
135
Forks
72
PR merge metrics
No merged PRs in 30d

Description

When we integrated uVisor and an RTOS in the 'dev' branch, we did not yet de-privilege the RTOS. All RTOS-specific code, like mutexes, the scheduler, timers, and so forth currently run with uVisor privileges. Some uVisor-to-RTOS glue code in uvisor-lib also runs with uVisor privileges. This is not final and we must fix it.

Ideally, no code would run privileged outside the reproducibly built uVisor binary. This enables us to make security promises because all privileged code would run inside a the reproducible uVisor binary.

Furthermore, removing uVisor privileges from the RTOS will reduce the attack surface of systems built with uVisor.

Contributor guide

Open the contributing guide

Research direction

Review the RTOS integration in the dev branch, including the RTOS-specific code and uVisor-to-RTOS glue in uvisor-lib. First map which scheduler, mutex, timer, and glue paths execute with uVisor privileges. Done means privileged execution is confined to the reproducibly built uVisor binary and the integration still operates correctly.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
operating-systems, security
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.