GemStuffer misbruikt meer dan 150 RubyGems om geschraapte UK Council Portal-gegevens te exfiltreren

Cybersecurity-onderzoekers vestigen de aandacht op een nieuwe campagne genaamd GemStuffer dat zich op de RubyGems-repository heeft gericht met meer dan 150 edelstenen die het register gebruiken als data-exfiltratiekanaal in plaats van voor de distributie van malware.

“De pakketten lijken niet ontworpen voor grote compromissen tussen ontwikkelaars”, aldus Socket. “Velen hebben weinig of geen downloadactiviteit en de ladingen zijn repetitief, luidruchtig en ongewoon op zichzelf staand.”

“In plaats daarvan halen de scripts pagina’s op van portalen voor democratische diensten van de Britse lokale overheid, verpakken de verzamelde antwoorden in geldige .gem-archieven en publiceren die edelstenen terug naar RubyGems met behulp van hardgecodeerde API-sleutels.”

De ontwikkeling komt doordat RubyGems de registratie van nieuwe accounts tijdelijk heeft uitgeschakeld na wat is beschreven als een grote kwaadaardige aanval. Hoewel het niet duidelijk is of de twee reeksen activiteiten met elkaar verband houden, zegt het applicatiebeveiligingsbedrijf dat GemStuffer in “hetzelfde misbruikpatroon” past, waarbij nieuw gemaakte pakketten met ongewenste namen worden gebruikt om de verzamelde gegevens te hosten.

Op een hoog niveau misbruikt de campagne RubyGems als een plek om de geschraapte raadsinhoud te ensceneren. Het doet dit door hardgecodeerde URL’s van de Britse raadsportal op te halen, de HTTP-antwoorden in geldige .gem-archieven te verpakken en deze archieven naar RubyGems te publiceren met behulp van ingebedde registerreferenties.

In sommige gevallen creĆ«ert de payload die in de edelsteen is ingebed een tijdelijke RubyGems-referentieomgeving onder “/tmp”, overschrijft de HOME-omgevingsvariant, bouwt lokaal een edelsteen en pusht deze naar RubyGems met behulp van de gem-opdrachtregelinterface (CLI), in plaats van afhankelijk te zijn van reeds bestaande RubyGems-inloggegevens op de doelmachine.

Andere varianten van de kwaadaardige edelstenen bleken de CLI-component te mijden en het archief rechtstreeks naar de RubyGems API te uploaden via een HTTP POST-verzoek. Zodra de nieuwe edelstenen zijn gepubliceerd, hoeft een aanvaller alleen maar een opdracht “gem fetch” uit te voeren met de naam en versie van de edelsteen om toegang te krijgen tot de geschraapte gegevens.

Het is gebleken dat de nieuwe scraping-campagne zich richt op openbare ModernGov-portals die worden gebruikt door Lambeth, Wandsworth en Southwark, met als doel commissievergaderingskalenders, agendapunten, gekoppelde pdf-documenten, contactgegevens van functionarissen en RSS-feedinhoud te verzamelen. Het is niet duidelijk wat precies de einddoelen zijn, aangezien de informatie toch openbaar toegankelijk lijkt te zijn.

Socket heeft vastgesteld dat de systematische bulkverzameling en archivering van deze gegevens de mogelijkheid vergroot dat de aanvaller gebruik maakt van de “toegang tot het raadsportaal als spil om zijn capaciteiten tegen de overheidsinfrastructuur aan te tonen.”

“Het kan registerspam zijn, een proof-of-concept-worm, een geautomatiseerde scraper die RubyGems misbruikt als opslaglaag, of een opzettelijke test van misbruik van pakketregister”, aldus Socket. “Maar de mechanismen zijn opzettelijk: herhaaldelijk genereren van edelstenen, versie-verhogingen, hardgecodeerde RubyGems-referenties, directe register-pushs en geschraapte gegevens ingebed in pakketarchieven.”

Thijs Van der Does