intel / intel/confidential-computing.sgx.sdk

Is there any way to restart broken Enclave?

Open
#113 15 comments 0 reactions 0 assignees View on GitHub
question
Dominant language
C++
Stars
2
Forks
3
PR merge metrics
No merged PRs in 30d

Description

When an exception occurs in Enclave, exception handler will be called. However, we want to close the broken enclave, and start a new enclave, it seems has no valid method. 1) If the exception make process killed, then we can do nothing. 2) If let exception handler return, then control flow go back to error position.

I know we can adjust rip address in in-Enclave handler registered in `sgx_register_exception_handler`, but it only available on SGXv2 when MiscSelect is open. I want a method also avaliable for SGXv1.

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the exception flow around sgx_register_exception_handler and the distinction between SGXv1 and SGXv2 described in the issue. Determine whether a supported way exists to close a broken enclave and start a replacement after an exception on SGXv1; the issue is done when that behavior or limitation is clearly established.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
security
Issue type
Feature
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.