Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Security mitigations and hardening #54

Closed
2 of 4 tasks
mkow opened this issue Jul 5, 2021 · 6 comments
Closed
2 of 4 tasks

Security mitigations and hardening #54

mkow opened this issue Jul 5, 2021 · 6 comments

Comments

@mkow
Copy link
Member

mkow commented Jul 5, 2021

Ideas for security mitigations and "bug prevention"

Mitigations/sanitizations

Bug detection

  • Run tests with sanitizers in CI (see Integration with sanitizers #19).
  • Run some linters in CI. Problem: most have high false-positive ratios.
  • Implement __user-like specifier to check for TOCTOU bugs during compilation (gramineproject/graphene#635; most relevant for OCALLs).
@boryspoplawski
Copy link
Contributor

boryspoplawski commented Jul 12, 2021

The TOCTOU part is already solved, see the last comment in #55.

@mkow
Copy link
Member Author

mkow commented Jul 12, 2021

Right, I updated that point.

@dimakuv
Copy link

dimakuv commented Jul 22, 2021

From what I understand, only the first item ("We need better sanitization of OCALL arguments") must be resolved for the release (so priority P0 or P1). The rest (sanitizers/linters) is to be added after the release (so priority P2). For this reason, I'm marking this whole issue as P2.

Notice that gramineproject/graphene#1236 linked to the first item is already marked as P0.

@mkow
Copy link
Member Author

mkow commented Jul 22, 2021

Yup. Although the OCALL thing is a bit of an unknown area, I think all obviously dangerous places are sanitized already, only some more subtle ones are left. But we should resolve it rather sooner than later to not risk having security vulns. But if gramineproject/graphene#1236 is P0 then this can stay at P2.

@mkow mkow transferred this issue from gramineproject/graphene Sep 15, 2021
@mkow mkow mentioned this issue Oct 8, 2021
11 tasks
@dimakuv
Copy link

dimakuv commented Mar 9, 2023

I think we can close this issue. @mkow If you think that some parts are still relevant, I suggest to create a new issue then.

@dimakuv dimakuv closed this as completed Mar 9, 2023
@mkow
Copy link
Member Author

mkow commented Mar 13, 2023

Most of them were solved or brought to a state where further improvements would yield only small gains, so I'm fine with closing it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants