Jump to content
  • Researchers use GPU fingerprinting to track users online

    Karlston

    • 552 views
    • 4 minutes
     Share


    • 552 views
    • 4 minutes

    A team of researchers from French, Israeli, and Australian universities has explored the possibility of using people's GPUs to create unique fingerprints and use them for persistent web tracking.

     

    The results of their large-scale experiment involving 2,550 devices with 1,605 distinct CPU configurations show that their technique, named 'DrawnApart,' can boost the median tracking duration to 67% compared to current state-of-the-art methods.

     

    This is a severe problem for user privacy, which is currently protected by laws that focus on acquiring consent to activate website cookies.

     

    These laws have led unscrupulous websites to collect other potential fingerprinting elements such as the hardware configuration, OS, timezones, screen resolution, language, fonts, etc.

     

    This unethical approach is still limited because these elements change frequently, and even when they're stable, they can only put users into a rough categorization rather than create a unique fingerprint.

    Fingeprinting identical GPUs

    The researchers considered the possibility of creating distinctive fingerprints based on the GPU (graphics processing unit) of the tracked systems with the help of WebGL (Web Graphics Library).

     

    WebGL is a cross-platform API for rendering 3D graphics in the browser, and it's present on all modern web browsers.

     

    Using this library, the DrawnApart tracking system can count the number and speed of the execution units in the GPU, measure the time needed to complete vertex renders, handle stall functions, and more.

     

    fingerprinting.jpg

    Fingerprinting the GPU for persistent tracking
    Source: Arxiv.org

    DrawnApart uses short GLSL programs executed by the target GPU as part of the vertex shader to overcome the challenge of having random execution units handling the computations. Hence, the workload allocation is predictable and standardized.

     

    The team developed both an on-screen measurement method that executes a small number of computationally intensive operations and an offscreen method that puts the GPU through a lengthier and less intensive test.

     

    render-loop.jpg

    Render loop used for the on-screen test
    Source: Arxiv.org

    This process generates traces consisting of 176 measurements taken from 16 points that are used to create a fingerprint. Even when evaluating the individual raw traces visually, one can notice differences and distinct timing variations between devices.

     

    raw-traces.jpg

    The resulting raw traces from two identical GPUs
    Source: Arxiv.org

    The researchers also tried swapping other hardware parts on the machines to see if the traces would remain distinguishable and found that the fingerprints solely depended on the GPU.

     

    Even if a set of integrated circuits is created through an identical manufacturing process, has the same nominal computational power, the number of processing units, and the exact same cores and architecture, each circuit is slightly different due to normal manufacturing variability.

     

    These differences are indistinguishable in normal day-to-day operations, but they can become useful in the context of a sophisticated tracking system like DrawnApart, which is specifically designed to trigger functional aspects that highlight them.

     

    table(3).jpg

    Tested devices and classification accuracy
    Source: Arxiv.org

    Implications and considerations

    When DrawnApart is used in conjunction with state-of-the-art tracking algorithms, the median tracking duration of a targeted user increases by 67%.

     

    As illustrated in the following diagram, the standalone tracking algorithm can achieve an average tracking time of 17.5 days, but with the help of GPU fingerprinting, this is extended to 28 days.

     

    tracking-time.jpg

    Tracking duration diagram
    Source: Arxiv.org

    This evaluation was based on the testing conditions that the GPU operational temperature range is between 26.4 °C and 37 °C, with no voltage variations.

     

    Apart from these conditions, workload variations, GPU payloads from other web browser tabs, system restarts, and other runtime changes don't affect DrawnApart.

     

    The next-gen GPU APIs currently in development, most notably WebGPU,  features compute shaders which come in addition to the existing graphics pipeline.

     

    As such, the upcoming API may introduce even more ways to fingerprint internet users, and quite likely faster and far more accurate too.

     

    When the researchers tested compute shaders in the now-abandoned WebGL 2.0, they found that DrawnApart delivered 98% classification accuracy in just 150 milliseconds, much faster than the 8 seconds used to collect fingerprinting data through the WebGL API.

     

    "We believe that a similar method can also be found for the WebGPU API once it becomes generally available. The effects of accelerated compute APIs on user privacy should be considered before they are enabled globally," concludes the research paper.

     

    Potential countermeasures to this fingerprinting method include attribute value changes, parallel execution prevention, script blocking, API blocking, and time measurement prevention.

     

    The developer of the WebGL API, Khronos group, has received the researchers' disclosure on the above and formed a technical study group to discuss potential solutions with browser vendors and other stakeholders.

     

     

    Researchers use GPU fingerprinting to track users online

    • Like 3

    User Feedback

    Recommended Comments

    There are no comments to display.



    Join the conversation

    You can post now and register later. If you have an account, sign in now to post with your account.
    Note: Your post will require moderator approval before it will be visible.

    Guest
    Add a comment...

    ×   Pasted as rich text.   Paste as plain text instead

      Only 75 emoji are allowed.

    ×   Your link has been automatically embedded.   Display as a link instead

    ×   Your previous content has been restored.   Clear editor

    ×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...