TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

New cloud attack takes full control of virtual machines with little effort

302 pointsby mikecarltonover 8 years ago

16 comments

userbinatorover 8 years ago
The rowhammer &quot;attack&quot; is successful only because the hardware is just plain <i>broken</i>, and I consider it in the same category as things like a CPU which will calculate 1+1=3 if the computation of 1+1 is done enough times --- nothing software should even try to fix, because the problem is at a lower level. The solution is to demand that the hardware manufacturers make memory which actually works like memory should; and it should be possible, since apparently previous generations of RAM don&#x27;t have this problem at all. In the early 90s Intel recalled and replaced, free of charge, CPUs which didn&#x27;t divide correctly. Perhaps the memory manufacturers today should do the same for rowhammer-affected modules and chips.<p>Memory errors are particularly disturbing because they are often highly dependent on data and access patterns, and can be <i>extremely</i> difficult to pinpoint without special testing tools. I&#x27;ve personally experienced a situation where a system which otherwise appears to work perfectly well would <i>always</i> corrupt one specific bit of a file when extracting one particular archive.<p>As a testing tool, MemTest86+ has always worked well for me, and the newer versions can detect rowhammer, although there is this interesting discussion about whether it is actually a problem (to which I say a resounding <i>YES!!!</i>) or if there&#x27;s some sort of cover-up by the memory industry:<p><a href="http:&#x2F;&#x2F;www.passmark.com&#x2F;forum&#x2F;memtest86&#x2F;5903-rowhammer-problem-not-found-by-memtest86-6-3-0" rel="nofollow">http:&#x2F;&#x2F;www.passmark.com&#x2F;forum&#x2F;memtest86&#x2F;5903-rowhammer-probl...</a><p><a href="http:&#x2F;&#x2F;www.passmark.com&#x2F;forum&#x2F;memtest86&#x2F;5475-memtest86-v6-2-0-released-8-sept-2015" rel="nofollow">http:&#x2F;&#x2F;www.passmark.com&#x2F;forum&#x2F;memtest86&#x2F;5475-memtest86-v6-2-...</a><p>Run it on your hardware and if it fails, I think you should definitely complain and get it fixed.
评论 #12410342 未加载
评论 #12410320 未加载
评论 #12412140 未加载
评论 #12410287 未加载
评论 #12415800 未加载
andrewstuart2over 8 years ago
It seems the HN title and original title are <i>both</i> pretty wrong, at least according to the article content. The attack vector is really the ability to, if you have a known public key and a server using it, perform a pre-calculated bit flip such that the new public key is much easier to factor, and thus obtain a corresponding private key.<p>So you&#x27;re not obtaining original private keys, you&#x27;re altering original public keys so that you can more quickly factor a private key that will be accepted.<p>If this is an SSH public key, then you can obtain SSH access. If it&#x27;s a PGP key trusted by the package manager, then you can craft signatures on packages that <i>would</i> be accepted as valid, assuming you can also get the target machine to download said package.<p>I think SSH is probably the most interesting attack vector assuming you can get network access to the host once you&#x27;ve jumped through the myriad hoops to perform this attack.<p>It&#x27;s a serious issue that should be addressed (probably via forced from-disk reads or at minimum integrity checks), but I think the authors are perhaps a little too eager on the practical implications of corrupting in-memory public keys.
评论 #12410194 未加载
评论 #12411115 未加载
评论 #12411836 未加载
xorgar831over 8 years ago
Here&#x27;s the crux of the memory issue from one of the link in the article:<p>DDR memory is laid out in an array of rows and columns, which are assigned in large blocks to various applications and operating system resources. To protect the integrity and security of the entire system, each large chunk of memory is contained in a &quot;sandbox&quot; that can be accessed only by a given app or OS process. Bit flipping works when a hacker-developed app or process accesses two carefully selected rows of memory hundreds of thousands of times in a tiny fraction of a second. By hammering the two &quot;aggressor&quot; memory regions, the exploit can reverse one or more bits in a third &quot;victim&quot; location. In other words, selected zeros in the victim region will turn into ones or vice versa.
评论 #12412155 未加载
评论 #12411172 未加载
frostmatthewover 8 years ago
This attack wouldn&#x27;t work with [current versions] of ESXi since VMs now share pages only if the salt value and contents of the pages are identical (each VM uses a unique salt by default). <a href="https:&#x2F;&#x2F;kb.vmware.com&#x2F;selfservice&#x2F;microsites&#x2F;search.do?language=en_US&amp;cmd=displayKC&amp;externalId=2097593" rel="nofollow">https:&#x2F;&#x2F;kb.vmware.com&#x2F;selfservice&#x2F;microsites&#x2F;search.do?langu...</a>
评论 #12411182 未加载
评论 #12410311 未加载
arsover 8 years ago
People are focusing too much on the exact specific attack shown here: Deduplication, modifying a public key, etc. (And proposing solutions like turning off deduplicaiton, checksum, etc.)<p>But that&#x27;s just <i>this</i> attack - the fact that they have that much control over memory means there are FAR FAR FAR more possible attacks.<p>If you can control memory to that level then you are limited only by your imagination.<p>The only mitigation I can think of at the moment is ECC memory. And shame on Intel for only supporting that on Xeon.
评论 #12410355 未加载
评论 #12411754 未加载
评论 #12410379 未加载
walrus01over 8 years ago
It is more costly, but this is a good reason to use a dedicated chunk of memory for every Xen PV domU. No oversubscription!<p>Allowing multiple domU VMs on the same dom0 (or the equivalent in other hypervisor platforms) to re-use memory and balloon&#x2F;contract memory on the fly is what enables this.
评论 #12411192 未加载
评论 #12411943 未加载
micro_softyover 8 years ago
&quot;For the attacks to work, the cloud hosting the VM must have deduplication enabled so that physical pages are shared between customers.&quot;<p>But the vendor&#x27;s cloud will not disable sharing pages of physical memory because ____.<p>This is a great counterpoint to the salesman trying to sell you on &quot;cloud&quot; anything.<p>Why is it less expensive to use the &quot;cloud&quot;?<p>One reason is because you do not get your own physical server, including your own RAM.<p>When the &quot;cloud&quot; buzz began to gain momentum years ago I raised the issue of not knowing who your &quot;neighbors&quot; were on these physical servers that customers are sharing with other customers in datacenters.<p>As usual, these concerns will just fade into the background... again.
rotruxover 8 years ago
For those of you worried about your aws workloads, this may help make ya feel a (slight) bit better.<p><a href="https:&#x2F;&#x2F;forums.aws.amazon.com&#x2F;thread.jspa?messageID=739485&amp;tstart=0" rel="nofollow">https:&#x2F;&#x2F;forums.aws.amazon.com&#x2F;thread.jspa?messageID=739485&amp;t...</a>
评论 #12415908 未加载
Animatsover 8 years ago
Will rowhammer attacks work against ECC RAM? Multibit memory errors should be detected, even if they can&#x27;t be corrected.
评论 #12411054 未加载
trendiaover 8 years ago
Would this be a threat to services running on AWS?
评论 #12410089 未加载
runeksover 8 years ago
Ouch. Before reading this article I was seriously considering deploying a signing service as a HaLVM (Haskell) Xen PV unikernel running on EC2. The service would receive its private key after startup, such that the key never touches disk. Now I&#x27;m a lot less inclined to pretend that the Xen interface actually protects me...
评论 #12411680 未加载
评论 #12416175 未加载
Annatarover 8 years ago
<i>For the attacks to work, the cloud hosting the VM must have deduplication enabled so that physical pages are shared between customers.</i><p>This &quot;Flip Feng Shui&quot; wouldn&#x27;t work in SmartOS simply because the hypervisor does not implement memory deduplication.<p>Good luck with VMware though.
tmalyover 8 years ago
It seems like a dedicated server would solve this issue in some sense. If your not on a shared VM, then an attacker could not affect the memory.<p>For those that cannot be on a dedicated server, what changes could be made to the shared VM memory setup to reduce this attack surface?
lifeisstillgoodover 8 years ago
some thoughts:<p><pre><code> For the attacks to work, the cloud hosting the VMs must have deduplication enabled so that physical pages are shared between customers. </code></pre> This seemingly is an attack where two VMs on the same host can read each other&#x27;s memory, if a deduplication flag is set on the VM controller. This seems to offer cloud holsters some easy (paid for) upgrades to be honest<p>its not (afaik) heartbleed time. It&#x27;s bad but the effort required is high and afaik the attacker will replace your key with their key - making it clear you are compromised.
评论 #12412892 未加载
cafover 8 years ago
I wonder if it would be worth checksumming public keys and re-checking the checksum each time it&#x27;s used?
评论 #12412574 未加载
评论 #12411208 未加载
评论 #12410163 未加载
arrty88over 8 years ago
Is Linode safe?