"Take a Way" - säkerhetshål i AMD-processorer

Permalänk
Medlem

"Take a Way" - säkerhetshål i AMD-processorer

Sidokanaler för att härleda data som hanteras på samma CPU men som hör till någon annan process blev ju det nya heta i och med Spectre och alla efterföljande liknande attacker, vilket framförallt Intel fått smaka på om och om igen.

Nu har det tydligen upptäckts ännu ett nytt säkerhetshål av samma typ, denna gång AMD-exklusivt. Om tar fasta på forskningsrapportens titel så verkar det kallas "Take a Way".
Processorer från Bulldozer och framåt, inklusive Zen2, påverkas. (Ryzen, Threadripper och EPYC är alla påverkade.)
Se t.ex. https://www.zdnet.com/article/amd-processors-from-2011-to-201... för en mer ingående artikel.

I summeringen i forskarnas rapport noterar de just att attacken leder till att data som ej skall vara tillgänglig läcks (konceptuellt liknande Spectre, m.fl. attacker).

"We established a high-speed covert channel and utilized it in a Spectre attack to leak secret data from the kernel. Furthermore, we reduced the entropy of different ASLR implementations from native code and sandboxed JavaScript. Finally, we recovered a key from a vulnerable AES implementation."

Forskarna noterar även i sin rapport att felen går att mitigera i mjukvara för befintliga produkter och i hårdvara för framtida, men AMD har ännu inte publikt kommenterat det hela (borde väl ske här: https://www.amd.com/en/corporate/product-security ), så det är väl högst oklart vad status är på de tänkta uppdateringarna är (oavsett om detta är något som skulle innebära AGESA, mikrokod och/eller något slags workaround på operativsystemsnivå.

"Our attacks demonstrate that AMD’s design is vulnerable to sidechannel attacks. However, we propose countermeasures in software and hardware, allowing to secure existing implementations and future designs of way predictors."

Blir intressant att se hur problematiskt detta blir i praktiken, det låter som att det eventuellt är mer praktiskt möjligt att utnyttja än en del av de andra attackerna, och i så fall blir det ju intressant både när det kommer en workaround och vad prestandakostnaden kan tänkas bli för denna workaround (som indikerats bör vara möjlig).

Sedan är det ju även intressant om det bara är början eller om det nu fortsätter att trilla in fler problem som påverkar AMD eftersom deras produkter nu uppenbart också hamnat under luppen.

Visa signatur

Desktop: Ryzen 5800X3D || MSI X570S Edge Max Wifi || Sapphire Pulse RX 7900 XTX || Gskill Trident Z 3600 64GB || Kingston KC3000 2TB || Samsung 970 EVO Plus 2TB || Samsung 960 Pro 1TB || Fractal Torrent || Asus PG42UQ 4K OLED
Proxmox server: Ryzen 5900X || Asrock Rack X570D4I-2T || Kingston 64GB ECC || WD Red SN700 1TB || Blandning av WD Red / Seagate Ironwolf för lagring || Fractal Node 304

Permalänk
Medlem

Nu har AMD kommenterat det:

"Take A Way
3/7/20

We are aware of a new white paper that claims potential security exploits in AMD CPUs, whereby a malicious actor could manipulate a cache-related feature to potentially transmit user data in an unintended way. The researchers then pair this data path with known and mitigated software or speculative execution side channel vulnerabilities. AMD believes these are not new speculation-based attacks.

AMD continues to recommend the following best practices to help mitigate against side-channel issues:

* Keeping your operating system up-to-date by operating at the latest version revisions of platform software and firmware, which include existing mitigations for speculation-based vulnerabilities
* Following secure coding methodologies
* Implementing the latest patched versions of critical libraries, including those susceptible to side channel attacks
* Utilizing safe computer practices and running antivirus software"

(från https://www.amd.com/en/corporate/product-security )

Låter som att AMD menar att utnyttjandet av det nyupptäckta problemet kräver att man inte mitigerat tidigare kända problem (Spectre?). Skulle gärna se en mer utförlig förklaring någonstans, men OM det är korrekt så innebär det kanske mest att det är viktigare än tidigare att ha sina Spectre-patchar på plats...?

Visa signatur

Desktop: Ryzen 5800X3D || MSI X570S Edge Max Wifi || Sapphire Pulse RX 7900 XTX || Gskill Trident Z 3600 64GB || Kingston KC3000 2TB || Samsung 970 EVO Plus 2TB || Samsung 960 Pro 1TB || Fractal Torrent || Asus PG42UQ 4K OLED
Proxmox server: Ryzen 5900X || Asrock Rack X570D4I-2T || Kingston 64GB ECC || WD Red SN700 1TB || Blandning av WD Red / Seagate Ironwolf för lagring || Fractal Node 304

Permalänk
Datavetare

@evil penguin: Kan säga att AMDs svar verkar rätt märkligt, det är INTE så att denna sårbarhet försvinner om man slår på fixarna för tidigare svagheter som drabbar AMDs CPUer.

Spectre utnyttjar ju egenheter i spekulativ exekvering och branch-predictor. Detta är, likt Zombie Load, en attack som utnyttjar att data som träffar L1D$ blir tillgänglig för CPU snabbare än data som inte ligger i L1D$.

En orsak att Zen inte drabbades av SMT specifika MDS buggar är att man taggat minnesoperationer med tråd ID. Så man kan inte från tråd #0 få tag i sådant som tråd #1 på samma fysiska kärna precis läs/skrivit.

Så man är safe? Nej!

Implikationen av "skyddet" ovan gör att man från tråd #0 kan tvinga ut en viss cache-line från L1D$ till L2$. Om tråd #1 läser eller skriver en minnesadress som råkar mappa till både samma cache-set och samma cache-way så har man en attack. På Intels Core fungerar inte den attacken då val av cache-way i praktiken är slumpmässigt, det har fördelen att ge lite bättre utnyttjandegrad av cache men nackdelen att uppslagning drar mer ström då man måste kolla ett visst cache-set i alla cache-ways (8 st för dagens "big-core" X86 i L1D$).

AMD har ett patent på algoritmen att "gissa" rätt cache-way givet den virtuella adressen. Det forskarna gjorde var att lura ut hur den mappningen fungerade, m.h.a. har man nu ett sätt att få meta-information om vad tråd #0 nyligen läst/skrivit från tråd #1. Det även fast trådarna kör i olika processer och därmed borde vara helt isolerade.

Det som är en förmildrande omständighet är: fungerar bara om SMT är aktiverat och man får bara meta-information, inte direkt information om vilken data som läst/skrivit.

Detta är väldigt likt Spectre variant 1, om data används för indexera i en array kan man därifrån räkna baklänges och därmed lura ut faktisk data. Inte möjligt i det generella fallet, men tyvärr inte helt osannolikt vid just kryptering (den PoC som forskarna gjort, men inte publicerat då AMD inte get ut något patch än, användes just för att extrahera krypteringsnycklar).

Den uppenbart förvärrande egenskapen är hur pass lätt det var att svänga ihop en fungerande PoC på min 3900X givet denna information. Har lyckats kört vissa av de PoC som finns för Intel, men där har det varit nära nog ett krav att man stänger av "turbo-boost" för att ska fungera. Gjorde initialt därför det direkt på 3900X, men givet hur denna sårbarhet fungerar är det inte kritiskt att hålla en helt stabil CPU-frekvens. Det är helt enkelt så pass stor skillnad mellan träff i L1D$ (~4 cykler) och miss att man "tål" rätt stor varians.

Det skrivet: är ändå inte speciellt oroad. De vanliga hopplösa förutsättning krävs: d.v.s man måste säkerställa att attackerande tråd är låst till samma fysiska kärna, men den andra CPU-tråden, som det man attackerar. Den man attackerar måste också nästan konsekvent läsa/skriva det data man vill stjäla (det gäller i princip av svagheterna av den här typen, framförallt MDS som bara drabbar Intel). Man måste vara "root" (admin på Windows) för att låsa en process man inte själv äger till en viss CPU-tråd!

Men AMDs svar är som sagt rätt märkligt, läser man rapporten borde det vara uppenbart för i alla fall vissa av deras ingenjörer att existerande motmedel inte hjälper. Eller, inte helt sant. Jag gjorde en PoC för det som kallas "Load+Reload", den andra som kallas "Collide+Probe" borde vara omöjlig på ett system som har fixen för Meltdown. Den fixen ser till att kärnans adressrymd inte är mappad när man är i userland, kostar prestanda men redan innan Meltdown jobbade man på den patchen då den ger bättre säkerhet i flera lägen (tror MacOS kör på det sättet väldigt länge).

Tänker inte posta källkoden, i alla fall inte innan det finns en patch. Har inte trimmat in den speciellt mycket så den är inte 100 %-ig. Men tillräckligt för att visa att buggen finns.

Det som skrivs ut som "V: _" är var min "victim process" läser för data.
Det som skrivs ut som "Letter is: _" är vad mitt attackprogram tror att den läste. Båda kör som separata processer, låst till en varsin tråd på samma fysiska kärna.

V: x Letter is: 8 Letter is: 8 Letter is: x Letter is: x Letter is: 8 Letter is: x Letter is: x Letter is: x V: y Letter is: y Letter is: 9 Letter is: y Letter is: 9 Letter is: y Letter is: y Letter is: y Letter is: y V: z Letter is: 9 Letter is: z Letter is: : Letter is: : Letter is: z Letter is: z Letter is: : Letter is: z Done

Kör man samma program på Intel är det helt slumpmässigt information som skrivs av attackerande process.''

kjonsson@ryzen:~/programming/c/takeaway/build$ (taskset -c 0 ./victim Hej &); taskset -c 12 ./attacker V: H Letter is: c Letter is: H Letter is: H Letter is: H Letter is: H Letter is: H Letter is: H Letter is: H V: e Letter is: e Letter is: e Letter is: e Letter is: e Letter is: e Letter is: e Letter is: e Letter is: e V: j Letter is: e Letter is: j Letter is: j Letter is: j Letter is: j Letter is: j Letter is: j Letter is: j Done

Edit: efter lite trimmade är den rätt träffsäker, det med turbo-boost påslaget

kjonsson@bean-canyon:~/programming/c/takeaway/build$ (taskset -c 0 ./victim Int &); taskset -c 4 ./attacker
V: I
Letter is: W
Letter is: j
Letter is: o
Letter is: G
Letter is: E
Letter is: v
Letter is: R
Letter is: d
V: n
Letter is: B
Letter is: M
Letter is: 7
Letter is: G
Letter is: a
Letter is: 8
Letter is: q
Letter is: >
Letter is: l
V: t
Letter is: M
Letter is: u
Letter is: N
Letter is: e
Letter is: >
Letter is: 1
Letter is: s
Letter is: N
Done

Samma program på en i7-8559U
Visa signatur

Care About Your Craft: Why spend your life developing software unless you care about doing it well? - The Pragmatic Programmer

Permalänk
Medlem

Tror vi kommer se mer av dessa säkerhets luckor båda från AMD och Intel framöver, läggs ju onekligen mycket forskning på området. Är det någon speciella anledning att alla nyheter kretsar kring Intel när de finns problem på båda sidor?

Visa signatur

CPU: i7- 13700KF + Corsair 115i Pro || GPU: 2080 Super FE
MoBo: Gigabyte Gaming X AX Z790 || Ram 32GB G.Skill Trident Z 6600mhz
Chassi: Corsair Obsidian 500D PSU: Corsair RMX 850
Skärm 1: AGON AG271QG 1440p 165hz Skärm 2: LG C2

Permalänk
Medlem
Skrivet av Vash:

Tror vi kommer se mer av dessa säkerhets luckor båda från AMD och Intel framöver, läggs ju onekligen mycket forskning på området. Är det någon speciella anledning att alla nyheter kretsar kring Intel när de finns problem på båda sidor?

Eftersom Intel är dominerande på marknaden (inte bara sälj utan aktiva burkar i huvudsak) så är det mer logiskt att rikta in sig där. I takt med att AMD plockar andelar och kommer ut mer på marknaden kommer vi garanterat se mer

Permalänk
Medlem

@Dumbullen: Ja att de är mer fokus på Intel är förståeligt men de gör ju inte problemen mindre viktiga att belysa. Eftersom att AMD plockar mer mark för varje månad så borde ju de vara minst lika viktigt att rapportera om problemen som uppenbarligen finns.

Visa signatur

CPU: i7- 13700KF + Corsair 115i Pro || GPU: 2080 Super FE
MoBo: Gigabyte Gaming X AX Z790 || Ram 32GB G.Skill Trident Z 6600mhz
Chassi: Corsair Obsidian 500D PSU: Corsair RMX 850
Skärm 1: AGON AG271QG 1440p 165hz Skärm 2: LG C2

Permalänk
Medlem
Skrivet av Vash:

@Dumbullen: Ja att de är mer fokus på Intel är förståeligt men de gör ju inte problemen mindre viktiga att belysa. Eftersom att AMD plockar mer mark för varje månad så borde ju de vara minst lika viktigt att rapportera om problemen som uppenbarligen finns.

Ingen jobbar gratis är nog den enkla sanningen. Fler Intel-system = mer finansiella incitament
Samma anledning som att Apple länge kunde skryta med att MacOS inte hade virus, det har inte att göra med att det är ett magiskt OS. Bara ingen som brydde sig

Edit: för att förtydliga så handlar det inte om att t.ex SweC inte rapporterar om det. Bara att inte lika många forskare letar sårbarheter

Permalänk
Medlem
Skrivet av Yoshman:

@evil penguin: Kan säga att AMDs svar verkar rätt märkligt, det är INTE så att denna sårbarhet försvinner om man slår på fixarna för tidigare svagheter som drabbar AMDs CPUer.

Spectre utnyttjar ju egenheter i spekulativ exekvering och branch-predictor. Detta är, likt Zombie Load, en attack som utnyttjar att data som träffar L1D$ blir tillgänglig för CPU snabbare än data som inte ligger i L1D$.

En orsak att Zen inte drabbades av SMT specifika MDS buggar är att man taggat minnesoperationer med tråd ID. Så man kan inte från tråd #0 få tag i sådant som tråd #1 på samma fysiska kärna precis läs/skrivit.

Så man är safe? Nej!

Implikationen av "skyddet" ovan gör att man från tråd #0 kan tvinga ut en viss cache-line från L1D$ till L2$. Om tråd #1 läser eller skriver en minnesadress som råkar mappa till både samma cache-set och samma cache-way så har man en attack. På Intels Core fungerar inte den attacken då val av cache-way i praktiken är slumpmässigt, det har fördelen att ge lite bättre utnyttjandegrad av cache men nackdelen att uppslagning drar mer ström då man måste kolla ett visst cache-set i alla cache-ways (8 st för dagens "big-core" X86 i L1D$).

AMD har ett patent på algoritmen att "gissa" rätt cache-way givet den virtuella adressen. Det forskarna gjorde var att lura ut hur den mappningen fungerade, m.h.a. har man nu ett sätt att få meta-information om vad tråd #0 nyligen läst/skrivit från tråd #1. Det även fast trådarna kör i olika processer och därmed borde vara helt isolerade.

Det som är en förmildrande omständighet är: fungerar bara om SMT är aktiverat och man får bara meta-information, inte direkt information om vilken data som läst/skrivit.

Detta är väldigt likt Spectre variant 1, om data används för indexera i en array kan man därifrån räkna baklänges och därmed lura ut faktisk data. Inte möjligt i det generella fallet, men tyvärr inte helt osannolikt vid just kryptering (den PoC som forskarna gjort, men inte publicerat då AMD inte get ut något patch än, användes just för att extrahera krypteringsnycklar).

Den uppenbart förvärrande egenskapen är hur pass lätt det var att svänga ihop en fungerande PoC på min 3900X givet denna information. Har lyckats kört vissa av de PoC som finns för Intel, men där har det varit nära nog ett krav att man stänger av "turbo-boost" för att ska fungera. Gjorde initialt därför det direkt på 3900X, men givet hur denna sårbarhet fungerar är det inte kritiskt att hålla en helt stabil CPU-frekvens. Det är helt enkelt så pass stor skillnad mellan träff i L1D$ (~4 cykler) och miss att man "tål" rätt stor varians.

Det skrivet: är ändå inte speciellt oroad. De vanliga hopplösa förutsättning krävs: d.v.s man måste säkerställa att attackerande tråd är låst till samma fysiska kärna, men den andra CPU-tråden, som det man attackerar. Den man attackerar måste också nästan konsekvent läsa/skriva det data man vill stjäla (det gäller i princip av svagheterna av den här typen, framförallt MDS som bara drabbar Intel). Man måste vara "root" (admin på Windows) för att låsa en process man inte själv äger till en viss CPU-tråd!

Men AMDs svar är som sagt rätt märkligt, läser man rapporten borde det vara uppenbart för i alla fall vissa av deras ingenjörer att existerande motmedel inte hjälper. Eller, inte helt sant. Jag gjorde en PoC för det som kallas "Load+Reload", den andra som kallas "Collide+Probe" borde vara omöjlig på ett system som har fixen för Meltdown. Den fixen ser till att kärnans adressrymd inte är mappad när man är i userland, kostar prestanda men redan innan Meltdown jobbade man på den patchen då den ger bättre säkerhet i flera lägen (tror MacOS kör på det sättet väldigt länge).

Tänker inte posta källkoden, i alla fall inte innan det finns en patch. Har inte trimmat in den speciellt mycket så den är inte 100 %-ig. Men tillräckligt för att visa att buggen finns.

Det som skrivs ut som "V: _" är var min "victim process" läser för data.
Det som skrivs ut som "Letter is: _" är vad mitt attackprogram tror att den läste. Båda kör som separata processer, låst till en varsin tråd på samma fysiska kärna.

V: x Letter is: 8 Letter is: 8 Letter is: x Letter is: x Letter is: 8 Letter is: x Letter is: x Letter is: x V: y Letter is: y Letter is: 9 Letter is: y Letter is: 9 Letter is: y Letter is: y Letter is: y Letter is: y V: z Letter is: 9 Letter is: z Letter is: : Letter is: : Letter is: z Letter is: z Letter is: : Letter is: z Done

Kör man samma program på Intel är det helt slumpmässigt information som skrivs av attackerande process.''

kjonsson@ryzen:~/programming/c/takeaway/build$ (taskset -c 0 ./victim Hej &); taskset -c 12 ./attacker V: H Letter is: c Letter is: H Letter is: H Letter is: H Letter is: H Letter is: H Letter is: H Letter is: H V: e Letter is: e Letter is: e Letter is: e Letter is: e Letter is: e Letter is: e Letter is: e Letter is: e V: j Letter is: e Letter is: j Letter is: j Letter is: j Letter is: j Letter is: j Letter is: j Letter is: j Done

Edit: efter lite trimmade är den rätt träffsäker, det med turbo-boost påslaget

kjonsson@bean-canyon:~/programming/c/takeaway/build$ (taskset -c 0 ./victim Int &); taskset -c 4 ./attacker
V: I
Letter is: W
Letter is: j
Letter is: o
Letter is: G
Letter is: E
Letter is: v
Letter is: R
Letter is: d
V: n
Letter is: B
Letter is: M
Letter is: 7
Letter is: G
Letter is: a
Letter is: 8
Letter is: q
Letter is: >
Letter is: l
V: t
Letter is: M
Letter is: u
Letter is: N
Letter is: e
Letter is: >
Letter is: 1
Letter is: s
Letter is: N
Done

Samma program på en i7-8559U

Verkligen insiktsfullt, tack!

Ja, då undrar man ju bara än mer vad AMD egentligen menar i sitt svar.
(Låter väl iofs som att det inte är alltför osannolikt att ingenjörer på AMD tar sig för pannan angående informationen som publicerades.)

Skrivet av Vash:

@Dumbullen: Ja att de är mer fokus på Intel är förståeligt men de gör ju inte problemen mindre viktiga att belysa. Eftersom att AMD plockar mer mark för varje månad så borde ju de vara minst lika viktigt att rapportera om problemen som uppenbarligen finns.

Om du specifikt menar nyhetsrapporteringen (snarare än forskningen på området), så känns det ju som att det bara borde göras.

Skrivet av Dumbullen:

Edit: för att förtydliga så handlar det inte om att t.ex SweC inte rapporterar om det. Bara att inte lika många forskare letar sårbarheter

Jag fick intrycket att det just är nyhetsrapporteringen som åsyftades.

Visa signatur

Desktop: Ryzen 5800X3D || MSI X570S Edge Max Wifi || Sapphire Pulse RX 7900 XTX || Gskill Trident Z 3600 64GB || Kingston KC3000 2TB || Samsung 970 EVO Plus 2TB || Samsung 960 Pro 1TB || Fractal Torrent || Asus PG42UQ 4K OLED
Proxmox server: Ryzen 5900X || Asrock Rack X570D4I-2T || Kingston 64GB ECC || WD Red SN700 1TB || Blandning av WD Red / Seagate Ironwolf för lagring || Fractal Node 304

Permalänk
Medlem

@evil penguin: Menar nyhetsrapportering ja.

Visa signatur

CPU: i7- 13700KF + Corsair 115i Pro || GPU: 2080 Super FE
MoBo: Gigabyte Gaming X AX Z790 || Ram 32GB G.Skill Trident Z 6600mhz
Chassi: Corsair Obsidian 500D PSU: Corsair RMX 850
Skärm 1: AGON AG271QG 1440p 165hz Skärm 2: LG C2

Permalänk
Hjälpsam

Verkar uppblåst.

Skrivet av Toms Hardware:

The researchers also noted that unlike the Spectre and Meltdown vulnerabilities, the Take A Way exploits only leak a "few bits of metadata," as opposed to providing full access to data (example of Meltdown exploit here).

https://www.tomshardware.com/news/new-amd-side-channel-attack...

Visa signatur

AMD Ryzen 7 1700 | Saphire RX 5700 Pulse XT (Silent Mode) | 64 GB Kingston ECC | https://valid.x86.fr/z2ljhr | Stockkylaren | Bitfenix Whisper M 750W.
AMD Ryzen 9 5900X | AMD RX 5700 | 64 GB Micron ECC | https://valid.x86.fr/5krwxf
HTPC | https://valid.x86.fr/uuzli0 |

Permalänk
Medlem

Hade det varit en större sak och det är så lätt att skriva kod som utnyttjar det, så borde man ju kunna hitta kod redan för det...

Permalänk
Medlem

Vad innebär detta för en privat person? Kan dom sno mitt bank id lösenord?

Visa signatur

Ryzen 5900X @ Stock, MSI Suprim X 3080 @ game mode.

Permalänk
Avstängd

Kopierat från en tråd på www.guru3d.com:

"They had to modify the kernel to pull this off. Meaning this is already fixed with patches. Academically they are new vulnerabilities but back in the real world these are already fixed so are not really new threats."

https://forums.guru3d.com/threads/new-amd-side-channel-vulner...

Visa signatur

ASUS Prime B350 Plus, AMD Ryzen 5 1600X, Sapphire R9 390 8GB, 16GB Gskill Flare X 3200
Används för korsord online, och harpan.

Permalänk
Medlem

Var in och tittade på https://www.amd.com/en/corporate/product-security

Men sidan är väldigt svår att förstå, någon som kan förklara vad som krävs för att säkra upp sitt ryzen system.

Visa signatur

XripperX

Permalänk
Datavetare

Spectre, framförallt variant 1, är den klart värsta av alla sårbarheter som hittats så här långt. Både i hur den kan utnyttjas (går via webbläsaren om de saknar skydd för spectre) och p.g.a. att denna drabbar i princip alla moderna högpresterande CPUer, Intel, AMD, ARM (både ARM och Apple) och IBM(PowerPC).

Finns både förmildrande omständigheter jämfört med MDS i Take A Way, det är just att man läcker meta-data och inte faktisk data. Vad det betyder är att man måste hitta en s.k. gadget, en kodsnutt som använder data man vill läsa i någon form av minnesaccess. Den delen påminner därför om Spectre som också bara indirekt läcker data.

Men finns också försvårande omständigheter ställt mot MDS, Take A Way är (precis som AMD påpekar) inte orsakad av spekulativ exekvering, det är värre än så då denna sårbarhet därför har långt mindre tighta timing-krav. Saker som temporärt finns fast de inte borde p.g.a. spekulativ exekvering har man 100-200 cykler på sig att "sno" informationen. I praktiken gör det att MDS bara är en realistisk väg om man mycket deterministiskt kan orsaka s.k. undantag, något som går m.h.a. TSX, men utan de instruktionerna (som går att stänga av endera via mikrokod och i nyare system via BIOS) är det ungefär lika sannolikt att bli träffad av en meteorit som att man lyckas utnyttja den svaghet (alla PoC använder sig av TSX).

Man får hoppas att detta kommer från PR, om det kommer från ingenjörer har vi i draftat årets stjärngossetåg

"AMD responded for our request for more information and says there are no new mitigations required, as this issue is covered by the existing side channel attack mitigations."

Just kapaciteten på denna side-channel, när den används som en s.k. covert-channel (två processer som båda är med på noterna pratar med varandra på ett sätt som är sanktionerat av systemet och inte borde vara möjligt) visar hur pass enkel själva sårbarheten är att utnyttja. MDS, när TSX är aktiverat, ger som mest ~28 kbit/s medan Take A Way ger som mest nästan tjugo gånger högre bandbredd (~500 kB/s).

PoC som jag svängde ihop nöjer sig med att läcka 6 bitar per sekund (är tillräckligt för att läcka "0-9a-zA-Z ", d.v.s. en sträng som ger som input till "victim"), är trivialt att öka till 512 bitar / 64 bytes per sekund (storlek på L1D$ (32 kB) dividerat med antal ways (8) dividerat med storlek på cache-line (64)). Borde inte heller vara något problem att läcka den mängden 10-100 gånger snabbare.

Skrivet av filbunke:

Hade det varit en större sak och det är så lätt att skriva kod som utnyttjar det, så borde man ju kunna hitta kod redan för det...

Har i.o.f.s. ~20 års erfarenhet av OS-programmering, men tog endast två timmar att skriva en fungerande PoC efter att läst och tagit in vad som står i rapporten. Har bara gjort PoC för varianten som kallas "Load+Reload", den kräver att SMT är aktiverat och förutsätter att man kan tvinga "victim" och "attacker" att köra på olika trådar på samma fysiska kärna.

"Problemet" (egentligen räddningen) är att precis som MDS sårbarheterna (RIDL, Zombie Load, Fallout och Cache Out) är det i praktiken rätt hopplöst att använda denna svaghet till något vettigt med mindre än att man redan har kontroll över dator... Vad ska du men en sådan sårbarhet till om du redan har kontroll över systemet?

Skrivet av Aka_The_Barf:

Vad innebär detta för en privat person? Kan dom sno mitt bank id lösenord?

Kör du mobilt bank ID: nej, de kan inte sno ditt bank ID
Kör du bank ID på din Ryzen datorn med SMT aktiverat: i teorn, ja. I praktiken, nej så länge du inte frenetisk skriver autentiserar dig om och om igen

Skrivet av patteSatan:

Kopierat från en tråd på www.guru3d.com:

"They had to modify the kernel to pull this off. Meaning this is already fixed with patches. Academically they are new vulnerabilities but back in the real world these are already fixed so are not really new threats."

https://forums.guru3d.com/threads/new-amd-side-channel-vulner...

Det är inte korrekt. Den andra varianten som går under namnet "Collide+Probe" fungerar vare sig SMT är aktiverat eller ej. Däremot kräver den en s.k. gadget i det kontext man attackerar, vad forskarna gjorde var att skriva en kernel-modul var enda syfte var att erbjuda en sådan gadget (se kapitel "5.3 Leaking Kernel Memory" i rapporten).

I ett verkligt fall måste man hitta en kodsekvens som erbjuder en sådan gadget. Det begränsar vilken typ av data som kan läcka, men just krypto har en tendens att innehålla den typen av gadget då nyckeln används som index in i tabeller i flera algoritmer.

Fast åter igen behöver man i praktiken ha möjlighet att köra valfri kod på systemet som ska attackeras, i.o.f.s. som "vanlig" användare. Ovanpå det måste man kunna anropa lämplig kod i kärnan (eller få en annan process att göra det om man vill läsa data från den processen).

De här CPU-sårbarheterna har typiskt en CVSS på <=7. Det samtidigt som det upptäcktes ungefär två sårbarheter i Windows per månad med CVSS >=9 förra året. Förutom att det är tekniskt enklare att utnyttja sårbarheter i OS fungerar en sådan attack på alla system körandes den OS:et, medan CPU-sårbarheterna i många fall bara fungerar på enskilda modeller och i vissa fall behöver man även kompensera för bakgrundslast och andra faktorer som påverkar CPU-frekvens och därmed timing. Även om just Take A Way är rätt okänslig för timing har ju den sårbarheten problemet att man bara indirekt läcker data, och likt MDS kan man kan inte välja vad som läcks.

Visa signatur

Care About Your Craft: Why spend your life developing software unless you care about doing it well? - The Pragmatic Programmer

Permalänk
Inaktiv

Sårbarheten tycks existera men just vad som står i slutet (sida 11) bör man också ha i åtanke:

Citat:

ACKNOWLEDGMENTSWe thank our anonymous reviewers for their comments and sugges-tions that helped improving the paper. The project was supportedby the Austrian Research Promotion Agency (FFG) via the K-projectDeSSnet, which is funded in the context of COMET - CompetenceCenters for Excellent Technologies by BMVIT, BMWFW, Styria, andCarinthia. It was also supported by the European Research Coun-cil (ERC) under the European Union’s Horizon 2020 research andinnovation programme (grant agreement No 681402). This workalso benefited from the support of the project ANR-19-CE39-0007MIAOUS of the French National Research Agency (ANR). Additionalfunding was provided by generous gifts from Intel. Any opinions,findings, and conclusions or recommendations expressed in thispaper are those of the authors and do not necessarily reflect theviews of the funding parties.

Känns som de bakom rapporten borde vara tydliga med exakt vad och hur den granskade företagets på området största konkurrent varit involverad.

Permalänk
Datavetare
Skrivet av anon5930:

Sårbarheten tycks existera men just vad som står i slutet (sida 11) bör man också ha i åtanke:

Känns som de bakom rapporten borde vara tydliga med exakt vad och hur den granskade företagets på området största konkurrent varit involverad.

OK?

Frågan som då poppar upp: varför ska man ha i åtanke att Intel gett dessa forskare en gåva? Definitionen av gåva är att man får något utan att det förväntas något specifikt motkrav. Så hur man på flera forum på något sätt kan få det till att ett företag som gör enorma vinster väljer att skänka delar av sin vinst (det lär garanterat ge fördelar vid beskattning, så är inte helt p.g.a. att man sätter mänskligheten före sina aktieägare) till något dålig är intressant.

Det här är långt ifrån det enda universitet som får gåvor från företag, i vissa fall utförs specifik grundforskning på uppdrag av företag. D.v.s. företagen väljer specifikt vilka projekt de vill ge pengar till, men universitet värda sitt sigill fortsätter styra den operativa delen i projekten helt efter eget huvud.

Just den här gruppen står bakom majoriteten av säkerhetshålen som hittas i Intels CPUer, men de har även hittat hål i AMD, ARM och PowerPC CPUer.

Det vore direkt korkat av Intel att specifikt finansiera forskning som avser hitta sårbarheter i konkurrenters CPUer. Varje upptäckt sårbarhet är i kronor och ören räknat rejält dyr att hitta, klart dyrare att hitta än att fixa i de flesta fall.

Visa signatur

Care About Your Craft: Why spend your life developing software unless you care about doing it well? - The Pragmatic Programmer

Permalänk
Medlem

Frågan är om vi kommer få se denna sårbarhet på nyhetsflödet? När man hittar något till Intel ska det visas direkt.
Fö. Lite roligt att användare som älskar AMD kommer in för att förmildra eller förneka i tråden.
Hur var det nu? Amdclockers?

Permalänk
Medlem
Skrivet av anon5930:

Sårbarheten tycks existera men just vad som står i slutet (sida 11) bör man också ha i åtanke:

Känns som de bakom rapporten borde vara tydliga med exakt vad och hur den granskade företagets på området största konkurrent varit involverad.

Jag kan hålla med om att de nog borde varit extra tydliga just med tanke på de besvärande omständigheterna.

Dock kommer de här personerna från Graz Tekniska Universitet inte från ingenstans med en Intel-sponsrad rapport, utan samma universitet med delvis samma personer har ju varit med på tåget från början av den här vågen av forskning om sidokanalsbaserade attacker i CPUer, med start redan i spectre och meltdown.
Det säger väl visserligen ingenting om hur det gått till den här gången, men min högst personliga förmodan är ju att det snarare lär handla om att de fått bidrag för att fortsätta sitt forskningsarbete baserat på vad de hittills levererat (vilket mycket handlat om just sårbarheter i Intels hårdvara), snarare än att Intel skulle ha beställt något som påverkar AMD.

Visa signatur

Desktop: Ryzen 5800X3D || MSI X570S Edge Max Wifi || Sapphire Pulse RX 7900 XTX || Gskill Trident Z 3600 64GB || Kingston KC3000 2TB || Samsung 970 EVO Plus 2TB || Samsung 960 Pro 1TB || Fractal Torrent || Asus PG42UQ 4K OLED
Proxmox server: Ryzen 5900X || Asrock Rack X570D4I-2T || Kingston 64GB ECC || WD Red SN700 1TB || Blandning av WD Red / Seagate Ironwolf för lagring || Fractal Node 304

Permalänk
Medlem

Blir aldrig en AMD processor för mig efter denna nyhet.

Permalänk
Hjälpsam
Skrivet av lindahlj:

Blir aldrig en AMD processor för mig efter denna nyhet.

Tycker du att detta är värre en de säkerhetshål som Intel haft, hade det nog inte blivit någon AMD för dig ändå.

Visa signatur

AMD Ryzen 7 1700 | Saphire RX 5700 Pulse XT (Silent Mode) | 64 GB Kingston ECC | https://valid.x86.fr/z2ljhr | Stockkylaren | Bitfenix Whisper M 750W.
AMD Ryzen 9 5900X | AMD RX 5700 | 64 GB Micron ECC | https://valid.x86.fr/5krwxf
HTPC | https://valid.x86.fr/uuzli0 |

Permalänk
Inaktiv
Skrivet av evil penguin:

Jag kan hålla med om att de nog borde varit extra tydliga just med tanke på de besvärande omständigheterna.

Dock kommer de här personerna från Graz Tekniska Universitet inte från ingenstans med en Intel-sponsrad rapport, utan samma universitet med delvis samma personer har ju varit med på tåget från början av den här vågen av forskning om sidokanalsbaserade attacker i CPUer, med start redan i spectre och meltdown.
Det säger väl visserligen ingenting om hur det gått till den här gången, men min högst personliga förmodan är ju att det snarare lär handla om att de fått bidrag för att fortsätta sitt forskningsarbete baserat på vad de hittills levererat (vilket mycket handlat om just sårbarheter i Intels hårdvara), snarare än att Intel skulle ha beställt något som påverkar AMD.

Problemet ligger förstås i att frågan om Intel betalt för att sårbarheten ska hittas. Nu tror jag heller inte att det ligger till så men kopplingen ligger nära till hands då det är en svaghet i rapporten. Vilket även påpekats på andra sidor än just SweClockers.

För övrigt inställer jag mig i gruppen som undrar vart SweClockers nyhetsartikel är, nyheten är ganska gammal men kanske kommer nu idag.

Permalänk
Moderator
Forumledare
Skrivet av Ryzer:

Frågan är om vi kommer få se denna sårbarhet på nyhetsflödet? När man hittar något till Intel ska det visas direkt.
Fö. Lite roligt att användare som älskar AMD kommer in för att förmildra eller förneka i tråden.
Hur var det nu? Amdclockers?

Tja, varför skulle man inte rapportera om det? 🤔

Visa signatur

Forumets regler | Har du synpunkter på hur vi modererar? Kontakta SweClockers/moderatorerna

Jag stavar som en kratta

Gillar lök på discord

Permalänk
Medlem

Spännande det här, å ena sidan så svarar en personerna bakom upptäckten det här

Citat:

Certainly not. The attacks leak a few bit of meta-data. Meltdown and Zombieload leak tons of actual data.

på frågan om det här är lika illa som Meltdown eller Zombieload.

Å andra sidan så hävdas det i tråden att det nog kan läckas 512 bits åt gången och upp emot 51200 bits/s.

Vem vet, kanske bara allmäna språkproblem.

Kan ju också säga att användningen av data och metadata i personens svar lämnar en bit att önska.

Permalänk
Datavetare
Skrivet av filbunke:

Spännande det här, å ena sidan så svarar en personerna bakom upptäckten det här
på frågan om det här är lika illa som Meltdown eller Zombieload.

Å andra sidan så hävdas det i tråden att det nog kan läckas 512 bits åt gången och upp emot 51200 bits/s.

Vem vet, kanske bara allmäna språkproblem.

Kan ju också säga att användningen av data och metadata i personens svar lämnar en bit att önska.

Det här är vad rapporten säger om just detta

"Performance Evaluation. We evaluated the transmission and er-ror rate of our covert channel in a local setting and a cloud setting by sending and receiving a randomly generated data blob. We achieved a maximum transmission rate of 588.9 kB/s (σ ̄x=0.544,n=1000) using 80 channels in parallel on the AMD Ryzen Thread-ripper 1920X. On the AMD EPYC 7571 in the Amazon EC2 cloud, we achieved a maximum transmission rate of 544.0 kB/s(σ ̄x=0.548, n=1000) also using 80 channels. In contrast, L1 Prime+Probe achieved a transmission rate of400 kB/s[59] and Flush+Flush a transmission rate of496 kB/s[30]. As illustrated in Figure 4, themean transmission rate increases with the number of bits sent in parallel. However, the error rate increases drastically when transmitting more than 64 bits in parallel, as illustrated in Figure 6."

Maximala antalet bitar som kan skickas parallellt är 512 på Zen och 256 på Bulldozer. Det är en direkt konsekvent hur cachen är organiserad (kan beräknas från data som är allmänt tillgängligt). Den PoC jag har skickar bara 6 bitar parallellt, tydligen kommer man få rejält med brus om man går över 64 bitar.

Angående meta-data och vad det faktiskt betyder. Man kan inte direkt läcka data m.h.a. denna sårbarhet, det är inte unikt så man har redan färdiga "gadget" för att översätta den implicita information som faktiskt läcks till data som orsakade den implicita informationen. Det kombinerat med denna information från rapporten

är vad som gör transformen från meta-data till data möjlig.

Meltdown är värre då man både kan välja vilken adress som ska läckas, plus att man direkt får data. Zombie Load är värre då den direkt läcker data, men likt Take A Way kan inte inte fritt välja vad som läcks. Det som gör Take A Way värre än Zombie Load är att den är långt mindre timing-känslig, så mycket lättare att skriva en PoC som fungerar på mer än ett enda system.

Visa signatur

Care About Your Craft: Why spend your life developing software unless you care about doing it well? - The Pragmatic Programmer

Permalänk
Medlem
Skrivet av NordhNet:

Tja, varför skulle man inte rapportera om det? 🤔

Klart man ska, men frågan är då varför ni inte är konsekventa och lägger upp exempelvis denna upptäckt som en nyhet?

Permalänk
Medlem
Skrivet av lindahlj:

Blir aldrig en AMD processor för mig efter denna nyhet.

Ja det säkraste alternativet är att simulera allt i huvudet!

Permalänk
Medlem
Skrivet av Ratatosk:

Tycker du att detta är värre en de säkerhetshål som Intel haft, hade det nog inte blivit någon AMD för dig ändå.

Medans personen kanske menar det, så är det ett stort meme också.

Detta är vanligt om Intel kommer på tapeten på Swec, då hugger AMDClockers direkt

Permalänk
Medlem

"sårbarheterna lyckligtvis kan åtgärdas via säkerhetsuppdateringar"

Är det via windows update man får dessa, eller?

Visa signatur

XripperX

Permalänk
Medlem

Bra att det kommer fram att bristerna finns även hos AMD. Sen finns ju fanboisssssen på båda sidorna så man ska nog inte lägga allt för mycket vikt i vad som skrivs av en del här inne Men absolut bra att det kommer fram att även AMD har sårbarheter.

Visa signatur

Main
MOBO: Gigabyte B550M DS3H, CPU: AMD Ryzen 5 5600, RAM: 2x16B @ 3600MHz, GPU: RADEON RX5700 Flashat till XT, SSD: WD BLACK SN750 SE 1TB nVME, 2x1TB Sata SSD Chassi, : Fractal Design Node 804, PSU: Corsair RM1000e, Skärm: Philips 27M1N3500LS.