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

Intercomponent interface fuzzing harness #1406

Open
2 of 7 tasks
bennetyee opened this issue Feb 2, 2019 · 1 comment
Open
2 of 7 tasks

Intercomponent interface fuzzing harness #1406

bennetyee opened this issue Feb 2, 2019 · 1 comment
Labels
c:security Category: security sensitive epic Epic (costed tracking issue)

Comments

@bennetyee
Copy link
Contributor

bennetyee commented Feb 2, 2019

Tracking epic issue for internal testability

Goals

We need to have code testing/fuzzing mechanisms in place before we can efficiently do security audits beyond code inspection.

Details

Implement fuzzing harness for interfaces between components. Build mocks for dependent interfaces of the component under test. Each test failure should turn into a unit test / regression test.

Linked Issues

@bennetyee bennetyee added the epic Epic (costed tracking issue) label Feb 2, 2019
@kostko kostko added the c:security Category: security sensitive label Oct 9, 2019
@kostko
Copy link
Member

kostko commented Oct 9, 2019

Listing some interfaces that we should start fuzzing:

  • Consensus transactions processed by the ABCI app.
    • Staking.
    • Registry.
    • Roothash.
  • Storage gRPC protocol (exposed by storage nodes).
  • EnclaveRPC (used to communicate between enclaves, e.g., key manager).
  • Transaction scheduler gRPC protocol (exposed by transaction scheduler nodes for receiving transactions).
  • Compute batch dispatch P2P protocol (exposed by compute nodes for receiving batches).
  • Compute result dispatch P2P protocol (exposed by merge nodes for receiving results from compute committees).
  • Worker-host protocol (used to communicate between the node and the SGX runtime).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
c:security Category: security sensitive epic Epic (costed tracking issue)
Projects
None yet
Development

No branches or pull requests

2 participants