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

dom0-provided kernels should end use of PoD memory before loading untrusted code #7504

Closed
DemiMarie opened this issue May 10, 2022 · 5 comments
Labels
C: Xen P: default Priority: default. Default priority for new issues, to be replaced given sufficient information. R: not applicable E.g., help/support requests, questions, discussions, "not a bug," not enough info, not actionable. security This issue pertains to the security of Qubes OS.

Comments

@DemiMarie
Copy link

How to file a helpful issue

The problem you're addressing (if any)

There have been several XSAs related to populate on demand code.

The solution you'd like

dom0-provided kernels should ensure they have eliminated all use of PoD memory before running untrusted code.

The value to a user, and who that user might be

All users will benefit from improved security.

@DemiMarie DemiMarie added T: enhancement C: Xen security This issue pertains to the security of Qubes OS. P: default Priority: default. Default priority for new issues, to be replaced given sufficient information. labels May 10, 2022
@andrewdavidwong andrewdavidwong added this to the Release TBD milestone May 10, 2022
@marmarek
Copy link
Member

dom0-provided kernels should ensure they have eliminated all use of PoD memory before running untrusted code.

This is already the case, kernel waits for balloon down to finish before spawning init.

@DemiMarie
Copy link
Author

dom0-provided kernels should ensure they have eliminated all use of PoD memory before running untrusted code.

This is already the case, kernel waits for balloon down to finish before spawning init.

Does this mean that populate-on-demand vulnerabilities only impact users who use VM-provided kernels or who allow VMs to influence kernel command line via the Admin API?

@marmarek
Copy link
Member

marmarek commented Dec 26, 2022

Or non-Linux OSes (which is sub-category of VM-provided kernel), or older kernel (it's this way upstream since 5.16, but we backported it to our 5.15, 5.10 and 5.4 at some point).

BTW, kind of related - PoD isn't going to be used at all with #7956 (for kernels supporting it).

@DemiMarie
Copy link
Author

Or non-Linux OSes (which is sub-category of VM-provided kernel), or older kernel (it's this way upstream since 5.16, but we backported it to our 5.15, 5.10 and 5.4 at some point).

BTW, kind of related - PoD isn't going to be used at all with #5956 (for kernels supporting it).

Are there non-Linux kernels that support PoD but not memory hotplug?

@marmarek
Copy link
Member

support PoD

That's literally any OS - the whole point of this mechanism is to be fully guest-transparent.

@andrewdavidwong andrewdavidwong removed this from the Release TBD milestone Jul 10, 2023
@andrewdavidwong andrewdavidwong closed this as not planned Won't fix, can't repro, duplicate, stale Jul 10, 2023
@andrewdavidwong andrewdavidwong added the R: not applicable E.g., help/support requests, questions, discussions, "not a bug," not enough info, not actionable. label Nov 14, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C: Xen P: default Priority: default. Default priority for new issues, to be replaced given sufficient information. R: not applicable E.g., help/support requests, questions, discussions, "not a bug," not enough info, not actionable. security This issue pertains to the security of Qubes OS.
Projects
None yet
Development

No branches or pull requests

3 participants