HW_SECURITY · ROWHAMMER · 2025→2026

GPUHammer → GPUBreach → GPUThor: Το Rowhammer σκότωσε την εμπιστοσύνη στις GPUs

Ένα flipped bit στη μνήμη της GPU σου ρίχνει την ακρίβεια ενός AI μοντέλου από 80% σε 0,1%. Στη συνέχεια σπάει την ECC προστασία — αυτή που η NVIDIA έλεγε «φτάνει» — και ανοίγει root shell στον host. Χωρίς ούτε ένα software vulnerability. Ο γείτονάς σου στο ίδιο cloud GPU μπορεί να το κάνει. Χωρίς άδεια. Με μόνο user-level CUDA.

Δημοσιεύτηκε 30 Αυγούστου 2026 Πηγή USENIX Sec '25 · IEEE S&P '26 · ACM CCS '26 Ανάγνωση ~9 λεπτά

01Γιατί αυτό πρέπει να σε ξυπνήσει

Ολόκληρη η βιομηχανία του AI τρέχει πάνω σε shared GPUs: cloud, πανεπιστήμια, ερευνητικά labs, MIG partitions, containers στην ίδια φυσική κάρτα. Η de facto υπόθεση ήταν πάντα η ίδια: «οι εφαρμογές είναι απομονωμένες· ο γείτονας δεν αγγίζει τα δικά μου δεδομένα».

Τρία διαδοχικά papers από το Πανεπιστήμιο του Τορόντο έσπασαν αυτή την υπόθεση σε τρία βήματα — το καθένα απαξίωσε και τη λύση του προηγούμενου:

  • GPUHammer (USENIX Security 2025) — πρώτο Rowhammer σε GPU: καταστρέφει μοντέλα με ένα bit-flip.
  • GPUBreach (IEEE S&P 2026) — το ίδιο primitive φτάνει σε root shell στον CPU, ακόμα και με IOMMU ενεργό.
  • GPUThor (ACM CCS 2026, disclosure 25 Αυγούστου 2026) — εξουδετερώνει και το ECC, τη «λύση» που πρότεινε η NVIDIA για τα δύο πρώτα.
Σοβαρότητα: δεν υπάρχει CVE και δεν έχει καταγραφεί εκμετάλλευση in-the-wild· τα PoC απαιτούν συν-κατοίκηση στο ίδιο hardware (τοπικά ή στο cloud). Αλλά το exploit code του GPUThor δημοσιοποιείται στις 15 Νοεμβρίου 2026 στο ACM CCS — και κάθε φορά από το 2014 έως σήμερα, το Rowhammer πέρασε από εργαστήριο σε πρακτική εκμετάλλευση μέσα σε 1–2 χρόνια.

02Rowhammer σε 60 δευτερόλεπτα

Η DRAM είναι πυκνά τοποθετημένες «κυψέλες» σε σειρές (rows). Όταν προσπελάσεις μια σειρά εκατοντάδες χιλιάδες φορές πολύ γρήγορα, η ηλεκτρική διαρροή «χτυπάει» τις γειτονικές σειρές — και ένα 0 γίνεται 1, ή αντιστρόφως. Δεν είναι σφάλμα λογισμικού: είναι φυσική του πυριτίου.

Σε CPUs το γνωρίζουμε από το 2014 (Drammer, Throwhammer, Blacksmith…). Στις GPUs όλοι πίστευαν ότι δεν είναι πρακτικό: οι χάρτες μνήμης είναι ιδιόκτητοι, η καθυστέρηση μεγαλύτερη, το refresh πιο συχνό, και υπάρχουν κρυφές άμυνες. Η ομάδα του Τορόντο έλυσε και τα τρία — ανακατασκευάζοντας τους χάρτες των banks, αξιοποιώντας τον GPU parallelism και παρακάμπτοντας τα in-DRAM φίλτρα (TRR).

Γιατί έχει σημασία τώρα: τα βάρη ενός νευρωνικού δικτύου είναι αριθμοί float που ζουν στην DRAM της GPU. Ένα flipped bit στον exponent ενός FP16 weight δεν βγάζει μήνυμα λάθους — απλώς προκαλεί συστηματικά λάθος απαντήσεις. Και τα page tables της GPU, που είναι και αυτά στην ίδια μνήμη, είναι το «κλειδί» για την πρόσβαση στον host.

03GPUHammer — το πρώτο bit-flip σε GPU

USENIX Security 2025

GPUHammer

U. of Toronto · ανοιχτό code (github.com/sith-lab/gpuhammer)

Πρώτη επιτυχημένη Rowhammer επίθεση σε discrete GPU. Επιτυγχάνει bit-flips σε GDDR6 μέσω reverse-engineering των DRAM mappings και parallelized hammering.

Ένας single bit-flip: ακρίβεια μοντέλων -56% έως -80% (έως και 80% → 0,1%).

Προσβάλλει: GDDR6 · επιδείξεις σε NVIDIA, αλλά όχι HBM · ECC δεν ήταν ενεργό στα tests

Πώς το έφτιαξαν

  • Αντίστροφη μηχανική των μη-τεκμηριωμένων mappings φυσικής μνήμης → banks/rows.
  • Πολλαπλά warps «σφυροκοπούν» συγχρονισμένα με το refresh (≈500.000 ενεργοποιήσεις ανά παράθυρο).
  • Παρακάμπτουν τα ατεκμηρίωτα in-DRAM TRR του GDDR6 με n-sided (n=8…24) «δολώματα».

Δοκιμάστηκε σε NVIDIA RTX A6000 (48GB GDDR6) και σε RTX 3060 (12GB GDDR6), όπου η ομάδα κατέγραψε έως 1.171 bit-flips. Απάντηση NVIDIA: «ενεργοποιήστε ECC». Ο υπόλοιπος κόσμος πίστεψε ότι το θέμα είχε κλείσει.

Tip: το GPUHammer έδειξε και κάτι εκτός AI: τα page tables της GPU είναι στον ίδιο φορέα — άρα το επόμενο βήμα ήταν προφανές.

04GPUBreach — από GPU bit-flip σε root shell

IEEE Security & Privacy 2026 · Disclosure Απρίλιος 2026

GPUBreach

U. of Toronto + τρεις ανεξάρτητες ομάδες (GDDRHammer, GeForge)

Η ίδια ομάδα είναι η διάδοχος: τα bit-flips του GDDR6 συνδέονται σε συνδυασμό με memory-safety bugs του NVIDIA kernel driver, για πλήρη κλιμάκωση δικαιωμάτων.

Αποτέλεσμα: root shell στον host CPU, ακόμα και με IOMMU ενεργό.

Disclosure: 6–7 Απριλίου 2026 · Τρεις παράλληλες εργασίες έγιναν δεκτές στο IEEE S&P '26

Η επίθεση «φθείρει» τα page tables της GPU (PTEs) με bit-flips, ανακατευθύνοντας τη GPU σε περιοχές μνήμης του CPU. Τα υφιστάμενα memory-safety λάθη του driver ολοκληρώνουν το άλμα. Δηλαδή: ένας χρήστης χωρίς προνόμια, σε ένα shared GPU, τελειώνει με πλήρη έλεγχο της μηχανής.

Σημαντική λεπτομέρεια: το NVIDIA δεν εξέδωσε νέο bulletin ούτε CVE για τη συμβολή των driver bugs. Αντί αυτού, παρέπεμψε στο July 2025 (GPUHammer) notice: η κατηγορία Rowhammer θεωρήθηκε «industry-wide hardware issue». Το ίδρυμα CSA σημειώνει ότι η μηχανή δεν έδωσε ποινές/bounties — σε αντίθεση με την Google που αναγνώρισε και αντάμειψε το disclosure.

05GPUThor — το ECC έπεσε (25 Αυγούστου 2026)

ACM CCS 2026 · Disclosure: 25–27 Αυγούστου 2026

GPUThor

U. of Toronto · code δημόσιο 15 Νοε. 2026

Αυξάνει 6,6× την ένταση hammering με non-uniform patterns (η στοχευμένη row «χτυπιέται» πιο συχνά από τις σειρές-δολώματα) — αποφεύγοντας έτσι το TRR.

Ρυθμοί: 72.000–377.000 flips/GB (4.548–23.597× τα GPUHammer — πλησιάζει CPU Blacksmith). Εκμεταλλεύσιμο bit-flip σε ~1,1 λεπτό, από 21,9 ώρες.

Με ECC ενεργό: 387 double-bit (detect, όχι correct) + 2 triple-bit (σιωπηλή διαφθορά) + DoS κάθε ~2 ώρες + root escalation

Το κρίσιμο σημείο: το SecDED ECC που η NVIDIA είχε προτείνει ως «λύση» διορθώνει μόνο single-bit. Το GPUThor παράγει double- και triple-bit errors μέσα στο ίδιο ECC chunk — το ECC τα ανιχνεύει αλλά δεν τα διορθώνει, και στο triple-bit δεν τα ανιχνεύει καν (σιωπηλή διαφθορά δεδομένων).

  • DoS: σε A6000 με ECC, ένα DUE ≈ κάθε 2 ώρες → GPU reset + τερματισμός όλων των workloads. Σε επανάληψη: η κάρτα επισημαίνεται για αντικατάσταση.
  • Root: corruption των GPU page tables δίνει σε ένα unprivileged CUDA πρόγραμμα αυθαίρετη πρόσβαση σε μνήμη — και root shell στον host.
Η NVIDIA απάντησε με νέο Security Notice (21/8/2026): «κράτα το SYS-ECC ενεργό, αλλά μην το θεωρήσεις πλήρη άμυνα». Προτείνει SYS-ECC + IOMMU/DMA isolation + telemetry monitoring + περιορισμό της co-tenancy. Οι ίδιοι οι ερευνητές: το ECC ανεβάζει τον πήχη, αλλά δεν αρκεί πια.

06Exposure-checker: πόσο εκτεθειμένη είναι η GPU σου;

Διάλεξε το μοντέλο σου. Η αξιολόγηση βασίζεται στα δημοσιευμένα ευρήματα GPUHammer / GPUBreach / GPUThor (έως 27 Αυγούστου 2026) — δεν εκτελεί επίθεση, μόνο χαρτογραφεί την έκθεση από τον τύπο μνήμης, την αναφορά σε έρευνες και την υποστήριξη ECC.

GPU Exposure Checker

GPUHammer · GPUBreach · GPUThor · LeftoverLocals

Γιατί δεν κάνω «real test» εδώ: το να σφυροκοπήσεις την πραγματική σου κάρτα για hammering είναι ακριβώς αυτό που θέλουμε να αποτρέψουμε — και μερικά patterns μπορούν να φθείρουν μόνιμα κελιά. Ο exposure-checker χρειάζεται μόνο το μοντέλο/τύπο μνήμης, και σου λέει με βάση τη δημόσια έρευνα πόσο ψηλά είσαι στο ρίσκο.

07Ποια μοντέλα κινδυνεύουν πραγματικά

ΚατηγορίαΜνήμηΚατάσταση βάσει έρευναςΚίνδυνος
RTX A6000 / A5000 / A4500 / A4000GDDR6Bit-flips επέδειξαν GPUHammer & GPUThor · root ακόμα και με ECC ενεργόΥΨΗΛΟΣ
GeForce RTX 3060GDDR61.171 bit-flips (GPUHammer) · στόχος του GDDRHammerΥΨΗΛΟΣ
RTX 3050 / 3060 Ti / 3070GDDR6Δεν δοκιμασμένα σε έρευνα · ίδια τάξη μνήμηςΜΕΣΑΙΟΣ
RTX 3080 / 3090GDDR6XΔεν παρατηρήθηκαν flips στα testsΧΑΜΗΛΟΣ
RTX 4060 / RTX 6000 AdaGDDR6Δεν παρατηρήθηκαν flips (διαφορετικό TRR / γενιά)ΧΑΜΗΛΟΣ*
RTX 50 (Blackwell)GDDR7On-die ECC · δεν επιβεβαιώθηκε ευπάθειαΧΑΜΗΛΟΣ*
A100 / H100 / H200 / A30HBMΈξω από το testset · on-die ECC · εκτός αν προκύψουν multi-bit flipsΧΑΜΗΛΟΣ*
A10 / L4 / L40GDDR6Δοκιμασμένα από GPUThor χωρίς flips (διαφορετικό TRR)ΧΑΜΗΛΟΣ*

* «Χαμηλός» σημαίνει: δεν παρατηρήθηκε με τα tested patterns μέχρι σήμερα — όχι «αποδεδειγμένα ασφαλές». Οι ερευνητές τονίζουν ότι δεν υπάρχει (ακόμη) αρχιτεκτονική εγγύηση· τα HBM3e/GDDR7 με on-die ECC μπορούν να γίνουν ευάλωτα αν προκύψουν multi-bit flips.

08Τι κάνεις πραγματικά — σήμερα

Δεν υπάρχει patch. Η ρίζα είναι στο πυρίτιο. Αλλά υπάρχει διατεταγμένη άμυνα — με τη σωστή σειρά προτεραιότητας:

  • Μην συν-τοποθετείς untrusted workloads στην ίδια φυσική GPU. Η co-tenancy είναι ο πολλαπλασιαστής κινδύνου. Στο cloud: ζήτα αποκλειστικά instances ή dedicate GPUs.
  • Κράτα το SYS-ECC ενεργό. Δεν αρκεί πλέον από μόνο του, αλλά ανεβάζει τον πήχη — και CVE-free ή όχι, είναι το μόνο «δωρεάν» buffer.
  • IOMMU/DMA isolation (host). Η NVIDIA το ορίζει ρητά — χωρίς αυτό, ένα bit-flip στη GPU οδηγεί πιο εύκολα σε DMA access στον host.
  • Παρακολούθησε το telemetry. Επανάληψη uncorrectable errors, unexpected resets, row-remapping events: αυτές είναι οι «σφήνες» του GPUThor. Σύνδεσέ τα με alerting.
  • Περιόρισε το CUDA όπου μπορείς. Οποιοσδήποτε τρέχει user-level CUDA σε shared GPU μπορεί να «σφυροκοπήσει». Μην δίνεις compute σε μη-έμπιστο κώδικα.
  • Κατέγραψε το «μοντέλο-αντίκτυπο». Αν τρέχεις AI σε co-tenancy, πρόβλεψε έλεγχο ακεραιότητας μοντέλων (checksum/attestation) — όχι μόνο τελικό F1.
Θυμήσου: το ερώτημα δεν είναι «μπορεί να γίνει σε μένα;», αλλά «πόσο μου λείπει η απομόνωση;» — ο εχθρός δεν χρειάζεται σήμερα εξελιγμένο exploit: το εκμεταλλεύσιμο code είναι δημόσιο από τον Νοέμβριο.

Τίποτα από αυτά δεν είναι δωρεάν

  • SYS-ECC: πληρώνεις 6–12% χωρητικότητα και bandwidth («τρώει» μια σημαντική τομή από την ήδη εμπορευματοποιημένη μνήμη). Σε inference ταχύτητα η διαφορά είναι μικρή, αλλά στα training loops κάθε πρόσθετη ανάγνωση/γραφή έχει κόστος.
  • Αποκλειστικά instances / dedicated GPUs: στο cloud κοστίζουν αισθητά περισσότερο από shared (συχνά 30–70% premium ανά ώρα), και «αποκλειστικός» δεν σημαίνει απαραίτητα φυσικά απομονωμένος από άλλους μισθωτές — ρώτα τον πάροχο για το πραγματικό πλάνο co-tenancy.
  • IOMMU/DMA isolation + telemetry + checksumming: εδώ το κόστος είναι κυρίως operational — ρυθμίσεις, πόροι μηχανικής, alert fatigue. Εξακολουθεί να είναι το φτηνότερο «ασφαλιστήριο» από τα τρία.
  • Καμία από τις παραπάνω δεν δίνει εγγύηση: μειώνουν την έκθεση, δεν την εξαλείφουν. Η ειλικρινής συμβουλή είναι: σχεδίασε σαν το GPUThor να έχει ήδη δημοσιευτεί.

Incident response — αν υποψιάζεσαι ότι έχεις ήδη πληγεί

Πρώτη αρχή: δεν υπάρχει «σκανδιοποιημένο» κουδούνι για GPU Rowhammer — δεν είναι malformed packet με CVE signature. Ψάχνεις για ανεξήγητα προγράμματα συμπεριφοράς. Αν τα δεις, μην κάνεις «reboot για σιγουριά» πριν μαζέψεις logs — το reboot σβήνει τα στοιχεία.
  1. Row-remapping events & ECC counters (αξίζει να ψάξεις πρώτα): Επανάληψη uncorrectable/CE errors σε συγκεκριμένο bank, αυξανόμενα remapped rows (already-bad-row / POISON counter, `dmesg`/`nvidia-smi -q` per memory catalogue), unexpected resets χωρίς power event. Σε bare-metal: `journalctl -xe`, `dmesg` για ECC/GPU errors, και τα datasheet-επηρεαζόμενα logs του driver.
  2. GPU telemetry & utilization anomalia: spike σε memory bandwidth χωρίς workload, φάσεις «hammering» με 100% utilization χωρίς έργο. `nvidia-smi dmon` δείχνει per-process/related utilization — ψάξε για ανεριμηνεύσιμο χρόνο.
  3. Model integrity: αν έτρεχες inference σε shared GPU, ελέγξε checksums/weights των artifacts. Ένα flipped bit στον exponent δεν φαίνεται σε loss curves πάντα — κράτα hash πριν την είσοδο στον pipeline.
  4. Εξέτασε ξανά τη co-tenancy: αν δεν έχεις απόδειξη «φυσικής απομόνωσης» από τον πάροχο, θεώρησε ότι είχες γείτονα. Κατέγραψε ποια workloads έτρεχαν δίπλα όταν συνέβη η ανωμαλία.
  5. Αν επιβεβαιώσεις ή δεν μπορείς να αποκλείσεις: απομόνωσε τον workload, κράτησε snapshot των logs (dmesg, driver logs, `nvidia-bug-report`), κι επικοινώνησε με τον πάροχο για τα row-remap/ECC counters μόλις γίνει «εβδομάδα». Το mitigation δεν είναι forensic — είναι τερματισμός συν-κατοίκησης.

Κρατήσου από τον κανόνα: βλέπεις ανωμαλία → μαζεύεις στοιχεία → απομονώνεις → ρωτάς τον πάροχο. Το αντίστροφο (reboot + «μήπως ήταν τίποτα;») είναι ακριβώς αυτό που σε αφήνει χωρίς εικόνα την επόμενη φορά.

09Τι έρχεται μετά — και η εικόνα μνήμης

  • 15 Νοεμβρίου 2026 — ACM CCS (Χάγη): παρουσίαση GPUThor και δημοσιοποίηση του εκμεταλλεύσιμου code.
  • Blackwell RAS Repair: καθυστερεί το DoS route, δεν το αποτρέπει. Τα server Ampere (A100) παραμένουν σε SecDED — το escalation path ισχύει.
  • Η πραγματική λύση είναι στο μέλλον: ισχυρότερο multi-bit ECC, per-row Activation Counting (PRAC/RFM) και σχεδιασμός μνήμης που βάζει την ασφάλεια πριν την πυκνότητα. Μέχρι τότε, ο νόμος του Μουρ παίζει εναντίον μας: όσο πυκνότερη η μνήμη, τόσο πιο εύκολο το Rowhammer.
  • Δεν είναι «GPU-only»: η ίδια φυσική — η DRAM — υπάρχει παντού: HBM σε accelerators, LPDDR στα laptops. Κάθε νέα μελέτη μειώνει την απόσταση μέχρι τον επόμενο, «ασφαλέστερο» τύπο μνήμης.

Γρήγορα λόγια ισορροπίας: ο ισχυρισμός «το Cloud Computing δεν είναι ασφαλές» δεν είναι σε καμία περίπτωση λόγος πανικού — είναι λόγος για υγιή παράνοια. Αλλά αν χτίζεις AI pipeline σε shared GPUs και θεωρούσες το ECC «δεδομένο», αυτό το άρθρο υπάρχει για να αλλάξει τη default σου.

← Επιστροφή στο Blog Το Μεγάλο AI Αφιέρωμα →

Βασικές πηγές: «GPUHammer: Rowhammer Attacks on GPU Memories are Practical» (USENIX Sec '25, arXiv:2507.08166); «GPUBreach: GPU Rowhammer Achieves Root Shell» (IEEE S&P '26); «GPUThor: Amplifying Rowhammer Attacks via Non-Uniform Patterns» (ACM CCS '26, gputhor.com); NVIDIA Product Security Notices (Jul 2025, Aug 2026); CSA Research Note — GPUBreach (04/2026). Η εικόνα κινδύνου αποτυπώνει την κατάσταση στις 30 Αυγούστου 2026.