Získání oprávnění SeDebugPrivilege s aktivovanou politikou ladění

V předchozím článku jsme hovořili o tom, jak je jednou z technik ochrany před extrakcí hesel z paměti Windows pomocí nástrojů typu mimikatz zabránění debugovacím právům správců systému v používání zásady ladění programových skupin. Nedávno však bylo zjištěno, že bez oprávnění k ladění (v systému Windows je to oprávnění) SeDebugPrivilege), správce místního serveru nemůže nainstalovat ani aktualizovat Microsoft SQL Server. Faktem je, že instalační program serveru SQL Server při spuštění kontroluje oprávnění SeSecurity. SeBackup a SeDebug, které potřebuje ke spuštění procesu serveru SQL a získání informací o úspěšném spuštění serveru SQL. Takto to vypadá.

Během instalace serveru SQL, při provádění předběžných kontrol, instalátor zakopne o kontrolu Nastavit oprávnění účtu.

Kliknutím na odkaz „Neúspěšný“ se zobrazí následující zpráva:

Pravidlo „Nastavení oprávnění účtu“ se nezdařilo.
Účet, na kterém je spuštěna instalace serveru SQL, nemá jedno nebo všechna následující práva: právo zálohovat soubory a adresáře, právo spravovat auditování a protokol zabezpečení a právo ladit programy. Chcete-li pokračovat, použijte účet s oběma těmito právy. Další informace naleznete na adrese https://msdn.microsoft.com/en-us/library/ms813696.aspx, https://msdn.microsoft.com/en-us/library/ms813959.aspx a https: // msdn .microsoft.com / en-us / library / ms813847.aspx.


Nyní otevřete zprávu o instalaci SystemConfigurationCheck_Report.htm.

Jak vidíte, instalátor při kontrole pravidla HasSecurityBackupAndDebugPrivilegesCheck zjistil, že aktuální proces nemá jedno z následujících oprávnění:

  • SeSecurity - správa auditů a bezpečnostních protokolů
  • SeBackup - práva na záložní soubory a adresáře
  • SeDebug - právo ladit programy

V protokolu jsou podrobnější informace o tom, že proces instalace nemá příznak SeDebug:

(09) 2017-09-12 14:25:13 Slp: Inicializační pravidlo: Nastavení oprávnění účtu
(09) 2017-09-12 14:25:13 Slp: Pravidlo bude vykonáno: Pravda
(09) 2017-09-12 14:25:13 Slp: Cílový objekt pravidla Init: Microsoft.SqlServer.Configuration.SetupExtension.FacetPrivilegeCheck
(09) 2017-09-12 14:25:13 Slp: Rule 'HasSecurityBackupAndDebugPrivilegesCheck' Výsledek: Běh procesu má oprávnění SeSecurity, má oprávnění SeBackup a nemá oprávnění SeDebug.
(09) 2017-09-12 14:25:13 Slp: Hodnotící pravidlo: HasSecurityBackupAndDebugPrivilegesCheck
(09) 2017-09-12 14:25:13 Slp: Pravidlo běžící na počítači: msk-sql10
(09) 2017-09-12 14:25:13 Slp: Hodnocení pravidla provedeno: Selhalo

Rozhodl jsem se hledat řešení pro získání práv SeDebugPrivilege, aniž bych změnil nebo deaktivoval zásady ladění programů. A jak se ukázalo, existuje poměrně jednoduchý způsob, jak tuto politiku obejít, pokud máte na serveru práva místního správce. Nástroj secedit nám s tím pomůže a umožní vám spravovat zásady zabezpečení místního serveru.

Zkontrolujte aktuální oprávnění:

whoami / priv

Jak vidíte, nyní v aktuálním uživatelském tokenu není žádné oprávnění SeDebugPrivilege .

Exportujeme aktuální uživatelská práva nakonfigurovaná skupinovými zásadami do textového souboru:

secedit / export / cfg secpolicy.inf / areas USER_RIGHTS

Nyní, pomocí libovolného editoru testů, musíte otevřít soubor secpolicy.inf pro úpravy a přidat řádek v sekci [Privilege Rights], která uděluje Debug Programs práva skupině místních administrátorů.

SeDebugPrivilege = * S-1-5-32-544

Poznámka:. SID skupiny místních správců S-1-5-32-544 může být nahrazen jakýmkoli jiným. Proces převodu skupiny nebo uživatelského jména na SID je popsán v článku Jak zjistit SID uživatele podle jména a naopak

Uložte soubor. Nyní musíte použít nová uživatelská práva:

secedit / configure / db secedit.sdb / cfg secpolicy.inf / overwrite / areas USER_RIGHTS

Poznámka:. Potvrďte přepsání aktuálního nastavení.

Nyní musíte spustit odhlášení / přihlášení a pomocí secpol.msc se ujistěte, že práva ladicího programu jsou přiřazena skupině místních správců. Stejný příkaz whoami / priv to potvrzuje:

Ladicí programy SeDebugPrivilege jsou povoleny

Nyní můžete spustit instalaci / aktualizace serveru SQL. Je však třeba mít na paměti, že oprávnění SeDebugPrivilege je v tomto případě přiděleno pouze dočasně a při příští aktualizaci zásad skupiny bude obnoveno (ale po odhlášení uživatele).

Jak chápete, zahrnutí zásady zákazu ladících programů není všelékem na získání práv SeDebugPrivilege škodlivými programy, které již vstoupily na server, s právy místního správce, což může ohrozit všechny účty uživatelů / správců pracující na serveru..