Skip to content

Write about mitigations for branch predictor-based side channels #203

@kbeyls

Description

@kbeyls

After a bit of investigation, it seems the following are mitigations that could be worthwhile to briefly discuss in the book:

  • (SW/HW) Flushing branch state when switching between sandboxes/distrusting contexts.
  • (HW) partitioning branch predictor "real estate", so it doesn't get shared.
  • (SW): remove branches, e.g. if-conversion - especially the branches that are dependent
    on secret data. algorithmically or through if-conversion.
  • (HW): randomize branch predictor indexing, i.e. how branches alias.
  • (HW/SW): Prevent predicting sensitive branches.
  • (SW): obfuscating a set of conditional branches by converting them into a single indirect branch.
    Zigzagger, see [@lee2017].

Metadata

Metadata

Assignees

No one assigned

    Labels

    contentNew content for the book

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions