Přeskočit obsah

Skupina Protected Users, ověřování protokolem Kerberos, izolace AD pomocí sil a pracovní stanice PAW

Zabezpečení adresářů Active Directory je zásadní výzvou v oblasti zabezpečení infrastruktury.

ANSSI (francouzská Národní agentura pro kybernetickou bezpečnost) klade zvláštní důraz na význam rozdělení do zón v rámci tohoto zabezpečení a na zavedení izolace serverů pomocí sil s ověřováním protokolem Kerberos. Uvádí to ve svých doporučeních pro bezpečnou správu informačních systémů založených na AD.

Naše řešení CyberElements Bastion nabízejí při zavádění tohoto zabezpečení velkou flexibilitu; lze je rozdělit do čtyř různých úrovní integrace, které lze uplatňovat postupně:

Konfigurace aplikací RDP pro podporu protokolu Kerberos

Upozornění!

Chcete-li nakonfigurovat privilegovanou aplikaci RDP nebo privilegovanou aplikaci HTML5 RDP pro podporu protokolu Kerberos, musíte nejprve provést konfiguraci 1 komponent Edge Gateway, které se budou používat pro připojení k RDP pomocí protokolu Kerberos.

Aby se privilegovaná aplikace RDP nebo HTML5 RDP mohla připojit k serveru RDP pomocí protokolu Kerberos, musí být splněny čtyři konfigurační podmínky:

  1. Nastavení SSO nesmí mít hodnotu Disabled, musí tedy mít hodnotu Enabled, Fixed nebo Request
  2. Musí být povolen režim bez agenta
  3. Zadaný název serveru musí být FQDN (zadání IP adresy serveru způsobí selhání ověřování).
  4. Protokol Kerberos nesmí být zakázán v upřesňujících nastaveních aplikace RDP nebo HTML5 RDP.
Příklad

Chcete-li nakonfigurovat privilegovanou aplikaci RDP tak, aby se připojovala k serveru RDP my-rds-server pomocí protokolu Kerberos, budete muset:

  • Nastavit úroveň SSO na jinou hodnotu než Disabled, v tomto případě na Enabled (1), poté povolit režim bez agenta (2) a nakonec zadat FQDN serveru RDP (3).
  • Ověřit, že protokol Kerberos není zakázán (4)
Vývojový diagram
flowchart LR 
    subgraph WAN 
        USER(Pracovní stanice uživatele)
    end 
    subgraph Cloud nebo DMZ
        MEDIA(Mediation Controller) 
    end 
    subgraph LAN 
        GW(Edge Gateway) 
        KDC(Kerberos Domain Controller) 
        RDP(Server RDP)
    end

    USER --- |1| MEDIA --> |1| GW
    GW -.- |2| MEDIA -.-> |2| USER
    GW --> |3| KDC
    KDC -.-> |4| GW
    GW --> |5| KDC
    KDC -.-> |6| GW
    GW --> |7| RDP
    RDP -.-> |8| GW
Hold "Ctrl" to enable pan & zoom
  1. Uživatel otevře privilegovanou aplikaci RDP nebo HTML5 RDP s podporou ověřování Kerberos.
  2. Uživatel je připojen ke komponentě Edge Gateway v režimu bez agenta
  3. Edge Gateway požádá řadič domény Kerberos (KDC) o token TGT.
  4. KDC vrátí zašifrovaný a podepsaný lístek TGT
  5. Edge Gateway požádá o lístek služby, který obsahuje předchozí lístek TGT
  6. KDC vrátí lístek služby zašifrovaný klíčem služby
  7. Edge Gateway odešle serveru RDP žádost o přístup, která obsahuje lístek služby.
  8. Server RDP schválí přístup ke službě a připojení RDP se inicializuje.

Konfigurace aplikací RDP pro podporu Kerberos armoring

Upozornění!

Chcete-li úspěšně nakonfigurovat privilegovanou aplikaci RDP nebo HTML5 RDP pro podporu Kerberos armoring, musíte nejprve provést konfigurace 1 a 2 komponent Edge Gateway, které se budou používat pro připojení k RDP s Kerberos armoring.

Aby se privilegovaná aplikace RDP nebo HTML5 RDP mohla připojit k serveru RDP s Kerberos armoring, musí být splněno pět konfiguračních podmínek:

  1. Nastavení SSO nesmí mít hodnotu Disabled, musí tedy mít hodnotu Enabled, Fixed nebo Request
  2. Musí být povolen režim bez agenta
  3. Zadaný název serveru musí být FQDN (zadání IP adresy serveru způsobí selhání ověřování).
  4. Protokol Kerberos nesmí být zakázán v upřesňujících nastaveních aplikace RDP nebo HTML5 RDP.
  5. Zadejte název servisního účtu počítače, který se má použít pro Kerberos armoring, a přidejte na jeho konec znak $
Příklad

Chcete-li nakonfigurovat privilegovanou aplikaci RDP tak, aby se připojovala v režimu Kerberos armoring k serveru RDP my-rds-server pomocí účtu počítače svc_cyberelements, budete muset:

  • Nastavit úroveň SSO na jinou hodnotu než Disabled, v tomto případě na Enabled (1), poté povolit režim bez agenta (2) a nakonec zadat FQDN serveru RDP (3).
  • Ověřit, že protokol Kerberos není zakázán (4) a že je zadán název servisního účtu počítače, a nezapomenout přidat znak $ (5).
Vývojový diagram
flowchart LR 
    subgraph WAN 
        USER(Pracovní stanice uživatele)
    end 
    subgraph Cloud nebo DMZ
        MEDIA(Mediation Controller) 
    end 
    subgraph LAN 
        GW(Edge Gateway) 
        KDC(Kerberos Domain Controller) 
        RDP(Server RDP)
    end

    USER --- |1| MEDIA --> |1| GW
    GW -.- |2| MEDIA -.-> |2| USER
    GW --> |3| KDC
    KDC -.-> |4| GW
    GW --> |5| KDC
    KDC -.-> |6| GW
    GW --> |7| RDP
    RDP -.-> |8| GW
Hold "Ctrl" to enable pan & zoom
  1. Uživatel otevře privilegovanou aplikaci RDP nebo HTML5 RDP s podporou ověřování Kerberos.
  2. Uživatel je připojen ke komponentě Edge Gateway v režimu bez agenta
  3. Edge Gateway požádá řadič domény Kerberos (KDC) o token TGT pomocí údajů servisního účtu počítače
  4. KDC vrátí zašifrovaný a podepsaný lístek TGT
  5. Edge Gateway požádá o lístek služby, který obsahuje předchozí lístek TGT
  6. KDC vrátí lístek služby zašifrovaný klíčem služby
  7. Edge Gateway odešle serveru RDP žádost o přístup, která obsahuje lístek služby.
  8. Server RDP schválí přístup ke službě a připojení RDP se inicializuje.

Specifika architektury v segmentovaném prostředí AD

Upozornění!

V segmentovaném prostředí Active Directory je pro účty správců obvykle nakonfigurován mechanismus Kerberos armoring. Proto je nutné provést konfigurace 1 a 2 komponent Edge Gateway, které se budou používat pro připojení k serverům RDP.

Pokud se CyberElements Bastion používá v segmentovaném prostředí AD, musí být servisní účet počítače používaný pro Kerberos armoring přiřazen k silu.
To znamená, že pokud je nutný přístup k počítačům RDP patřícím do různých vrstev, bude nutné vytvořit odpovídající počet servisních účtů počítače umístěných v jednotlivých cílových vrstvách.

Může to mít dopad i na architekturu produktu.
Tato změna se týká především počtu nasazených komponent Edge Gateway: doporučuje se mít alespoň jednu vyhrazenou pro přístup do konkrétní vrstvy. Pokud však kontext nasazení takového počtu komponent Edge Gateway neumožňuje, lze použít také architekturu s jedinou komponentou Edge Gateway:

flowchart LR
    subgraph WAN
        USER(Pracovní stanice uživatele)
    end
    subgraph Cloud nebo DMZ
        MED(Mediation Controller)
    end
    subgraph LAN
        subgraph T2
            GW-T2(Edge Gateway T2)
            RDP-T2(Server RDP T2)
        end
        subgraph T1
            GW-T1(Edge Gateway T1)
            RDP-T1(Server RDP T1)
        end
        subgraph T0
            GW-T0(Edge Gateway T0)
            KDC(Kerberos Domain Controller)
            RDP-T0(Server RDP T0)
        end
    end

    USER ==TLS/HTTPS==> MED

    MED ~~~ GW-T0
    MED ~~~ GW-T1
    MED ~~~ GW-T2

    GW-T0 ==TLS==> MED
    GW-T0 ~~~ MED
    GW-T0 ~~~ MED
    GW-T0 ~~~ MED
    GW-T0 --Kerberos/LDAPS--> KDC
    GW-T0 -..-> |RDP| RDP-T0

    GW-T1 ==TLS==> MED
    GW-T1 ~~~ MED
    GW-T1 ~~~ MED
    GW-T1 --Kerberos/LDAPS--> KDC
    GW-T1 -..-> |RDP| RDP-T1

    GW-T2 ==TLS==> MED
    GW-T2 ~~~ MED
    GW-T2 --Kerberos/LDAPS--> KDC
    GW-T2 -..-> |RDP| RDP-T2
Hold "Ctrl" to enable pan & zoom

Při této architektuře je konfigurace aplikací RDP shodná s konfigurací pro podporu Kerberos armoring.

flowchart LR
    subgraph WAN
        USER(Pracovní stanice uživatele)
    end
    subgraph Cloud nebo DMZ
        MED(Mediation Controller)
    end
    subgraph LAN
        GW(Edge Gateway)
        subgraph T2
            RDP-T2(Server RDP T2)
        end
        subgraph T1
            RDP-T1(Server RDP T1)
        end
        subgraph T0
            KDC(Kerberos Domain Controller)
            RDP-T0(Server RDP T0)
        end
    end

    USER ==TLS/HTTPS==> MED

    MED ~~~ GW

    GW ==TLS==> MED
    GW ~~~ MED
    GW --Kerberos/LDAPS--> KDC
    GW-.-> |RDP| RDP-T0
    GW -.-> |RDP| RDP-T1
    GW -.-> |RDP| RDP-T2
Hold "Ctrl" to enable pan & zoom

Při této architektuře je konfigurace aplikací RDP shodná s konfigurací pro podporu Kerberos armoring.
Musíte však také naplánovat použití souboru keytab obsahujícího několik servisních účtů na připojovací komponentě Edge Gateway.

Specifika připojení k pracovní stanici PAW

PAW (Privileged Access Workstation) je pracovní stanice vyhrazená pro úlohy správy v určené vrstvě.
Vzhledem ke kritické povaze této pracovní stanice se na ni velmi často uplatňuje posílené nastavení zabezpečení. Jedním z uplatněných posílení je princip nevystavování služeb v síti, který zajišťuje, že nelze zneužít žádná zadní vrátka ani služby s bezpečnostními chybami.

Tento princip proto teoreticky znemožňuje vzdálený přístup k pracovní stanici PAW. CyberElements Bastion však umožňuje navázat připojení k pracovní stanici PAW, aniž by v místní síti naslouchaly jakékoli služby, a to díky:

  • aktivaci služeb vzdálené plochy
  • konfiguraci místní brány firewall, která zakazuje přístup ke službě vzdálené plochy ze všech IP adres kromě adres samotné pracovní stanice PAW nebo localhost
  • instalaci vestavěné komponenty Edge Gateway, která umožní místní přístup ke službě vzdálené plochy pracovní stanice PAW
flowchart LR
    subgraph WAN
        USER(Pracovní stanice uživatele)
    end
    subgraph Cloud nebo DMZ
        MED(Mediation Controller)
    end
    subgraph LAN
        subgraph T1
            GW(Edge Gateway T1)
            subgraph PAW_T1 [PAW T1]
                RDP{{Server RDP}}
                GW-WIN{{Embeded Edge Gateway}}
            end
        end
        subgraph T0
            KDC(Kerberos Domain Controller)
        end
    end

    USER ==TLS/HTTPS==> MED

    MED ~~~ GW & GW-WIN
    GW & GW-WIN ==TLS==> MED
    GW & GW-WIN ~~~ MED

    GW & PAW_T1 --> |Kerberos/LDAPS| KDC

    GW-WIN -.-> |RDP| RDP

    GW --x |Žádné dostupné připojení| PAW_T1
Hold "Ctrl" to enable pan & zoom
flowchart LR
    subgraph WAN
        USER(Pracovní stanice uživatele)
    end
    subgraph Cloud nebo DMZ
        MED(Mediation Controller)
    end
    subgraph LAN
        subgraph T1
            GW(Edge Gateway T1)
            subgraph PAW_T1 [PAW T1]
                RDP{{Server RDP}}
                GW-WIN{{Embeded Edge Gateway}}
            end
        end
        subgraph T0
            KDC(Kerberos Domain Controller)
        end
    end

    USER --- |1| MED --> |1| GW
    GW -.- |2| MED -.-> |2| USER
    GW --> |3| KDC
    KDC -.-> |4| GW
    GW --> |5| KDC
    KDC -.-> |6| GW
    MED --> |7| GW & GW-WIN
    GW --- |8| MED --- |8| GW-WIN --> |8| RDP
    RDP -.- |9| GW-WIN -.- |9| MED -.-> |9| GW
Hold "Ctrl" to enable pan & zoom
  1. Uživatel otevře privilegovanou aplikaci RDP nebo HTML5 RDP s podporou ověřování Kerberos k pracovní stanici PAW
  2. Uživatel je připojen ke komponentě Edge Gateway v režimu bez agenta
  3. Edge Gateway požádá řadič domény Kerberos (KDC) o token TGT pomocí údajů servisního účtu počítače
  4. KDC vrátí zašifrovaný a podepsaný lístek TGT
  5. Edge Gateway požádá o lístek služby, který obsahuje předchozí lístek TGT
  6. KDC vrátí lístek služby zašifrovaný klíčem služby
  7. Mediation Controller oznámí komponentě Edge Gateway a vestavěné komponentě Edge Gateway, že mezi nimi byl otevřen tunel, který prochází přes Mediation Controller
  8. Edge Gateway odešle serveru RDP žádost o přístup, která obsahuje lístek služby, přes Mediation Controller a vestavěnou komponentu Edge Gateway
  9. Server RDP schválí přístup ke službě a připojení RDP se inicializuje

Předpoklady na pracovní stanici PAW

Konkrétní předpoklady, které je nutné splnit na pracovní stanici PAW (Privileged Access Workstation) pro připojení k CyberElements Bastion, lze shrnout takto:

  1. Povolte službu vzdálené plochy
  2. Upravte místní bránu firewall tak, aby odepírala přístup ke službě vzdálené plochy všem počítačům kromě samotné pracovní stanice PAW
  3. Upravte chování mechanismu Kerberos armoring tak, aby vždy poskytoval deklarace
  4. Nainstalujte komponentu Edge Gateway pro Windows ve vestavěném režimu

Povolení služby vzdálené plochy

Službu vzdálené plochy lze povolit ručně podle postupu v dokumentaci společnosti Microsoft Enable Remote Desktop on your PC.
K povolení služby však lze použít také objekt GPO:

  • Cesta k nastavení GPO: Computer Configuration > Policies > Administrative Templates > Windows Components > Remote Desktop Services > Remote Desktop Session Host > Connections
  • Nastavení: Allow users to connect remotely by using Remote Desktop Services
  • Hodnota: Enabled

Úprava pravidel brány firewall

Z bezpečnostních důvodů je důležité omezit přístup na úrovni brány firewall, aby se zabránilo přístupu zvenčí na port RDP.

Ve výchozím nastavení systém Windows po povolení protokolu RDP vytvoří 2 pravidla brány firewall, která povolují přístup k portu 3389 přes UDP a TCP.
Tato dvě pravidla je nutné upravit tak, aby povolovala pouze připojení RDP ze vzdálené IP adresy 127.0.0.1.

Pokud tato pravidla neexistují, je nutné je vytvořit ručně na serveru nebo pomocí objektu GPO.

Úprava chování mechanismu Kerberos armoring

Je také nutné upravit chování protokolu Kerberos.

Můžete k tomu nastavit následující objekt GPO:

  • Cesta k nastavení GPO: Computer Configuration > Policies > Administrative Templates > System > KDC
  • Nastavení: KDC support for claims, compound authentication and Kerberos armoring
  • Hodnota: Enabled, Always provide claims

Tato změna nemá žádný dopad na zabezpečení vrstvení AD ani posílené implementace protokolu Kerberos.

Instalace komponenty Edge Gateway pro Windows ve vestavěném režimu

Předpoklady

Než budete pokračovat, nainstalujte na pracovní stanici PAW komponentu Edge Gateway pro Windows a připojte ji ke službě Mediation Controller: Nainstalujte komponentu Edge Gateway pro Windows

Po instalaci komponenty Edge Gateway pro Windows je nutné ji přepnout do vestavěného režimu.

Otevřete webové rozhraní serveru Mediation Controller pomocí URI /console.

Příklady

Pokud je server Mediation Controller dostupný na své webové IP adrese 10.0.10.10, je konzola pro správu dostupná na adrese https://10.0.10.10/console.

Pokud je server Mediation Controller dostupný prostřednictvím názvu DNS, například cyberelements-bastion.domain.local, je konzola pro správu dostupná na adrese https://cyberelements-bastion.domain.local/console.

Po připojení nezapomeňte z modulu Gateways Management odebrat komponentu Edge Gateway pro Windows, která je v něm deklarovaná.

Komponenta Edge Gateway pro Windows je nyní připravena k použití jako vestavěná komponenta Edge Gateway.

Při otevření relace se automaticky spustí monitor komponenty Edge Gateway pro Windows (viditelný jako ikona type:inline na hlavním panelu). Protože toto automatické spuštění není pro pracovní stanice PAW nutné, je třeba ho zakázat:

  1. Otevřete editor registru regedit.exe jako správce
  2. Přejděte do podregistru HKLM\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Run
  3. Odstraňte klíč IPdivaGateway Monitor
  4. Restartujte pracovní stanici PAW

Konfigurace aplikací RDP pro připojení k pracovní stanici PAW

Upozornění!

Chcete-li nakonfigurovat privilegovanou aplikaci RDP nebo HTML5 RDP pro připojení k pracovní stanici PAW, musíte nejprve provést konfigurace 1 až 3 komponent Edge Gateway, které se budou používat pro připojení k pracovním stanicím PAW.

Aby se privilegovaná aplikace RDP nebo HTML5 RDP mohla připojit k pracovní stanici PAW, musí být splněno šest konfiguračních podmínek:

  1. Nastavení SSO nesmí mít hodnotu Disabled, musí tedy mít hodnotu Enabled, Fixed nebo Request
  2. Musí být povolen režim bez agenta
  3. Zadaný název serveru musí být FQDN (zadání IP adresy serveru způsobí selhání ověřování).
  4. Nakonfigurujte směrování přes vestavěnou komponentu Edge Gateway
  5. Protokol Kerberos nesmí být zakázán v upřesňujících nastaveních aplikace RDP nebo HTML5 RDP.
  6. Zadejte název servisního účtu počítače, který se má použít pro Kerberos armoring, a přidejte na jeho konec znak $

Podmínka 4 vyplývá z konfigurace pracovních stanic PAW, na kterých nesmí v místní síti naslouchat žádné služby. Pokud se komponenta Edge Gateway nainstaluje jako program pro Windows, může přistupovat pouze ke službám naslouchajícím na localhost.

Příklad

Chcete-li nakonfigurovat privilegovanou aplikaci RDP tak, aby se připojovala v režimu Kerberos armoring k serveru RDP my-rds-server pomocí účtu počítače svc_cyberelements, budete muset:

  • Nastavit úroveň SSO na jinou hodnotu než Disabled, v tomto případě na Enabled (1), poté povolit režim bez agenta (2), zadat FQDN serveru RDP (3) a nakonec povolit režim vestavěné komponenty Edge Gateway a zadat název komponenty Edge Gateway pro Windows nainstalované na pracovní stanici PAW (4).
  • Ověřit, že protokol Kerberos není zakázán (5) a že je zadán název servisního účtu počítače, a nezapomenout přidat znak $ (6).

Ladění otevírání aplikací RDP s ověřováním Kerberos

Chcete-li provést prvotní analýzu nebo získat informace, které CyberElements potřebuje k podrobné analýze selhání ověřování Kerberos, proveďte následující kroky:

  1. Povolte ladicí logy: v souboru /etc/ipdiva/cleanroom/xrdprecord.ini na serveru Edge Gateway použitém pro připojení přepněte parametr debug pod značkou [Kerberos] na hodnotu true. Tuto akci lze provést následujícím příkazem:

    1
    sed -i "3s/false/true/" /etc/ipdiva/cleanroom/xrdprecord.ini
    
  2. Přihlaste se k uživatelskému portálu a spusťte privilegovanou aplikaci RDP nebo RDP HTML5 v režimu bez agenta, nakonfigurovanou pro použití protokolu Kerberos. Poznamenejte si následující informace:

    • Čas otevření aplikace
    • Uživatelské jméno použité pro připojení k serveru RDP
  3. Na komponentě Edge Gateway použité pro předchozí připojení získejte následující soubory:

    • /var/log/syslog: tento soubor obsahuje zejména logy spuštění relace v režimu bez agenta.
    • /var/lib/ipdiva/carerecord/log/freerdpout-<USER>-<DATE>.txt: nahraďte <USER> uživatelským jménem a <DATE> datem a časem otevření aplikace, které jste si poznamenali v předchozím kroku. Tento soubor obsahuje logy týkající se navazování relace RDP, včetně fáze ověřování Kerberos.
  4. Zakažte ladicí logy: v souboru /etc/ipdiva/cleanroom/xrdprecord.ini na serveru Edge Gateway použitém pro připojení přepněte parametr debug pod značkou [Kerberos] na hodnotu false. Tuto akci lze provést následujícím příkazem:

    1
    sed -i "3s/true/false/" /etc/ipdiva/cleanroom/xrdprecord.ini