Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Steam patcht in bèta-update zeroday die privilege escalation mogelijk maakte

Valve heeft een kwetsbaarheid in Steam verholpen die door HackerOne meermaals werd bestempeld als 'out of scope'. De onderzoeker die de kwetsbaarheid ontdekte, had hem daarom afgelopen woensdag als zeroday online gezet.

De kwetsbaarheid zit volgens de onderzoeker Vasily Kravets in de Steam Client Service. Met slechts user-rechten kan een programma registry keys aanmaken in de map van deze service, waarna ze door de service de hoogste rechten toegewezen krijgen voor iedere gebruiker. Met symlinks kunnen vervolgens de toestemmingen van registry keys buiten deze map aangepast worden, inclusief die van services die door iedere gebruiker gestart kunnen worden. Hiermee kan dus een kwaadaardig programma met volledige rechten gestart worden, ongeacht of de gebruiker onder wiens account het programma start daadwerkelijk die rechten heeft of niet.

HackerOne, het platform dat Valve in dienst heeft om meldingen over kwetsbaarheden te verwerken, wees Kravets' rapport aanvankelijk af, maar kwam daar toen op terug en deed er uiteindelijk niets mee. Toen Kravets stelde dat hij overtuigd was van de ernst van de zaak en hij desnoods zelf zou publiceren, verbood HackerOne dat, ondanks dat ze de ernst niet inzagen, aldus Kravets.

Valve heeft zelf niet inhoudelijk gereageerd op de zaak, maar kwam in de nacht van vrijdag op zaterdag wel met een bèta-update voor de Steam-client waarin de kwetsbaarheid verholpen is.

Een demonstratie gemaakt door Reddit-gebruiker R_Sholes - commentaar van Ars Technica

Door Mark Hendrikman

Nieuwsposter

11-08-2019 • 11:21

62 Linkedin Google+

Reacties (62)

Wijzig sortering
Kort samengevat...

De Steam Client Service zet de toegangsrechten van alles onder HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Valve\Steam\ naar "Full Control" voor "Users" (d.m.v. RegSetKeySecurity aanroepen).

In het voorbeeld wordt dit gebruikt om de toegangsrechten van de msiserver-registry aan te passen zodat "Users" deze kunnen veranderen. Dit gebeurt door een link te plaatsen naar de msiserver-registry under Steam\NSIS. Omdat bij het starten van de msiserver service er uitgevoerd wordt wat er in de msiserver-registry staat, kunnen "Users" willekeurige opdrachten als "LOCALSYSTEM" laten uitvoeren. Hiermee is alle security weg.

[Reactie gewijzigd door TweakerNummer op 12 augustus 2019 04:21]

Valve heeft zelf niet inhoudelijk gereageerd op de zaak, maar kwam in de nacht van vrijdag op zaterdag wel met een bèta-update voor de Steam-client waarin de kwetsbaarheid verholpen is.
En de onderzoeker die het lek origineel probeerde via HackerOne te rapporteren, heeft kennelijk al laten weten dat deze update van Valve de kwetsbaarheid niet verholpen heeft. Dus voel jezelf niet ineens veilig als je de beta branch van Steam hebt geinstalleerd.

[Reactie gewijzigd door R4gnax op 13 augustus 2019 07:52]

Ik heb thuis een dedicated gamecomputer, omdat ik het niet vertrouw dat veel games alleen onder Administrator functioneren of onder een user met Administrator privileges als UAC is uitgeschakeld. Als Steam als user kon worden geinstalleerd dan was dit probleem er wellicht niet? Ook vraag ik mij af of je als user wel services kunt stoppen of starten. Volgens mij kan dit alleen vanuit Administrator of vanuit een Administrator user als UAC is uitgeschakeld.
Ik heb thuis een dedicated gamecomputer, omdat ik het niet vertrouw dat veel games alleen onder Administrator functioneren of onder een user met Administrator privileges als UAC is uitgeschakeld.

Erg verstandig. Op die manier voorkom je mogelijke problemen. Het is echter vaak zo dat games (zeker die torrent varianten) helemaal geen admin rechten nodig hebben. Als je simpelweg een map maakt 'games' en de rechten van de map aanpast zodat 'gebruikers' daar volledig rechten hebben dan kun je de executable van de game aanpassen zodat deze niet meer met admin rechten opstart. Ze doen dit voornamelijk om problemen de opslaan (saves) te voorkomen.

Als Steam als user kon worden geinstalleerd dan was dit probleem er wellicht niet?
Steam gebruikt zijn eigen service om de installatie van de game te verzorgen. Vandaar dat je geen meldingen krijgt. De installatie vindt plaats in een map waar gebruikers vrij in mogen schrijven.

Ook vraag ik mij af of je als user wel services kunt stoppen of starten. Volgens mij kan dit alleen vanuit Administrator of vanuit een Administrator user als UAC is uitgeschakeld.
Gebruikers mogen alleen services starten waar rechten op staan die gelijk of lager zijn dan hun. Er kunnen echter ook rechten specifiek op services gezet worden zodat bijvoorbeeld zelfs een admin deze niet mag stoppen (bijvoorbeeld Windows systeem services)

UAC zorgt ervoor dat iedere admin gestript worden van hun rechten. Als er echter een verhoogd rechten verzoek gedaan wordt zal UAC dit melden met een systeemprompt. Pas daarna krijgt het process admin rechten.
Steam heeft geen administrator rechten nodig om te draaien en het gros van de games ook niet. Alleen voor het installeren zijn admin rechten nodig.
Alleen voor het installeren zijn admin rechten nodig.
Zelfs dat niet, in veel gevallen. Gooi je games maar eens in een D:\Games folder ipv C:\Program Files.
Gaat als een tierelier zonder Admin-rights.
Voor het installeren van Steam zelf heb je admin rechten nodig voor zover ik weet. Games gaan prima zonder admin rechten inderdaad.
Veel games op steam hebben eenmalig een vcredist of dx update of iets die ze willen installeren en deze installers vragen weldegelijk om admin rechten.
In de meeste gevallen kan je deze negeren (krijg je wel die vraag elke keer weer terug)

Ik kom dat zo'n 50/50 tegen qua aantal games.
Veel games op steam hebben eenmalig een vcredist of dx update of iets die ze willen installeren en deze installers vragen weldegelijk om admin rechten.
In de meeste gevallen kan je deze negeren (krijg je wel die vraag elke keer weer terug)
In het mapje van de game staan de installatieprogramma's van deze redistributables. Als je deze verwijdert dan krijg je de melding niet meer.
Dat je een +1 hiervoor krijgt vind ik wel redelijk schokkend, aangezien hetgeen dat je zegt echt helemaal niet klopt. De locatie waar je eventuele games zet heeft helemaal niets te maken met 'admin-rights'..
Dat heeft er wel mee te maken. Onder Program Files mogen (met de standaard Windows rechten) alleen Administrators schrijven. Dus als je daar je games plaatst heb je sowieso Administrator rechten nodig.

Op een willekeurige zelf gemaakte andere locatie zullen de rechten meestal zo zijn ingesteld dat je daar geen Administrator voor hoeft te zijn.
Mijn excuses, klopt inderdaad. Maar ik doelde eigenlijk op de D:\Games folder welke zelf aangemaakt is en waarvoor je 9 vd 10 keer geen administrator rechten nodig hebt.
Dat was zijn punt, in Program Files heb je beheerdersrechten nodig, en in bijvoorbeeld D:\Games niet.
Offtopic:
Dan begrijp je het moderatie systeem niet. Lees alvast dit een keer https://tweakers.net/info/faq/moderatiesysteem/

TL;DR
Reactie dat ON TOPIC is over het onderwerp van het artikel is +1 or meer, naargelijk het relevant en informatief is.

OFF TOPIC / IRRELEVANT zoals mijn reactie dat je nu leest is een ' 0 ' waard omdat het absoluut niet bijdraagt aan het onderwerp van het artikel.

Nu hoop ik at jij een een paar anderen eindelijk correct reacties modereren i.p.v punten geven op wat jij akkoord of niet akkoord mee bent.
sommige games met anticheat services moeten wel via admin gestart worden

De combinatie van blacksquad en discord(admin rechten nodig) anders kan je niet ingame praten. Er zijn wel wat voorbeelden te vinden waar het nodig is, ongeacht of het op c:/ (whatever je windows root is).
Discord gebruik ik ook niet. En admin rechten nodig om in-game te kunnen praten in Discord? Doe mij dan maar gewoon lekker Teamspeak.
Ik gebruik ook liever Teamspeak, en ik snap niet waarom die bug er is. Maar als ik dat spel speel kan niemand mij horen op Discord zonder DC als admin te starten.
Heeft ermee te maken dat als je een game fullscreen draait en gestart met admin rechten dat Discord je push to speak knop niet kan detecteren zonder zelf ook admin-rechten te hebben.

Je kan dan of push to speak uitzetten, of je game proberen te starten zonder admin rechten, dan werkt het prima. Of natuurlijk teamspeak / ventrillo / skype gebruiken, maar vraag me wel af hoe die dit omzeilen zonder zelf adminrechten te hebben, misschien is dit lastiger voor Discord omdat het een Electron app is en niet native?
Ik gebruik voice activation, :)
Heeft het niet te maken met drm en anti cheat?
Ja, soms. DRM en anti cheat services willen graag draaien onder het 'system' account zodat ze overal mee kunnen kijken. Als een stuk software (ook andere software doet dit soms zoals licentie software) zulke services wil installeren dan heb je 'admin' rechten nodig. Vaak is er echter geen verhoogde rechten nodig maar vraagt de installer dat wel.
LOCALSYSTEM is geen Administrator he? Dat is een verborgen gebruiker die als Owner staat aangewezen voor kritieke Windows-services en registerdelen, zodat zelfs een Administrator deze niet uit kan zetten. Ik weet niet hoe hij het voor elkaar heeft gekregen om als LOCALSYSTEM commando's uit te voeren, maar als dit echt waar is zal het probleem niet alleen bij Steam liggen, maar misschien de Windows MSI service in zijn geheel.
Nouja dat valt wel mee. Heel veel services en andere achtergrondprocessen draaien onder deze gebruiker.

Overigens heb ik dit lek al 'n paar dagen geleden (kort nadat Василий het poste) gemeld bij Tweakers, maar daar is toen niks mee gedaan.
Met LocalSystem kun je vrijwel hetzelfde. Als je een commandprompt opent met LocalSystem privileges dan kun je echt bijzonder veel, soms zelfs meer dan een Administrator.
Hangt van de service af. Sommige services zijn als gebruiker wel te stoppen en je kan zo een service dus alsnog dingen laten starten vanuit het system account. Dat is dus net het gevaar dat hier misbruikt wordt
Mooiste is zelfs.
Als je op de een of andere manier een game wat vraagt om admin rights opgestart krijgt zonder admin rights werken ze in de meeste gevallen gewoon perfect.

In mijn geval add ik een rechtsclick menu optie via regedit.
Ik kan bijvoorbeeld Black Desert (welke admin vraagt voor de anti-cheat) perfect opstarten zonder admin rechten en alles werkt naar behoren.

Ook kan ik dit bijvoorbeeld met CPUz, maar dan krijg ik wat errors en heel veel lege veldjes. :P
Dat CPUz was een test van mij om te kijken of dat ook werkt.
Spijtig dat die man zo hard druk heeft moeten zetten. Dat pleit niet voor Valve - ik zet hen dan ook met genoegen op de pikzwarte lijst - ze komen er gewoon niet meer in.
Spijtig dat die man zo hard druk heeft moeten zetten. Dat pleit niet voor Valve - ik zet hen dan ook met genoegen op de pikzwarte lijst - ze komen er gewoon niet meer in.
Ligt in deze niet direct aan Valve, maar aan de uitbesteding van Valve's bug bounties aan HackerOne.
Dat is een separate organisatie waar Valve een premium service afneemt om ook het cureren en afwegen van binnenkomende bug reports af te handelen.

Valve hanteert daarnaast altijd nog een eigen email adres voor security issues, en stelt een public key beschikbaar die voor encrypted mail gebruikt kan worden naar dat adres toe.


De onderzoeker in kwestie had waarschijnlijk meer cooperatie van Valve gekregen als er direct via dat adres contact opgenomen was, ipv alles via HackerOne te laten lopen.

Ja; de escalatie vanuit HackerOne naar Valve heeft inderdaad ook plaats gevonden en was ook afgeketst. Maar: dat is dus wel gebeurd op basis van gekleurde informatie die HackerOne naar Valve doorgestuurd heeft en niet op basis van directe communicatie tussen Valve en de onderzoeker in kwestie.

[Reactie gewijzigd door R4gnax op 11 augustus 2019 22:36]

users zouden sowieso al in HKLM niet meer dan read mogen hebben, maar leg dat maar eens uit aan alle programmeurs en Microsoft.
Dat is standaard ook zo, alleen Valve heeft dat in de Steam node expliciet aangepast zodat users ook write rechten hebben.
Die programmeurs is waarom Microsoft het default toe laat. Je kunt het namelijk zonder moeite wel afschermen.
MS maakt er in HKLM soms zelf ook een zootje van. Het register bestaat al sinds Windows NT en er zit nog enorm veel legacy code in..
Waarom noemen jullie het een zeroday? Het is al sinds 2015 bekend: https://packetstormsecurity.com/files/cve/CVE-2015-7985
Als je op de link klikt in het artikel (https://amonitoring.ru/article/steamclient-0day/) zie je wel degelijk dat het gaat om een 0 Day. De vulnerability die jij linkt is een andere die blijkbaar nog niet gefixed is.
Het was eens een Zeroday die kennelijk nog steeds niet aangepakt is. Ik vind Steam een heel fijn programma, maar ik ben benieuwd naar waarom hier zo laks op gereageerd wordt.

Edit: HackerOne wijst het af. Valve heeft er niet inhoudelijk op gereageerd. Ik zei ook niet wie er in deze laks reageert...
NB: hoe is mijn reactie offtopic?

[Reactie gewijzigd door JW1 op 11 augustus 2019 14:09]

Het is dan ook eigenlijk geen Steam-issue. Steam pakt hier met de 'bugfix' het probleem slechts halverwege aan.

De echte root cause hier zit hem in het besturingssysteem zelf, Windows, die bovenstaande exploit toelaat als bepaalde voorwaarden zijn voldaan. In dit geval is (was) de aanwezigheid van Steam een mogelijke aanvalsvector, however mij lijkt dat er sowieso eerst al toegang tot de computer moet zijn verschaft, in welk geval je sowieso al grotere problemen hebt. Maar als je dan al toegang hebt tot de computer, en je hebt de mogelijkheid andere software dan Steam te draaien/installeren die bovenstaande exploit ook toelaat, dan hebben nu Valve (en HackerOne) flink wat negatieve PR over zich heen gekregen om iets dat niet eens echt hun fout is.
Nee. De fout ligt bij Valve, niet bij Microsoft. Valve heeft ervoor gezorgd dat er software gestart kan worden met elevated right. Iets wat malware over het algemeen zeer fijn vind.
Dus malware komt met jou normale rechten op je computer, en misbruikt deze slordigheid van Valve en voila, systeem compleet gecompromitteerd.
Dus omdat Microsoft iets toelaat is het een Microsoft issue? Vreemde redenatie.
Valve heeft bewust voor deze vreemde manier van werken gekozen. Dat had niet gehoeven, dus de enige die hier fout is, is Valve. De initieele reactie van Valve maakt het nog vreemder.

Microsoft hier bij halen is gewoon bashen om het bashen.
Huh nee. Ik weet zeker dat ik de Steam installer root toegang gaf, wat het gebruikte om systeem applicaties te installeren en te draaien.

Een beetje vreemde redenatie. Dat is alsof je te gast bent bij schoonfamilie, toegang krijgt tot de WC en het dan goed vind om de zeep in je tas te stoppen; want ja het is niet netjes van je maar het zijn je schoonouders die je toegang gaven.
Microsoft staat het toe ja dat je als Administrator op je systeem alles kan doen. En dus ook een service maken + installeren die onveilig is. Dat is niet Microsofts schuld.

Als je geen Administrator kon worden dan kon je ook geen dingen installeren om maar wat te zeggen. Kan dus niet anders.
Als ik door klik en kijk naar de opmerkingen zie ik dat de update de kwatsbaarheid volgens gebruikers niet gefixed is maar steam die beweerd het wel gefixed te hebben in patch notes, iemand meer info hierover?

[Reactie gewijzigd door stihosti op 11 augustus 2019 11:43]

Zover ik lees op reddit is het wel gefixed, maar is deze (https://packetstormsecuri...Privilege-Escalation.html) CVE van 2015 niet gefixed.

Correct me if I'm wrong.

[Reactie gewijzigd door Jerryy op 11 augustus 2019 11:59]

HackerOne, het platform dat Valve gebruikt om meldingen over kwetsbaarheden te verwerken, wees Kravets' rapport aanvankelijk af, maar kwam daar toen op terug en deed er uiteindelijk niets mee. Toen Kravets stelde dat hij overtuigd was van de ernst van de zaak en hij desnoods zelf zou publiceren, verbood HackerOne dat, ondanks dat ze de ernst niet inzagen, aldus Kravets.
Heeft HackerOne hier al publiekelijk op gereageerd? Dit soort openbare aantijgingen kunnen het kwetsbare vertrouwen in zulke bedrijven snel doen zinken. Ik zou geen zaken meer met ze doen als ik opeens zo wordt behandeld als white-hat hacker.
verbood HackerOne dat, ondanks dat ze de ernst niet inzagen, aldus Kravets.
Tja, HackerOne kan dat best verbieden, alleen is het niet aan hun om het te verbieden. Er is geen wet (althans niet in de meeste landen, ook niet de VS) die verbied om dit soort lekken te publiceren. Het is alleen wel zo dat moralistisch gezien het niet OK is om het lek te publiceren voordat er een fix uitgebracht is (of voordat het duidelijk is dat het lek al actief misbruikt wordt).
Ik neem aan dat deze zeroday kan worden gebruikt doir steam-apps, of apps die met steam worden opgestart. Dat maakt het gelukkig iets veiliger.
Ik ben bang dat je daar een verkeerde aanname doet. Als ik het goed begrijp kan via deze methode iedere willekeurige executable op een systeem als de SERVICE user gestart worden. Deze user heeft op Windows volledige rechten op het systeem.
Bekijk de bijgevoegde screenshot eens.
Dit klinkt als een lek die alleen werkt op Windows, misschien was het handig geweest om dat in de titel van dit artikel te vermelden?
Nee, dat is overbodig.

Windows is het OS dat bij uitstek gebruikt word door mensen die Steam gebruiken.
Juist gamers die geen Windows willen gebruiken, waaronder ondergetekende, gebruiken Steam omdat daar een enorm groot aantal games te vinden zijn die out-of-the-box op Linux werken. Dus ja, het is wel degelijk handig om even in de titel van dit artikel te vermelden dat de kwetsbaarheid alleen op Windows van toepassing is.
Titel? nee.
Body van het artikel? ja.

Dít zijn de statistieken volgens Steam survey Juli 2019:
Windows: 96,28%
OSX: 2,93%
Linux: 0,79%

Leuk voor jou en iedereen die mij -1 modereert dat jullie wél Linux+Steam gebruiken.. maar jullie zijn toch echt statistisch irrelevant. :+

Dat Steam grootschalig door linux gebruikers gebruikt word om te gamen is één getalletje.
Hier echter hebben we het over Steam gebruikers die Linux gebruiken, niet Linux gebruikers die Steam gebruiken.
Het aantal Steam gebruikers dat Linux gebruikt is gewoon niet relevant genoeg om een dusdanige annotatie te verantwoorden in de titel van dit artikel.

[Reactie gewijzigd door Ayporos op 11 augustus 2019 14:32]

Het percentage wat een bepaald platform gebruikt is irrelevant hiervoor. Feit is dat Steam op meerdere platformen draait, maar deze lek maar van toepassing is op één van die platformen. Dit is cruciale informatie, maakt niet uit voor hoeveel mensen.

Daarbij, met deze titel had het net zo goed een Linux of een macOS lek kunnen zijn, en dan hadden al die Windows gebruikers het toch ook wel fijn gevonden om te weten dat het niet voor hun platform geld.
Uhm, de beschrijving in het artikel over het lek (over registry) geeft al aan dat het om Windows gaat en niet om Linux of MacOS.. Dat zou je als tweaker toch wel moeten weten.. En in een titel moet ook weer niet te lang zijn, zolang het maar niet TE clickbait is zoals vaak genoeg hier op tweakers (en natuurlijk is tweakers daar verre van een uitzondering, gebeurd bij ALLE nieuwssites).


Om te kunnen reageren moet je ingelogd zijn


OnePlus 7 Pro (8GB intern) Nintendo Switch Lite LG OLED C9 Google Pixel 3a XL FIFA 19 Samsung Galaxy S10 Sony PlayStation 5 Smartphones

'14 '15 '16 '17 2018

Tweakers vormt samen met Tweakers Elect, Hardware Info, Autotrack, Nationale Vacaturebank, Intermediair en Independer de Persgroep Online Services B.V.
Alle rechten voorbehouden © 1998 - 2019 Hosting door True