Door een kwetsbaarheid in de code van Steamworks was het mogelijk om een game uit te brengen op Steam, zonder dat Valve daarvan op de hoogte was. Zo wist beveiligingsonderzoeker Ruby Nealon kortstondig zijn 'game' Watch Paint Dry te publiceren.
Om gebruik te kunnen maken van de kwetsbaarheid had Ruby alleen een Steamworks-account nodig. Steamworks is Valves eigen platform voor het uitgeven van games en verzorgt opties als multiplayer voor ontwikkelaars. Met het account was hij daarna in staat om zijn zelfgemaakte 'spel' uit te brengen op Steam, zonder dat Valve de game had gezien, laat staan had gecontroleerd.
Dit kon doordat het mogelijk was om de broncode aan te passen tijdens het proces van het indienen van de game. Ook het publiceren van de trading cards voor de game was op die manier te doen zonder tussenkomst van Valve. Als een ontwikkelaar de kaarten indient, dan bekijkt Valve ze normaal gesproken eerst om te controleren of ze voldoen aan de regels. Bij het indienen van de kaarten kan de ontwikkelaar de status van de kaarten aangeven. De opties hiervoor zijn: Niet klaar, klaar voor controle en niet klaar vanwege aanpassingen.
De code achter de pagina voor de controle van de kaarten toonde aan Ruby dat Valve de sessie en het id-nummer van de ontwikkelaar volgt. Door het id-nummer aan te passen naar een nummer van iemand die waarschijnlijk werkt bij Valve, bijvoorbeeld nummer 1, en de waarde van de geselecteerde optie te veranderen in een niet bestaand nummer, kreeg Ruby een ander scherm voor ogen. Steamworks toonde een medewerker van Valve als de meest recente bewerker van de kaarten. Ook verscheen de optie voor 'uitgegeven' bij de uitgavestatus voor de kaarten. Door de waarde van die status door te voeren waren de kaarten plots goedgekeurd.
Voor de uitgave van de game zelf ging de Watch Paint Dry-ontwikkelaar nog een stapje verder. Volgens hem bestaat de Steamworks-website voornamelijk uit Ajax, oftewel Asynchronous JavaScript And XML. Alle code voor de JavaScript-functies waren zichtbaar voor Steamworks-leden. In de code vond hij de functie "ReleaseGame(appid, data)". Door de functie aan te roepen met zijn app-id en zijn session-id was de game zonder controle of tussenkomst gepubliceerd op het Steam-platform.
Ruby zegt al een paar maanden te hebben geprobeerd om Valve op de hoogte te stellen van de kwetsbaarheden in de code. Toen Valve er niets mee deed wou hij er een 1-aprilgrap van maken door de releasedatum op 1 april te zetten. Zijn plan was dat Watch Paint Dry op die dag in de Steam Store zou verschijnen, maar de game werd al eerder zichtbaar. Nadat de 'game' op Steam verscheen heeft Valve deze snel offline gehaald en de kwetsbaarheden in de codes gerepareerd, zegt Ruby. Valve heeft hierover zelf geen bericht naar buiten gebracht.