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

Exception handler detection that is independent of address ranges #11

Open
Washi1337 opened this issue Apr 6, 2020 · 0 comments
Open
Labels
control-flow Issue related to the control flow analysis modules of Echo. enhancement New feature or request

Comments

@Washi1337
Copy link
Owner

Washi1337 commented Apr 6, 2020

Summary:
Currently, Echo can only automatically detect and subdivide a control flow graph into exception handler regions if it is provided a collection of address ranges. This makes the assumption that nodes within a single exception handler region are close together in memory. That is, every node within a protected region is within a certain starting and ending address. This is true for platforms such as CIL and the JVM, but this might not be true for others, like x86 or custom virtual machines. The suggestion is to add support for automatic subdivision of a control flow graph through other means, such as a collection of nodes instead.

Suggestions:

  • Add an overload to DetectExceptionHandlerRegions, taking a collection of exception handler info objects, where each info object consists of the set of protected nodes, as well as the set of nodes making up the handler region.

    In the case that sets overlap, Echo is then expected to nest EHs based on which sets of nodes are fully enclosing other sets of nodes.

  • An even more advanced version of DetectExceptionHandlerRegions could just accept a collection of exception handler info objects, where each object only contains the starting node of the protected region, as well as the start of the handler node. Echo is then expected to automatically infer the full range of nodes that are included in the regions automatically (e.g. by dominator analysis).

@Washi1337 Washi1337 added enhancement New feature or request control-flow Issue related to the control flow analysis modules of Echo. labels Apr 6, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
control-flow Issue related to the control flow analysis modules of Echo. enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant