image

Microsoft erkent gebreken Windows 10 CFG-beveiliging

vrijdag 22 juni 2018, 11:21 door Redactie, 22 reacties

Onderzoekers hoeven niet langer meer de Control Flow Guard (CFG) beveiligingsfeature in Windows 10 te onderzoeken, aangezien de beperkingen bij Microsoft bekend zijn, zo laat de softwaregigant weten. CFG is een beveiligingsmaatregel in Windows 10 die het kapen van code door aanvallers moet voorkomen en veel bekende aanvalstechnieken op deze manier weet te dwarsbomen.

CFG was een onderdeel van het beloningsprogramma van Microsoft. Onderzoekers die de beveiligingsfeatures van Windows weten te omzeilen kunnen dit aan Microsoft melden en worden hiervoor beloond. CFG was volgens de softwaregigant een zeer populair doel voor beveiligingsonderzoekers. "Dankzij dit onderzoek hebben we veel geleerd over de verschillende bugs en ontwerpbeperkingen van CFG", zegt Microsofts Joe Bialek.

Inmiddels is er echter genoeg over de beperkingen van CFG bekend en heeft Microsoft besloten om het uit het beloningsprogramma voor onderzoekers te halen. "We denken dat we genoeg weten over de beperkingen van CFG en het dreigingsmodel waar we het ontwerp voor moeten aanpassen", gaat Bialek verder. Hij stelt dat aanvullend onderzoek naar het omzeilen van CFG geen zin heeft totdat de nu bekende beperkingen zijn verholpen.

Ook wil Microsoft dat onderzoekers zich op andere onderdelen gaan richten. Hoewel er geen beloningen voor CFG meer worden uitgekeerd is Microsoft niet van plan om de beveiligingsfeature uit Windows 10 te verwijderen. Nadat de tekortkomingen zijn verholpen is de softwaregigant van plan om CFG weer aan het programma toe te voegen.

Reacties (22)
22-06-2018, 11:30 door Anoniem
oh? dit lijkt wel een reactie van schaamte dan wat anders?

samenvatting:

stap 1: kijk nieuwe feature cool en secure en moet je hebben
stap 2: schiet er maar op via onze bug bounty
stap 3: helemaal kapot geschoten en fundamenteel issues mee en dan
stap 4: ja kuch ahum, stop maar met schieten, we weten het nu wel, kijk look birdy daarzo

die laatste zinnen zijn ook wel weer typisch voor bedrijven en organisaties die met de broek op de knieen betrapt zijn

"Hoewel er geen beloningen voor CFG meer worden uitgekeerd is Microsoft niet van plan om de beveiligingsfeature uit Windows 10 te verwijderen. Nadat de tekortkomingen ..."
22-06-2018, 12:44 door Anoniem
ja het is triest maar wat moet je nu er is geen andere software pakket dat je nou zegt van zo dat is veilig
neen moet je Linux nemen word er gezegd hier/daar nou ook dat is niet veilig nou ik weet het voorlopig wel ik koopt voorlopig geen nieuwe pc meer en zeker niet met die oude processor
????…...ja zegt het maar?
22-06-2018, 13:17 door Anoniem
Door Anoniem: oh? dit lijkt wel een reactie van schaamte dan wat anders?

samenvatting:

stap 1: kijk nieuwe feature cool en secure en moet je hebben
stap 2: schiet er maar op via onze bug bounty
stap 3: helemaal kapot geschoten en fundamenteel issues mee en dan
stap 4: ja kuch ahum, stop maar met schieten, we weten het nu wel, kijk look birdy daarzo

die laatste zinnen zijn ook wel weer typisch voor bedrijven en organisaties die met de broek op de knieen betrapt zijn

"Hoewel er geen beloningen voor CFG meer worden uitgekeerd is Microsoft niet van plan om de beveiligingsfeature uit Windows 10 te verwijderen. Nadat de tekortkomingen ..."

Nee hoor, dit is gewoon hoe CFG in Windows is geïmplementeerd.
Props voor MS om dit te doen want het is wel extra werk om alles goed te krijgen.
Nog geen enkel mainstream OS heeft CFI behalve Windows en Linux als je grsecurity subscription hebt.
22-06-2018, 16:57 door Anoniem
"Nee hoor, dit is gewoon hoe CFG in Windows is geïmplementeerd."

naive vraag, maar als het blijkt (fundamenteel) eenvoudig te omzeilen en veel issues heeft, heeft het dan nog wel nut?

en als het wel nut heeft te doen, maar erg sterk van de implementatie (ipv iets fundamenteels) afhangt, dan heeft MS toch een slippertje hierzo?

oftewel, is het nu een blamage, of een techniek die niet veel gaat bieden ook al los je bepaalde implementatie probleempjes die elke keer weer naar boven komen op?

parallel een beetje de anti virus scanner discussie misschien wel; achteraf bij het weten waar je naar zoekt (signatures bekend) kun je op viri scannen die niet ongemerkt er door geglipt zijn. je loopt per definitie altijd achter de zaak aan daarin. is dat hierzo met dit ook (oftwel een fundamenteel issue), of is het oops, we hebben wel heel veel gemissed/laten liggen half-baked geimplementeerd?

de vraag is voor mij nu ook waarom de grsecurity patches niet std in de mainline linux kernel al zitten. misschien geeft me dat wat meer inzicht. ben druk aan het googlen...
22-06-2018, 18:39 door karma4
Door Anoniem:
naive vraag, maar als het blijkt (fundamenteel) eenvoudig te omzeilen en veel issues heeft, heeft het dan nog wel nut?
....
de vraag is voor mij nu ook waarom de grsecurity patches niet std in de mainline linux kernel al zitten. misschien geeft me dat wat meer inzicht. ben druk aan het googlen...
De laatste vraag is eenvoudig te beantwoorden
https://www.theregister.co.uk/2018/06/11/open_source_perens/ ruzie van de grsecurity tov van de Torvald lijn. Linus heeft grsecurity beoordeeld als crap (troep).

Van de eerste weten we te weinig. Het lijkt een goed veelbelovend nieuw iets. De aanduiding ontwerpfouten duidt er op dat met andere inzichten om bepaalde hindernissen doelgericht om heen gewerkt kan worden. Dan is het niet nutteloos, er zijn extra hindernissen, maar ook niet onfeilbaar.
Onfeilbaar tegen misbruik van de eigenaar van het systeem lijkt me een utopie.
22-06-2018, 22:35 door -karma4
Hopelijk schakelt Microsoft deze functionaliteit in ieder geval tijdelijk uit in Windows 10. Want er zijn bergen kwetsbaarheden gevonden. Daar wil je je gebruikers toch niet aan blijven blootstellen. Eerst problemen oplossen, dan functionaliteit weer aanzetten. Duh... (zou je denken).
23-06-2018, 01:59 door Anoniem
Door Anoniem: "Nee hoor, dit is gewoon hoe CFG in Windows is geïmplementeerd."

naive vraag, maar als het blijkt (fundamenteel) eenvoudig te omzeilen en veel issues heeft, heeft het dan nog wel nut?

en als het wel nut heeft te doen, maar erg sterk van de implementatie (ipv iets fundamenteels) afhangt, dan heeft MS toch een slippertje hierzo?

oftewel, is het nu een blamage, of een techniek die niet veel gaat bieden ook al los je bepaalde implementatie probleempjes die elke keer weer naar boven komen op?

parallel een beetje de anti virus scanner discussie misschien wel; achteraf bij het weten waar je naar zoekt (signatures bekend) kun je op viri scannen die niet ongemerkt er door geglipt zijn. je loopt per definitie altijd achter de zaak aan daarin. is dat hierzo met dit ook (oftwel een fundamenteel issue), of is het oops, we hebben wel heel veel gemissed/laten liggen half-baked geimplementeerd?

de vraag is voor mij nu ook waarom de grsecurity patches niet std in de mainline linux kernel al zitten. misschien geeft me dat wat meer inzicht. ben druk aan het googlen...

Misschien omdat CFI niet heel makkelijk is om juist te implementeren en het kost veel tijd met een grote code base om alles te fixen.
Juist daarom zit grsecurity ook niet in de mainline omdat er ten eerste weinig mensen zijn die zulke implementaties snappen en kunnen onderhouden.

Door karma4:
Door Anoniem:
naive vraag, maar als het blijkt (fundamenteel) eenvoudig te omzeilen en veel issues heeft, heeft het dan nog wel nut?
....
de vraag is voor mij nu ook waarom de grsecurity patches niet std in de mainline linux kernel al zitten. misschien geeft me dat wat meer inzicht. ben druk aan het googlen...
De laatste vraag is eenvoudig te beantwoorden
https://www.theregister.co.uk/2018/06/11/open_source_perens/ ruzie van de grsecurity tov van de Torvald lijn. Linus heeft grsecurity beoordeeld als crap (troep).

Van de eerste weten we te weinig. Het lijkt een goed veelbelovend nieuw iets. De aanduiding ontwerpfouten duidt er op dat met andere inzichten om bepaalde hindernissen doelgericht om heen gewerkt kan worden. Dan is het niet nutteloos, er zijn extra hindernissen, maar ook niet onfeilbaar.
Onfeilbaar tegen misbruik van de eigenaar van het systeem lijkt me een utopie.

grsecurity is al jaren open source maar tot recentelijk heeft niemand de moeite genomen om features te upstreamen.
Zitten nu een paar features in van grsecurity maar dat ging heel moeizaam en developers die dat gedaan hebben ook paar 0days toegevoegd omdat ze code veranderd hebben waar ze niks van snapten.

Door The FOSS: Hopelijk schakelt Microsoft deze functionaliteit in ieder geval tijdelijk uit in Windows 10. Want er zijn bergen kwetsbaarheden gevonden. Daar wil je je gebruikers toch niet aan blijven blootstellen. Eerst problemen oplossen, dan functionaliteit weer aanzetten. Duh... (zou je denken).

Bergen kwetsbaarheden is natuurlijk ook weer onzin.
Uitzetten heeft ook weinig zin want het zijn hooguit wat bypasses en implementatie fouten, geen bugs die rechten kunnen verhogen of code kan uitvoeren.
23-06-2018, 09:06 door -karma4
Door Anoniem:
Door The FOSS: Hopelijk schakelt Microsoft deze functionaliteit in ieder geval tijdelijk uit in Windows 10. Want er zijn bergen kwetsbaarheden gevonden. Daar wil je je gebruikers toch niet aan blijven blootstellen. Eerst problemen oplossen, dan functionaliteit weer aanzetten. Duh... (zou je denken).

Bergen kwetsbaarheden is natuurlijk ook weer onzin.
Uitzetten heeft ook weinig zin want het zijn hooguit wat bypasses en implementatie fouten, geen bugs die rechten kunnen verhogen of code kan uitvoeren.

Ik lees toch anders op internet:

https://www.techworm.net/2018/03/design-flaw-in-microsofts-control-flow-guard-allows-complete-bypass.html

According to the report, more than 500 million Windows systems currently have the feature, which leaves them at risk of exploitation. Microsoft have been notified of the security issue by the researchers, which the company plans to fix as part of the upcoming Windows 10 RS4 release.

U zei?
23-06-2018, 10:26 door Anoniem
het is me duidelijk:

1)

grsecurity zit niet in mainline omdat linus de patches crap kwaliteit vindt en moeilijk te maintainen en originele bouwer doet geen enkele moeite (geeft een 'blob' met de melding 'zoek het maar uit') en gedraagt zich protectionisties dmv extra restricties op code die onder GPLv2 die niet mogen hebben.


2)

er zit in die grsecurity vooralsnog niet een (fundamenteel) design ding in alhoewel de daadwerkelijke implementatie niet breed deployed en beschikbaar is.


3)

on topic weer:

de MS implementatie (en design daarvan) van CFG heeft issues en design errors en dat is bekend via bug bounty en kan zelfs soms onnverwachte exploits opleveren.


mijn conclusie is dus dat dit topic dus wel een 'walk of shame is' voor MS volgens het std PR stappen plan:

stap 1: kijk nieuwe feature cool en secure en moet je hebben
stap 2: schiet er maar op via onze bug bounty
stap 3: helemaal kapot geschoten en fundamenteel issues mee en dan
stap 4: ja kuch ahum, stop maar met schieten, we weten het nu wel, kijk look birdy daarzo
23-06-2018, 10:36 door Anoniem
extra achtergrond:


https://www.darkreading.com/vulnerabilities---threats/design-weakness-in-microsoft-cfg-allows-complete-bypass-/d/d-id/1331200
23-06-2018, 12:13 door Anoniem
Door The FOSS:
Door Anoniem:
Door The FOSS: Hopelijk schakelt Microsoft deze functionaliteit in ieder geval tijdelijk uit in Windows 10. Want er zijn bergen kwetsbaarheden gevonden. Daar wil je je gebruikers toch niet aan blijven blootstellen. Eerst problemen oplossen, dan functionaliteit weer aanzetten. Duh... (zou je denken).

Bergen kwetsbaarheden is natuurlijk ook weer onzin.
Uitzetten heeft ook weinig zin want het zijn hooguit wat bypasses en implementatie fouten, geen bugs die rechten kunnen verhogen of code kan uitvoeren.

Ik lees toch anders op internet:

https://www.techworm.net/2018/03/design-flaw-in-microsofts-control-flow-guard-allows-complete-bypass.html

According to the report, more than 500 million Windows systems currently have the feature, which leaves them at risk of exploitation. Microsoft have been notified of the security issue by the researchers, which the company plans to fix as part of the upcoming Windows 10 RS4 release.

U zei?

Dus alleen een bypass.
Maakt dus weinig verschil als MS CFG uitzet in Windows want dan zijn die gebruikers alsnog kwetsbaar.
23-06-2018, 13:08 door Anoniem
"Dus alleen een bypass.
Maakt dus weinig verschil als MS CFG uitzet in Windows want dan zijn die gebruikers alsnog kwetsbaar."

ja

equivalent dus aan de situatie dat een klusjesman (betaald en al) je een anti in-braak deur in je huis plaats en waarvan dan blijkt dat het slot niet werkt en iedereen naar binnen kan (als ze maar weten welke deur dat in de straat is).
23-06-2018, 13:33 door Anoniem
Door Anoniem: "Dus alleen een bypass.
Maakt dus weinig verschil als MS CFG uitzet in Windows want dan zijn die gebruikers alsnog kwetsbaar."

ja

equivalent dus aan de situatie dat een klusjesman (betaald en al) je een anti in-braak deur in je huis plaats en waarvan dan blijkt dat het slot niet werkt en iedereen naar binnen kan (als ze maar weten welke deur dat in de straat is).

Alleen betaal je niets voor exploit mitigations in Windows.
Anyway CFI is niet de mitigation to rule em all.
Er zijn nog vele vectors mogenlijk zie data only attacks[1].

1 : https://conference.hitb.org/hitbsecconf2017ams/sessions/bypassing-memory-mitigations-using-data-only-exploitation-techniques-part-ii/
23-06-2018, 15:52 door karma4 - Bijgewerkt: 23-06-2018, 16:04
Altijd eerst de achtergronden nagaan.
https://msdn.microsoft.com/en-us/library/windows/desktop/mt637065(v=vs.85).aspx
Het is een extra beveiliging naast al het andere welke deapplicatie zelf als compile optie moet aangeven.
Als extra iets is er weinig reden om het geheel uit te zetten. Ja je kan er nu om heen werken. De black hacker zal er wel moeite voor moeten doen. Het is niet iets wat een geheel nieuw probleem introduceert, dat vind ik nergens.

Het u s het equivalent van een slot net pollitiejeurmerk waar ineens toch de cylinder er eenvoudig uitgeboord kan worden. Nog steeds een goed werkend slot voor de meeste gevallen. De sleutel onder de deurmat leggen is slimmer.

Wel typisch het probleem heeft een relatie met backward compatibility. Ofwel antieke orogramna's moeten blijven draaien.
23-06-2018, 17:11 door -karma4
Door Anoniem:
Door The FOSS: ... U zei?

Dus alleen een bypass.
Maakt dus weinig verschil als MS CFG uitzet in Windows want dan zijn die gebruikers alsnog kwetsbaar.

Microsoft compileert - blijkbaar - haar runtime libraries met CFG. Alle software die gebruik maakt van die libraries wordt kwetsbaar. Zoals Edge.

We assessed the availability of our gadgets to understand
the feasibility and impact of BATE: we ran a complete
assessment of Windows 10 system libraries, and found many
occurrences of our gadgets, even in appealing targets (such
as C/C++ runtime libraries, the JavaScript engine, a media
codec, and Microsoft Office). Every application that loads
any library that contains our gadgets is exposed to BATE.
We therefore conclude that BATE is a realistic threat, both
on 32-bit and 64-bit systems. We demonstrated this by using
BATE to build a remote code execution exploit against the
Microsoft Edge browser, a high-value target (because it can
be exploited remotely, as the victim only needs to visit, for
example, a compromised webpage).

http://wp.internetsociety.org/ndss/wp-content/uploads/sites/25/2018/02/ndss2018_05A-3_Biondo_paper.pdf
23-06-2018, 18:34 door karma4 - Bijgewerkt: 23-06-2018, 18:46
Door The FOSS:
Microsoft compileert - blijkbaar - haar runtime libraries met CFG. Alle software die gebruik maakt van die libraries wordt kwetsbaar. Zoals Edge.
Ze worden niet ineens kwetsbaar. Er staat dat deze specifieke beveiliging te omzeilen valt. Alle andere beveiligingsmechamismen worden nergens genoemd.

Waar ik niet uit ben is hoe ze het probleem gevonden hebben. Het zou met niets verbazen dat het code analyse betreft. Veel code vam ms rond .Net is free open source gemaakt al is het nog steeds copy protected. Testers onderzoekers krijgen betaald via dat bug bounty program en doen het niet gratis.

Het flat memory model van de huidige processors maakt het lastig om memory gebieden van subthreads met een gewenste eigen security context gescheiden te houden.
Alignment padding als oplossing .... Zie je pdf.
23-06-2018, 20:36 door Anoniem
je koopt windows 10 en daarbij wordt je verteld dat het veilig is in gebruik omdat het bijvoorbeeld CFG heeft.

nu blijkt CFG eenvoudig te omzeilen zodat het geen extra veiligheid biedt.

en dat komt door een bewuste design keuze van MS in de implementatie.

net als de deur met een niet werkend slot, dat door een dure klusjesman bewust is geplaatst, een gebrekkig product dus.

mensen kunnen dit downplayen zoveel ze willen, die ms fanboys met hun dogmas, maar het het blijkt objectief meetbaar meuk te zijn wat ze verkocht hebben. aansprakelijk stellen dus, net als die klusjesman die je betaald hebt. niks nieuws onder de zon.
23-06-2018, 22:22 door karma4
Door Anoniem:
net als de deur met een niet werkend slot, dat door een dure klusjesman bewust is geplaatst, een gebrekkig product dus.

mensen kunnen dit downplayen zoveel ze willen, die ms fanboys met hun dogmas, maar het het blijkt objectief meetbaar meuk te zijn wat ze verkocht hebben. aansprakelijk stellen dus, net als die klusjesman die je betaald hebt. niks nieuws onder de zon.
Je je hebt bij dd slotenmaker een gepatenteerd slot gekocht. Nu verloopt dat patent is het ineens onveilig?

Het gaat niet om downplayen.
Ik heb enkel een grondige hekel aan complotters en "als dat waar is: verdachtmakingen met een verborgen agenda.
Daar zitten te vaak niet zulke fraaie doelen achter.
24-06-2018, 09:01 door -karma4
Microsoft compileert - blijkbaar - haar runtime libraries met CFG. Alle software die gebruik maakt van die libraries wordt kwetsbaar. Zoals Edge.

We assessed the availability of our gadgets to understand
the feasibility and impact of BATE: we ran a complete
assessment of Windows 10 system libraries, and found many
occurrences of our gadgets, even in appealing targets (such
as C/C++ runtime libraries, the JavaScript engine, a media
codec, and Microsoft Office). Every application that loads
any library that contains our gadgets is exposed to BATE.
We therefore conclude that BATE is a realistic threat, both
on 32-bit and 64-bit systems. We demonstrated this by using
BATE to build a remote code execution exploit against the
Microsoft Edge browser, a high-value target (because it can
be exploited remotely, as the victim only needs to visit, for
example, a compromised webpage).

http://wp.internetsociety.org/ndss/wp-content/uploads/sites/25/2018/02/ndss2018_05A-3_Biondo_paper.pdf
24-06-2018, 10:40 door Anoniem
Door The FOSS: Microsoft compileert - blijkbaar - haar runtime libraries met CFG. Alle software die gebruik maakt van die libraries wordt kwetsbaar. Zoals Edge.

We assessed the availability of our gadgets to understand
the feasibility and impact of BATE: we ran a complete
assessment of Windows 10 system libraries, and found many
occurrences of our gadgets, even in appealing targets (such
as C/C++ runtime libraries, the JavaScript engine, a media
codec, and Microsoft Office). Every application that loads
any library that contains our gadgets is exposed to BATE.
We therefore conclude that BATE is a realistic threat, both
on 32-bit and 64-bit systems. We demonstrated this by using
BATE to build a remote code execution exploit against the
Microsoft Edge browser, a high-value target (because it can
be exploited remotely, as the victim only needs to visit, for
example, a compromised webpage).

http://wp.internetsociety.org/ndss/wp-content/uploads/sites/25/2018/02/ndss2018_05A-3_Biondo_paper.pdf

exact!

wat dus impliceerd dat als je een zeer cleane code hebt waarin geen memory leaks en dodgy pointer werk in zit (en waar CFG dus nutteloos zou zijn), maar wel een std routine uit die C lib gebruikt, die dus met een halfbakken CFG gecompileerd is, je code via die include niet beschermd meer is. het simpelweg gebruiken van de C lib routine maakt je code dus zwakker eigenlijk.

dus.

CFG had compromis loos geimplementeerd moeten zijn, en als het dan voor bepaalde dingen niet bruikbaar is, dan gebruik je het maar niet. maar daar waar het wel bruikbaar dan is, is het een vaste goede extra laag bescherming. nu is het alsof je water wilt dragen naar de zee met een vergiet. het is een laag extra die nu *niets* extra beschermd door compromis keuzes van MS die zoals te verwachten is verstrengeld is met commerciele belangen.

kunnen fanboys, die met roze brilletjes in een dogma zitten, zeggen wat ze willen, het is dus objectief meetbaar MEUK!
24-06-2018, 18:09 door karma4 - Bijgewerkt: 24-06-2018, 18:12
Door Anoniem: ....
kunnen fanboys, die met roze brilletjes in een dogma zitten, zeggen wat ze willen, het is dus objectief meetbaar MEUK!
Ik zie enkel linux fan boys die iets wat ze niet gebruiken enkel willen bashen om een linux geloof te verbreiden.

Dat is jammer van die os flaming want het betekent tevens een blokkade op verbetering van informatieveiligheid.
Enig idee hoe het met dat soort zaken in de grotere organisatie aan toe gaat? Je wordt niet vrolijk van de houding mijn os is veilig dus informatie hoeft niet afgeschermd te worden. Dat is voor de applicatie (niet mijn probleem)

Alsjeblieft het verhaal over cfg settings gad gelezen het zijn dd applicaties die dd setting nodig hebben. Het zit niet in de gadgets ofwel libraries. Welke applicaties bestaan er nog meet dan een browser denk je?
24-06-2018, 20:54 door Anoniem
"BATE just bypasses CFG completely, so an attacker can then apply more common and easier code-reuse techniques for the payload. Previous bypasses were more application-specific, while BATE requires only certain common libraries to be loaded by the victim process. "On 32-bit, basically everything is exploitable because the C runtime library is exposed to BATE," Biondo says."

uit

https://www.darkreading.com/vulnerabilities---threats/design-weakness-in-microsoft-cfg-allows-complete-bypass-/d/d-id/1331200

dus door CFG is de win10 security weldegelijk achteruitgegaan. ze hebben een set gadgets gevonden 'to rule them all' omdat (citaatje weer) "over de verschillende bugs en ontwerpbeperkingen van CFG" ervoor gezorgd hebben dat de std C lib plenty geschikte gadgets heeft => elke applicatie die voorheen als een aparte case exploit moest worden nu door de 'gadgets to rule them all' in de lib C allemaal effortless de CFG kunnen bypassen. inderdaad een zeef dus zoals iemand hierboven al gepost had. een zeef die nu vrijwel aan elke applicatie vast geschroefd zit. indeed. wat een rommeltje toch weer.
Reageren

Deze posting is gelocked. Reageren is niet meer mogelijk.