Cât de sigur este sistemul de operare gazdă de sistemul de operare al mașinii virtuale invitate atunci când se utilizează passthrough GPU (folosind metodele descrise aici )?

Dacă oaspetele este compromis, poate infecta definitiv GPU-ul și firmware-ul său? Dacă este posibil, ce ar putea face acest GPU compromis?

  • Chiar dacă VT-d / IOMMU este conceput pentru a conține în siguranță dispozitive către mașina virtuală, ar putea oaspetele să utilizeze GPU pentru a compromite gazda (sistemul de operare sau orice alte dispozitive)?
  • Dacă GPU este suspectat de compromis, care ar trebui să fie calea de acțiune ideală? Dacă sistemul de operare gazdă al computerului este reinstalat, GPU ar putea să-l atace și să îl infecteze?
    (mutat la întrebare separată )

Caut un răspuns general, dar dacă este relevant, presupun gazdă Linux cu invitat KVM și Windows.

Comentarii

  • Există o dovadă de concept meduză GPU rootkit pe github. Supraviețuiește repornirii, dar nu o oprire.

Răspuns

  • Dacă oaspetele este compromis, poate infecta definitiv GPU-ul și firmware-ul acestuia?

Conform OpenStack documentație , da .

Mulți hipervizori oferă o funcționalitate cunoscută sub numele de passthrough PCI. Aceasta permite unei instanțe să aibă acces direct la o bucată de hardware de pe nod. De exemplu, poate fi folosit pentru a permite instanțelor să acceseze plăcile video sau GPU-urile care oferă arhitectura de dispozitiv unificat de calcul (CUDA) pentru calcul de înaltă performanță.

Această caracteristică prezintă două tipuri de riscuri de securitate: acces direct la memorie și infecție hardware .

Accesul direct la memorie este relevant numai pentru trecerea dispozitivului care nu utilizează IOMMU.

  • Chiar dacă VT-d / IOMMU este conceput pentru a conține în siguranță dispozitive către mașina virtuală, ar putea oaspeții să utilizeze GPU pentru a compromite gazda (sistemul de operare sau orice alte dispozitive)?

Eventual, dacă dispozitivul este utilizat de gazdă.

O infecție hardware apare atunci când o instanță face o modificare rău intenționată a firmware-ului sau a unei alte părți a dispozitivului. Deoarece acest dispozitiv este utilizat de alte instanțe sau de sistemul de operare gazdă, codul rău intenționat se poate răspândi în sistemele respective. Rezultatul final este că o singură instanță poate rula cod în afara domeniului său de securitate. Aceasta este o încălcare semnificativă, deoarece este mai greu să resetați starea hardware-ului fizic decât hardware-ul virtual și poate duce la expunere suplimentară, cum ar fi accesul la rețeaua de gestionare.

Comentarii

  • Este dispozitivul " folosit " de către gazdă după închiderea VM? Sau în orice alt moment?
  • Cel puțin dispozitivul este " utilizat " de BIOS atunci când mașina gazdă este apoi repornită și încearcă să afle ce dispozitive sunt în sistem.
  • Cred că infecția hardware necesită acces la spațiul de configurare PCI (pentru a scrie opțiuni ROM-uri). Nu ' cred că CUDA este suficientă pentru a " infecta " un GPU cu persistent cod.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *