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

Update Security.md with details on capabilities #1506

Open
jfbastien opened this issue Nov 3, 2017 · 1 comment
Open

Update Security.md with details on capabilities #1506

jfbastien opened this issue Nov 3, 2017 · 1 comment
Assignees

Comments

@jfbastien
Copy link
Member

POLL: WebAssembly instances must never be able to cause effects other than by wielding explicitly granted access (e.g. the importObject in a JS embedding).

SA A N F SF
0 0 6 9 7

Action item: Mark clarify what this poll is getting at, add to design repo’s “security.md” document, etc.

@erights
Copy link

erights commented Nov 13, 2017

Interesting discussion at
https://groups.google.com/d/msg/e-lang/3A6zYWF6u5E/_41J3xYCAQAJ
clarified the issue.

By "effects" above we mean input, output, mutating state outside the instance, or reading mutable state outside the instance. This is closely related to the criteria that should be used to distinguish user-mode instructions from other actions, as stated at

Formal Requirements for Virtualizable Third Generation Architectures
https://www.princeton.edu/~rblee/ELE572Papers/Fall04Readings/secureOS/popek_virtualizable.pdf

We do not currently include resource use or non-determinism, even though OSes can control these aspects of user-mode computation. Note that blockchain usage of wasm
(Dfinity, ewasm, EOS, Polkadot, Parity) do restrict resource use and non-determinism, so perhaps we would revisit; but that would be a separate proposal.

fitzgen referenced this issue in fitzgen/meetings Sep 14, 2023
winch: Add entries for the next few months + agenda for 06-20
@sunfishcode sunfishcode transferred this issue from WebAssembly/meetings Mar 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants