Browsed by
Category: Technical

RowHammer attacks have a new friend – RowPress

RowHammer attacks have a new friend – RowPress

Rowhammer is a DRAM memory security vulnerability discovered in June 2014 (paper here). It demonstrates a security problem in which programs can modify memory they should not have access too. In the paper, they note how DRAM memory cells interact electrically between themselves by leaking their charges, possibly changing the contents of nearby memory rows that were not addressed in the original memory access. This circumvention of the isolation between DRAM memory cells results from the high cell density in modern DRAM, and can be triggered by specially crafted memory access patterns that rapidly activate the same memory rows numerous times.

The row hammer effect has been used in some privilege escalation computer security exploits (Paper here). Google’s Project Zero demonstrated two working privilege escalation exploits based on the row hammer effect in 2015. Since then, there has been a back and forth war of fixes and new exploits – some even involving ways to circumvent ECC (error-correcting) DRAM.

Now we fast forward to today, and there is another way to manipulate bits – RowPress (Paper here). Instead of ‘hammering’ neighbor rows with certain write patterns, this method involves manipulating the length of time the aggressor row is left open when reading it. When a computer accesses a chunk of memory, it opens the rows to the cells storing the desired data and transfers it to the CPU. The researchers show you can use clever methods to manipulate how long that row is left open. When an attacker row is left open the optimal amount, you can affect nearby victim rows:

We show that keeping a DRAM row (i.e., aggressor row) open for a long period of time (i.e., a large aggressor row on time, tAggON) disturbs physically nearby DRAM rows. Doing so induces bitflips in the victim row without requiring (tens of) thousands of activations to the aggressor row. We characterize RowPress in 164 off-the-shelf DDR4 DRAM chips from all three major manufacturers and find that RowPress significantly amplifies DRAM’s vulnerability to read-disturb attacks (i.e., greatly reduces the minimum number of total aggressor row activations to cause at least one bitflip, ACmin.

The methods they use are VERY clever. They started on a FPGA-based test beds to test the idea, then moved to PC’s. This required a deep knowledge of memory hardware and involves clever manipulation of the memory controller and cache systems (section 6.2 of the paper). The summary in the comments was great:

With respect to knowing how physical memory maps to their process memory, they allocated a 1GB hugepage and use a technique called DRAMA to determine the row-column mapping.

To keep their target row open, they take advantage of the fact (new to me) that multiple cache blocks will live on the same physical row, which means that repeated accesses to those blocks can influence the memory controller to keep that row open. They also empty the processor cache between each iteration so that they can be sure that they will hit the actual RAM.
To bypass the target row refresh (TRR) mechanisms that have been implemented to counter traditional RowHammer attacks, they also toggle a large number of dummy rows so that the TRR will pick up on those rather than the actual aggressor rows, since TRR implementations apparently have a small number of candidate aggressor rows.

Article:

Running almost any Unreal game in VR

Running almost any Unreal game in VR

Waifu Enjoyer shows off UEVR. UEVR allows you to play just about any Unreal Engine 4 & 5 game in VR – even if it wasn’t made for VR. It does this by hooking into the DirectX API and then overriding.

Read more on the UEVR project page here.

Links:

Programmable Music Box

Programmable Music Box

Most music boxes can only play one song, but why not make a music box that is fully programmable? The Muro Box can play any song by using computer-controlled wheels to pluck the metal forks. You can program it using a mobile app or a MIDI device. It has a 40-note chromatic scale, and more than 50,000 songs in a downloadable library.

It’s going for an eye watering $995 pledge on Kickstarter. I think it’s ridiculously steep for a few dozen stepper motors and an app, but they do offer a smaller $299 version.

Beware

Beware

Beware is an in-development demo by Ondrej_Svadlena. At a glance, it’s an open-world driving game that first appeared in May 2018. In it, you are a driver in what appears to be a rainy, foggy eastern block country in the 70’s. What makes this thing stand out is the atmosphere of tension, disorientation, and paranoia it creates. It’s really fantastic. The player is dropped into anonymous, listless locations, hampered by dense fog and rain-slick backroads. The player encounters various solitary landmarks—as well as mysterious and menacing events.

It’s definitely worth checking out. His Patreon page has the latest information about development and supporters get access to extensive additional content. It seems he is up to version 13 and it appears to maybe even support VR now.

Download here: https://www.indiedb.com/games/beware/downloads

Articles:

Tektronics Vector Graphics

Tektronics Vector Graphics

Ronny Svedman gives a demonstration of a Tektronix 4006-1 tube vector graphics terminal. It’s now almost 50 years old, and should remind people that all the fancy graphics of today had their start a long, long time ago. This particular model has a Swedish EPROM (iso-10646-se) is rendered with slightly different characters.

This thing has some fantastic vector graphics that I wish we could still have today. Vector graphics is pretty limited, but it creates some really iconic images. Fun really starts at 3:54

AI Hank Williams sings new songs – Like Straight Out of Compton

AI Hank Williams sings new songs – Like Straight Out of Compton

If you don’t think AI is changing things at a fundamental level, witness what is possible with voice models trained by ordinary people like ThereIRuinedIt:

Or Johnny Cash singing Barbie Girl

How? There’s a number of different ways you can try this yourself – but the list grows daily at this point, so do some googling and see what’s available.

Reading 50 year old rope core memory

Reading 50 year old rope core memory

Mike Steward decided to recover the original Apollo guidance computer programs that landed man on the Moon in the 1960’s. Unfortunately some of them seem to have been lost to history.

It turns out, chunks of the original hardware still exist – such as the rope core memory which contained the programs. The next question is, how do you read these programs off 50 year old rope core memory hardware? This video below tells you how he did it!

He even wrote a web app that simulates how core memory works. We do a decent job recording history’s events, but I think it’s extremely cool that this kind of historical technical information is not being lost to the ages.

You can also check out the many other videos about the Apollo guidance computer in the other parts of his videos – or a previous article which has a super-awesome description of how Apollo computers work by Robert Wills.