* KVM SVM(AMD) nested - disabled by default? @ 2016-01-23 15:07 poma 2016-01-23 21:05 ` Paolo Bonzini 0 siblings, 1 reply; 8+ messages in thread From: poma @ 2016-01-23 15:07 UTC (permalink / raw) To: Paolo Bonzini Cc: kvm-devel, Joerg Roedel, Avi Kivity, Cole Robinson, Richard W.M. Jones "KVM: SVM: enable nested svm by default" https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/arch/x86/kvm?id=4b6e4dc "Nested SVM is (in my experience) stable enough to be enabled by default. So omit the requirement to pass a module parameter." I tried to get an explanation of the eventual -default- change here: https://bugzilla.redhat.com/show_bug.cgi?id=1298244 but "... I am *thinking* of changing it ..." ain't explanation, man. I've tested "Nested SVM" myself and it works surprisingly well, therefore what is the -actual- reason to switch it off by default? ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: KVM SVM(AMD) nested - disabled by default? 2016-01-23 15:07 KVM SVM(AMD) nested - disabled by default? poma @ 2016-01-23 21:05 ` Paolo Bonzini 2016-01-25 18:31 ` poma 0 siblings, 1 reply; 8+ messages in thread From: Paolo Bonzini @ 2016-01-23 21:05 UTC (permalink / raw) To: poma; +Cc: kvm-devel, Joerg Roedel, Avi Kivity, Cole Robinson, Richard W.M. Jones On 23/01/2016 16:07, poma wrote: > "KVM: SVM: enable nested svm by default" > https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/arch/x86/kvm?id=4b6e4dc > "Nested SVM is (in my experience) stable enough to be enabled by default. So omit the requirement to pass a module parameter." > > I tried to get an explanation of the eventual -default- change here: > https://bugzilla.redhat.com/show_bug.cgi?id=1298244 > > but "... I am *thinking* of changing it ..." ain't explanation, man. > > I've tested "Nested SVM" myself and it works surprisingly well, > therefore what is the -actual- reason to switch it off by default? Neither nested VMX nor nested SVM have ever been audited for security; they could have bugs that let a malicious guest escape L0. In fact I would be surprised if they don't. :( Paolo ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: KVM SVM(AMD) nested - disabled by default? 2016-01-23 21:05 ` Paolo Bonzini @ 2016-01-25 18:31 ` poma 2016-01-26 9:09 ` Paolo Bonzini 0 siblings, 1 reply; 8+ messages in thread From: poma @ 2016-01-25 18:31 UTC (permalink / raw) To: Paolo Bonzini Cc: kvm-devel, Joerg Roedel, Avi Kivity, Cole Robinson, Richard W.M. Jones On 23.01.2016 22:05, Paolo Bonzini wrote: > > > On 23/01/2016 16:07, poma wrote: >> "KVM: SVM: enable nested svm by default" >> https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/arch/x86/kvm?id=4b6e4dc >> "Nested SVM is (in my experience) stable enough to be enabled by default. So omit the requirement to pass a module parameter." >> >> I tried to get an explanation of the eventual -default- change here: >> https://bugzilla.redhat.com/show_bug.cgi?id=1298244 >> >> but "... I am *thinking* of changing it ..." ain't explanation, man. >> >> I've tested "Nested SVM" myself and it works surprisingly well, >> therefore what is the -actual- reason to switch it off by default? > > Neither nested VMX nor nested SVM have ever been audited for security; > they could have bugs that let a malicious guest escape L0. In fact I > would be surprised if they don't. :( > > Paolo > "In nested virtualization, we have three levels: The host (KVM), which we call L0, the guest hypervisor, which we call L1, and its nested guest, which we call L2." https://www.kernel.org/doc/Documentation/virtual/kvm/nested-vmx.txt So as long as you don't nestle proprietary crap, no problemos. Thanks for the concise explanations, man. ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: KVM SVM(AMD) nested - disabled by default? 2016-01-25 18:31 ` poma @ 2016-01-26 9:09 ` Paolo Bonzini 2016-01-26 11:00 ` poma 2016-01-26 21:17 ` Jidong Xiao 0 siblings, 2 replies; 8+ messages in thread From: Paolo Bonzini @ 2016-01-26 9:09 UTC (permalink / raw) To: poma; +Cc: kvm-devel, Cole Robinson, Richard W.M. Jones On 25/01/2016 19:31, poma wrote: > On 23.01.2016 22:05, Paolo Bonzini wrote: >> >> >> On 23/01/2016 16:07, poma wrote: >>> "KVM: SVM: enable nested svm by default" >>> https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/arch/x86/kvm?id=4b6e4dc >>> "Nested SVM is (in my experience) stable enough to be enabled by default. So omit the requirement to pass a module parameter." >>> >>> I tried to get an explanation of the eventual -default- change here: >>> https://bugzilla.redhat.com/show_bug.cgi?id=1298244 >>> >>> but "... I am *thinking* of changing it ..." ain't explanation, man. >>> >>> I've tested "Nested SVM" myself and it works surprisingly well, >>> therefore what is the -actual- reason to switch it off by default? >> >> Neither nested VMX nor nested SVM have ever been audited for security; >> they could have bugs that let a malicious guest escape L0. In fact I >> would be surprised if they don't. :( >> >> Paolo >> > > > "In nested virtualization, we have three levels: The host (KVM), which we call > L0, the guest hypervisor, which we call L1, and its nested guest, which we > call L2." > https://www.kernel.org/doc/Documentation/virtual/kvm/nested-vmx.txt > > So as long as you don't nestle proprietary crap, no problemos. Kind of. Suppose you are a cloud provider, and you think offering nested virtualization would be cool. Now, a customer (who of course controls the kernel running in your L1 VM) uses a vulnerability in KVM to get out of his VM and attack the host. Enorme problema. Paolo ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: KVM SVM(AMD) nested - disabled by default? 2016-01-26 9:09 ` Paolo Bonzini @ 2016-01-26 11:00 ` poma 2016-01-26 21:17 ` Jidong Xiao 1 sibling, 0 replies; 8+ messages in thread From: poma @ 2016-01-26 11:00 UTC (permalink / raw) To: Paolo Bonzini; +Cc: kvm-devel, Cole Robinson, Richard W.M. Jones On 26.01.2016 10:09, Paolo Bonzini wrote: > > > On 25/01/2016 19:31, poma wrote: >> On 23.01.2016 22:05, Paolo Bonzini wrote: >>> >>> >>> On 23/01/2016 16:07, poma wrote: >>>> "KVM: SVM: enable nested svm by default" >>>> https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/arch/x86/kvm?id=4b6e4dc >>>> "Nested SVM is (in my experience) stable enough to be enabled by default. So omit the requirement to pass a module parameter." >>>> >>>> I tried to get an explanation of the eventual -default- change here: >>>> https://bugzilla.redhat.com/show_bug.cgi?id=1298244 >>>> >>>> but "... I am *thinking* of changing it ..." ain't explanation, man. >>>> >>>> I've tested "Nested SVM" myself and it works surprisingly well, >>>> therefore what is the -actual- reason to switch it off by default? >>> >>> Neither nested VMX nor nested SVM have ever been audited for security; >>> they could have bugs that let a malicious guest escape L0. In fact I >>> would be surprised if they don't. :( >>> >>> Paolo >>> >> >> >> "In nested virtualization, we have three levels: The host (KVM), which we call >> L0, the guest hypervisor, which we call L1, and its nested guest, which we >> call L2." >> https://www.kernel.org/doc/Documentation/virtual/kvm/nested-vmx.txt >> >> So as long as you don't nestle proprietary crap, no problemos. > > Kind of. Suppose you are a cloud provider, and you think offering > nested virtualization would be cool. Now, a customer (who of course > controls the kernel running in your L1 VM) uses a vulnerability in KVM > to get out of his VM and attack the host. Enorme problema. > > Paolo > Yeah, "closed source" is just a part of problemo. Thanks for the extra explanation/example. ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: KVM SVM(AMD) nested - disabled by default? 2016-01-26 9:09 ` Paolo Bonzini 2016-01-26 11:00 ` poma @ 2016-01-26 21:17 ` Jidong Xiao 2016-01-26 21:28 ` Andrew Honig 1 sibling, 1 reply; 8+ messages in thread From: Jidong Xiao @ 2016-01-26 21:17 UTC (permalink / raw) To: Paolo Bonzini; +Cc: poma, kvm-devel, Cole Robinson, Richard W.M. Jones On Tue, Jan 26, 2016 at 2:09 AM, Paolo Bonzini <pbonzini@redhat.com> wrote: > > > On 25/01/2016 19:31, poma wrote: >> On 23.01.2016 22:05, Paolo Bonzini wrote: >>> >>> >>> On 23/01/2016 16:07, poma wrote: >>>> "KVM: SVM: enable nested svm by default" >>>> https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/arch/x86/kvm?id=4b6e4dc >>>> "Nested SVM is (in my experience) stable enough to be enabled by default. So omit the requirement to pass a module parameter." >>>> >>>> I tried to get an explanation of the eventual -default- change here: >>>> https://bugzilla.redhat.com/show_bug.cgi?id=1298244 >>>> >>>> but "... I am *thinking* of changing it ..." ain't explanation, man. >>>> >>>> I've tested "Nested SVM" myself and it works surprisingly well, >>>> therefore what is the -actual- reason to switch it off by default? >>> >>> Neither nested VMX nor nested SVM have ever been audited for security; >>> they could have bugs that let a malicious guest escape L0. In fact I >>> would be surprised if they don't. :( >>> >>> Paolo >>> >> >> >> "In nested virtualization, we have three levels: The host (KVM), which we call >> L0, the guest hypervisor, which we call L1, and its nested guest, which we >> call L2." >> https://www.kernel.org/doc/Documentation/virtual/kvm/nested-vmx.txt >> >> So as long as you don't nestle proprietary crap, no problemos. > > Kind of. Suppose you are a cloud provider, and you think offering > nested virtualization would be cool. Now, a customer (who of course > controls the kernel running in your L1 VM) uses a vulnerability in KVM > to get out of his VM and attack the host. Enorme problema. > > Paolo Hi, Paolo, Even if cloud providers don't use nested virtualization, as long as there is "a vulnerability in KVM", it is still possible "to get out of his VM and attack the host". You mentioned that "Neither nested VMX nor nested SVM have ever been audited for security", so have this been done for non-nested virtualization? -Jidong > -- > To unsubscribe from this list: send the line "unsubscribe kvm" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: KVM SVM(AMD) nested - disabled by default? 2016-01-26 21:17 ` Jidong Xiao @ 2016-01-26 21:28 ` Andrew Honig 2016-01-27 19:08 ` Jidong Xiao 0 siblings, 1 reply; 8+ messages in thread From: Andrew Honig @ 2016-01-26 21:28 UTC (permalink / raw) To: Jidong Xiao Cc: Paolo Bonzini, poma, kvm-devel, Cole Robinson, Richard W.M. Jones My team at Google has spent roughly 2-3 person years of effort security auditing KVM (both manually with code review and building tools) and we've found a lot of issues over the years. Also Nadav Amit's work on the emulator was quite effective in finding security bugs. At this point, I don't know of anyone who's put any serious effort into a security audit for nested vmx/svm. On Tue, Jan 26, 2016 at 1:17 PM, Jidong Xiao <jidong.xiao@gmail.com> wrote: > On Tue, Jan 26, 2016 at 2:09 AM, Paolo Bonzini <pbonzini@redhat.com> wrote: >> >> >> On 25/01/2016 19:31, poma wrote: >>> On 23.01.2016 22:05, Paolo Bonzini wrote: >>>> >>>> >>>> On 23/01/2016 16:07, poma wrote: >>>>> "KVM: SVM: enable nested svm by default" >>>>> https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/arch/x86/kvm?id=4b6e4dc >>>>> "Nested SVM is (in my experience) stable enough to be enabled by default. So omit the requirement to pass a module parameter." >>>>> >>>>> I tried to get an explanation of the eventual -default- change here: >>>>> https://bugzilla.redhat.com/show_bug.cgi?id=1298244 >>>>> >>>>> but "... I am *thinking* of changing it ..." ain't explanation, man. >>>>> >>>>> I've tested "Nested SVM" myself and it works surprisingly well, >>>>> therefore what is the -actual- reason to switch it off by default? >>>> >>>> Neither nested VMX nor nested SVM have ever been audited for security; >>>> they could have bugs that let a malicious guest escape L0. In fact I >>>> would be surprised if they don't. :( >>>> >>>> Paolo >>>> >>> >>> >>> "In nested virtualization, we have three levels: The host (KVM), which we call >>> L0, the guest hypervisor, which we call L1, and its nested guest, which we >>> call L2." >>> https://www.kernel.org/doc/Documentation/virtual/kvm/nested-vmx.txt >>> >>> So as long as you don't nestle proprietary crap, no problemos. >> >> Kind of. Suppose you are a cloud provider, and you think offering >> nested virtualization would be cool. Now, a customer (who of course >> controls the kernel running in your L1 VM) uses a vulnerability in KVM >> to get out of his VM and attack the host. Enorme problema. >> >> Paolo > > Hi, Paolo, > > Even if cloud providers don't use nested virtualization, as long as > there is "a vulnerability in KVM", it is still possible "to get out of > his VM and attack the host". You mentioned that "Neither nested VMX > nor nested SVM have ever been audited for security", so have this been > done for non-nested virtualization? > > -Jidong > >> -- >> To unsubscribe from this list: send the line "unsubscribe kvm" in >> the body of a message to majordomo@vger.kernel.org >> More majordomo info at http://vger.kernel.org/majordomo-info.html > -- > To unsubscribe from this list: send the line "unsubscribe kvm" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: KVM SVM(AMD) nested - disabled by default? 2016-01-26 21:28 ` Andrew Honig @ 2016-01-27 19:08 ` Jidong Xiao 0 siblings, 0 replies; 8+ messages in thread From: Jidong Xiao @ 2016-01-27 19:08 UTC (permalink / raw) To: Andrew Honig Cc: Paolo Bonzini, poma, kvm-devel, Cole Robinson, Richard W.M. Jones On Tue, Jan 26, 2016 at 2:28 PM, Andrew Honig <ahonig@google.com> wrote: > My team at Google has spent roughly 2-3 person years of effort > security auditing KVM (both manually with code review and building > tools) and we've found a lot of issues over the years. Also Nadav > Amit's work on the emulator was quite effective in finding security > bugs. > > At this point, I don't know of anyone who's put any serious effort > into a security audit for nested vmx/svm. > Thanks Andy, good to know that! -Jidong > On Tue, Jan 26, 2016 at 1:17 PM, Jidong Xiao <jidong.xiao@gmail.com> wrote: >> On Tue, Jan 26, 2016 at 2:09 AM, Paolo Bonzini <pbonzini@redhat.com> wrote: >>> >>> >>> On 25/01/2016 19:31, poma wrote: >>>> On 23.01.2016 22:05, Paolo Bonzini wrote: >>>>> >>>>> >>>>> On 23/01/2016 16:07, poma wrote: >>>>>> "KVM: SVM: enable nested svm by default" >>>>>> https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/arch/x86/kvm?id=4b6e4dc >>>>>> "Nested SVM is (in my experience) stable enough to be enabled by default. So omit the requirement to pass a module parameter." >>>>>> >>>>>> I tried to get an explanation of the eventual -default- change here: >>>>>> https://bugzilla.redhat.com/show_bug.cgi?id=1298244 >>>>>> >>>>>> but "... I am *thinking* of changing it ..." ain't explanation, man. >>>>>> >>>>>> I've tested "Nested SVM" myself and it works surprisingly well, >>>>>> therefore what is the -actual- reason to switch it off by default? >>>>> >>>>> Neither nested VMX nor nested SVM have ever been audited for security; >>>>> they could have bugs that let a malicious guest escape L0. In fact I >>>>> would be surprised if they don't. :( >>>>> >>>>> Paolo >>>>> >>>> >>>> >>>> "In nested virtualization, we have three levels: The host (KVM), which we call >>>> L0, the guest hypervisor, which we call L1, and its nested guest, which we >>>> call L2." >>>> https://www.kernel.org/doc/Documentation/virtual/kvm/nested-vmx.txt >>>> >>>> So as long as you don't nestle proprietary crap, no problemos. >>> >>> Kind of. Suppose you are a cloud provider, and you think offering >>> nested virtualization would be cool. Now, a customer (who of course >>> controls the kernel running in your L1 VM) uses a vulnerability in KVM >>> to get out of his VM and attack the host. Enorme problema. >>> >>> Paolo >> >> Hi, Paolo, >> >> Even if cloud providers don't use nested virtualization, as long as >> there is "a vulnerability in KVM", it is still possible "to get out of >> his VM and attack the host". You mentioned that "Neither nested VMX >> nor nested SVM have ever been audited for security", so have this been >> done for non-nested virtualization? >> >> -Jidong >> >>> -- >>> To unsubscribe from this list: send the line "unsubscribe kvm" in >>> the body of a message to majordomo@vger.kernel.org >>> More majordomo info at http://vger.kernel.org/majordomo-info.html >> -- >> To unsubscribe from this list: send the line "unsubscribe kvm" in >> the body of a message to majordomo@vger.kernel.org >> More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2016-01-27 19:08 UTC | newest] Thread overview: 8+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2016-01-23 15:07 KVM SVM(AMD) nested - disabled by default? poma 2016-01-23 21:05 ` Paolo Bonzini 2016-01-25 18:31 ` poma 2016-01-26 9:09 ` Paolo Bonzini 2016-01-26 11:00 ` poma 2016-01-26 21:17 ` Jidong Xiao 2016-01-26 21:28 ` Andrew Honig 2016-01-27 19:08 ` Jidong Xiao
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).