Draai je een app op Railway die een AI-dienst aanroept, dan heb je vandaag werk te doen. Het hostingplatform meldt dat een onbevoegde partij mogelijk bij de opgeslagen omgevingsvariabelen van klanten is gekomen. Dat zijn de instellingen waarin ontwikkelaars vaak juist hun gevoeligste gegevens zetten: API-sleutels voor diensten als OpenAI of OpenRouter, databasewachtwoorden en toegang tot besloten code.

Volgens het voorlopige onderzoek van Railway ging het om versleutelde gegevens, maar heeft de aanvaller van een deel mogelijk ook de leesbare inhoud bemachtigd. Hoeveel klanten zijn geraakt, is nog niet bekend. Railway denkt aan een deel van de gebruikers, maar raadt iedereen aan voorzorgsmaatregelen te nemen. Getroffen klanten krijgen later een mail.

Gericht op toegang tot AI-modellen

Opvallend is wat Railway over het motief zegt. Het bedrijf vermoedt dat de inbraak deel uitmaakt van een reeks aanvallen op platformbedrijven, met als doel toegang te krijgen tot aanbieders van AI-modellen. Die aanbieders is gevraagd sleutels uit voorzorg in te trekken. Een gestolen sleutel is voor criminelen direct geld waard: ze kunnen er dure modellen mee gebruiken op kosten van de eigenaar.

Op Reddit meldt een gebruiker dat iemand via diens OpenRouter-sleutel zware modellen aanriep, met een duidelijke verbruikspiek op 21 oktober. Of dat met Railway te maken heeft, is uit dat bericht niet vast te stellen.

Waarom alleen een nieuw wachtwoord niet helpt

De valkuil zit in de volgorde. Wie in Railway alleen de waarde van een sleutel aanpast, maakt de oude sleutel niet ongeldig: die blijft werken voor wie hem heeft. Je moet de sleutel dus intrekken bij de dienst zelf. Het wachtwoord van je Railway-account veranderen helpt evenmin, want dat staat los van de sleutels in je app.

Railway adviseert deze stappen:

  • Schakel een mogelijk gelekte sleutel uit bij de aanbieder en bewaar de gebruiksgeschiedenis.
  • Maak een nieuwe sleutel aan, liefst met een bestedingslimiet en een vervaldatum.
  • Zet de nieuwe sleutel in Railway en rol je app opnieuw uit.
  • Kijk je verbruik na op onbekende modellen of onverklaarbare kosten en meld dat bij de aanbieder.
  • Doe hetzelfde voor databasewachtwoorden en andere opgeslagen toegangsgegevens.

Er is wel een praktisch probleem: Railway zette het uitrollen van nieuwe versies tijdelijk stil. Op 22 oktober kregen eerst Enterprise-klanten weer toegang, andere abonnementen volgen in stappen. Tot dan kan het gebeuren dat je app na het intrekken van een sleutel tijdelijk niet werkt. Railway maakte daarnaast al zijn eigen API-tokens ongeldig.

Ook relevant voor kleine makers

Railway wordt veel gebruikt door ontwikkelaars, maar ook door mensen die met hulp van AI zelf een app in elkaar zetten en die online willen zetten. OpenRouter waarschuwt dat een sleutel zonder bestedingslimiet het hele saldo kan opmaken, inclusief automatische opwaarderingen. Een limiet instellen is daarom ook los van dit incident een goede gewoonte.

Het lek komt in een week waarin beveiliging al volop in het nieuws is. Woensdag gingen in Nederland onder meer DigiD en MijnOverheid uit voorzorg offline vanwege twee kritieke PHP-lekken. En volgens CrowdStrike zetten criminele groepen steeds vaker AI-agents in bij hun aanvallen. Toegang tot krachtige modellen is voor hen dus een gewild doelwit.