News

when your graphics card is bugging

Algorithms already spend their time tracking users on the web, but it now appears that GPUs could act as double agents in this large-scale tracking.

We already knew that they were now targeted by viruses; an international team of French, Israeli and Australian researchers has just developed a new exploitation technique capable of identifying users on the basis of a “fingerprint” left by a system’s GPU. This proof of concept aims to demonstrate that they can thus be exploited by unscrupulous actors in order to collect data on the online activity of Internet users.

This whole technique is based on a conceptually very simple observation. On a production line, it is impossible to obtain two perfectly identical elements. This is a central issue in the industry; there are notions such as tolerance which make it possible to ensure a certain degree of homogeneity throughout production. But some parameters are too fine to be controlled with absolute precision. There will always be some subtle differences between two units.

The devil is in the details

At the graphics card level, this translates into small variations in performance. These are quite often negligible in practice, but they can nevertheless be quantified by very precise analysis tools. And this is an extremely important point, because this variability is unique for each unit that comes off the production lines.

It is this point that was exploited by the researchers to demonstrate their approach. They developed a script based on WebGL, a graphics library that helps display 3D content in browsers. This script then exploits WebGL’s ability to run small snippets of code (GLSL, to be precise) on precise GPU subunits.

However, because of the small differences related to the manufacturing process mentioned above, these subunits all display very slightly different performance. These are then compiled to extract a kind of unique fingerprinthence the English term “fingerprinting”. This then makes it possible to individually identify a unit… and therefore theoretically to track the user. And this also applies to devices equipped with dedicated cards rather than integrated GPUs, such as smartphones, Chromebooks, and other more modest devices.

The performance differences between two GPUs, summarized as a graph. © Laor et. para.

A unique and tenacious imprint

That’s a problem, because it’s an extremely stubborn fingerprint. Indeed, the techniques of fingerprinting the most common almost all suffer from the same problem: many fingerprints can change over time, which limits their interest over time. But in the case of the work of these researchers, it is an imprint based almost entirely on physical parameters. She is therefore particularly stable, and therefore usable over a long period of time.

The researchers noticed that when integrated with a leading tracking algorithm, this approach allowedincrease median tracking time by 67%. Moreover, the research team claims that the process takes only 8 seconds on average; a period that is still relatively long, but which already makes it possible to envisage use in real conditions. They also warn that the development of the web infrastructure could make this attack surface even more vulnerable in the future.

For example, the team explored the WebGPU platform, which will soon be able to run compute shaders through a browser. Very briefly, compute shaders are small programs that allow a GPU to be “diverted” from its primary task; instead of taking care of rendering, it can put itself at the service of the system by carrying out other diverse and varied tasks. Blessed bread for those who seek to exploit them.

According to the researchers, this approach will reduce the time needed to take the fingerprint from 8 seconds to 125 milliseconds. This means that a simple visit of a few seconds to a lambda website would be enough to individually identify the user’s GPU. With all that this implies in terms of personal data protection.

A structural problem difficult to solve

The other problem with this “vulnerability” is that it is difficult to repair, since it directly depends on the structure and manufacturing process of the GPUs. The researchers suggest several distinct leads; all seek to avoid the comparison between the subunits, essential to establish the signature. They thus propose restrict web page access to a single GPU subunitor even randomize subunit assignment to the different processes. Corn None of the proposed solutions completely solves the problem. without making a big sacrifice on the performance side.

The good news is that it is not yet a technique exploited on a large scale by hackers. The players concerned therefore have a certain amount of time to think about a real solution. According to HotHardware, Intel, ARM, Google, Mozilla, and Brave have already been notified by the team. For its part, Khronos, the developer behind WebGL, announced the launch of a large-scale technical study to address the root cause. Ideally, they will achieve this before mining of these GPU signatures becomes commonplace.

The text of the study is available here.

Related Articles

Leave a Reply

Your email address will not be published. Required fields are marked *