VBS – Virtualization-Based Security w Windows
Informatyka

VBS – Virtualization-Based Security w Windows

VBS – Virtualization-Based Security w Windows

VBS (Virtualization-Based Security) to mechanizm bezpieczeństwa Windows, który wykorzystuje wirtualizację sprzętową do odizolowania szczególnie wrażliwych elementów systemu od zwykłego środowiska Windows.

Najprościej:

             Windows
                |
        +-------+-------+
        |               |
   Normal World       VBS
        |               |
   Applications      Isolated
   Drivers           Security
        |               |
        +-------+-------+
                |
          Hypervisor

Kluczowa idea brzmi:

Nawet jeśli atakujący uzyska kontrolę nad częścią Windows, nie powinien automatycznie otrzymać dostępu do chronionego środowiska VBS.


Dlaczego VBS jest potrzebne?

Tradycyjny Windows wygląda w dużym uproszczeniu tak:

Applications
     ↓
User Mode
     ↓
Windows Kernel
     ↓
Hardware

Problem polega na tym, że kernel ma bardzo wysokie uprawnienia.

Jeżeli atakujący zdoła uzyskać możliwość wykonywania złośliwego kodu w kernel-mode, może próbować:

  • manipulować pamięcią,
  • modyfikować mechanizmy bezpieczeństwa,
  • kraść sekrety,
  • ładować złośliwe sterowniki,
  • obchodzić zabezpieczenia działające w normalnym środowisku Windows.

VBS zmienia architekturę:

                 Hardware
                    |
               Hypervisor
                    |
        +-----------+-----------+
        |                       |
   Normal Windows          Secure VBS
        |                       |
    User/Kernel          Security Components

VBS wykorzystuje hypervisor

VBS korzysta z Windows Hypervisor, czyli tej samej klasy technologii, która umożliwia wirtualizację maszyn.

Ale tutaj hypervisor nie służy tylko do:

Windows
  ↓
Virtual Machine

Jego zadaniem jest również stworzenie izolowanego środowiska bezpieczeństwa.

Schemat:

CPU
 |
 v
Hypervisor
 |
 +-------------------+
 |                   |
 v                   v
Windows OS          VBS
                     |
                     +-- Security Components

VTL – Virtual Trust Levels

Jednym z ważnych pojęć związanych z VBS są VTL (Virtual Trust Levels).

Można je uprościć do:

VTL 0
Normal Windows

oraz:

VTL 1
Higher-trust security environment

Schemat:

             Hypervisor
                 |
       +---------+---------+
       |                   |
     VTL 0                VTL 1
       |                   |
   Windows OS          Secure Environment

VTL 1 jest odizolowane od VTL 0.

To właśnie ta izolacja jest fundamentem VBS.


VBS ≠ VirtualBox

To częste nieporozumienie.

VBS nie oznacza:

Windows uruchamia dodatkową maszynę wirtualną, którą użytkownik widzi”.

Nie zobaczysz:

VBS Virtual Machine

jako zwykłej VM.

To wewnętrzna warstwa izolacji bezpieczeństwa wykorzystywana przez Windows.


VBS i HVCI

I tutaj dochodzimy do bardzo ważnego połączenia.

HVCI (Hypervisor-Protected Code Integrity) jest jednym z najważniejszych mechanizmów wykorzystujących VBS.

Można to przedstawić:

                 VBS
                  |
             Hypervisor
                  |
                 HVCI
                  |
        Code Integrity Policy
                  |
                  v
             Windows Kernel

HVCI jest często określane jako:

Memory Integrity.


Jak działa HVCI?

Bez odpowiedniej izolacji:

Windows Kernel
      |
      v
Code Integrity

Z VBS/HVCI:

Windows Kernel
      |
      |  "Chcę wykonać kod"
      v
+----------------------+
| Isolated Environment |
|      HVCI            |
+----------------------+
      |
      v
Validate Code
      |
 +----+----+
 |         |
YES       NO
 |         |
RUN      BLOCK

Kluczowa idea:

kod działający w normalnym Windows nie powinien móc po prostu zmienić zasad Code Integrity.

 

VBS – Virtualization-Based Security w Windows
VBS – Virtualization-Based Security w Windows

VBS i Memory Integrity

W ustawieniach Windows możesz spotkać:

Integralność pamięci (Memory Integrity).

To właśnie mechanizm związany z HVCI.

Schemat:

VBS
 |
 +-- HVCI
      |
      +-- Memory Integrity

Dlatego gdy użytkownik w Windows Security widzi:

Integralność pamięci

jest to bezpośrednio związane z architekturą VBS/HVCI.


VBS a sterowniki

Sterowniki kernel-mode są szczególnie istotne.

Złośliwy lub podatny sterownik może uzyskać bardzo wysoki poziom uprawnień.

Bez odpowiednich zabezpieczeń:

Malicious Driver
      |
      v
Kernel
      |
      v
Security Bypass

Z HVCI:

Driver
  |
  v
Code Integrity
  |
  +---- Trusted ----> Load
  |
  +---- Untrusted --> BLOCK

Dlatego VBS/HVCI jest szczególnie ważne w ochronie przed kernel-level attacks.


VBS i Credential Guard

Kolejny bardzo ważny mechanizm:

Microsoft Defender Credential Guard.

Credential Guard wykorzystuje VBS do izolowania wybranych sekretów uwierzytelniających.

Schemat:

                 VBS
                  |
                  v
        Isolated Security Environment
                  |
                  v
           Credential Guard
                  |
                  v
          Protected Credentials

Dzięki temu kompromitacja normalnego środowiska Windows nie musi automatycznie oznaczać dostępu do chronionych sekretów.


Dlaczego Credential Guard jest ważny?

Atakujący po uzyskaniu dostępu do komputera może próbować kraść dane uwierzytelniające i wykorzystać je później do ataków typu:

Pass-the-Hash
Pass-the-Ticket
Credential Theft
Lateral Movement

Credential Guard ma ograniczać możliwość uzyskania dostępu do określonych sekretów przez kod działający w zwykłym środowisku Windows.


VBS + Credential Guard

W uproszczeniu:

             Windows
                |
       Attacker gains access
                |
                X
                |
        +---------------+
        | VBS Isolated  |
        | Environment   |
        |               |
        | Credentials   |
        +---------------+

To jest bardzo mocny przykład zastosowania izolacji sprzętowej zamiast polegania wyłącznie na uprawnieniach programowych.


VBS + Secure Boot

VBS bardzo dobrze współpracuje z Secure Boot.

Możemy mieć:

UEFI
 ↓
Secure Boot
 ↓
Trusted Boot
 ↓
Hypervisor
 ↓
VBS
 ↓
HVCI
 ↓
Windows

Secure Boot chroni początkowy łańcuch uruchamiania, a VBS zapewnia izolowane środowisko po uruchomieniu systemu.


VBS + TPM

TPM również jest częścią tego modelu.

                Hardware
                   |
       +-----------+-----------+
       |                       |
      TPM                    UEFI
       |                       |
       |                 Secure Boot
       |                       |
       +-----------+-----------+
                   |
               Hypervisor
                   |
                  VBS

TPM może dostarczać mechanizmy związane z kluczami i pomiarami platformy, natomiast VBS zapewnia izolację środowiska bezpieczeństwa.


VBS + WDAC

To kolejna bardzo ciekawa kombinacja:

                 VBS
                  |
                 HVCI
                  |
          Code Integrity
                  |
                WDAC
                  |
           Policy Decision
                  |
          +-------+-------+
          |               |
        ALLOW           BLOCK

WDAC definiuje jakie zasady kontroli kodu obowiązują, a HVCI/VBS pomagają chronić mechanizm Code Integrity przed manipulacją z normalnego środowiska.


VBS a Smart App Control

Smart App Control działa na wyższym poziomie.

Możemy zbudować cały łańcuch:

Secure Boot
     ↓
TPM
     ↓
Hypervisor
     ↓
VBS
     ↓
HVCI
     ↓
WDAC / Code Integrity
     ↓
Smart App Control
     ↓
Application

Nie oznacza to, że każda z tych technologii jest bezpośrednio zależna od wszystkich pozostałych. Chodzi o pokazanie warstw architektury bezpieczeństwa Windows.


VBS i Kernel

To właśnie tutaj VBS robi największą różnicę.

Klasyczny model:

Kernel
  |
  +-- Memory
  +-- Drivers
  +-- Security

Model z VBS:

              Hypervisor
                  |
        +---------+---------+
        |                   |
   Normal Kernel       Secure VTL
        |                   |
    Windows             Security

Normalny kernel nie jest najwyższym poziomem zaufania.

Hypervisor znajduje się poniżej niego.


Dlaczego hypervisor jest tak ważny?

Jeżeli atakujący przejmie kontrolę nad:

User Mode

to jest jeden poziom.

Jeżeli przejmie:

Kernel Mode

to sytuacja jest znacznie poważniejsza.

Ale przy VBS:

Kernel
  |
  X
  |
VBS / VTL1

normalny kernel nie ma automatycznie pełnej kontroli nad izolowanym środowiskiem.

To właśnie jest główna wartość VBS.


VBS a wydajność

To jeden z najczęściej poruszanych tematów.

VBS wykorzystuje:

  • mechanizmy wirtualizacji CPU,
  • hypervisor,
  • izolację pamięci,
  • dodatkowe mechanizmy kontroli integralności.

Może więc wystąpić pewien narzut wydajnościowy.

Współczesne procesory są jednak projektowane z myślą o takich mechanizmach i na typowym komputerze biurowym różnica często nie jest szczególnie istotna.

Wpływ zależy od:

CPU
Workload
Drivers
Applications
HVCI
Virtualization

Najbardziej wrażliwe mogą być określone obciążenia wymagające bardzo wysokiej wydajności CPU lub specyficznego dostępu do sprzętu.


VBS a gaming

To temat, który często powoduje niepotrzebne uproszczenia.

Nie można powiedzieć:

„VBS zawsze zabija wydajność w grach”.

Wpływ zależy od konkretnego systemu, procesora, wersji Windows, sterowników i gry.

W przypadku współczesnych komputerów różnica może być niewielka, ale w niektórych scenariuszach użytkownik może zauważyć mierzalny narzut.

Dlatego:

Security
   vs
Maximum Performance

jest tutaj klasycznym kompromisem.


VBS a VMware / VirtualBox / Hyper-V

VBS korzysta z hypervisora Windows, więc może wpływać na sposób działania innych technologii wirtualizacji.

Schemat:

Windows Hypervisor
       |
 +-----+-----+
 |           |
 VBS       Hyper-V

Inne programy wirtualizacyjne mogą wówczas korzystać z mechanizmów Windows Hypervisor Platform zamiast działać tak, jak na systemie bez aktywnego hypervisora.

Dlatego po włączeniu funkcji takich jak:

Hyper-V
VBS
Memory Integrity
Virtual Machine Platform

zachowanie VMware/VirtualBox może się różnić zależnie od wersji i konfiguracji.


VBS a AMD / Intel

VBS wymaga sprzętowego wsparcia wirtualizacji.

Na współczesnych komputerach najczęściej spotkasz:

Intel → VT-x
AMD   → AMD-V

Dodatkowo system potrzebuje odpowiedniego wsparcia firmware/UEFI.


Jak sprawdzić VBS?

W Windows możesz uruchomić:

msinfo32

i sprawdzić sekcję:

Zabezpieczenia oparte na wirtualizacji

Możesz tam zobaczyć informacje dotyczące:

Virtualization-based security
Memory integrity
Credential Guard

Stan zależy oczywiście od konfiguracji konkretnego systemu.


VBS i Windows 11

VBS jest jednym z ważnych elementów współczesnego modelu bezpieczeństwa Windows 11.

Microsoft wykorzystuje tę architekturę do ochrony m.in.:

Kernel
Credentials
Code Integrity
Security Components

To część większego przejścia od:

Security = software only

do:

Security =
Hardware
+
Firmware
+
Hypervisor
+
Operating System

VBS nie jest antywirusem

To bardzo ważne.

VBS:

❌ nie skanuje plików jak antywirus
❌ nie wykrywa phishingu
❌ nie zastępuje Defendera
❌ nie jest firewallem

Jego zadaniem jest przede wszystkim:

Isolation
+
Code Integrity
+
Credential Protection

Cała architektura Windows

Jeżeli połączymy wszystkie tematy, które właśnie omawialiśmy:

                         Hardware
                            |
                +-----------+-----------+
                |                       |
               TPM                     UEFI
                |                       |
                |                  Secure Boot
                |                       |
                +-----------+-----------+
                            |
                       Hypervisor
                            |
                           VBS
                            |
              +-------------+-------------+
              |                           |
             HVCI                  Credential Guard
              |
        Code Integrity
              |
            WDAC
              |
     Smart App Control
              |
          Application
              |
       Defender / EDR

To jest już bardzo dobry model mentalny współczesnego bezpieczeństwa Windows.


Najważniejsze do zapamiętania

VBS to nie pojedyncza funkcja typu „antywirus”. To architektura izolacji bezpieczeństwa wykorzystująca hypervisor Windows.

Jej kluczowa idea:

Normal Windows
      |
      |  compromised?
      v
+-------------------+
|     VBS / VTL1    |
|                   |
| Security Secrets  |
| Code Integrity    |
+-------------------+

Czyli kompromitacja zwykłego środowiska Windows nie powinna automatycznie oznaczać kompromitacji izolowanego środowiska bezpieczeństwa.

A jeśli miałbym sprowadzić cały temat do jednego zdania:

VBS wykorzystuje wirtualizację sprzętową i hypervisor, aby odizolować krytyczne mechanizmy bezpieczeństwa Windows od normalnego środowiska systemu — a HVCI i Credential Guard są jednymi z najważniejszych przykładów tego podejścia.

Polecane wpisy
Co to jest adres mac
Co to jest adres mac

Adres MAC (Media Access Control) to unikalny identyfikator przypisany karcie sieciowej (np. Ethernet lub Wi-Fi) znajdującej się w urządzeniu komputerowym. Czytaj dalej

Darknet i komunikacja bez bezpośredniego kontaktu – dead drops, wiadomości asynchroniczne i metadane
Darknet i komunikacja bez bezpośredniego kontaktu – dead drops, wiadomości asynchroniczne i metadane

Darknet i komunikacja bez bezpośredniego kontaktu – dead drops, wiadomości asynchroniczne i metadane Po analizie pseudonimów, stylometrii i identity correlation Czytaj dalej

Marek "Netbe" Lampart Inżynier informatyki Marek Lampart to doświadczony inżynier informatyki z ponad 25-letnim stażem w zawodzie. Specjalizuje się w systemach Windows i Linux, bezpieczeństwie IT, cyberbezpieczeństwie, administracji serwerami oraz diagnostyce i optymalizacji systemów. Na netbe.pl publikuje praktyczne poradniki, analizy i instrukcje krok po kroku, pomagając administratorom, specjalistom IT oraz zaawansowanym użytkownikom rozwiązywać realne problemy techniczne.